# 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

volume (sub)domain

surface (sub)domain

dimension of space

time

any function

any vector function

unit outward normal

,

scalar test function

,

scalar unknown or parameter function

scalar parameter function

vector test function

,

vector unknown or parameter function

vector 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

d

discrete

‘eval’, ‘el_eval’

terms having all arguments known, the result is the value of the term integral evaluation

ev

evaluate

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

terms having all arguments known and supporting all evaluation modes except ‘weak’ (no virtual variables in arguments, no FE assembling)

de

discrete einsum

any (work in progress)

multi-linear terms defined using an enriched einsum notation

## 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>

dw_biot

BiotTerm

<material>, <virtual>, <state>

<material>, <state>, <virtual>

<material>, <parameter_v>, <parameter_s>

ev_biot_stress

BiotStressTerm

<material>, <parameter>

ev_cauchy_strain

CauchyStrainTerm

<parameter>

ev_cauchy_strain_s

CauchyStrainSTerm

<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>, <state>

<material>, <parameter_1>, <parameter_2>

dw_diffusion_coupling

DiffusionCoupling

<material>, <virtual>, <state>

<material>, <state>, <virtual>

<material>, <parameter_1>, <parameter_2>

dw_diffusion_r

DiffusionRTerm

<material>, <virtual>

ev_diffusion_velocity

DiffusionVelocityTerm

<material>, <parameter>

ev_div

DivTerm

<parameter>

dw_div

DivOperatorTerm

<opt_material>, <virtual>

DivGradTerm

<opt_material>, <virtual>, <state>

<opt_material>, <parameter_1>, <parameter_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

<parameter>

dw_jump

SurfaceJumpTerm

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

aco

dw_laplace

LaplaceTerm

<opt_material>, <virtual>, <state>

<opt_material>, <parameter_1>, <parameter_2>

dw_lin_convect

LinearConvectTerm

<virtual>, <parameter>, <state>

sta.nav.sto

dw_lin_convect2

LinearConvect2Term

<material>, <virtual>, <state>

dw_lin_elastic

LinearElasticTerm

<material>, <virtual>, <state>

<material>, <parameter_1>, <parameter_2>

dw_lin_elastic_iso

LinearElasticIsotropicTerm

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

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

dw_lin_prestress

LinearPrestressTerm

<material>, <virtual>

<material>, <parameter>

dw_lin_strain_fib

LinearStrainFiberTerm

<material_1>, <material_2>, <virtual>

pre.fib

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>, <state>

<material>, <parameter_1>, <parameter_2>

non.hyp.mM

NonlinearScalarDotGradTerm

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

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

bur.2D

dw_piezo_coupling

PiezoCouplingTerm

<material>, <virtual>, <state>

<material>, <state>, <virtual>

<material>, <parameter_v>, <parameter_s>

pie.ela

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>, <state>

<opt_material>, <state>, <virtual>

<opt_material>, <parameter_v>, <parameter_s>

dw_stokes_wave

StokesWaveTerm

<material>, <virtual>, <state>

dw_stokes_wave_div

StokesWaveDivTerm

<material>, <virtual>, <state>

<material>, <state>, <virtual>

d_sum_vals

SumNodalValuesTerm

<parameter>

d_surface

SurfaceTerm

<parameter>

ev_surface_div

SurfaceDivTerm

<parameter>

dw_surface_dot

DotProductSurfaceTerm

<opt_material>, <virtual>, <state>

<opt_material>, <parameter_1>, <parameter_2>

d_surface_flux

SurfaceFluxTerm

<material>, <parameter>

dw_surface_flux

SurfaceFluxOperatorTerm

<opt_material>, <virtual>, <state>

SurfaceGradTerm

<parameter>

dw_surface_integrate

IntegrateSurfaceOperatorTerm

<opt_material>, <virtual>

ev_surface_integrate

IntegrateSurfaceTerm

<opt_material>, <parameter>

ev_surface_integrate_mat

IntegrateSurfaceMatTerm

<material>, <parameter>

dw_surface_ltr

LinearTractionTerm

