Term Overview¶

Term Syntax¶

In general, the syntax of a term call is:

<term name>.<i>.<r>( <arg1>, <arg2>, ... ),

where <i> denotes an integral name (i.e. a name of numerical quadrature to use) and <r> marks a region (domain of the integral).

The following notation is used:

Notation.

symbol

meaning

cell (volume) (sub)domain

facet (surface) (sub)domain

cell or facet (sub)domain

dimension of space

time

any function

any vector function

unit outward normal

scalar test or parameter function

scalar unknown or parameter function

vector test or parameter function

,

vector unknown or parameter function

Cauchy strain tensor ()

right Cauchy-Green deformation tensor

Green strain tensor

second Piola-Kirchhoff stress tensor

vector volume forces

scalar volume force (source)

density

kinematic viscosity

, ,

any constant

Kronecker delta, identity matrix

trace of a second order tensor ()

deviator of a second order tensor ()

-th element of triangulation (= mesh) of domain

is assigned values from in ascending order

The suffix “” denotes a quantity related to a previous time step.

Term names are (usually) prefixed according to the following conventions:

Term name prefixes.

prefix

meaning

evaluation modes

meaning

dw

discrete weak

‘weak’

terms having a virtual (test) argument and zero or more unknown arguments, used for FE assembling

ev

evaluate

‘eval’, ‘el_eval’, ‘el_avg’, ‘qp’

terms having all arguments known, modes ‘el_avg’, ‘qp’ are not supported by all ev_ terms

de

discrete einsum

any (work in progress)

multi-linear terms defined using an enriched einsum notation

Evaluation modes ‘eval’, ‘el_avg’ and ‘qp’ are defined as follows:

Evaluation modes.

mode

definition

‘eval’

‘el_avg’

vector for

‘qp’

Term Table¶

Below we list all the terms available in automatically generated tables. The first column lists the name, the second column the argument lists and the third column the mathematical definition of each term. The terms are devided into the following tables:

The notation <virtual> corresponds to a test function, <state> to a unknown function and <parameter> to a known function. By <material> we denote material (constitutive) parameters, or, in general, any given function of space and time that parameterizes a term, for example a given traction force vector.

Table of basic terms¶

Basic terms

name/class

arguments

definition

examples

AdvectDivFreeTerm

<material>, <virtual>, <state>

dw_bc_newton

BCNewtonTerm

<material_1>, <material_2>, <virtual>, <state>

tim.hea.equ.mul.mat

dw_biot

BiotTerm

<material>, <virtual/param_v>, <state/param_s>

<material>, <state>, <virtual>

ev_biot_stress

BiotStressTerm

<material>, <parameter>

ev_cauchy_strain

CauchyStrainTerm

<parameter>

ev_cauchy_stress

CauchyStressTerm

<material>, <parameter>

dw_contact

ContactTerm

<material>, <virtual>, <state>

two.bod.con

dw_contact_plane

ContactPlaneTerm

<material_f>, <material_n>, <material_a>, <material_b>, <virtual>, <state>

ela.con.pla

dw_contact_sphere

ContactSphereTerm

<material_f>, <material_c>, <material_r>, <virtual>, <state>

ela.con.sph

dw_convect

ConvectTerm

<virtual>, <state>

ConvectVGradSTerm

<virtual>, <state_v>, <state_s>

poi.fun

DeformationGradientTerm

<parameter>

AdvectionDGFluxTerm

<opt_material>, <material_advelo>, <virtual>, <state>

where

dw_dg_diffusion_flux

DiffusionDGFluxTerm

<material>, <state>, <virtual>

<material>, <virtual>, <state>

where

dw_dg_interior_penalty

DiffusionInteriorPenaltyTerm

<material>, <material_Cw>, <virtual>, <state>

where

dw_dg_nonlinear_laxfrie_flux

NonlinearHyperbolicDGFluxTerm

<opt_material>, <fun>, <fun_d>, <virtual>, <state>

where

bur.2D

dw_diffusion

DiffusionTerm

<material>, <virtual/param_1>, <state/param_2>

dw_diffusion_coupling

DiffusionCoupling

