vector Derived Type

type, public :: vector

Vector class.


Contents

I1P_eq_vector I1P_great_eq_vector I1P_great_vector I1P_low_eq_vector I1P_low_vector I1P_mul_vector I1P_not_eq_vector I1P_sub_vector I1P_sum_vector I2P_eq_vector I2P_great_eq_vector I2P_great_vector I2P_low_eq_vector I2P_low_vector I2P_mul_vector I2P_not_eq_vector I2P_sub_vector I2P_sum_vector I4P_eq_vector I4P_great_eq_vector I4P_great_vector I4P_low_eq_vector I4P_low_vector I4P_mul_vector I4P_not_eq_vector I4P_sub_vector I4P_sum_vector I8P_eq_vector I8P_great_eq_vector I8P_great_vector I8P_low_eq_vector I8P_low_vector I8P_mul_vector I8P_not_eq_vector I8P_sub_vector I8P_sum_vector R16P_eq_vector R16P_great_eq_vector R16P_great_vector R16P_low_eq_vector R16P_low_vector R16P_mul_vector R16P_not_eq_vector R16P_sub_vector R16P_sum_vector R4P_eq_vector R4P_great_eq_vector R4P_great_vector R4P_low_eq_vector R4P_low_vector R4P_mul_vector R4P_not_eq_vector R4P_sub_vector R4P_sum_vector R8P_eq_vector R8P_great_eq_vector R8P_great_vector R8P_low_eq_vector R8P_low_vector R8P_mul_vector R8P_not_eq_vector R8P_sub_vector R8P_sum_vector angle assign_I1P assign_I2P assign_I4P assign_I8P assign_R16P assign_R4P assign_R8P assign_vector assignment(=) crossproduct distance_to_line distance_to_plane distance_vectorial_to_plane dotproduct face_normal3 face_normal4 iolen is_collinear is_concyclic load_from_file matrixproduct mirror mirror_by_matrix mirror_by_normal negative normL2 normalize normalized operator(*) operator(+) operator(-) operator(.cross.) operator(.dot.) operator(.matrix.) operator(.ortho.) operator(.paral.) operator(/) operator(/=) operator(<) operator(<=) operator(==) operator(>) operator(>=) orthogonal parallel positive printf projection_onto_plane rotate rotate_by_axis_angle rotate_by_matrix save_into_file sq_norm vector_div_I1P vector_div_I2P vector_div_I4P vector_div_I8P vector_div_R16P vector_div_R4P vector_div_R8P vector_div_vector vector_eq_I1P vector_eq_I2P vector_eq_I4P vector_eq_I8P vector_eq_R16P vector_eq_R4P vector_eq_R8P vector_eq_vector vector_great_I1P vector_great_I2P vector_great_I4P vector_great_I8P vector_great_R16P vector_great_R4P vector_great_R8P vector_great_eq_I1P vector_great_eq_I2P vector_great_eq_I4P vector_great_eq_I8P vector_great_eq_R16P vector_great_eq_R4P vector_great_eq_R8P vector_great_eq_vector vector_great_vector vector_low_I1P vector_low_I2P vector_low_I4P vector_low_I8P vector_low_R16P vector_low_R4P vector_low_R8P vector_low_eq_I1P vector_low_eq_I2P vector_low_eq_I4P vector_low_eq_I8P vector_low_eq_R16P vector_low_eq_R4P vector_low_eq_R8P vector_low_eq_vector vector_low_vector vector_mul_I1P vector_mul_I2P vector_mul_I4P vector_mul_I8P vector_mul_R16P vector_mul_R4P vector_mul_R8P vector_mul_vector vector_not_eq_I1P vector_not_eq_I2P vector_not_eq_I4P vector_not_eq_I8P vector_not_eq_R16P vector_not_eq_R4P vector_not_eq_R8P vector_not_eq_vector vector_sub_I1P vector_sub_I2P vector_sub_I4P vector_sub_I8P vector_sub_R16P vector_sub_R4P vector_sub_R8P vector_sub_vector vector_sum_I1P vector_sum_I2P vector_sum_I4P vector_sum_I8P vector_sum_R16P vector_sum_R4P vector_sum_R8P vector_sum_vector

Components

TypeVisibilityAttributesNameInitial
real(kind=R8P), private :: x =0._RPP

Cartesian component in x direction.

real(kind=R8P), private :: y =0._RPP

Cartesian component in y direction.

real(kind=R8P), private :: z =0._RPP

Cartesian component in z direction.


Type-Bound Procedures

procedure, private, pass(rhs) :: I1P_eq_vector

