eqn_evaluate_source Abstract Interface

abstract interface

interface description for the calculation of source terms; adds necessary values to the right hand side of the equation system from source parameters (from a space-time function) and the state (from which you can possibly derive other quantities)


private subroutine eqn_evaluate_source(equation, state, sourceParameter, RHS, background_material, nElems)

Arguments

Type IntentOptional Attributes Name
class(atl_Equations_type), intent(in) :: equation

the eqations type that defines all necessary parameters

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

input state vector

The array dimensions reflect the way the state vector is stored in the solver: dimension (1:nMaxInElems, nDoFs, nVars) with:

  • nMaxInElems >= nElems,
  • nDoFs arbitrary (used to store state at several points in each element)
  • nVars: number of necessary variables to define the state
real(kind=rk), intent(in) :: sourceParameter(:,:,:)

vector with the parameters of the source

The array dimensions reflect the way the state vector is stored in the solver: dimension (1:nElems, nDoFs, nSourceParameter) with:

  • nElems, number elements to calculate RHS for (< nMaxInElems!)
  • nDoFs arbitrary (used to store state at several points in each element)
  • nSourceParameter: same as nComponents of the tem_source_type
real(kind=rk), intent(inout) :: RHS(:,:,:)

right hand side vector

attention: always updat right hand side with RHS = RHS + ...

same dimensions as state (1:nElems, nDoFs, nVars) with: * nElems, * nDoFs arbitrary (used to store state at several points in each element) * nVars: number of necessary variables to define the state

real(kind=rk), intent(in) :: background_material(:)

Description of the background material on the current level.

integer, intent(in) :: nElems

number of elems to calculate RHS for, if elemInd is not given, calculate RHS for (1:nElems,:,:)