<material>, <virtual/param_1>, <state/param_2>

<material>, <state>, <virtual>

dw_diffusion_r

DiffusionRTerm

<material>, <virtual>

ev_diffusion_velocity

DiffusionVelocityTerm

<material>, <parameter>

dw_div

DivOperatorTerm

<opt_material>, <virtual>

ev_div

DivTerm

<opt_material>, <parameter>

DivGradTerm

<opt_material>, <virtual/param_1>, <state/param_2>

dw_dot

DotProductTerm

<opt_material>, <virtual/param_1>, <state/param_2>

dw_elastic_wave

ElasticWaveTerm

<material_1>, <material_2>, <virtual>, <state>

dw_elastic_wave_cauchy

ElasticWaveCauchyTerm

<material_1>, <material_2>, <virtual>, <state>

<material_1>, <material_2>, <state>, <virtual>

dw_electric_source

ElectricSourceTerm

<material>, <virtual>, <parameter>

the.ele

GradTerm

<opt_material>, <parameter>

ev_integrate

IntegrateTerm

<opt_material>, <parameter>

dw_integrate

IntegrateOperatorTerm

<opt_material>, <virtual>

ev_integrate_mat

IntegrateMatTerm

<material>, <parameter>

dw_jump

SurfaceJumpTerm

<opt_material>, <virtual>, <state_1>, <state_2>

aco

dw_laplace

LaplaceTerm

<opt_material>, <virtual/param_1>, <state/param_2>

dw_lin_convect

LinearConvectTerm

<virtual>, <parameter>, <state>

sta.nav.sto

dw_lin_convect2

LinearConvect2Term

<material>, <virtual>, <state>

dw_lin_dspring

LinearDSpringTerm

<opt_material>, <material>, <virtual>, <state>

dw_lin_elastic

LinearElasticTerm

<material>, <virtual/param_1>, <state/param_2>

dw_lin_elastic_iso

LinearElasticIsotropicTerm

<material_1>, <material_2>, <virtual/param_1>, <state/param_2>

LinearElasticLADTerm

<material_1>, <material_2>, <virtual>, <state>

LinearElasticYPADTerm

<material_1>, <material_2>, <virtual>, <state>

ela.ide

dw_lin_prestress

LinearPrestressTerm

<material>, <virtual/param>

dw_lin_spring

LinearSpringTerm

<material>, <virtual>, <state>

dw_lin_strain_fib

LinearStrainFiberTerm

<material_1>, <material_2>, <virtual>

pre.fib

dw_lin_truss

LinearTrussTerm

<material>, <virtual>, <state>

ev_lin_truss_force

LinearTrussInternalForceTerm

<material>, <parameter>

MassADTerm

<material>, <virtual>, <state>

ela.ide

dw_nl_diffusion

NonlinearDiffusionTerm

<fun>, <dfun>, <virtual>, <state>

poi.non.mat

dw_non_penetration

NonPenetrationTerm

<opt_material>, <virtual>, <state>

<opt_material>, <state>, <virtual>

bio.npb.lag

dw_non_penetration_p

NonPenetrationPenaltyTerm

<material>, <virtual>, <state>

bio.sho.syn

dw_nonsym_elastic

NonsymElasticTerm

<material>, <virtual/param_1>, <state/param_2>

non.hyp.mM

NonlinearScalarDotGradTerm

<fun>, <fun_d>, <virtual>, <state>

<fun>, <fun_d>, <state>, <virtual>

bur.2D

dw_piezo_coupling

PiezoCouplingTerm

<material>, <virtual/param_v>, <state/param_s>

<material>, <state>, <virtual>

ev_piezo_strain

PiezoStrainTerm

<material>, <parameter>

ev_piezo_stress

PiezoStressTerm

<material>, <parameter>

ConcentratedPointLoadTerm

<material>, <virtual>

dw_point_lspring

LinearPointSpringTerm

<material>, <virtual>, <state>

ScalarDotGradIScalarTerm

<material>, <virtual>, <state>

ScalarDotMGradScalarTerm

<material>, <virtual>, <state>

<material>, <state>, <virtual>

dw_shell10x

Shell10XTerm

