applySrc_electricMSLiquid_1stOrd Subroutine

public subroutine applySrc_electricMSLiquid_1stOrd(fun, inState, outState, neigh, auxField, nPdfSize, iLevel, varSys, time, phyConvFac, derVarPos)

Update state with source variable "electric_field" Simuilar to derive routine but it updates the state whereas derive is used for tracking

This subroutine's interface must match the abstract interface definition proc_apply_source in derived/mus_source_var_module.f90 in order to be callable via applySrc function pointer.


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


proc~~applysrc_electricmsliquid_1stord~~CallsGraph proc~applysrc_electricmsliquid_1stord applySrc_electricMSLiquid_1stOrd species species proc~applysrc_electricmsliquid_1stord->species



type(mus_varSys_data_type), private, pointer:: fPtr
real(kind=rk), private :: electricField(fun%elemLvl(iLevel)%nElems*3)
real(kind=rk), private :: EF_elem(3)
integer, private :: iElem
integer, private :: nElems
integer, private :: iDir
integer, private :: posInTotal
integer, private :: iField
integer, private :: depField
integer, private :: nScalars
integer, private :: QQ
integer, private :: nInputStates
real(kind=rk), private :: mass_dens(varSys%nStateVars)
real(kind=rk), private :: massFrac(varSys%nStateVars)
real(kind=rk), private :: charge_dens
real(kind=rk), private :: diffForce_cs2inv
real(kind=rk), private, dimension(varSys%nStateVars):: chargeTerm
real(kind=rk), private :: minMolWeight
real(kind=rk), private :: forceTerm
real(kind=rk), private, dimension(3, varSys%nStateVars ):: spcForce
integer, private :: dens_pos
integer, private :: elemOff