#include <cl_FEM_PhysicalBoundaryCondition.hpp>
Public Member Functions | |
| PhysicalBoundaryCondition (const index_t aIndex) | |
| ~PhysicalBoundaryCondition () | |
| index_t | index () const |
| void | set_function (SourceFunction *aBCFunction) |
| void | set_direction (real x, real y, real z) |
| void | set_type (BoundaryConditionType aType) |
| void | set_units (unit aUnits) |
| void | set_amplitude_is_flux_density (const bool aFlag) |
| bool | amplitude_is_flux_density () const |
| void | set_domains (Vector< id_t > aDomains, const bool aIsThinShell=false) |
| void | set_field (DofManager *aField) |
| void | set_scale (real aScale) |
| real & | scale () |
| SourceFunction * | function () |
| Vector< id_t > & | domains () |
| BoundaryConditionType | type () |
| bool | is_thinshell () |
| real | value () |
| void | fix (real aValue) |
| Vector< real > & | direction () |
| unit | units () |
| void | impose_bc (real aTime) |
| void | set_label (const string &aLabel) |
| const string & | label () const |
| void | update_global () |
Protected Attributes | |
| const index_t | mIndex |
| BoundaryConditionType | mType |
| string | mLabel = "" |
| SourceFunction * | mFunction = nullptr |
| real | mValue = BELFEM_EPS |
| real | mScale = 1.0 |
| Vector< real > | mDirection = Vector < real >(3,0.0) |
| unit | mUnits |
| bool | mAmplitudeIsFluxDensity = false |
| Vector< id_t > | mDomains |
| bool | mIsThinShell |
| DofManager * | mDofMngr = nullptr |
| Dof * | mAbstractDof = nullptr |
| belfem::fem::PhysicalBoundaryCondition::PhysicalBoundaryCondition | ( | const index_t | aIndex | ) |
| belfem::fem::PhysicalBoundaryCondition::~PhysicalBoundaryCondition | ( | ) |
| bool belfem::fem::PhysicalBoundaryCondition::amplitude_is_flux_density | ( | ) | const |
| void belfem::fem::PhysicalBoundaryCondition::fix | ( | real | aValue | ) |
| SourceFunction * belfem::fem::PhysicalBoundaryCondition::function | ( | ) |
| void belfem::fem::PhysicalBoundaryCondition::impose_bc | ( | real | aTime | ) |
| index_t belfem::fem::PhysicalBoundaryCondition::index | ( | ) | const |
| bool belfem::fem::PhysicalBoundaryCondition::is_thinshell | ( | ) |
| const string & belfem::fem::PhysicalBoundaryCondition::label | ( | ) | const |
| real & belfem::fem::PhysicalBoundaryCondition::scale | ( | ) |
| void belfem::fem::PhysicalBoundaryCondition::set_amplitude_is_flux_density | ( | const bool | aFlag | ) |
| void belfem::fem::PhysicalBoundaryCondition::set_domains | ( | Vector< id_t > | aDomains, |
| const bool | aIsThinShell = false ) |
| void belfem::fem::PhysicalBoundaryCondition::set_field | ( | DofManager * | aField | ) |
| void belfem::fem::PhysicalBoundaryCondition::set_function | ( | SourceFunction * | aBCFunction | ) |
| void belfem::fem::PhysicalBoundaryCondition::set_label | ( | const string & | aLabel | ) |
set the global-variable name ( factories only; empty = no global is published for this condition )
| void belfem::fem::PhysicalBoundaryCondition::set_scale | ( | real | aScale | ) |
| void belfem::fem::PhysicalBoundaryCondition::set_type | ( | BoundaryConditionType | aType | ) |
| void belfem::fem::PhysicalBoundaryCondition::set_units | ( | unit | aUnits | ) |
| BoundaryConditionType belfem::fem::PhysicalBoundaryCondition::type | ( | ) |
| unit belfem::fem::PhysicalBoundaryCondition::units | ( | ) |
| void belfem::fem::PhysicalBoundaryCondition::update_global | ( | ) |
write mValue into this condition's mesh global variable, if a label is set and the variable exists. The variables live on RANK 0 ONLY ( created there by the factories; Exodus and the memdump read them there ), so on workers the exists-guard makes this a no-op — for function-evaluated types called from impose_bc() on all ranks, and for circuit types written from fix() at circuit-solve time on rank 0. No worker code reads mesh globals; anyone adding such a consumer must add an explicit synch first. Deliberately a no-op before the factories have created the variables
| real belfem::fem::PhysicalBoundaryCondition::value | ( | ) |
|
protected |
|
protected |
the deck stated the amplitude as a flux density ( tesla family ) rather than as a field strength, so mScale carries the nu0 = 1/mu0 conversion. Read by MaxwellFactory to warn about a ferro-bounded sideset, where B = mu0*H does not hold. Explicitly initialised: mUnits above is NOT, and cannot be used for this
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Exodus/global-variable name of this condition, assigned by the creating factory from the input-file group ( section header label, else type + occurrence ordinal ). Empty = this BC does not publish a global ( e.g. Bearing, which imposes no scalar )
|
protected |
|
protected |
|
protected |
|
protected |