<material_d>, <material_drill>, <virtual>, <state>

she.can

dw_stokes

StokesTerm

<opt_material>, <virtual/param_v>, <state/param_s>

<opt_material>, <state>, <virtual>

dw_stokes_wave

StokesWaveTerm

<material>, <virtual>, <state>

dw_stokes_wave_div

StokesWaveDivTerm

<material>, <virtual>, <state>

<material>, <state>, <virtual>

ev_sum_vals

SumNodalValuesTerm

<parameter>

ev_surface_flux

SurfaceFluxTerm

<material>, <parameter>

dw_surface_flux

SurfaceFluxOperatorTerm

<opt_material>, <virtual>, <state>

dw_surface_ltr

LinearTractionTerm

<opt_material>, <virtual/param>

ev_surface_moment

SurfaceMomentTerm

<material>, <parameter>

dw_surface_ndot

SufaceNormalDotTerm

<material>, <virtual/param>

lap.flu.2d

ev_surface_piezo_flux

SurfacePiezoFluxTerm

<material>, <parameter>

VectorDotGradScalarTerm

<opt_material>, <virtual/param_v>, <state/param_s>

<opt_material>, <state>, <virtual>

vib.aco

dw_vm_dot_s

VectorDotScalarTerm

<material>, <virtual/param_v>, <state/param_s>

<material>, <state>, <virtual>

ev_volume

VolumeTerm

<parameter>

dw_volume_lvf

LinearVolumeForceTerm

<material>, <virtual>

dw_volume_nvf

NonlinearVolumeForceTerm

<fun>, <dfun>, <virtual>, <state>

poi.non.mat

ev_volume_surface

VolumeSurfaceTerm

<parameter>

dw_zero

ZeroTerm

<virtual>, <state>

ela

Table of sensitivity terms¶

Sensitivity terms

name/class

arguments

definition

examples

AdjConvect1Term

<virtual>, <state>, <parameter>

AdjConvect2Term

<virtual>, <state>, <parameter>

AdjDivGradTerm

<material_1>, <material_2>, <virtual>, <parameter>

ev_sd_convect

SDConvectTerm

<parameter_u>, <parameter_w>, <parameter_mv>

ev_sd_diffusion

SDDiffusionTerm

<material>, <parameter_q>, <parameter_p>, <parameter_mv>

de_sd_diffusion

ESDDiffusionTerm

<material>, <virtual/param_1>, <state/param_2>, <parameter_mv>

ev_sd_div

SDDivTerm

<parameter_u>, <parameter_p>, <parameter_mv>

SDDivGradTerm

<opt_material>, <parameter_u>, <parameter_w>, <parameter_mv>

ESDDivGradTerm

<opt_material>, <virtual/param_1>, <state/param_2>, <parameter_mv>

ev_sd_dot

SDDotTerm

<parameter_1>, <parameter_2>, <parameter_mv>

de_sd_dot

ESDDotTerm

<opt_material>, <virtual/param_1>, <state/param_2>, <parameter_mv>

ev_sd_lin_elastic

SDLinearElasticTerm

<material>, <parameter_w>, <parameter_u>, <parameter_mv>

de_sd_lin_elastic

ESDLinearElasticTerm

<material>, <virtual/param_1>, <state/param_2>, <parameter_mv>

de_sd_piezo_coupling

ESDPiezoCouplingTerm

<material>, <virtual/param_v>, <state/param_s>, <parameter_mv>

<material>, <state>, <virtual>, <parameter_mv>

ev_sd_piezo_coupling

SDPiezoCouplingTerm

<material>, <parameter_u>, <parameter_p>, <parameter_mv>

de_sd_stokes

ESDStokesTerm

<opt_material>, <virtual/param_v>, <state/param_s>, <parameter_mv>

<opt_material>, <state>, <virtual>, <parameter_mv>

ev_sd_surface_integrate

SDSufaceIntegrateTerm

<parameter>, <parameter_mv>

de_sd_surface_ltr

ESDLinearTractionTerm

<opt_material>, <virtual/param>, <parameter_mv>

ev_sd_surface_ltr

SDLinearTractionTerm

