compute_physFlux_nonConst Subroutine

private subroutine compute_physFlux_nonConst(nDofs, nScalars, nElems, state_der, state, rot, material, poly_proj, modalCoeffs, nodalPhysFlux, iElem)

Compute the physical flux in x direction.

For other directions a properly defined variable permutation can be used. This routine covers non-constant material parameters.

Arguments

Type IntentOptional Attributes Name
integer, intent(in) :: nDofs

dimensions

integer, intent(in) :: nScalars

dimensions

integer, intent(in) :: nElems

Number of elements.

real(kind=rk), intent(inout) :: state_der(nDofs,nScalars)

Array to store the fluxes in.

real(kind=rk), intent(in) :: state(nDofs,nScalars)

State to compute the fluxes from.

integer, intent(in) :: rot(6)

Rotationing to index the variables.

real(kind=rk), intent(in) :: material(nElems,nDofs,2)

Material parameters (mu, epsilon) for all elements

type(ply_poly_project_type) :: poly_proj

Data for projection method

real(kind=rk), intent(inout) :: modalCoeffs(poly_proj%body_3D%oversamp_dofs,size(state,2),1)

Working array for modal coefficients of the current element in the loop.

real(kind=rk), intent(inout) :: nodalPhysFlux(poly_proj%body_3D%nquadpoints,size(state,2),2)

Working array for nodal representation of the physical flux along the 3 spatial directions.

integer, intent(in) :: iElem

Current element index