tensor_mod Module

module~~tensor_mod~~UsesGraph module~tensor_mod tensor_mod module~kinds_mod kinds_mod module~kinds_mod->module~tensor_mod
Help

Module for working with tensors

Used By

module~~tensor_mod~~UsedByGraph module~tensor_mod tensor_mod program~testtensor_prg testTensor_prg module~tensor_mod->program~testtensor_prg module~quaternion_mod quaternion_mod module~tensor_mod->module~quaternion_mod program~testquaternion_prg testQuaternion_prg module~quaternion_mod->program~testquaternion_prg
Help


Interfaces

public interface operator(.o.)

Dot product

  • private pure function dot_vv(u, v) result(o)

    Dot product of two vectors

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in), dimension(3):: u

    First vector

    real(kind=wp), intent(in), dimension(3):: v

    Second vector

    Return Value real(kind=wp)

    Result

  • private pure function dot_vT(u, T) result(o)

    Dot product (left) of a vector and a tensor

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in), dimension(3):: u

    Vector

    real(kind=wp), intent(in), dimension(3,3):: T

    Tensor

    Return Value real(kind=wp), dimension(3)

    Result

  • private pure function dot_Tv(T, v) result(o)

    Dot product (right) of a tensor and a vector

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in), dimension(3,3):: T

    Tensor

    real(kind=wp), intent(in), dimension(3):: v

    Vector

    Return Value real(kind=wp), dimension(3)

    Result

  • private pure function dot_TT(U, V) result(o)

    Dot product of two tensors

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in), dimension(3,3):: U

    First tensor

    real(kind=wp), intent(in), dimension(3,3):: V

    Second tensor

    Return Value real(kind=wp), dimension(3,3)

    Result

public interface operator(.x.)

Cross product

  • private pure function cross_vv(u, v) result(o)

    Cross product of two vectors

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in), dimension(3):: u

    First vector

    real(kind=wp), intent(in), dimension(3):: v

    Second vector

    Return Value real(kind=wp), dimension(3)

    Result

public interface operator(.sx.)

Cross product of 2D vectors

  • private pure function cross_vv2(u, v) result(o)

    Cross product of two 2D vectors

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in), dimension(2):: u

    First vector

    real(kind=wp), intent(in), dimension(2):: v

    Second vector

    Return Value real(kind=wp)

    Result z-component

public interface operator(.d.)

Dyadic product

  • private pure function dyadic_vv(u, v) result(o)

    Dyadic (tensor) product of two vectors

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in), dimension(3):: u

    First vector

    real(kind=wp), intent(in), dimension(3):: v

    Second vector

    Return Value real(kind=wp), dimension(3,3)

    Result

public interface operator(.oo.)

Double dot product

  • private pure function ddot_TT(U, V) result(o)

    Double dot product of two tensors

    Arguments

    Type IntentOptional AttributesName
    real(kind=wp), intent(in), dimension(3,3):: U

    Fisrt tensor

    real(kind=wp), intent(in), dimension(3,3):: V

    Second vector

    Return Value real(kind=wp), dimension(3,3)

    Result