atl_op_GradientX_forElement Subroutine

public subroutine atl_op_GradientX_forElement(fun, varSys, elempos, time, tree, nElems, nDofs, res)

This routine takes in a variable and differentiates it in a modal way

The number of input components is equal to the number of output components This means nCompInp * nDimension = fun%nComponents In this routine both are the same, as we consider just one dimension case(2) maxPolyDegree = fPtr%solverData%scheme_listPtr(level) & & %modg_2d & & %maxpolydegree call ply_calcDiff_leg_2d(legCoeffs = inPutModalState(iElem,:,:), & & legCoeffsDiff = diffInp, & & maxPolyDegree = maxPolyDegree, & & nVars = nCompInp, & & elemLength = elemLength )

Arguments

TypeIntentOptionalAttributesName
class(tem_varSys_op_type), intent(in) :: fun

Description of the method to obtain the variables, here some preset values might be stored, like the space time function to use or the required variables.

type(tem_varSys_type), intent(in) :: varSys

The variable system to obtain the variable from.

integer, intent(in) :: elempos(:)

TreeID of the element to get the variable for.

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

Point in time at which to evaluate the variable.

type(treelmesh_type), intent(in) :: tree

global treelm mesh info

integer, intent(in) :: nElems

Number of values to obtain for this variable (vectorized access).

integer, intent(in) :: nDofs

Number of degrees of freedom within an element.

real(kind=rk), intent(out) :: res(:)

Resulting values for the requested variable.

Linearized array dimension: (n requested entries) x (nComponents of this variable) x (nDegrees of freedom) Access: (iElem-1)fun%nComponentsnDofs + (iDof-1)*fun%nComponents + iComp


Calls

proc~~atl_op_gradientx_forelement~~CallsGraph proc~atl_op_gradientx_forelement atl_op_GradientX_forElement proc~ply_calcdiff_leg_1d ply_calcDiff_leg_1d proc~atl_op_gradientx_forelement->proc~ply_calcdiff_leg_1d proc~ply_calcdiff_leg_x_vec ply_calcDiff_leg_x_vec proc~atl_op_gradientx_forelement->proc~ply_calcdiff_leg_x_vec proc~tem_stoptimer tem_stopTimer proc~atl_op_gradientx_forelement->proc~tem_stoptimer proc~tem_levelof tem_LevelOf proc~atl_op_gradientx_forelement->proc~tem_levelof proc~tem_coordofid tem_CoordOfId proc~atl_op_gradientx_forelement->proc~tem_coordofid proc~tem_starttimer tem_startTimer proc~atl_op_gradientx_forelement->proc~tem_starttimer

Contents


Variables

TypeVisibilityAttributesNameInitial
type(atl_varSys_data_type), private, pointer:: fPtr
type(tem_varSys_op_data_type), private, pointer:: fPtr_temOp
real(kind=rk), private, allocatable:: input(:)
real(kind=rk), private, allocatable:: inputModalState(:,:,:)
real(kind=rk), private, allocatable:: DiffInp(:,:)
integer, private :: nCompInp
integer, private :: iComp
integer, private :: iDof
integer, private :: iElem
integer, private :: coord(4)
integer, private :: level
real(kind=rk), private :: elemLength
integer, private :: maxPolyDegree
integer, private :: numDofs
integer, private :: nDimensions