Update state with source variable "force" for generic MRT collision model for turb_channel_force. It uses velocityX average in bulk to adapt the driving force for turbulent channel.
This subroutine's interface must match the abstract interface definition proc_apply_source in derived/mus_source_type_module.f90 in order to be callable via applySrc function pointer.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mus_source_op_type), | intent(in) | :: | fun | Description of method to apply source terms |
||
real(kind=rk), | intent(in) | :: | inState(:) | input pdf vector |
||
real(kind=rk), | intent(inout) | :: | outState(:) | output pdf vector |
||
integer, | intent(in) | :: | neigh(:) | connectivity Array corresponding to state vector |
||
real(kind=rk), | intent(in) | :: | auxField(:) | auxField array |
||
integer, | intent(in) | :: | nPdfSize | number of elements in state Array |
||
integer, | intent(in) | :: | iLevel | current level |
||
type(tem_varSys_type), | intent(in) | :: | varSys | variable system |
||
type(tem_time_type), | intent(in) | :: | time | Point in time at which to evaluate the variable. |
||
type(mus_convertFac_type), | intent(in) | :: | phyConvFac | Physics conversion factor for current level |
||
type(mus_derVarPos_type), | intent(in) | :: | derVarPos(:) | position of derived quantities in varsys |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(mus_varSys_data_type), | private, | pointer | :: | fPtr | |||
type(mus_scheme_type), | private, | pointer | :: | scheme | |||
real(kind=rk), | private | :: | velocity(3) | ||||
real(kind=rk), | private | :: | ucx | ||||
real(kind=rk), | private | :: | uMinusCX(3) | ||||
real(kind=rk), | private | :: | dens | ||||
integer, | private | :: | nElems | ||||
integer, | private | :: | iElem | ||||
integer, | private | :: | iDir | ||||
integer, | private | :: | |||||
integer, | private | :: | nScalars | ||||
integer, | private | :: | posInTotal | ||||
integer, | private | :: | statePos | ||||
integer, | private | :: | elemOff | ||||
integer, | private | :: | vel_pos(3) | ||||
integer, | private | :: | dens_pos | ||||
real(kind=rk), | private | :: | omegaKine | ||||
real(kind=rk), | private | :: | omegaBulk | ||||
real(kind=rk), | private | :: | discForce | ||||
real(kind=rk), | private | :: | forceTerm(27) | ||||
real(kind=rk), | private | :: | momForce(27) | ||||
real(kind=rk), | private | :: | s_mrt(27) | ||||
real(kind=rk), | private | :: | mInvXOmega(27,27) | ||||
real(kind=rk), | private | :: | forceDynL(3) |