Houses derivation that takes calculates the flattened velocity vector and x vector tensor product, resulting in a single harmonic variable
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(VelTProdDerivation), | intent(inout) | :: | this | |||
type(RealArray), | intent(in), | dimension(:) | :: | inputArray | ||
integer(kind=ik), | intent(in), | dimension(:) | :: | indices |
Initialize velocity tensor product derivation object
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(VelTProdDerivation), | intent(inout) | :: | this | |||
type(VSpace), | intent(in) | :: | refVSpace |
Reference velocity space |
||
real(kind=rk), | intent(in), | optional, | dimension(:) | :: | velVec |
Optional velocity space vector. Defaults to velcity grid values |
real(kind=rk), | intent(in), | optional | :: | power |
Optional power to raise the shifted velocity vector to. Defaults to 1 |
Derivation that calculates the flattened tensor product of vector v with a fluid variable, optionally shifting v by a second fluid variable and raising the shifted values to a power
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical, | public | :: | userDefined | = | .false. |
True only if user explicitly sets it to true |
|
real(kind=rk), | private, | allocatable, dimension(:) | :: | v |
Velocity space vector |
||
real(kind=rk), | private | :: | power |
Power to raise the shifted velocity values to |
procedure, public :: isDefined => isDefinedObject | |
procedure, public :: makeDefined => makeDefinedObject | |
procedure, public :: makeUndefined => makeUndefinedObject | |
procedure, public :: init => initVTProdDeriv | |
procedure, public :: calculate => calculateVTProdDeriv |