Physical phenomena
Relevant module: edelweissfe.config.phenomena
This module contains the central definition of the known physics, i.e.,
the available physical fields
their tensorial order
their default residual tolerances
If a new physical field should be added to EdelweissFE, then this should happen (only) here.
- edelweissfe.config.phenomena.carriesKineticEnergy(field)[source]
Whether a field’s
0.5 * inertia * rate**2is a mechanical energy, i.e. whether the field may enter the energy balance and be summed with the other fields in it.Work done at a prescribed degree of freedom of such a field – a force through a displacement, a moment through a rotation – is an energy by the same token, which is why the external work is accumulated over exactly these fields as well.
- Parameters:
field (str) – The name of the physical field.
- Returns:
True for a field whose inertia is a mass or a rotational inertia.
- Return type:
bool
- edelweissfe.config.phenomena.carriesLinearMomentum(field)[source]
Whether a field’s inertia times its rate is a linear momentum, i.e. whether the field may enter a linear-momentum balance and be summed with the other fields in it.
- Parameters:
field (str) – The name of the physical field.
- Returns:
True only for a field whose inertia is a mass.
- Return type:
bool
- edelweissfe.config.phenomena.getInertiaKind(field)[source]
The kind of inertia a field carries; see
inertiaKind.- Parameters:
field (str) – The name of the physical field.
- Returns:
One of
"mass","rotational inertia","non-mechanical".- Return type:
str
- Raises:
NotImplementedError – If the field is not registered here.