mus_applyForce_X Subroutine

private subroutine mus_applyForce_X(me, state, IBMData, layout, varPos, nScalars, nElems_fluid, convFac, time, levelDesc)

This subroutine applies the force calculated to the eulerian elements.


type(mus_IBM_type), intent(in) :: me

datatype to store the surface information

real(kind=rk), intent(inout) :: state(:)

the state array holding the pdfs

type(mus_IBM_tmpData_type), intent(inout) :: IBMData

tmp IBMData type to be filled

type(mus_scheme_layout_type), intent(in) :: layout

scheme layout of the current scheme incl. array of stencils and weights

integer, intent(in) :: varPos(:)

variable positions of the state variables in the levelDesc/state vector

integer, intent(in) :: nScalars

number of scalars in the global variable system

integer, intent(in) :: nElems_fluid

number of fluid elements on this partition and level

type(mus_convertFac_type), intent(in) :: convFac

conversion factors

type(tem_time_type), intent(in) :: time

current time

type(tem_levelDesc_type), intent(in) :: levelDesc

level descriptor incl. ghost and fluid elements


proc~~mus_applyforce_x~~CallsGraph proc~mus_applyforce_x mus_applyForce_X interface~getdensity getDensity proc~mus_applyforce_x->interface~getdensity proc~getdensity_forelemfromstate getDensity_forElemFromState interface~getdensity->proc~getdensity_forelemfromstate proc~getdensity_forpdfsubset getDensity_forPdfSubset interface~getdensity->proc~getdensity_forpdfsubset

Called by

proc~~mus_applyforce_x~~CalledByGraph proc~mus_applyforce_x mus_applyForce_X proc~mus_inamuro_ibm mus_inamuro_IBM proc~mus_inamuro_ibm->proc~mus_applyforce_x proc~do_fast_singlelevel do_fast_singleLevel proc~do_fast_singlelevel->proc~mus_inamuro_ibm



integer, private :: iNeigh
integer, private :: iDir
real(kind=rk), private :: tmp_dens
integer, private :: elem
real(kind=rk), private :: tmp_forceDir
integer, private :: forcePos
integer, private :: nElems