BlackBear System Design Description
This template follows Idaho National Laboratory (INL) template TEM-140, "IT System Design Description."
This document serves as an addendum to Framework System Design Description and captures information for Software Design Description (SDD) specific to the BlackBear application.
- MASTODON System Design Description
- Framework System Design Description
- MOOSE Tools System Design Description
- Contact System Design Description
- Fluid Properties System Design Description
- Fluid Structure Interaction System Design Description
- Heat Transfer System Design Description
- Misc System Design Description
- Navier Stokes System Design Description
- Ray Tracing System Design Description
- Stochastic Tools System Design Description
- Solid Mechanics System Design Description
- XFEM System Design Description
Introduction
Many of the phenomena related to structural component degradation depend on the solutions of multiple physics models, which can be described by partial differential equations that provide spatially and temporally varying values of solution variables. These models for individual physics often depend on each other. BlackBear relies on the MOOSE framework to solve these physics models, accounting for the couplings that may occur between them. This document describes the system design of BlackBear.
System Purpose
The Software Design Description provided here is description of each object in the system. The pluggable architecture of the underlying framework of BlackBear makes Multiphysics Object Oriented Simulation Environment (MOOSE) and MOOSE-based applications straightforward to develop as each piece of end-user (developer) code that goes into the system follows a well-defined interface for the underlying systems that those object plug into. These descriptions are provided through developer-supplied "markdown" files that are required for all new objects that are developed as part of BlackBear. More information about the design documentation for MOOSE-based applications like BlackBear can be found in Documenting MOOSE.
System Scope
BlackBear models the effects of environmental exposure on structures. The environmental conditions that can induce aging include evolving mechanical loading and exposure to temperature and moisture. The materials modeled by BlackBear include those typically used in the construction of civil structures, such as concrete and steel. Under normal service, these structures can experience a variety of degradation mechanisms. For example, steel and other metals can degrade due to corrosion, embrittlement, and stress corrosion cracking. Concrete can experience degradation due to expansive reactions, chemical attacks, leaching, and mechanical mechanisms induced by conditions such as freeze/thaw cycles and fatigue.
In addition to modeling the degradation mechanisms, BlackBear also models the response of these structures to a variety of loading conditions that these structures are expected to safely withstand. These include a variety of normal thermal and mechanical service loading conditions, as well as wind and earthquake loading conditions. BlackBear includes models to represent the behavior of structural materials under those conditions, which can induce creep, plasticity, damage, fracture, and failure of these materials.
Dependencies and Limitations
BlackBear inherits the software dependencies of the MOOSE framework, with no additional dependencies.
Definitions and Acronyms
This section defines, or provides the definition of, all terms and acronyms required to properly understand this specification.
Definitions
Pull (Merge) Request: A proposed change to the software (e.g. usually a code change, but may also include documentation, requirements, design, and/or testing).
Baseline: A specification or product (e.g., project plan, maintenance and operations (M&O) plan, requirements, or design) that has been formally reviewed and agreed upon, that thereafter serves as the basis for use and further development, and that can be changed only by using an approved change control process (NQA-1, 2009).
Validation: Confirmation, through the provision of objective evidence (e.g., acceptance test), that the requirements for a specific intended use or application have been fulfilled (24765:2010(E), 2010).
Verification: (1) The process of: evaluating a system or component to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase. (2) Formal proof of program correctness (e.g., requirements, design, implementation reviews, system tests) (24765:2010(E), 2010).
Acronyms
Acronym | Description |
---|---|
API | Application Programming Interface |
DOE-NE | Department of Energy, Nuclear Energy |
FE | finite element |
HIT | Hierarchical Input Text |
HPC | High Performance Computing |
I/O | Input/Output |
INL | Idaho National Laboratory |
MOOSE | Multiphysics Object Oriented Simulation Environment |
MPI | Message Passing Interface |
SDD | Software Design Description |
Design Stakeholders and Concerns
Design Stakeholders
Stakeholders for MOOSE include several of the funding sources including Department of Energy, Nuclear Energy (DOE-NE) and the INL. However, Since MOOSE is an open-source project, several universities, companies, and foreign governments have an interest in the development and maintenance of the MOOSE project.
Stakeholder Design Concerns
Concerns from many of the stakeholders are similar. These concerns include correctness, stability, and performance. The mitigation plan for each of these can be addressed. For correctness, BlackBear development requires either regression or unit testing for all new code added to the repository. The project contains several comparisons against analytical solutions where possible and also other verification methods such as MMS. For stability, BlackBear maintains multiple branches to incorporate several layers of testing both internally and for dependent applications. Finally, performance tests are also performed as part of the the normal testing suite to monitor code change impacts to performance.
System Design
BlackBear relies on MOOSE to solve the coupled physics models underlying structural component degradation, accounting for the couplings that may occur between them. The design of MOOSE is based on the concept of modular code objects that define all of the aspects of the physics model. BlackBear follows this design, providing code objects that define specific aspects of the solutions for its physics that derive from the base classes defined by the MOOSE framework and the modules that it depends on.
BlackBear provides specialized Kernel
classes that compute the contributions from the terms in the partial differential equations for thermal and moisture transport in concrete. It also provides specialized Material
classes that define the constitutive behavior of materials of interest for structural components. In addition, it provides miscellaneous BC
, Action
, and Postprocessor
classes to facilitate various aspects of these simulations. Much of the functionality of BlackBear is provided by the MOOSE modules that it builds on.
System Structure
BlackBear relies on the MOOSE framework to provide the core functionality of solving multiphysics problems using the finite element method. It also relies on the MOOSE modules such as Solid Mechanics and Heat Transfer for much of its core functionality. The structure of BlackBear is based on defining C++ classes that derive from classes in the MOOSE framework or modules that provide functionality that is specifically tailored to the structural degradation problem. By using the interfaces defined in MOOSE base classes for these classes, BlackBear is able to rely on MOOSE to execute these models at the appropriate times during the simulation and use their results in the desired ways.
Data Design and Control
At a high level, the system is designed to process Hierarchical Input Text (HIT) input files to construct several objects that will constitute an finite element (FE) simulation. Some of the objects in the simulation may in turn load other file-based resources to complete the simulation. Examples include meshes or data files. The system will then assemble systems of equations and solve them using the libraries of the Code Platform. The system can then output the solution in one or more supported output formats commonly used for visualization.
Human-Machine Interface Design
The BlackBear application is a command-line driven program. All interaction with BlackBear is ultimately done through the command line. This is typical for High Performance Computing (HPC) applications that use the Message Passing Interface (MPI) interface for running on super computing clusters. Optional GUIs may be used to assist in creating input files and launching executables on the command line.
System Design Interface
All external system interaction is performed either through file Input/Output (I/O) or through local Application Programming Interface (API) calls. Neither BlackBear, nor the MOOSE framework, nor the MOOSE modules are designed to interact with any external system directly through remote procedure calls. Any code to code coupling performed using the framework are done directly through API calls either in a static binary or after loading shared libraries.
Security Structure
The BlackBear application does not require any elevated privileges to operate and does not run any stateful services, daemons or other network programs. Distributed runs rely on the MPI library.
Requirements Cross-Reference
- blackbear: AverageExtensionRatio
- 2.1.1AverageExtensionRatio computes the average extension ratio between two sets of points specified in two arrays:
first_point
andlast_point
. It should result in error when sizes offirst_point
andlast_point
do not match and size offirst_point
is zero- The system shall provide a postprocessor that computes the average extension ratio between two sets of points.
- AverageExtensionRatio shall generate an error if the sizes of the specified sets of points do not match.
- AverageExtensionRatio shall generate an error if the size of either of the sets of points is zero.
Specification(s): AverageExtensionRatio/computation_average_extension_ratio, AverageExtensionRatio/first_point_last_point_size_match_error, AverageExtensionRatio/first_point_size_zero_error
Design: AverageExtensionRatio
Issue(s): #251
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): CSVDiffRunException
- blackbear: EqualValueEmbeddedConstraintAction
- 2.2.1The system shall set up a set of equal value constraintstying the nodes in multiple blocks to a primary block formultiple variables.
- without using an action
- using the EqualValueEmbeddedConstraint action to automatically set up multiple constraints with the same results as without using the action.
- using multiple instances of the EqualValueEmbeddedConstraint action to set up multiple constraints with the same results as without using the action.
Specification(s): EqualValueEmbeddedConstraintAction/without_action, EqualValueEmbeddedConstraintAction/with_action, EqualValueEmbeddedConstraintAction/with_action_multiple_blocks
Design: EqualValueEmbeddedConstraintAction
Issue(s): #248
Collection(s): FUNCTIONAL
Type(s): Exodiff
- 2.2.2The EqualValueEmbeddedConstraintAction shall generate an error if sizes of 'primary_variable' and 'variable' are different
Specification(s): primary_variable_and_variable_size_match_error
Design: EqualValueEmbeddedConstraintAction
Issue(s): #248
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- blackbear: ConcreteThermalMoisture
- 2.3.1Blackbear shall solve coupled systems of equations for heat and moisure transfer and mechanical deformation in concrete, used as inputs for modeling expansion induced by alkali-silica reaction, as demonstrated by simulating a concrete cylinder confined by a steel jacket
- with anisotropic expansion strains,
- with anisotropic expansion strains and temperature in Kelvin unit,
- with isotropic expansion strains,
- with uniaxial tenile loading,
- and with a mesh that captures a larger axial region of the cylinder.
Specification(s): ASR_swelling/test_strip, ASR_swelling/test_strip_kelvin, ASR_swelling/test_strip_isotropic, ASR_swelling/test_strip_in_tension, ASR_swelling/test_full
Design: ConcreteThermalMoistureConcrete ASR Microcracking DamageConcrete ASR Eigenstrain
Issue(s): #9
Collection(s): FUNCTIONAL
Type(s): RunAppExodiff
- 2.3.2Blackbear shall produce an error message when number of iterations exceeds max_its during the volumeteric strain residual calculation
Specification(s): max_it_error
Design: ConcreteThermalMoistureConcrete ASR Microcracking DamageConcrete ASR Eigenstrain
Issue(s): #9
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- 2.9.1Blackbear shall model heat transfer and moisture transport in concrete, producing results from a 1D axisymmetric simulation that are comparable to those obtained in the MAQBETH experiment under the following scenarios:
- Using mass lumping and using a moisture model that does not provide moisture capacity
- Using mass lumping and using a moisture model that provides moisture capacity
- Without using mass lumping and using a moisture model that does not provide moisture capacity
- Without using mass lumping and using a moisture model that provides moisture capacity
Specification(s): maqbeth/maqbeth, maqbeth/maqbeth_xi, maqbeth/maqbeth_nolump, maqbeth/maqbeth_nolump_xi
Design: ConcreteThermalMoisture
Issue(s): #245
Collection(s): FUNCTIONAL
Type(s): Exodiff
- 2.9.2Blackbear shall compute the heat capacity and thermal conductivity for concrete for the following models and options:
- Constant thermal model.
- ASCE-1992 siliceous thermal model.
- ASCE-1992 carbonate thermal model.
- Kodur-2004 siliceous thermal model.
- Kodur-2004 carbonate thermal model.
- Eurocode-2004 thermal model.
Specification(s): thermal_model/constant_thermal, thermal_model/asce_siliceous_thermal_model, thermal_model/asce_carbonate_thermal_model, thermal_model/kodur_siliceous_thermal_model, thermal_model/kodur_carbonate_thermal_model, thermal_model/eurocode_thermal_model
Design: ConcreteThermalMoisture
Issue(s): #245
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.9.3Blackbear shall compute the moisture capacity (where applicable) and moisture diffusivity for concrete for the following models and options:
- Bazant moisture model.
- Mensi moisture model.
- Xi moisture model for cement type = 1 and aggregate_pore_type = dense
- Xi moisture model for cement type = 2 and aggregate_pore_type = dense
- Xi moisture model for cement type = 3 and aggregate_pore_type = dense
- Xi moisture model for cement type = 4 and aggregate_pore_type = dense
- Xi moisture model for cement type = 1 and aggregate_pore_type = porous
- Xi moisture model for cement type = 2 and aggregate_pore_type = porous
- Xi moisture model for cement type = 3 and aggregate_pore_type = porous
- Xi moisture model for cement type = 4 and aggregate_pore_type = porous
Specification(s): moisture_model/bazant_moisture_model, moisture_model/mensi_moisture_model, moisture_model/xi_1_dense_moisture_model_out, moisture_model/xi_2_dense_moisture_model_out, moisture_model/xi_3_dense_moisture_model_out, moisture_model/xi_4_dense_moisture_model_out, moisture_model/xi_1_porous_moisture_model_out, moisture_model/xi_2_porous_moisture_model_out, moisture_model/xi_3_porous_moisture_model_out, moisture_model/xi_4_porous_moisture_model_out
Design: ConcreteThermalMoisture
Issue(s): #245
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.9.4Blackbear shall produce an error message when parameter(s) required for the following models are not set by user:
- Constant thermal model shall generate error if ref_density is not set by user.
- Constant thermal model shall generate error if ref_specific_heat is not set by user.
- Constant thermal model shall generate error if ref_thermal_conductivity is not set by user.
- ASCE-1992 thermal model shall generate error if aggregate_type is not set by user.
- Kodur-2004 thermal model shall generate error if aggregate_type is not set by user.
- Eurocode-2004 thermal model shall generate error if ref_density is not set by user.
- Eurocode-2004 thermal model shall generate error if ref_specific_heat is not set by user.
- Bazant moisture model shall generate error if D1 is not set by user.
- Bazant moisture model shall generate error if n is not set by user.
- Bazant moisture model shall generate error if critical_relative_humidity is not set by user.
- Bazant moisture model shall generate error if coupled_moisture_diffusivity_factor is not set by user.
- Mensi moisture model shall generate error if A is not set by user.
- Mensi moisture model shall generate error if B is not set by user.
- Mensi moisture model shall generate error if cement_mass is not set by user.
- Mensi moisture model shall generate error if water_to_cement_ratio is not set by user.
- Xi moisture model shall generate error if cement_type is not set by user.
- Xi moisture model shall generate error if aggregate_pore_type is not set by user.
- Xi moisture model shall generate error if aggregate_vol_fraction is not set by user.
- Xi moisture model shall generate error if concrete_cure_time is not set by user.
- Xi moisture model shall generate error if cement_mass is not set by user.
- Xi moisture model shall generate error if aggregate_mass is not set by user.
- Xi moisture model shall generate error if water_to_cement_ratio is not set by user.
- Xi moisture model shall generate error if water_to_cement_ratio is set < 0.5.
- Kodur-2004 thermal model shall generate error if temperature is more than 635.
- Kodur-2004 thermal model shall generate error if temperature is more than 1100.
- EUROCODE-2004 thermal model shall generate error if temperature is more than 1200.
- Bazant moisture model shall generate error if temperature is less than 25.
Specification(s): error_message_check/constant_thermal_ref_density, error_message_check/constant_thermal_ref_specific_heat, error_message_check/constant_thermal_ref_thermal_conductivity, error_message_check/asce_thermal_aggregate_type, error_message_check/kodur_thermal_aggregate_type, error_message_check/eurocode_thermal_ref_density, error_message_check/eurocode_thermal_ref_specific_heat, error_message_check/bazant_moisture_model_D1, error_message_check/bazant_moisture_model_n, error_message_check/bazant_moisture_model_critical_relative_humidity, error_message_check/bazant_moisture_model_coupled_moisture_diffusivity_factor, error_message_check/mensi_moisture_model_A, error_message_check/mensi_moisture_model_B, error_message_check/mensi_moisture_model_cement_mass, error_message_check/mensi_moisture_model_water_to_cement_ratio, error_message_check/xi_moisture_model_cement_type, error_message_check/xi_moisture_model_agg_pore_type, error_message_check/xi_moisture_model_agg_vol_frac, error_message_check/xi_moisture_model_concrete_cure_time, error_message_check/xi_moisture_model_cement_mass, error_message_check/xi_moisture_model_aggregate_mass, error_message_check/xi_moisture_model_water_to_cement_ratio, error_message_check/xi_moisture_model_water_to_cement_ratio_below_05, error_message_check/kodur_siliceous_T_outside_range, error_message_check/kodur_carbonate_T_outside_range, error_message_check/eurocode_T_outside_range, error_message_check/bazant_T_outside_range
Design: ConcreteThermalMoisture
Issue(s): #245
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- blackbear: Concrete ASR Microcracking Damage
- 2.3.1Blackbear shall solve coupled systems of equations for heat and moisure transfer and mechanical deformation in concrete, used as inputs for modeling expansion induced by alkali-silica reaction, as demonstrated by simulating a concrete cylinder confined by a steel jacket
- with anisotropic expansion strains,
- with anisotropic expansion strains and temperature in Kelvin unit,
- with isotropic expansion strains,
- with uniaxial tenile loading,
- and with a mesh that captures a larger axial region of the cylinder.
Specification(s): ASR_swelling/test_strip, ASR_swelling/test_strip_kelvin, ASR_swelling/test_strip_isotropic, ASR_swelling/test_strip_in_tension, ASR_swelling/test_full
Design: ConcreteThermalMoistureConcrete ASR Microcracking DamageConcrete ASR Eigenstrain
Issue(s): #9
Collection(s): FUNCTIONAL
Type(s): RunAppExodiff
- 2.3.2Blackbear shall produce an error message when number of iterations exceeds max_its during the volumeteric strain residual calculation
Specification(s): max_it_error
Design: ConcreteThermalMoistureConcrete ASR Microcracking DamageConcrete ASR Eigenstrain
Issue(s): #9
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- blackbear: Concrete ASR Eigenstrain
- 2.3.1Blackbear shall solve coupled systems of equations for heat and moisure transfer and mechanical deformation in concrete, used as inputs for modeling expansion induced by alkali-silica reaction, as demonstrated by simulating a concrete cylinder confined by a steel jacket
- with anisotropic expansion strains,
- with anisotropic expansion strains and temperature in Kelvin unit,
- with isotropic expansion strains,
- with uniaxial tenile loading,
- and with a mesh that captures a larger axial region of the cylinder.
Specification(s): ASR_swelling/test_strip, ASR_swelling/test_strip_kelvin, ASR_swelling/test_strip_isotropic, ASR_swelling/test_strip_in_tension, ASR_swelling/test_full
Design: ConcreteThermalMoistureConcrete ASR Microcracking DamageConcrete ASR Eigenstrain
Issue(s): #9
Collection(s): FUNCTIONAL
Type(s): RunAppExodiff
- 2.3.2Blackbear shall produce an error message when number of iterations exceeds max_its during the volumeteric strain residual calculation
Specification(s): max_it_error
Design: ConcreteThermalMoistureConcrete ASR Microcracking DamageConcrete ASR Eigenstrain
Issue(s): #9
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- 2.4.1Blackbear shall model the expansion induced by alkali-silica reaction as demonstrated with
- a comparison of the ASR volumetric strain to an analytic function,
- a maximum volumetric expansion of 0.76e-3, characteristic time of 66.84, and latency time of -126.1,
- and a maximum volumetric expansion of 0.38e-3, characteristic time of 17.24, and latency time of -2.55.
Specification(s): ASRtest/case1, ASRtest/case2, ASRtest/case3
Design: Concrete ASR Eigenstrain
Issue(s): #89
Collection(s): FUNCTIONAL
Type(s): Exodiff
- 2.5.1BlackBear shall represent anisotropic volumetric expansion in concrete due to alkali-silica reaction and related phenomena as demonstrated by computing the expansion of a unit cube with a prescribed expansion function in the three coordinate directions
- under free expansion conditions,
- with a 5 MPa compressive pressure in the x direction,
- with a 50 MPa compressive pressure in the x direction,
- with 5 MPa compressive pressure in the x and y directions,
- with 10 MPa compressive pressure in the x and y directions,
- with 5 MPa compressive pressure in the x, y, and z directions,
- and with 10 MPa compressive pressure in the x, y, and z directions.
Specification(s): concrete_anisotropic_eigenstrain/concrete_free_expansion, concrete_anisotropic_eigenstrain/concrete_expansion_load_5, concrete_anisotropic_eigenstrain/concrete_expansion_load_50, concrete_anisotropic_eigenstrain/concrete_expansion_load_5_5, concrete_anisotropic_eigenstrain/concrete_expansion_load_10_10, concrete_anisotropic_eigenstrain/concrete_expansion_load_5_5_5, concrete_anisotropic_eigenstrain/concrete_expansion_load_10_10_10
Design: Concrete ASR Eigenstrain
Issue(s): #59
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.5.2Blackbear shall produce an error message when parameter(s) required for the anisotropic expansion_type are not set by user:
- Anisotropic expansion_type shall generate error if compressive_strength is not set by user.
- Anisotropic expansion_type shall generate error if expansion_stress_limit is not set by user.
- Anisotropic expansion_type shall generate error if tensile_strength is not set by user.
Specification(s): error_message_check/compressive_strength, error_message_check/expansion_stress_limit, error_message_check/tensile_strength
Design: Concrete ASR Eigenstrain
Issue(s): #59
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- blackbear: ConcreteDryingShrinkage
- 2.6.1BlackBear shall compute drying shrinkage of concrete
- with an exponent of 1,
- with an exponent of 2,
- and with an irreversibility threshold of 0.2.
Specification(s): concrete_drying_shrinkage/shrinkage, concrete_drying_shrinkage/shrinkage_quad, concrete_drying_shrinkage/shrinkage_irreversible
Design: ConcreteDryingShrinkage
Issue(s): #9
Collection(s): FUNCTIONAL
Type(s): Exodiff
- blackbear: Concrete Expansion Microcracking Damage
- 2.7.1BlackBear shall represent damage in concrete due to alkali-silica reaction and related phenomena with anisotropy accounted for via the damage model as demonstrated by computing the expansion of a unit cube with a prescribed expansion function in the three coordinate directions
- under free expansion conditions,
- under free shrinkage conditions,
- under free expansion conditions excluding confinement effect,
- under free expansion conditions without the assumption of isotropic expansion,
- with a 5 MPa compressive pressure in the x direction,
- with a 10 MPa compressive pressure in the x direction,
- with a 5 MPa compressive pressure in the x and y directions,
- with a 10 MPa compressive pressure in the x and y directions,
- with a 5 MPa compressive pressure in the x, y, and z directions,
- and with a 10 MPa compressive pressure in the x, y, and z directions.
Specification(s): concrete_expansion_microcracking/concrete_free_expansion, concrete_expansion_microcracking/concrete_free_shrinkage, concrete_expansion_microcracking/concrete_free_expansion_excluding_confinement_effect, concrete_expansion_microcracking/concrete_free_expansion_no_isotropic_expansion, concrete_expansion_microcracking/concrete_expansion_load_5, concrete_expansion_microcracking/concrete_expansion_load_10, concrete_expansion_microcracking/concrete_expansion_load_5_5, concrete_expansion_microcracking/concrete_expansion_load_10_10, concrete_expansion_microcracking/concrete_expansion_load_5_5_5, concrete_expansion_microcracking/concrete_expansion_load_10_10_10
Design: Concrete Expansion Microcracking Damage
Issue(s): #43
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.7.2The ConcreteExpansionMicrocrackingDamage model shall generate an error if used with a material that is not guaranteed isotropic
Specification(s): concrete_microcracking_damage_isotropic_error
Design: Concrete Expansion Microcracking Damage
Issue(s): #43
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- 2.7.3Blackbear shall produce an error message when
- considering confinement effect without specifying expansion_stress_limit.
- considering confinement effect with negative expansion_stress_limit.
Specification(s): error_message/expansion_stress_limit_parameter_defintion_error, error_message/expansion_stress_limit_parameter_negative_error
Design: Concrete Expansion Microcracking Damage
Issue(s): #43
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- blackbear: ConcreteLogarithmicCreepModel
- 2.8.1BlackBear shall compute logarithmic viscoelastic behavior of concrete
- under standard conditions,
- under drying conditions,
- under low relative humidity,
- without recoverable creep,
- and at high temperature.
Specification(s): concrete_logcreep/concrete_logcreep_standard, concrete_logcreep/concrete_logcreep_drying, concrete_logcreep/concrete_logcreep_humidity, concrete_logcreep/concrete_logcreep_norec, concrete_logcreep/concrete_logcreep_temp
Design: ConcreteLogarithmicCreepModel
Issue(s): #9
Collection(s): FUNCTIONAL
Type(s): Exodiff
- blackbear: Damage Plasticity Model
- 2.10.1BlackBear shall provide a damaged plasticity model for concrete, which demonstrates the desired behavior
- in uniaxial tensile loading.
- in uniaxial compressive loading.
- when factor_controlling_dilatancy is changed.
- in shear loading.
Specification(s): concrete_behavior/uniaxial_tension, concrete_behavior/uniaxial_compression, concrete_behavior/dilatancy, concrete_behavior/shear
Design: Damage Plasticity ModelCompute Multiple Inelastic Damage Stress
Issue(s): #184
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.10.2Blackbear shall produce an error message when input required for the inelastic_models are not properly set by user:
- when inelastic_models is not given as damage_plasticity_model
- when inelastic_models has more than one model as input
Specification(s): error_message_check/inelastic_models_name, error_message_check/inelastic_models_size
Design: Damage Plasticity ModelCompute Multiple Inelastic Damage Stress
Issue(s): #184
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- blackbear: Compute Multiple Inelastic Damage Stress
- 2.10.1BlackBear shall provide a damaged plasticity model for concrete, which demonstrates the desired behavior
- in uniaxial tensile loading.
- in uniaxial compressive loading.
- when factor_controlling_dilatancy is changed.
- in shear loading.
Specification(s): concrete_behavior/uniaxial_tension, concrete_behavior/uniaxial_compression, concrete_behavior/dilatancy, concrete_behavior/shear
Design: Damage Plasticity ModelCompute Multiple Inelastic Damage Stress
Issue(s): #184
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.10.2Blackbear shall produce an error message when input required for the inelastic_models are not properly set by user:
- when inelastic_models is not given as damage_plasticity_model
- when inelastic_models has more than one model as input
Specification(s): error_message_check/inelastic_models_name, error_message_check/inelastic_models_size
Design: Damage Plasticity ModelCompute Multiple Inelastic Damage Stress
Issue(s): #184
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- blackbear: FunctionOffsetDirichletBC
- 2.11.1Blackbear shall support Dirichlet type boundary conditions defined by a function
- for a planar boundary with positive offset location along nodal normal direction
- for a curved boundary with negative offset location along nodal normal direction
Specification(s): test_bc/test_rectangular, test_bc/test_circular
Design: FunctionOffsetDirichletBC
Issue(s): #356
Collection(s): FUNCTIONAL
Type(s): Exodiff
- blackbear: Mazars Damage
- 2.12.1BlackBear shall provide the Mazars model for scalar damage of concrete, predicting the correct response of a unit cube loaded
- in tension
- and in compression.
Specification(s): mazars_damage/mazars_tension, mazars_damage/mazars_compression
Design: Mazars Damage
Issue(s): #24
Collection(s): FUNCTIONAL
Type(s): Exodiff
- 2.12.2The MazarsDamage model shall generate an error if used with a material that is not guaranteed isotropic
Specification(s): mazars_damage_isotropic_error
Design: Mazars Damage
Issue(s): #24
Collection(s): FUNCTIONALFAILURE_ANALYSIS
Type(s): RunException
- 2.13.1BlackBear shall provide the Mazars scalar damage model for concrete, correctly predicting the response of a multi-element concrete bar loaded in tension
Specification(s): tensile_bar
Design: Mazars Damage
Issue(s): #24
Collection(s): FUNCTIONAL
Type(s): Exodiff
- blackbear: NEMLStateAux
- 2.14.1NEMLStateAux outputs state to aux system
Specification(s): neml_aux_output
Design: NEMLStateAux
Issue(s): #343
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- blackbear: NEMLMaterialPropertyReset
- 2.14.2NEMLMaterialPropertyReset in fact resets the state variable after reaching the critical temperature
Specification(s): neml_anneal_state
Design: NEMLMaterialPropertyReset
Issue(s): #343
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- blackbear: NEML Stress
- 2.15.1Blackbear shall be capable of running a TM model with inelastic material exhibiting linear strain hardening.
Specification(s): neml_LSH
Design: NEML Stress
Issue(s): #59
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.15.2Blackbear shall be capable of using the NEML library to simulate an inelastic material exhibiting linear strain hardening.
Specification(s): TM_LSH
Design: NEML Stress
Issue(s): #59
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.15.3Blackbear shall be capable of running a TM model with inelastic material exhibiting power law creep behavior.
Specification(s): test5a_lim
Design: NEML Stress
Issue(s): #59
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.15.4Blackbear shall be capable of using the NEML library to simulate an inelastic material exhibiting power law creep behavior.
Specification(s): test5a_lim_neml
Design: NEML Stress
Issue(s): #59
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.16.1BlackBear shall be capable of using the NEML library to compute the response of an inelastic material
Specification(s): neml_inelastic
Design: NEML Stress
Issue(s): #59
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.16.2BlackBear shall be capable of using a timestep limit computed by the NEML coupling material
Specification(s): neml_inelastic_dt
Design: NEML Stress
Issue(s): #169
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.17.1BlackBear shall output the damage value for NEML models.
Specification(s): neml_damage_output
Design: NEML Stress
Issue(s): #305
Collection(s): FUNCTIONAL
Type(s): Exodiff
- 2.19.1BlackBear shall be capable of interfacing with the NEML library to compute stress
Specification(s): neml_linear_elastic
Design: NEML Stress
Issue(s): #59
Collection(s): SYSTEM
Type(s): CSVDiff
- 2.19.2BlackBear shall be capable of using the NEML library to compute the response of a linearly elastic material parsed from xml. Parameters defined in the xml can be overwritten by variables in the input file.
Specification(s): neml_linear_elastic_variableOverwrite
Design: NEML Stress
Issue(s): #59
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.19.3BlackBear shall be capable of using the NEML library to compute the response of a linearly elastic material defined in a material class
Specification(s): neml_linear_elastic_simpleMaterial
Design: NEML Stress
Issue(s): #78
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- 2.19.4BlackBear shall be capable of interfacing with the NEML library to compute thermal expansion
Specification(s): neml_linear_elastic_thermal
Design: NEML StressNEML Thermal Expansion Eigenstrain
Issue(s): #59
Collection(s): SYSTEM
Type(s): CSVDiff
- 2.20.1BlackBear shall provide the ability to use the NEML library to model material response, and allow for parameters defined in the xml file to be overridden in the BlackBear input file
Specification(s): neml_simple_stochastic
Design: NEML Stress
Issue(s): #78
Collection(s): FUNCTIONAL
Type(s): CSVDiff
- blackbear: CauchyStressFromNEML
- 2.18.1Jacobian is exact with relative tolerance of 1e-7 for small strain kinematics using the total Lagrangian formulation
Specification(s): small_total
Design: CauchyStressFromNEML
Issue(s): #312
Collection(s): FUNCTIONAL
Type(s): PetscJacobianTester
- 2.18.2Jacobian is exact with relative tolerance of 1e-7 for small strain kinematics using the updated Lagrangian formulation
Specification(s): small_updated
Design: CauchyStressFromNEML
Issue(s): #312
Collection(s): FUNCTIONAL
Type(s): PetscJacobianTester
- 2.18.3Jacobian is exact with relative tolerance of 1e-7 for large strain kinematics using the total Lagrangian formulation
Specification(s): large_total
Design: CauchyStressFromNEML
Issue(s): #312
Collection(s): FUNCTIONAL
Type(s): PetscJacobianTester
- 2.18.4Jacobian is exact with relative tolerance of 1e-7 for large strain kinematics using the updated Lagrangian formulation
Specification(s): large_updated
Design: CauchyStressFromNEML
Issue(s): #312
Collection(s): FUNCTIONAL
Type(s): PetscJacobianTester
- blackbear: NEML Thermal Expansion Eigenstrain
- 2.19.4BlackBear shall be capable of interfacing with the NEML library to compute thermal expansion
Specification(s): neml_linear_elastic_thermal
Design: NEML StressNEML Thermal Expansion Eigenstrain
Issue(s): #59
Collection(s): SYSTEM
Type(s): CSVDiff
- blackbear: Steel Creep Damage (Oh et al)
- 2.21.1Blackbear shall compute steel creep damage considering stress triaxiality as per Oh et al (2011)
- and apply it reduce the finite element stress of a simple problem to simulate creep failure.
- and apply it to reduce the finite element stress of a simple problem to simulate creep failure when using automatic differentiation.
- and apply it to reduce the finite element stress of a simple two-dimensional problem to simulatecreep failure when using automatic differentiation.
- and apply it to reduce the finite element stress of a simple two-dimensional problem to simulatecreep failure when using hand-coded Jacobians.
Specification(s): creepdamage/steel_creep_damage, creepdamage/ad_steel_creep_damage, creepdamage/ad_steel_creep_damage_2d, creepdamage/steel_creep_damage_2d
Design: Steel Creep Damage (Oh et al)
Issue(s): #231
Collection(s): FUNCTIONAL
Type(s): Exodiff
- 2.21.2Blackbear shall compute steel creep damage
- using a single creep strain name in the input.
- using a vector of creep strain names in the input to reproduce creep strain and damage from equivalent single power law.
Specification(s): vector/singlecreeplaw, vector/multicreeplaw
Design: Steel Creep Damage (Oh et al)
Issue(s): #307
Collection(s): FUNCTIONAL
Type(s): CSVDiff