Operator integer(I1P) ==.

  • private elemental function I1P_eq_vector(lhs, rhs) result(opr)

    Operator integer(I1P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I1P_great_eq_vector

Operator integer(I1P) >=.

  • private elemental function I1P_great_eq_vector(lhs, rhs) result(opr)

    Operator integer(I1P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I1P_great_vector

Operator integer(I1P) >.

  • private elemental function I1P_great_vector(lhs, rhs) result(opr)

    Operator integer(I1P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I1P_low_eq_vector

Operator integer(I1P) <=.

  • private elemental function I1P_low_eq_vector(lhs, rhs) result(opr)

    Operator integer(I1P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I1P_low_vector

Operator integer(I1P) <.

  • private elemental function I1P_low_vector(lhs, rhs) result(opr)

    Operator integer(I1P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I1P_mul_vector

Operator integer(I1P) *.

  • private elemental function I1P_mul_vector(lhs, rhs) result(opr)

    Operator integer(I1P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I1P_not_eq_vector

Operator integer(I1P) /=.

  • private elemental function I1P_not_eq_vector(lhs, rhs) result(opr)

    Operator integer(I1P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I1P_sub_vector

Operator integer(I1P) -.

  • private elemental function I1P_sub_vector(lhs, rhs) result(opr)

    Operator integer(I1P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I1P_sum_vector

Operator integer(I1P) +.

  • private elemental function I1P_sum_vector(lhs, rhs) result(opr)

    Operator integer(I1P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I2P_eq_vector

Operator integer(I2P) ==.

  • private elemental function I2P_eq_vector(lhs, rhs) result(opr)

    Operator integer(I2P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I2P_great_eq_vector

Operator integer(I2P) >=.

  • private elemental function I2P_great_eq_vector(lhs, rhs) result(opr)

    Operator integer(I2P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I2P_great_vector

Operator integer(I2P) >.

  • private elemental function I2P_great_vector(lhs, rhs) result(opr)

    Operator integer(I2P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I2P_low_eq_vector

Operator integer(I2P) <=.

  • private elemental function I2P_low_eq_vector(lhs, rhs) result(opr)

    Operator integer(I2P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I2P_low_vector

Operator integer(I2P) <.

  • private elemental function I2P_low_vector(lhs, rhs) result(opr)

    Operator integer(I2P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I2P_mul_vector

Operator integer(I2P) *.

  • private elemental function I2P_mul_vector(lhs, rhs) result(opr)

    Operator integer(I2P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I2P_not_eq_vector

Operator integer(I2P) /=.

  • private elemental function I2P_not_eq_vector(lhs, rhs) result(opr)

    Operator integer(I2P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I2P_sub_vector

Operator integer(I2P) -.

  • private elemental function I2P_sub_vector(lhs, rhs) result(opr)

    Operator integer(I2P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I2P_sum_vector

Operator integer(I2P) +.

  • private elemental function I2P_sum_vector(lhs, rhs) result(opr)

    Operator integer(I2P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I4P_eq_vector

Operator integer(I4P) ==.

  • private elemental function I4P_eq_vector(lhs, rhs) result(opr)

    Operator integer(I4P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I4P_great_eq_vector

Operator integer(I4P) >=.

  • private elemental function I4P_great_eq_vector(lhs, rhs) result(opr)

    Operator integer(I4P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I4P_great_vector

Operator integer(I4P) >.

  • private elemental function I4P_great_vector(lhs, rhs) result(opr)

    Operator integer(I4P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I4P_low_eq_vector

Operator integer(I4P) <=.

  • private elemental function I4P_low_eq_vector(lhs, rhs) result(opr)

    Operator integer(I4P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I4P_low_vector

Operator integer(I4P) <.

  • private elemental function I4P_low_vector(lhs, rhs) result(opr)

    Operator integer(I4P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I4P_mul_vector

Operator integer(I4P) *.

  • private elemental function I4P_mul_vector(lhs, rhs) result(opr)

    Operator integer(I4P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I4P_not_eq_vector

Operator integer(I4P) /=.

  • private elemental function I4P_not_eq_vector(lhs, rhs) result(opr)

    Operator integer(I4P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I4P_sub_vector

Operator integer(I4P) -.

  • private elemental function I4P_sub_vector(lhs, rhs) result(opr)

    Operator integer(I4P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I4P_sum_vector

Operator integer(I4P) +.

  • private elemental function I4P_sum_vector(lhs, rhs) result(opr)

    Operator integer(I4P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I8P_eq_vector

Operator integer(I8P) ==.

  • private elemental function I8P_eq_vector(lhs, rhs) result(opr)

    Operator integer(I8P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I8P_great_eq_vector

Operator integer(I8P) >=.

  • private elemental function I8P_great_eq_vector(lhs, rhs) result(opr)

    Operator integer(I8P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I8P_great_vector

Operator integer(I8P) >.

  • private elemental function I8P_great_vector(lhs, rhs) result(opr)

    Operator integer(I8P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I8P_low_eq_vector

Operator integer(I8P) <=.

  • private elemental function I8P_low_eq_vector(lhs, rhs) result(opr)

    Operator integer(I8P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I8P_low_vector

Operator integer(I8P) <.

  • private elemental function I8P_low_vector(lhs, rhs) result(opr)

    Operator integer(I8P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I8P_mul_vector

Operator integer(I8P) *.

  • private elemental function I8P_mul_vector(lhs, rhs) result(opr)

    Operator integer(I8P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I8P_not_eq_vector

Operator integer(I8P) /=.

  • private elemental function I8P_not_eq_vector(lhs, rhs) result(opr)

    Operator integer(I8P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: I8P_sub_vector

Operator integer(I8P) -.

  • private elemental function I8P_sub_vector(lhs, rhs) result(opr)

    Operator integer(I8P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: I8P_sum_vector

Operator integer(I8P) +.

  • private elemental function I8P_sum_vector(lhs, rhs) result(opr)

    Operator integer(I8P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: R16P_eq_vector

Operator real(R16P) ==.

  • private elemental function R16P_eq_vector(lhs, rhs) result(opr)

    Operator real(R16P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R16P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R16P_great_eq_vector

Operator real(R16P) >=.

  • private elemental function R16P_great_eq_vector(lhs, rhs) result(opr)

    Operator real(R16P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R16P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R16P_great_vector

Operator real(R16P) >.

  • private elemental function R16P_great_vector(lhs, rhs) result(opr)

    Operator real(R16P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R16P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R16P_low_eq_vector

Operator real(R16P) <=.

  • private elemental function R16P_low_eq_vector(lhs, rhs) result(opr)

    Operator real(R16P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R16P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R16P_low_vector

Operator real(R16P) <.

  • private elemental function R16P_low_vector(lhs, rhs) result(opr)

    Operator real(R16P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R16P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R16P_mul_vector

Operator real(R16P) *.

  • private elemental function R16P_mul_vector(lhs, rhs) result(opr)

    Operator real(R16P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R16P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: R16P_not_eq_vector

Operator real(R16P) /=.

  • private elemental function R16P_not_eq_vector(lhs, rhs) result(opr)

    Operator real(R16P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R16P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R16P_sub_vector

Operator real(R16P) -.

  • private elemental function R16P_sub_vector(lhs, rhs) result(opr)

    Operator real(R16P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R16P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: R16P_sum_vector

Operator real(R16P) +.

  • private elemental function R16P_sum_vector(lhs, rhs) result(opr)

    Operator real(R16P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R16P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: R4P_eq_vector

Operator real(R4P) ==.

  • private elemental function R4P_eq_vector(lhs, rhs) result(opr)

    Operator real(R4P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R4P_great_eq_vector

Operator real(R4P) >=.

  • private elemental function R4P_great_eq_vector(lhs, rhs) result(opr)

    Operator real(R4P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R4P_great_vector

Operator real(R4P) >.

  • private elemental function R4P_great_vector(lhs, rhs) result(opr)

    Operator real(R4P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R4P_low_eq_vector

Operator real(R4P) <=.

  • private elemental function R4P_low_eq_vector(lhs, rhs) result(opr)

    Operator real(R4P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R4P_low_vector

Operator real(R4P) <.

  • private elemental function R4P_low_vector(lhs, rhs) result(opr)

    Operator real(R4P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R4P_mul_vector

Operator real(R4P) *.

  • private elemental function R4P_mul_vector(lhs, rhs) result(opr)

    Operator real(R4P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: R4P_not_eq_vector

Operator real(R4P) /=.

  • private elemental function R4P_not_eq_vector(lhs, rhs) result(opr)

    Operator real(R4P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R4P_sub_vector

Operator real(R4P) -.

  • private elemental function R4P_sub_vector(lhs, rhs) result(opr)

    Operator real(R4P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: R4P_sum_vector

Operator real(R4P) +.

  • private elemental function R4P_sum_vector(lhs, rhs) result(opr)

    Operator real(R4P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: R8P_eq_vector

Operator real(R8P) ==.

  • private elemental function R8P_eq_vector(lhs, rhs) result(opr)

    Operator real(R8P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R8P_great_eq_vector

Operator real(R8P) >=.

  • private elemental function R8P_great_eq_vector(lhs, rhs) result(opr)

    Operator real(R8P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R8P_great_vector

Operator real(R8P) >.

  • private elemental function R8P_great_vector(lhs, rhs) result(opr)

    Operator real(R8P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R8P_low_eq_vector

Operator real(R8P) <=.

  • private elemental function R8P_low_eq_vector(lhs, rhs) result(opr)

    Operator real(R8P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R8P_low_vector

Operator real(R8P) <.

  • private elemental function R8P_low_vector(lhs, rhs) result(opr)

    Operator real(R8P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R8P_mul_vector

Operator real(R8P) *.

  • private elemental function R8P_mul_vector(lhs, rhs) result(opr)

    Operator real(R8P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: R8P_not_eq_vector

Operator real(R8P) /=.

  • private elemental function R8P_not_eq_vector(lhs, rhs) result(opr)

    Operator real(R8P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(rhs) :: R8P_sub_vector

Operator real(R8P) -.

  • private elemental function R8P_sub_vector(lhs, rhs) result(opr)

    Operator real(R8P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(rhs) :: R8P_sum_vector

Operator real(R8P) +.

  • private elemental function R8P_sum_vector(lhs, rhs) result(opr)

    Operator real(R8P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, public, pass(self) :: angle

Return the angle (rad) between two vectors.

  • public elemental function angle(self, other) result(angle_)

    Calculate the angle (rad) between two vectors.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    The first vector.

    type(vector), intent(in) :: other

    Other vector.

    Return Value real(kind=R8P)

    Angle between vectors, in radians.

procedure, private, pass(lhs) :: assign_I1P

Operator = integer(I1P).

  • private elemental subroutine assign_I1P(lhs, rhs)

    Operator = integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

procedure, private, pass(lhs) :: assign_I2P

Operator = integer(I2P).

  • private elemental subroutine assign_I2P(lhs, rhs)

    Operator = integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

procedure, private, pass(lhs) :: assign_I4P

Operator = integer(I4P).

  • private elemental subroutine assign_I4P(lhs, rhs)

    Operator = integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

procedure, private, pass(lhs) :: assign_I8P

Operator = integer(I8P).

  • private elemental subroutine assign_I8P(lhs, rhs)

    Operator = integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

procedure, private, pass(lhs) :: assign_R16P

Operator = real(R16P).

  • private elemental subroutine assign_R16P(lhs, rhs)

    Operator = real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

procedure, private, pass(lhs) :: assign_R4P

Operator = real(R4P).

  • private elemental subroutine assign_R4P(lhs, rhs)

    Operator = real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

procedure, private, pass(lhs) :: assign_R8P

Operator = real(R8P).

  • private elemental subroutine assign_R8P(lhs, rhs)

    Operator = real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

procedure, private, pass(lhs) :: assign_vector

Operator =.

  • private pure subroutine assign_vector(lhs, rhs)

    Operator =

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

generic, public :: assignment(=) => assign_vector, assign_R8P, assign_R4P, assign_I8P, assign_I4P, assign_I2P, assign_I1P

Overloading =.

  • private pure subroutine assign_vector(lhs, rhs)

    Operator =

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

  • private elemental subroutine assign_R8P(lhs, rhs)

    Operator = real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

  • private elemental subroutine assign_R4P(lhs, rhs)

    Operator = real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

  • private elemental subroutine assign_I8P(lhs, rhs)

    Operator = integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

  • private elemental subroutine assign_I4P(lhs, rhs)

    Operator = integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

  • private elemental subroutine assign_I2P(lhs, rhs)

    Operator = integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

  • private elemental subroutine assign_I1P(lhs, rhs)

    Operator = integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

procedure, public, pass(lhs) :: crossproduct

Compute the cross product.

  • private elemental function crossproduct(lhs, rhs) result(cross)

    Compute the cross product.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Cross product vector.

procedure, public, pass(self) :: distance_to_line

Return the distance (scalar) to line.

  • public elemental function distance_to_line(self, pt1, pt2) result(distance)

    Calculate the distance (scalar) to line defined by the 2 points.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    The point from which computing the distance.

    type(vector), intent(in) :: pt1

    First line point.

    type(vector), intent(in) :: pt2

    Second line point.

    Return Value real(kind=R8P)

    Face normal.

procedure, public, pass(self) :: distance_to_plane

Return the distance (signed, scalar) to plane.

  • public elemental function distance_to_plane(self, pt1, pt2, pt3) result(distance)

    Calculate the distance (signed, scalar) to plane defined by the 3 points.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    The point from which computing the distance.

    type(vector), intent(in) :: pt1

    First plane point.

    type(vector), intent(in) :: pt2

    Second plane point.

    type(vector), intent(in) :: pt3

    Third plane point.

    Return Value real(kind=R8P)

    Face normal.

procedure, public, pass(self) :: distance_vectorial_to_plane

Return the distance (vectorial) to plane.

  • public elemental function distance_vectorial_to_plane(self, pt1, pt2, pt3) result(distance)

    Calculate the distance (vectorial) to plane defined by the 3 points.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    The point from which computing the distance.

    type(vector), intent(in) :: pt1

    First plane point.

    type(vector), intent(in) :: pt2

    Second plane point.

    type(vector), intent(in) :: pt3

    Third plane point.

    Return Value type(vector)

    Face normal.

procedure, public, pass(lhs) :: dotproduct

Compute the scalar (dot) product.

  • private elemental function dotproduct(lhs, rhs) result(dot)

    Compute the scalar (dot) product.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value real(kind=R8P)

    Dot product.

procedure, public, nopass :: face_normal3

Return the normal of the face.

  • public elemental function face_normal3(pt1, pt2, pt3, norm) result(normal)

    Calculate the normal of the face defined by the 3 points.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    type(vector), intent(in) :: pt1

    First face point.

    type(vector), intent(in) :: pt2

    Second face point.

    type(vector), intent(in) :: pt3

    Third face point.

    character(len=1), intent(in), optional :: norm

    If ‘norm’ is passed as argument the normal is normalized.

    Return Value type(vector)

    Face normal.

procedure, public, nopass :: face_normal4

Return the normal of the face.

  • public elemental function face_normal4(pt1, pt2, pt3, pt4, norm) result(normal)

    Calculate the normal of the face defined by 4 points.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    type(vector), intent(in) :: pt1

    First face point.

    type(vector), intent(in) :: pt2

    Second face point.

    type(vector), intent(in) :: pt3

    Third face point.

    type(vector), intent(in) :: pt4

    Fourth face point.

    character(len=1), intent(in), optional :: norm

    If ‘norm’ is passed as argument the normal is normalized.

    Return Value type(vector)

    Face normal.

procedure, public, pass(self) :: iolen

Compute IO length.

  • public function iolen(self) result(iolen_)

    Compute IO length.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    Vector.

    Return Value integer(kind=I4P)

    IO length.

procedure, public, pass(self) :: is_collinear

Return true if the point is col- linear with other two given points.

  • public elemental function is_collinear(self, pt1, pt2, tolerance) result(is_collinear_)

    Return true if the point is collinear with other two given points.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    Vector.

    type(vector), intent(in) :: pt1

    First line point.

    type(vector), intent(in) :: pt2

    Second line point.

    real(kind=R8P), intent(in), optional :: tolerance

    Tolerance for collinearity check.

    Return Value logical

    Inquire result.

procedure, public, pass(self) :: is_concyclic

Return true if the point is concy- clic with other three given pts.

  • public elemental function is_concyclic(self, pt1, pt2, pt3, tolerance) result(is_concyclic_)

    Return true if the point is concyclic with other three given points.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    Vector.

    type(vector), intent(in) :: pt1

    First arc point.

    type(vector), intent(in) :: pt2

    Second arc point.

    type(vector), intent(in) :: pt3

    Third arc point.

    real(kind=R8P), intent(in), optional :: tolerance

    Tolerance for concyclicity check.

    Return Value logical

    Inquire result.

procedure, public, pass(self) :: load_from_file

Load vector from file.

  • private subroutine load_from_file(self, unit, fmt, pos, iostat, iomsg)

    Load vector from file.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

    integer(kind=I4P), intent(in) :: unit

    Logic unit.

    character, intent(in), optional :: fmt

    IO format.

    integer(kind=I8P), intent(in), optional :: pos

    Position specifier.

    integer(kind=I4P), intent(out), optional :: iostat

    IO error.

    character, intent(out), optional :: iomsg

    IO error message.

procedure, public, pass(rhs) :: matrixproduct

Compute the matrix product.

  • private pure function matrixproduct(lhs, rhs) result(opr)

    Compute the matrix product.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs(3,3)

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

generic, public :: mirror => mirror_by_normal, mirror_by_matrix

Mirror vector.

  • private pure subroutine mirror_by_normal(self, normal)

    Mirror vector given normal of mirroring plane.

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

    type(vector), intent(in) :: normal

    Normal of mirroring plane.

  • private pure subroutine mirror_by_matrix(self, matrix)

    Mirror vector given matrix (of mirroring).

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

    real(kind=R8P), intent(in) :: matrix(3,3)

    Mirroring matrix.

procedure, private, pass(self) :: mirror_by_matrix

Mirror vector given matrix.

  • private pure subroutine mirror_by_matrix(self, matrix)

    Mirror vector given matrix (of mirroring).

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

    real(kind=R8P), intent(in) :: matrix(3,3)

    Mirroring matrix.

procedure, private, pass(self) :: mirror_by_normal

Mirror vector given normal of mirroring plane.

  • private pure subroutine mirror_by_normal(self, normal)

    Mirror vector given normal of mirroring plane.

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

    type(vector), intent(in) :: normal

    Normal of mirroring plane.

procedure, private, pass(rhs) :: negative

Operator -, unary.

  • private elemental function negative(rhs) result(opr)

    Operator - unary.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, public, pass(self) :: normL2

Return the norm L2 of vector.

  • public elemental function normL2(self) result(norm)

    Return the norm L2 of vector.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    Vector.

    Return Value real(kind=R8P)

    Norm L2.

procedure, public, pass(self) :: normalize

Normalize a vector.

  • private elemental subroutine normalize(self)

    Normalize vector.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

procedure, public, pass(self) :: normalized

Return a normalized copy of vector.

  • public elemental function normalized(self) result(norm)

    Return a normalized copy of vector.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    Vector.

    Return Value type(vector)

    Normalized copy.

Overloading *.

  • private elemental function vector_mul_vector(lhs, rhs) result(opr)

    Operator *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function R8P_mul_vector(lhs, rhs) result(opr)

    Operator real(R8P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_mul_R8P(lhs, rhs) result(opr)

    Operator * real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function R4P_mul_vector(lhs, rhs) result(opr)

    Operator real(R4P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_mul_R4P(lhs, rhs) result(opr)

    Operator * real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I8P_mul_vector(lhs, rhs) result(opr)

    Operator integer(I8P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_mul_I8P(lhs, rhs) result(opr)

    Operator * integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I4P_mul_vector(lhs, rhs) result(opr)

    Operator integer(I4P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_mul_I4P(lhs, rhs) result(opr)

    Operator * integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I2P_mul_vector(lhs, rhs) result(opr)

    Operator integer(I2P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_mul_I2P(lhs, rhs) result(opr)

    Operator * integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I1P_mul_vector(lhs, rhs) result(opr)

    Operator integer(I1P) *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_mul_I1P(lhs, rhs) result(opr)

    Operator * integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

Overloading +.

  • private elemental function positive(rhs) result(opr)

    Operator + unary.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sum_vector(lhs, rhs) result(opr)

    Operator +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function R8P_sum_vector(lhs, rhs) result(opr)

    Operator real(R8P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sum_R8P(lhs, rhs) result(opr)

    Operator + real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function R4P_sum_vector(lhs, rhs) result(opr)

    Operator real(R4P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sum_R4P(lhs, rhs) result(opr)

    Operator + real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I8P_sum_vector(lhs, rhs) result(opr)

    Operator integer(I8P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sum_I8P(lhs, rhs) result(opr)

    Operator + integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I4P_sum_vector(lhs, rhs) result(opr)

    Operator integer(I4P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sum_I4P(lhs, rhs) result(opr)

    Operator + integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I2P_sum_vector(lhs, rhs) result(opr)

    Operator integer(I2P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sum_I2P(lhs, rhs) result(opr)

    Operator + integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I1P_sum_vector(lhs, rhs) result(opr)

    Operator integer(I1P) +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sum_I1P(lhs, rhs) result(opr)

    Operator + integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

Overloading -.

  • private elemental function negative(rhs) result(opr)

    Operator - unary.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sub_vector(lhs, rhs) result(opr)

    Operator -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function R8P_sub_vector(lhs, rhs) result(opr)

    Operator real(R8P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sub_R8P(lhs, rhs) result(opr)

    Operator - real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function R4P_sub_vector(lhs, rhs) result(opr)

    Operator real(R4P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sub_R4P(lhs, rhs) result(opr)

    Operator - real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I8P_sub_vector(lhs, rhs) result(opr)

    Operator integer(I8P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sub_I8P(lhs, rhs) result(opr)

    Operator - integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I4P_sub_vector(lhs, rhs) result(opr)

    Operator integer(I4P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sub_I4P(lhs, rhs) result(opr)

    Operator - integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I2P_sub_vector(lhs, rhs) result(opr)

    Operator integer(I2P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sub_I2P(lhs, rhs) result(opr)

    Operator - integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function I1P_sub_vector(lhs, rhs) result(opr)

    Operator integer(I1P) -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_sub_I1P(lhs, rhs) result(opr)

    Operator - integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

generic, public :: operator(.cross.) => crossproduct

Cross product operator.

  • private elemental function crossproduct(lhs, rhs) result(cross)

    Compute the cross product.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Cross product vector.

generic, public :: operator(.dot.) => dotproduct

Scalar (dot) product operator.

  • private elemental function dotproduct(lhs, rhs) result(dot)

    Compute the scalar (dot) product.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value real(kind=R8P)

    Dot product.

generic, public :: operator(.matrix.) => matrixproduct

Matrix product operator.

  • private pure function matrixproduct(lhs, rhs) result(opr)

    Compute the matrix product.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs(3,3)

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

generic, public :: operator(.ortho.) => orthogonal

Component of lhs orthogonal to rhs operator.

  • private elemental function orthogonal(lhs, rhs) result(ortho)

    Compute the component of lhs orthogonal to rhs.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Component of of lhs orthogonal to rhs.

generic, public :: operator(.paral.) => parallel

Component of lhs parallel to rhs operator.

  • private elemental function parallel(lhs, rhs) result(paral)

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Compute the component of lhs parallel to rhs.

     type(vector) :: pt(0:2)
     pt(1) = 2 * ex + 3 * ey
     pt(2) = ex
     pt(0) = pt(1).paral.pt(2)
     print "(3(F3.1,1X))", abs(pt(0)%x), abs(pt(0)%y), abs(pt(0)%z)
    

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Component of of lhs parallel to rhs.

Overloading /.

  • private elemental function vector_div_vector(lhs, rhs) result(opr)

    Operator /.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_div_R8P(lhs, rhs) result(opr)

    Operator / real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_div_R4P(lhs, rhs) result(opr)

    Operator / real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_div_I8P(lhs, rhs) result(opr)

    Operator / integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_div_I4P(lhs, rhs) result(opr)

    Operator / integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_div_I2P(lhs, rhs) result(opr)

    Operator / integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

  • private elemental function vector_div_I1P(lhs, rhs) result(opr)

    Operator / integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

Overloading /=.

  • private elemental function vector_not_eq_vector(lhs, rhs) result(opr)

    Operator /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

  • private elemental function R8P_not_eq_vector(lhs, rhs) result(opr)

    Operator real(R8P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_not_eq_R8P(lhs, rhs) result(opr)

    Operator /= real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function R4P_not_eq_vector(lhs, rhs) result(opr)

    Operator real(R4P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_not_eq_R4P(lhs, rhs) result(opr)

    Operator /= real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I8P_not_eq_vector(lhs, rhs) result(opr)

    Operator integer(I8P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_not_eq_I8P(lhs, rhs) result(opr)

    Operator /= integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I4P_not_eq_vector(lhs, rhs) result(opr)

    Operator integer(I4P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_not_eq_I4P(lhs, rhs) result(opr)

    Operator /= integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I2P_not_eq_vector(lhs, rhs) result(opr)

    Operator integer(I2P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_not_eq_I2P(lhs, rhs) result(opr)

    Operator /= integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I1P_not_eq_vector(lhs, rhs) result(opr)

    Operator integer(I1P) /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_not_eq_I1P(lhs, rhs) result(opr)

    Operator /= integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

Overloading <.

  • private elemental function vector_low_vector(lhs, rhs) result(opr)

    Operator <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

  • private elemental function R8P_low_vector(lhs, rhs) result(opr)

    Operator real(R8P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_R8P(lhs, rhs) result(opr)

    Operator < real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function R4P_low_vector(lhs, rhs) result(opr)

    Operator real(R4P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_R4P(lhs, rhs) result(opr)

    Operator < real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I8P_low_vector(lhs, rhs) result(opr)

    Operator integer(I8P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_I8P(lhs, rhs) result(opr)

    Operator < integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I4P_low_vector(lhs, rhs) result(opr)

    Operator integer(I4P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_I4P(lhs, rhs) result(opr)

    Operator < integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I2P_low_vector(lhs, rhs) result(opr)

    Operator integer(I2P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_I2P(lhs, rhs) result(opr)

    Operator < integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I1P_low_vector(lhs, rhs) result(opr)

    Operator integer(I1P) <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_I1P(lhs, rhs) result(opr)

    Operator < integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

Overloading <=.

  • private elemental function vector_low_eq_vector(lhs, rhs) result(opr)

    Operator <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

  • private elemental function R8P_low_eq_vector(lhs, rhs) result(opr)

    Operator real(R8P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_eq_R8P(lhs, rhs) result(opr)

    Operator <= real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function R4P_low_eq_vector(lhs, rhs) result(opr)

    Operator real(R4P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_eq_R4P(lhs, rhs) result(opr)

    Operator <= real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I8P_low_eq_vector(lhs, rhs) result(opr)

    Operator integer(I8P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_eq_I8P(lhs, rhs) result(opr)

    Operator <= integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I4P_low_eq_vector(lhs, rhs) result(opr)

    Operator integer(I4P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_eq_I4P(lhs, rhs) result(opr)

    Operator <= integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I2P_low_eq_vector(lhs, rhs) result(opr)

    Operator integer(I2P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_eq_I2P(lhs, rhs) result(opr)

    Operator <= integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I1P_low_eq_vector(lhs, rhs) result(opr)

    Operator integer(I1P) <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_low_eq_I1P(lhs, rhs) result(opr)

    Operator <= integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

Overloading ==.

  • private elemental function vector_eq_vector(lhs, rhs) result(opr)

    Operator ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

  • private elemental function R8P_eq_vector(lhs, rhs) result(opr)

    Operator real(R8P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_eq_R8P(lhs, rhs) result(opr)

    Operator == real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function R4P_eq_vector(lhs, rhs) result(opr)

    Operator real(R4P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_eq_R4P(lhs, rhs) result(opr)

    Operator == real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I8P_eq_vector(lhs, rhs) result(opr)

    Operator integer(I8P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_eq_I8P(lhs, rhs) result(opr)

    Operator == integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I4P_eq_vector(lhs, rhs) result(opr)

    Operator integer(I4P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_eq_I4P(lhs, rhs) result(opr)

    Operator == integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I2P_eq_vector(lhs, rhs) result(opr)

    Operator integer(I2P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_eq_I2P(lhs, rhs) result(opr)

    Operator == integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I1P_eq_vector(lhs, rhs) result(opr)

    Operator integer(I1P) ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_eq_I1P(lhs, rhs) result(opr)

    Operator == integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

Overloading >.

  • private elemental function vector_great_vector(lhs, rhs) result(opr)

    Operator >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

  • private elemental function R8P_great_vector(lhs, rhs) result(opr)

    Operator real(R8P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_R8P(lhs, rhs) result(opr)

    Operator > real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function R4P_great_vector(lhs, rhs) result(opr)

    Operator real(R4P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_R4P(lhs, rhs) result(opr)

    Operator > real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I8P_great_vector(lhs, rhs) result(opr)

    Operator integer(I8P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_I8P(lhs, rhs) result(opr)

    Operator > integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I4P_great_vector(lhs, rhs) result(opr)

    Operator integer(I4P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_I4P(lhs, rhs) result(opr)

    Operator > integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I2P_great_vector(lhs, rhs) result(opr)

    Operator integer(I2P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_I2P(lhs, rhs) result(opr)

    Operator > integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I1P_great_vector(lhs, rhs) result(opr)

    Operator integer(I1P) >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_I1P(lhs, rhs) result(opr)

    Operator > integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

Overloading >=.

  • private elemental function vector_great_eq_vector(lhs, rhs) result(opr)

    Operator >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

  • private elemental function R8P_great_eq_vector(lhs, rhs) result(opr)

    Operator real(R8P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_eq_R8P(lhs, rhs) result(opr)

    Operator >= real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function R4P_great_eq_vector(lhs, rhs) result(opr)

    Operator real(R4P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    real(kind=R4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_eq_R4P(lhs, rhs) result(opr)

    Operator >= real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I8P_great_eq_vector(lhs, rhs) result(opr)

    Operator integer(I8P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I8P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_eq_I8P(lhs, rhs) result(opr)

    Operator >= integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I4P_great_eq_vector(lhs, rhs) result(opr)

    Operator integer(I4P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I4P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_eq_I4P(lhs, rhs) result(opr)

    Operator >= integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I2P_great_eq_vector(lhs, rhs) result(opr)

    Operator integer(I2P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I2P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_eq_I2P(lhs, rhs) result(opr)

    Operator >= integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function I1P_great_eq_vector(lhs, rhs) result(opr)

    Operator integer(I1P) >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    integer(kind=I1P), intent(in) :: lhs

    Left hand side.

    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

  • private elemental function vector_great_eq_I1P(lhs, rhs) result(opr)

    Operator >= integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, public, pass(lhs) :: orthogonal

Compute the component of lhs orthogonal to rhs.

  • private elemental function orthogonal(lhs, rhs) result(ortho)

    Compute the component of lhs orthogonal to rhs.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Component of of lhs orthogonal to rhs.

procedure, public, pass(lhs) :: parallel

Compute the component of lhs parallel to rhs.

  • private elemental function parallel(lhs, rhs) result(paral)

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Compute the component of lhs parallel to rhs.

     type(vector) :: pt(0:2)
     pt(1) = 2 * ex + 3 * ey
     pt(2) = ex
     pt(0) = pt(1).paral.pt(2)
     print "(3(F3.1,1X))", abs(pt(0)%x), abs(pt(0)%y), abs(pt(0)%z)
    

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Component of of lhs parallel to rhs.

procedure, private, pass(rhs) :: positive

Operator +, unary.

  • private elemental function positive(rhs) result(opr)

    Operator + unary.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, public, pass(self) :: printf

Print vector components with a “pretty” format.

  • private subroutine printf(self, unit, prefix, sep, suffix, iostat, iomsg)

    Print in a pretty ascii format the components of type Vector.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    Vector.

    integer(kind=I4P), intent(in), optional :: unit

    Logic unit.

    character, intent(in), optional :: prefix

    Prefix string.

    character, intent(in), optional :: sep

    Components separator.

    character, intent(in), optional :: suffix

    Suffix string.

    integer(kind=I4P), intent(out), optional :: iostat

    IO error.

    character, intent(out), optional :: iomsg

    IO error message.

procedure, public, pass(self) :: projection_onto_plane

Calculate the projection of point onto plane defined by 3 points.

  • public elemental function projection_onto_plane(self, pt1, pt2, pt3) result(projection)

    Calculate the projection of point onto plane defined by 3 points.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    The point from which computing the distance.

    type(vector), intent(in) :: pt1

    First plane point.

    type(vector), intent(in) :: pt2

    Second plane point.

    type(vector), intent(in) :: pt3

    Third plane point.

    Return Value type(vector)

    Point projection.

generic, public :: rotate => rotate_by_axis_angle, rotate_by_matrix

Rotate vector.

  • private pure subroutine rotate_by_axis_angle(self, axis, angle)

    Rotate vector given axis and angle.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

    type(vector), intent(in) :: axis

    Axis of rotation.

    real(kind=R8P), intent(in) :: angle

    Angle of rotation.

  • private pure subroutine rotate_by_matrix(self, matrix)

    Rotate vector given matrix (of ratation).

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

    real(kind=R8P), intent(in) :: matrix(3,3)

    Rotation matrix.

procedure, private, pass(self) :: rotate_by_axis_angle

Rotate vector given axis and angle.

  • private pure subroutine rotate_by_axis_angle(self, axis, angle)

    Rotate vector given axis and angle.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

    type(vector), intent(in) :: axis

    Axis of rotation.

    real(kind=R8P), intent(in) :: angle

    Angle of rotation.

procedure, private, pass(self) :: rotate_by_matrix

Rotate vector given matrix.

  • private pure subroutine rotate_by_matrix(self, matrix)

    Rotate vector given matrix (of ratation).

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(inout) :: self

    Vector.

    real(kind=R8P), intent(in) :: matrix(3,3)

    Rotation matrix.

procedure, public, pass(self) :: save_into_file

Save vector into file.

  • private subroutine save_into_file(self, unit, fmt, pos, iostat, iomsg)

    Save vector into file.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    Vector data.

    integer(kind=I4P), intent(in) :: unit

    Logic unit.

    character, intent(in), optional :: fmt

    IO format.

    integer(kind=I8P), intent(in), optional :: pos

    Position specifier.

    integer(kind=I4P), intent(out), optional :: iostat

    IO error.

    character, intent(out), optional :: iomsg

    IO error message.

procedure, public, pass(self) :: sq_norm

Return the square of the norm.

  • public elemental function sq_norm(self) result(sq)

    Return the square of the norm of vector.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: self

    Vector.

    Return Value real(kind=R8P)

    Square of the Norm.

procedure, private, pass(lhs) :: vector_div_I1P

Operator / integer(I1P).

  • private elemental function vector_div_I1P(lhs, rhs) result(opr)

    Operator / integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_div_I2P

Operator / integer(I2P).

  • private elemental function vector_div_I2P(lhs, rhs) result(opr)

    Operator / integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_div_I4P

Operator / integer(I4P).

  • private elemental function vector_div_I4P(lhs, rhs) result(opr)

    Operator / integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_div_I8P

Operator / integer(I8P).

  • private elemental function vector_div_I8P(lhs, rhs) result(opr)

    Operator / integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_div_R16P

Operator / real(R16P).

  • private elemental function vector_div_R16P(lhs, rhs) result(opr)

    Operator / real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_div_R4P

Operator / real(R4P).

  • private elemental function vector_div_R4P(lhs, rhs) result(opr)

    Operator / real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_div_R8P

Operator / real(R8P).

  • private elemental function vector_div_R8P(lhs, rhs) result(opr)

    Operator / real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_div_vector

Operator /.

  • private elemental function vector_div_vector(lhs, rhs) result(opr)

    Operator /.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_eq_I1P

Operator == integer(I1P).

  • private elemental function vector_eq_I1P(lhs, rhs) result(opr)

    Operator == integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_eq_I2P

Operator == integer(I2P).

  • private elemental function vector_eq_I2P(lhs, rhs) result(opr)

    Operator == integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_eq_I4P

Operator == integer(I4P).

  • private elemental function vector_eq_I4P(lhs, rhs) result(opr)

    Operator == integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_eq_I8P

Operator == integer(I8P).

  • private elemental function vector_eq_I8P(lhs, rhs) result(opr)

    Operator == integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_eq_R16P

Operator == real(R16P).

  • private elemental function vector_eq_R16P(lhs, rhs) result(opr)

    Operator == real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_eq_R4P

Operator == real(R4P).

  • private elemental function vector_eq_R4P(lhs, rhs) result(opr)

    Operator == real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_eq_R8P

Operator == real(R8P).

  • private elemental function vector_eq_R8P(lhs, rhs) result(opr)

    Operator == real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_eq_vector

Operator ==.

  • private elemental function vector_eq_vector(lhs, rhs) result(opr)

    Operator ==.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

procedure, private, pass(lhs) :: vector_great_I1P

Operator > integer(I1P).

  • private elemental function vector_great_I1P(lhs, rhs) result(opr)

    Operator > integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_I2P

Operator > integer(I2P).

  • private elemental function vector_great_I2P(lhs, rhs) result(opr)

    Operator > integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_I4P

Operator > integer(I4P).

  • private elemental function vector_great_I4P(lhs, rhs) result(opr)

    Operator > integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_I8P

Operator > integer(I8P).

  • private elemental function vector_great_I8P(lhs, rhs) result(opr)

    Operator > integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_R16P

Operator > real(R16P).

  • private elemental function vector_great_R16P(lhs, rhs) result(opr)

    Operator > real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_R4P

Operator > real(R4P).

  • private elemental function vector_great_R4P(lhs, rhs) result(opr)

    Operator > real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_R8P

Operator > real(R8P).

  • private elemental function vector_great_R8P(lhs, rhs) result(opr)

    Operator > real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_eq_I1P

Operator >= integer(I1P).

  • private elemental function vector_great_eq_I1P(lhs, rhs) result(opr)

    Operator >= integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_eq_I2P

Operator >= integer(I2P).

  • private elemental function vector_great_eq_I2P(lhs, rhs) result(opr)

    Operator >= integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_eq_I4P

Operator >= integer(I4P).

  • private elemental function vector_great_eq_I4P(lhs, rhs) result(opr)

    Operator >= integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_eq_I8P

Operator >= integer(I8P).

  • private elemental function vector_great_eq_I8P(lhs, rhs) result(opr)

    Operator >= integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_eq_R16P

Operator >= real(R16P).

  • private elemental function vector_great_eq_R16P(lhs, rhs) result(opr)

    Operator >= real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_eq_R4P

Operator >= real(R4P).

  • private elemental function vector_great_eq_R4P(lhs, rhs) result(opr)

    Operator >= real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_eq_R8P

Operator >= real(R8P).

  • private elemental function vector_great_eq_R8P(lhs, rhs) result(opr)

    Operator >= real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_great_eq_vector

Operator >=.

  • private elemental function vector_great_eq_vector(lhs, rhs) result(opr)

    Operator >=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

procedure, private, pass(lhs) :: vector_great_vector

Operator >.

  • private elemental function vector_great_vector(lhs, rhs) result(opr)

    Operator >.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

procedure, private, pass(lhs) :: vector_low_I1P

Operator < integer(I1P).

  • private elemental function vector_low_I1P(lhs, rhs) result(opr)

    Operator < integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_I2P

Operator < integer(I2P).

  • private elemental function vector_low_I2P(lhs, rhs) result(opr)

    Operator < integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_I4P

Operator < integer(I4P).

  • private elemental function vector_low_I4P(lhs, rhs) result(opr)

    Operator < integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_I8P

Operator < integer(I8P).

  • private elemental function vector_low_I8P(lhs, rhs) result(opr)

    Operator < integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_R16P

Operator < real(R16P).

  • private elemental function vector_low_R16P(lhs, rhs) result(opr)

    Operator < real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_R4P

Operator < real(R4P).

  • private elemental function vector_low_R4P(lhs, rhs) result(opr)

    Operator < real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_R8P

Operator < real(R8P).

  • private elemental function vector_low_R8P(lhs, rhs) result(opr)

    Operator < real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_eq_I1P

Operator <= integer(I1P).

  • private elemental function vector_low_eq_I1P(lhs, rhs) result(opr)

    Operator <= integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_eq_I2P

Operator <= integer(I2P).

  • private elemental function vector_low_eq_I2P(lhs, rhs) result(opr)

    Operator <= integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_eq_I4P

Operator <= integer(I4P).

  • private elemental function vector_low_eq_I4P(lhs, rhs) result(opr)

    Operator <= integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_eq_I8P

Operator <= integer(I8P).

  • private elemental function vector_low_eq_I8P(lhs, rhs) result(opr)

    Operator <= integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_eq_R16P

Operator <= real(R16P).

  • private elemental function vector_low_eq_R16P(lhs, rhs) result(opr)

    Operator <= real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_eq_R4P

Operator <= real(R4P).

  • private elemental function vector_low_eq_R4P(lhs, rhs) result(opr)

    Operator <= real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_eq_R8P

Operator <= real(R8P).

  • private elemental function vector_low_eq_R8P(lhs, rhs) result(opr)

    Operator <= real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_low_eq_vector

Operator <=.

  • private elemental function vector_low_eq_vector(lhs, rhs) result(opr)

    Operator <=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

procedure, private, pass(lhs) :: vector_low_vector

Operator <.

  • private elemental function vector_low_vector(lhs, rhs) result(opr)

    Operator <.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

procedure, private, pass(lhs) :: vector_mul_I1P

Operator * integer(I1P).

  • private elemental function vector_mul_I1P(lhs, rhs) result(opr)

    Operator * integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_mul_I2P

Operator * integer(I2P).

  • private elemental function vector_mul_I2P(lhs, rhs) result(opr)

    Operator * integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_mul_I4P

Operator * integer(I4P).

  • private elemental function vector_mul_I4P(lhs, rhs) result(opr)

    Operator * integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_mul_I8P

Operator * integer(I8P).

  • private elemental function vector_mul_I8P(lhs, rhs) result(opr)

    Operator * integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_mul_R16P

Operator * real(R16P).

  • private elemental function vector_mul_R16P(lhs, rhs) result(opr)

    Operator * real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_mul_R4P

Operator * real(R4P).

  • private elemental function vector_mul_R4P(lhs, rhs) result(opr)

    Operator * real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_mul_R8P

Operator * real(R8P).

  • private elemental function vector_mul_R8P(lhs, rhs) result(opr)

    Operator * real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_mul_vector

Operator *.

  • private elemental function vector_mul_vector(lhs, rhs) result(opr)

    Operator *.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_not_eq_I1P

Operator /= integer(I1P).

  • private elemental function vector_not_eq_I1P(lhs, rhs) result(opr)

    Operator /= integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_not_eq_I2P

Operator /= integer(I2P).

  • private elemental function vector_not_eq_I2P(lhs, rhs) result(opr)

    Operator /= integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_not_eq_I4P

Operator /= integer(I4P).

  • private elemental function vector_not_eq_I4P(lhs, rhs) result(opr)

    Operator /= integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_not_eq_I8P

Operator /= integer(I8P).

  • private elemental function vector_not_eq_I8P(lhs, rhs) result(opr)

    Operator /= integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_not_eq_R16P

Operator /= real(R16P).

  • private elemental function vector_not_eq_R16P(lhs, rhs) result(opr)

    Operator /= real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_not_eq_R4P

Operator /= real(R4P).

  • private elemental function vector_not_eq_R4P(lhs, rhs) result(opr)

    Operator /= real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_not_eq_R8P

Operator /= real(R8P).

  • private elemental function vector_not_eq_R8P(lhs, rhs) result(opr)

    Operator /= real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value logical

    Operator result.

procedure, private, pass(lhs) :: vector_not_eq_vector

Operator /=.

  • private elemental function vector_not_eq_vector(lhs, rhs) result(opr)

    Operator /=.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value logical

    The result of the comparison.

procedure, private, pass(lhs) :: vector_sub_I1P

Operator - integer(I1P).

  • private elemental function vector_sub_I1P(lhs, rhs) result(opr)

    Operator - integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sub_I2P

Operator - integer(I2P).

  • private elemental function vector_sub_I2P(lhs, rhs) result(opr)

    Operator - integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sub_I4P

Operator - integer(I4P).

  • private elemental function vector_sub_I4P(lhs, rhs) result(opr)

    Operator - integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sub_I8P

Operator - integer(I8P).

  • private elemental function vector_sub_I8P(lhs, rhs) result(opr)

    Operator - integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sub_R16P

Operator - real(R16P).

  • private elemental function vector_sub_R16P(lhs, rhs) result(opr)

    Operator - real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sub_R4P

Operator - real(R4P).

  • private elemental function vector_sub_R4P(lhs, rhs) result(opr)

    Operator - real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sub_R8P

Operator - real(R8P).

  • private elemental function vector_sub_R8P(lhs, rhs) result(opr)

    Operator - real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sub_vector

Operator -.

  • private elemental function vector_sub_vector(lhs, rhs) result(opr)

    Operator -.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sum_I1P

Operator + integer(I1P).

  • private elemental function vector_sum_I1P(lhs, rhs) result(opr)

    Operator + integer(I1P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I1P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sum_I2P

Operator + integer(I2P).

  • private elemental function vector_sum_I2P(lhs, rhs) result(opr)

    Operator + integer(I2P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I2P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sum_I4P

Operator + integer(I4P).

  • private elemental function vector_sum_I4P(lhs, rhs) result(opr)

    Operator + integer(I4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sum_I8P

Operator + integer(I8P).

  • private elemental function vector_sum_I8P(lhs, rhs) result(opr)

    Operator + integer(I8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    integer(kind=I8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sum_R16P

Operator + real(R16P).

  • private elemental function vector_sum_R16P(lhs, rhs) result(opr)

    Operator + real(R16P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R16P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sum_R4P

Operator + real(R4P).

  • private elemental function vector_sum_R4P(lhs, rhs) result(opr)

    Operator + real(R4P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R4P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sum_R8P

Operator + real(R8P).

  • private elemental function vector_sum_R8P(lhs, rhs) result(opr)

    Operator + real(R8P).

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    real(kind=R8P), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.

procedure, private, pass(lhs) :: vector_sum_vector

Operator +.

  • private elemental function vector_sum_vector(lhs, rhs) result(opr)

    Operator +.

    Read more…

    Arguments

    TypeIntentOptionalAttributesName
    class(vector), intent(in) :: lhs

    Left hand side.

    type(vector), intent(in) :: rhs

    Right hand side.

    Return Value type(vector)

    Operator result.