<opt_material>, <virtual>

<opt_material>, <parameter>

d_surface_moment

SurfaceMomentTerm

<material>, <parameter>

dw_surface_ndot

SufaceNormalDotTerm

<material>, <virtual>

<material>, <parameter>

VectorDotGradScalarTerm

<opt_material>, <virtual>, <state>

<opt_material>, <state>, <virtual>

<opt_material>, <parameter_v>, <parameter_s>

dw_vm_dot_s

VectorDotScalarTerm

<material>, <virtual>, <state>

<material>, <state>, <virtual>

<material>, <parameter_v>, <parameter_s>

d_volume

VolumeTerm

<parameter>

dw_volume_dot

DotProductVolumeTerm

<opt_material>, <virtual>, <state>

<opt_material>, <parameter_1>, <parameter_2>

ev_volume_integrate

IntegrateVolumeTerm

<opt_material>, <parameter>

dw_volume_integrate

IntegrateVolumeOperatorTerm

<opt_material>, <virtual>

ev_volume_integrate_mat

IntegrateVolumeMatTerm

<material>, <parameter>

dw_volume_lvf

LinearVolumeForceTerm

<material>, <virtual>

d_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>

d_sd_convect

SDConvectTerm

<parameter_u>, <parameter_w>, <parameter_mv>

d_sd_diffusion

SDDiffusionTerm

<material>, <parameter_q>, <parameter_p>, <parameter_mesh_velocity>

d_sd_div

SDDivTerm

<parameter_u>, <parameter_p>, <parameter_mv>

SDDivGradTerm

<material_1>, <material_2>, <parameter_u>, <parameter_w>, <parameter_mv>

d_sd_lin_elastic

SDLinearElasticTerm

<material>, <parameter_w>, <parameter_u>, <parameter_mesh_velocity>

d_sd_surface_integrate

SDSufaceIntegrateTerm

<parameter>, <parameter_mesh_velocity>

d_sd_volume_dot

SDDotVolumeTerm

<parameter_1>, <parameter_2>, <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_he_genyeoh

GenYeohTLTerm

<material>, <virtual>, <state>

dw_tl_he_mooney_rivlin

MooneyRivlinTLTerm

<material>, <virtual>, <state>

dw_tl_he_neohook

NeoHookeanTLTerm

<material>, <virtual>, <state>

dw_tl_he_ogden

OgdenTLTerm

<material>, <virtual>, <state>

dw_tl_membrane

TLMembraneTerm

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

bal

d_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>

d_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>

d_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>

d_sd_st_pspg_c

SDPSPGCStabilizationTerm

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

d_sd_st_pspg_p

SDPSPGPStabilizationTerm

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

d_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>, <state>

<opt_material>, <parameter_1>, <parameter_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>, <state>

de_div

EDivTerm

<opt_material>, <virtual>

<opt_material>, <parameter>

EDivGradTerm

<opt_material>, <virtual>, <state>

<opt_material>, <parameter_1>, <parameter_2>

de_laplace

ELaplaceTerm

<opt_material>, <virtual>, <state>

<opt_material>, <parameter_1>, <parameter_2>

de_lin_elastic

ELinearElasticTerm

<material>, <virtual>, <state>

<material>, <parameter_1>, <parameter_2>

de_non_penetration_p

ENonPenetrationPenaltyTerm

<material>, <virtual>, <state>

EScalarDotMGradScalarTerm

<material>, <virtual>, <state>

<material>, <state>, <virtual>

de_stokes

EStokesTerm

<opt_material>, <virtual>, <state>

<opt_material>, <state>, <virtual>

<opt_material>, <parameter_v>, <parameter_s>

de_surface_dot

ESurfaceDotTerm

<opt_material>, <virtual>, <state>

<opt_material>, <parameter_1>, <parameter_2>

de_volume_dot

EVolumeDotTerm

<opt_material>, <virtual>, <state>

<opt_material>, <parameter_1>, <parameter_2>

de_volume_integrate

EIntegrateVolumeOperatorTerm

<opt_material>, <virtual>