<opt_material>, <parameter>, <parameter_mv>

ESDVectorDotGradScalarTerm

<opt_material>, <virtual/param_v>, <state/param_s>, <parameter_mv>

<opt_material>, <state>, <virtual>, <parameter_mv>

Table of large deformation terms¶

Large deformation terms

name/class

arguments

definition

examples

dw_tl_bulk_active

BulkActiveTLTerm

<material>, <virtual>, <state>

dw_tl_bulk_penalty

BulkPenaltyTLTerm

<material>, <virtual>, <state>

dw_tl_bulk_pressure

BulkPressureTLTerm

<virtual>, <state>, <state_p>

dw_tl_diffusion

DiffusionTLTerm

<material_1>, <material_2>, <virtual>, <state>, <parameter>

per.tl

dw_tl_fib_a

FibresActiveTLTerm

<material_1>, <material_2>, <material_3>, <material_4>, <material_5>, <virtual>, <state>

act.fib

dw_tl_fib_e

FibresExponentialTLTerm

<material_1>, <material_2>, <material_3>, <material_4>, <virtual>, <state>

dw_tl_he_genyeoh

GenYeohTLTerm

<material>, <virtual>, <state>

dw_tl_he_mooney_rivlin

MooneyRivlinTLTerm

<material>, <virtual>, <state>

dw_tl_he_neohook

NeoHookeanTLTerm

<material>, <virtual>, <state>

NeoHookeanTLADTerm

<material>, <virtual>, <state>

dw_tl_he_ogden

OgdenTLTerm

<material>, <virtual>, <state>

OgdenTLADTerm

<material_mu>, <material_alpha>, <virtual>, <state>

dw_tl_membrane

TLMembraneTerm

<material_a1>, <material_a2>, <material_h0>, <virtual>, <state>

bal

ev_tl_surface_flux

SurfaceFluxTLTerm

<material_1>, <material_2>, <parameter_1>, <parameter_2>

dw_tl_surface_traction

SurfaceTractionTLTerm

<opt_material>, <virtual>, <state>

per.tl

dw_tl_volume

VolumeTLTerm

<virtual>, <state>

ev_tl_volume_surface

VolumeSurfaceTLTerm

<parameter>

dw_ul_bulk_penalty

BulkPenaltyULTerm

<material>, <virtual>, <state>

hyp.ul

dw_ul_bulk_pressure

BulkPressureULTerm

<virtual>, <state>, <state_p>

hyp.ul.up

dw_ul_compressible

CompressibilityULTerm

<material>, <virtual>, <state>, <parameter_u>

hyp.ul.up

dw_ul_he_mooney_rivlin

MooneyRivlinULTerm

<material>, <virtual>, <state>

dw_ul_he_neohook

NeoHookeanULTerm

<material>, <virtual>, <state>

dw_ul_volume

VolumeULTerm

<virtual>, <state>

hyp.ul.up

Table of special terms¶

Special terms

name/class

arguments

definition

examples

dw_biot_eth

BiotETHTerm

<ts>, <material_0>, <material_1>, <virtual>, <state>

<ts>, <material_0>, <material_1>, <state>, <virtual>

dw_biot_th

BiotTHTerm

<ts>, <material>, <virtual>, <state>

<ts>, <material>, <state>, <virtual>

ev_cauchy_stress_eth

CauchyStressETHTerm

<ts>, <material_0>, <material_1>, <parameter>

ev_cauchy_stress_th

CauchyStressTHTerm

<ts>, <material>, <parameter>

dw_lin_elastic_eth

LinearElasticETHTerm

<ts>, <material_0>, <material_1>, <virtual>, <state>

lin.vis

dw_lin_elastic_th

LinearElasticTHTerm

<ts>, <material>, <virtual>, <state>

ev_of_ns_surf_min_d_press

NSOFSurfMinDPressTerm

<material_1>, <material_2>, <parameter>

dw_of_ns_surf_min_d_press_diff

NSOFSurfMinDPressDiffTerm

<material>, <virtual>

SDGradDivStabilizationTerm

<material>, <parameter_u>, <parameter_w>, <parameter_mv>

ev_sd_st_pspg_c

