fenicsxconcrete.finite_element_problem package
Submodules
fenicsxconcrete.finite_element_problem.base_material module
- class MaterialProblem(experiment: Experiment, parameters: dict[str, Quantity], pv_name: str = 'pv_output_full', pv_path: PosixPath | None = None)[source]
Bases:
ABC,LogMixin- class SensorDict[source]
Bases:
dictDict that also allows to access the parameter p[“parameter”] via the matching attribute p.parameter to make access shorter
When to sensors with the same name are defined, the next one gets a number added to the name
- add_sensor(sensor: BaseSensor) None[source]
- abstractmethod static default_parameters() tuple[Experiment, dict[str, Quantity]][source]
returns a dictionary with required parameters and a set of working values as example
- export_sensors_metadata(path: Path) None[source]
Exports sensor metadata to JSON file according to the appropriate schema.
- Parameters:
path – Path Path where the metadata should be stored
- class QuadratureFields(measure: Measure | None = None, plot_space_type: tuple[str, int] = ('DG', 0), mandel_stress: Expr | Function | None = None, mandel_strain: Expr | Function | None = None, stress: Expr | Function | None = None, strain: Expr | Function | None = None, degree_of_hydration: Expr | Function | None = None, damage: Expr | Function | None = None, compressive_strength: Expr | Function | None = None, tensile_strength: Expr | Function | None = None, youngs_modulus: Expr | Function | None = None, yield_values: Expr | Function | None = None, history_scalar: Expr | Function | None = None)[source]
Bases:
objectA dataclass to hold the quadrature fields (or ufl expressions) of the problem, at least those that we want to plot in paraview. Additionally, the measure for the integration and the type of function space is stored. The list of names should be extendend when needed.
Examples
Since this is a dataclass, the __init__ method is automatically generated and can be used to selectively set fields. All fields that are not explicitely set are set to their default value (here None).
>>> q_fields = QuadratureFields(measure=rule.dx, plot_space_type=("Lagrange", 4), stress=some_function)
- compressive_strength: Expr | Function | None = None
- damage: Expr | Function | None = None
- degree_of_hydration: Expr | Function | None = None
- history_scalar: Expr | Function | None = None
- mandel_strain: Expr | Function | None = None
- mandel_stress: Expr | Function | None = None
- measure: Measure | None = None
- plot_space_type: tuple[str, int] = ('DG', 0)
- strain: Expr | Function | None = None
- stress: Expr | Function | None = None
- tensile_strength: Expr | Function | None = None
- yield_values: Expr | Function | None = None
- youngs_modulus: Expr | Function | None = None
- class SolutionFields(displacement: Function | None = None, velocity: Function | None = None, temperature: Function | None = None, nonlocal_strain: Function | None = None)[source]
Bases:
objectA dataclass to hold the solution fields of the problem. The list of names should be extendend when needed.
Examples
Since this is a dataclass, the __init__ method is automatically generated and can be used to selectively set fields. All fields that are not explicitely set are set to their default value (here None).
>>> fields = SolutionFields(displacement=some_function, temperature=some_other_function)
- displacement: Function | None = None
- nonlocal_strain: Function | None = None
- temperature: Function | None = None
- velocity: Function | None = None
fenicsxconcrete.finite_element_problem.concrete_am module
fenicsxconcrete.finite_element_problem.concrete_thermo_mechanical module
fenicsxconcrete.finite_element_problem.linear_elasticity module
- class LinearElasticity(experiment: Experiment, parameters: dict[str, Quantity], pv_name: str = 'pv_output_full', pv_path: str = None)[source]
Bases:
MaterialProblemMaterial definition for linear elasticity
- static default_parameters() tuple[Experiment, dict[str, Quantity]][source]
returns a dictionary with required parameters and a set of working values as example