SpinProj_t Derived Type

type, public :: SpinProj_t


Contents


Components

Type Visibility Attributes Name Initial
integer, public :: val

Twice the spin projection as integer.


Type-Bound Procedures

procedure, private, :: eq_SpinProj_t_SpinProj_t

generic, public :: operator(==) => eq_SpinProj_t_SpinProj_t

procedure, private, :: neq_SpinProj_t_SpinProj_t

generic, public :: operator(/=) => neq_SpinProj_t_SpinProj_t

procedure, private, :: add_SpinProj_t_SpinProj_t

generic, public :: operator(+) => add_SpinProj_t_SpinProj_t

procedure, private, :: mult_SpinProj_t_int

  • private elemental function mult_SpinProj_t_int(lhs, rhs) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(SpinProj_t), intent(in) :: lhs
    integer, intent(in) :: rhs

    Return Value type(SpinProj_t)

generic, public :: operator(*) => mult_SpinProj_t_int

  • private elemental function mult_SpinProj_t_int(lhs, rhs) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(SpinProj_t), intent(in) :: lhs
    integer, intent(in) :: rhs

    Return Value type(SpinProj_t)

procedure, private, :: sub_SpinProj_t_SpinProj_t

procedure, private, :: neg_SpinProj_t

  • private elemental function neg_SpinProj_t(m_s) result(res)

    Arguments

    Type IntentOptional Attributes Name
    class(SpinProj_t), intent(in) :: m_s

    Return Value type(SpinProj_t)

generic, public :: operator(-) => sub_SpinProj_t_SpinProj_t, neg_SpinProj_t