SDPSPGCStabilizationTerm

<material>, <parameter_b>, <parameter_u>, <parameter_r>, <parameter_mv>

ev_sd_st_pspg_p

SDPSPGPStabilizationTerm

<material>, <parameter_r>, <parameter_p>, <parameter_mv>

ev_sd_st_supg_c

SDSUPGCStabilizationTerm

<material>, <parameter_b>, <parameter_u>, <parameter_w>, <parameter_mv>

SUPGPAdj1StabilizationTerm

<material>, <virtual>, <state>, <parameter>

SUPGPAdj2StabilizationTerm

<material>, <virtual>, <parameter>, <state>

SUPGCAdjStabilizationTerm

<material>, <virtual>, <parameter>, <state>

GradDivStabilizationTerm

<material>, <virtual>, <state>

sta.nav.sto

dw_st_pspg_c

PSPGCStabilizationTerm

<material>, <virtual>, <parameter>, <state>

sta.nav.sto

dw_st_pspg_p

PSPGPStabilizationTerm

<opt_material>, <virtual/param_1>, <state/param_2>

sta.nav.sto

dw_st_supg_c

SUPGCStabilizationTerm

<material>, <virtual>, <parameter>, <state>

sta.nav.sto

dw_st_supg_p

SUPGPStabilizationTerm

<material>, <virtual>, <parameter>, <state>

sta.nav.sto

dw_volume_dot_w_scalar_eth

DotSProductVolumeOperatorWETHTerm

<ts>, <material_0>, <material_1>, <virtual>, <state>

dw_volume_dot_w_scalar_th

DotSProductVolumeOperatorWTHTerm

<ts>, <material>, <virtual>, <state>

Table of multi-linear terms¶

Multi-linear terms

name/class

arguments

definition

examples

de_cauchy_stress

ECauchyStressTerm

<material>, <parameter>

de_convect

EConvectTerm

<virtual/param_1>, <state/param_2>

de_diffusion

EDiffusionTerm

<material>, <virtual/param_1>, <state/param_2>

de_div

EDivTerm

<opt_material>, <virtual/param>

EDivGradTerm

<opt_material>, <virtual/param_1>, <state/param_2>

de_dot

EDotTerm

<opt_material>, <virtual/param_1>, <state/param_2>

EGradTerm

<opt_material>, <parameter>

de_integrate

EIntegrateOperatorTerm

<opt_material>, <virtual>

de_laplace

ELaplaceTerm

<opt_material>, <virtual/param_1>, <state/param_2>

de_lin_convect

ELinearConvectTerm

<virtual/param_1>, <parameter>, <state/param_3>

de_lin_elastic

ELinearElasticTerm

<material>, <virtual/param_1>, <state/param_2>

de_m_flexo

MixedFlexoTerm

<virtual/param_v>, <state/param_t>

<state>, <virtual>

de_m_flexo_coupling

MixedFlexoCouplingTerm

<material>, <virtual/param_t>, <state/param_s>

<material>, <state>, <virtual>

de_m_sg_elastic

MixedStrainGradElasticTerm

<material>, <virtual/param_1>, <state/param_2>

de_mass

MassTerm

<material_rho>, <material_lumping>, <material_beta>, <virtual>, <state>

de_non_penetration_p

ENonPenetrationPenaltyTerm

<material>, <virtual>, <state>

de_nonsym_elastic

ENonSymElasticTerm

<material>, <virtual/param_1>, <state/param_2>

EScalarDotMGradScalarTerm

<material>, <virtual/param_1>, <state/param_2>

<material>, <state>, <virtual>

de_stokes

EStokesTerm

<opt_material>, <virtual/param_v>, <state/param_s>

<opt_material>, <state>, <virtual>

de_surface_flux

SurfaceFluxOperatorTerm

<material>, <virtual/param_1>, <state/param_2>

<material>, <state>, <virtual>

pie.ela

de_surface_ltr

ELinearTractionTerm

<opt_material>, <virtual/param>

de_surface_piezo_flux

SurfacePiezoFluxOperatorTerm

<material>, <virtual/param_1>, <state/param_2>

<material>, <state>, <virtual>