RdgApp System Requirement Specification
Introduction
The SRS for RdgApp describes the system functional and non-functional requirements that describe the expected interactions that the software shall provide.
Dependencies
The RdgApp application is developed using MOOSE and is based on various modules, as such the SRS for RdgApp is dependent upon the following documents.
Requirements
The following is a complete list for all the functional requirements for RdgApp.
Functional Requirements
- rdg: Actions
- 11.1.1The system shall error if the supplied order of scalar auxiliary variable is of an unknown order.
- 11.1.2The system shall support calculations with an auxiliary scalar variable represented with a 21st order monomial function.
- 11.1.3The system shall be capable of reporting
Action
object dependencies. - 11.1.4The system shall be capable of reporting
Action
object task information. - 11.1.5The system shall support the detailed on-screen output of all of the Reporters that were declared and requested, including type, producer, context, and consumers.
- 11.1.6The system shall be able to retrieve other
Action
objects from within anotherAction
object. - 11.1.7The Action system shall allow
Action
objects to create otherAction
objects. - 11.1.8The Action system shall allow the creation of
Action
objects with multiple tasks.
- rdg: Adaptivity
- 11.2.1The Adaptivity system shall allow for multiple mesh adaptivity steps per timestep.
- 11.2.2The Adaptivity system shall support mesh adaptivity during initial setup.
- 11.2.3The Adaptivity system shall support marking elements for refinement during initial setup using a different marker than used during execution.
- 11.2.4The Adaptivity system shall support execution at every n timestep.
- 11.2.5The Adaptivity system shall be capable of restricting the element refinement level.
- 11.2.6The Adaptivity system shall allow for
Marker
objects to be recomputed with each adaptivity cycle.
- rdg: Auxkernels
- 11.3.1MOOSE shall include the ability to set the value of an array variable using a function.
- 11.3.2MOOSE shall provide a way to convert a component of an array variable to a standard variable.
- 11.3.3MOOSE shall support auxiliary calculations for scalar variables at nodes.
- 11.3.4The AuxScalarKernel system shall automatically resolve dependencies between objects.
- 11.3.5The system shall include the ability to compute a field variable with a constant upper and lower bounds.
- 11.3.6The system shall error if a variational inequalities (VI) solver is not found when BoundsAux is provided.
- 11.3.7The system shall include the ability to compute a field variable with a lower bound given by variable's old value.
- 11.3.8The system shall support the copy the values of standard variables into the component fields of an array variable.
- 11.3.9The system shall report a reasonable error when copying standard variables into the components of an array variable when
- the variables have inconsistent sizes or
- when the variables have inconsistent types.
- 11.3.10The
ConstantScalarAux
object shall set the value of an scalar auxiliary variable to a constant value. - 11.3.11The system shall make current boundary id available in objects evaluated on boundaries.
- 11.3.12The
DiffusionFluxAux
object shall compute the components of the flux vector for diffusion problems. - 11.3.13The
DiffusionFluxAux
object shall compute the normal component of the flux vector for diffusion problems. - 11.3.14The system shall have the capability of visualizing element integers in an auxiliary variable.
- 11.3.15The variable data created by a MaterialRealAux object shall support being limited to boundaries.
- 11.3.16MOOSE shall support boundary restricted auxiliary elemental variables with high order shape functions.
- 11.3.17MOOSE shall error if a boundary restricted elemental auxiliary kernel is evaluated on an element with multiple boundary sides
- 11.3.18The system shall allow a boundary restricted elemental auxiliary kernel to be evaluated on an element with multiple boundary sides by setting an input parameter.
- 11.3.19Kernel objects shall be capable of coupling to an auxiliary variable.
- 11.3.20AuxKernel object dependencies shall be resolved automatically.
- 11.3.21AuxKernel objects shall operate on higher-order monomial basis functions.
- 11.3.22AuxKernel objects shall operate on first-order L2 basis functions.
- 11.3.23AuxKernel object dependencies shall be resolved between block and non-block restricted variables.
- 11.3.24MOOSE shall include an AuxKernel object for returning the element length.
- 11.3.25MOOSE shall be able to compute and visualize element quality metrics
- 11.3.26MOOSE shall support the computation of a single value per element within the auxiliary system.
- 11.3.27MOOSE shall include the ability to compute the Lp, L2, and H1 error norms for each element.
- 11.3.28MOOSE shall allow objects that depend on each other but have differing execution flags to run without error.
- 11.3.29MOOSE shall include the ability to access the normal of a coupled variable within an AuxKernel object.
- 11.3.30MOOSE shall include the ability to set the value of a scalar variable using a function.
- 11.3.31MOOSE shall include the ability to report values on a boundary from a boundary across a mesh gap.
- 11.3.32MOOSE shall include the ability to report values on a boundary from a boundary across a mesh gap for a block restricted variable.
- 11.3.33The system shall support viewing the elements that would be ghosted
- to specific processors and
- include local elements.
- 11.3.34MOOSE shall utilize the minimum of ghosting necessary for the problem
- 11.3.35MOOSE shall include the ability to extract a component of a linear Largrange variable gradient as an auxiliary variable.
- 11.3.36MOOSE shall include the ability to extract a component of a first order monomial variable gradient as an auxiliary variable.
- 11.3.37MOOSE shall allow visualization of the MPI processes mapping to compute nodes
- 11.3.38MOOSE shall include the ability to compute the linear combination of variables as an auxiliary variable.
- 11.3.39MOOSE shall include the ability to use extra element integers.
- 11.3.40MOOSE shall include the ability to use extra element integers on element faces.
- 11.3.41MOOSE shall include the ability to compute the shortest distance from a nodes across boundaries.
- 11.3.42MOOSE shall have the ability to restrict AuxKernel objects with coupled variables to a boundary.
- 11.3.43MOOSE shall include the ability to limit the execution of an AuxKernel object to initial setup.
- 11.3.44MOOSE shall include the ability to couple auxiliary variables.
- 11.3.45MOOSE shall be capable of resolving dependencies between AuxKernel objects regardless of input file order.
- 11.3.46The AuxKernel objects shall be capable of coupling to multiple variables.
- 11.3.47The MOOSE auxiliary system shall be capable of updating multiple auxiliary variables within a single AuxKernel object.
- 11.3.48The MOOSE auxiliary system shall be capable of coupling to nonlinear variables at the end of a timestep.
- 11.3.49MOOSE shall include the ability to normalize a variable based on a Postprocessor value.
- 11.3.50MOOSE shall include the ability to normalize and shift a variable based on a Postprocessor value.
- 11.3.51AuxKernel objects shall support the use of material properties from the previous two timesteps.
- 11.3.52MOOSE shall include an AuxKernel object capable of computing values from a functional expression.
- 11.3.53The parsed expression AuxKernel in MOOSE shall expose quadrature/nodal point coordinates and time if requested by the user.
- 11.3.54Execution of a UserObject shall occur after the execution of the AuxKernel objects if the former depends on the latter.
- 11.3.55Execution of a FunctionValuePostprocessor that depends on a Function which depends on a second PostProcessor is construction order dependent.
- 11.3.56Implicit dependencies of FunctionValuePostprocessors may be declared to resolve execution order independently of construction order.
- 11.3.57MOOSE shall support the ability to compute the quotient of two variables.
- 11.3.58The system shall be capable of initializing an auxiliary variable from an existing solution
- from data generated by a simulation
- and loaded using location,
- using a direct degree-of-freedom copy for identical meshes,
- with scaling the supplied data,
- and that errors if data for the supplied variable is not found.
- 11.3.59The SolutionAux object shall be capable of populating an auxiliary variable from an ExodusII file.
- 11.3.60The SolutionAux object shall be capable of populating an auxiliary variable from an ExodusII file with a custom extension (e.g., *.e-s003).
- 11.3.61The SolutionAux object shall be capable of reading elemental data for the largest timestep.
- 11.3.62The SolutionAux object shall be capable of reading elemental data for a specific timestep.
- 11.3.63The SolutionAux object shall be capable of restricting reading to a single elemental variable.
- 11.3.64The SolutionAux object shall be capable of initializing an auxiliary variable from an existing ExodusII file using a direct degree-of-freedom copy for identical meshes.
- 11.3.65The SolutionAux object shall be capable of setting an auxiliary variable with temporal interpolation.
- 11.3.66The system shall be capable of initializing an auxiliary variable from an existing solution that
- is created in a simulation and
- used to restart another.
- 11.3.67The SolutionAux object shall be capable of setting an auxiliary variable with temporal interpolation using a direct degree-of-freedom copy for identical meshes.
- 11.3.68The SolutionAux object shall be capable of accessing specific variables from a SolutionUserObject.
- 11.3.69The SolutionAux object shall produce an error if the 'from_variable' parameter is not set and the supplied UserObject has multiple variables.
- 11.3.70The systems object shall be capable of setting values using an auxiliary variable
- from a simulation using
- an ASCII file and
- a binary file.
- 11.3.71The system shall be capable of setting values using an auxiliary variable
- create4d from a simulation with adaptivity
- from an ASCII file
- with multiple threads.
- 11.3.72The system shall read a scalar variable from an Exodus file and use its value
- from data generated by simulation
- and loaded by another.
- 11.3.73Kernel objects shall be able to couple to the time derivative of an auxiliary variable.
- 11.3.74AuxKernel objects shall be able to couple to the time derivative of a nonlinear variable.
- 11.3.75Error an AuxKernel object attemps to couple to the time derivative of an auxiliary variable.
- 11.3.76MOOSE shall include the ability to compute the integral of a variable over time.
- 11.3.77MOOSE shall resolve the dependency of auxiliary kernels on user objects including the objects that the aux kernels indirectly depend on.
- 11.3.78MOOSE shall include the ability to set the components of a vector auxiliary variable using a function defined within the input file.
- 11.3.79MOOSE shall include the ability to compute the Euclidean norm of three coupled variables.
- 11.3.80The system shall be able to output vector auxiliary variables based on the values of vector material properties, regardless of whether the material properties are computed using automatic differentiation or not.
- 11.3.81MOOSE shall be capable of populating an auxiliary variable from VectorPostprocessor data sized to the number of processors.
- 11.3.82MOOSE shall include the ability to compute auxiliary quantities at the nodes of elements based on the values of a LAGRANGE_VEC variable.
- 11.3.83AuxKernel objects shall be capable of coupling to VectorPostprocessor objects.
- rdg: Bcs
- 11.4.1MOOSE shall support Neumann type boundary conditions for a 1D problem.
- 11.4.2MOOSE shall support Neumann type boundary conditions for a 1D problem using an imported mesh.
- 11.4.3The system shall support Neumann type boundary conditions using automatic differentiation for a 1D problem
- using a generated mesh.
- and shall be able to produce the exact Jacobian
- using an imported mesh.
- 11.4.4MOOSE shall support setting AD Dirichlet type boundary conditions, supplied as a function, directly to the solution vector prior to the solve.
- 11.4.5MOOSE shall support setting AD Dirichlet type boundary conditions directly to the solution vector prior to the solve.
- 11.4.6MOOSE shall support setting AD Dirichlet type boundary conditions, supplied as a function, directly to the solution vector prior to the solve and have perfect Jacobians.
- 11.4.7MOOSE shall support setting AD Dirichlet type boundary conditions directly to the solution vector prior to the solve and have perfect Jacobians.
- 11.4.8We shall be able to produce the expected result using ADKernel, ADNodalBC, and ADIntegratedBC
- 11.4.9We shall be able to produce the exact Jacobian using ADKernel, ADNodalBC, and ADIntegratedBC with a first order variable
- 11.4.10We shall be able to produce the exact Jacobian using ADKernel, ADNodalBC, and ADIntegratedBC with a second order variable
- 11.4.11We shall be able to produce the expected result using ADVectorKernel, ADVectorNodalBC, and ADVectorIntegratedBC
- 11.4.12We shall be able to produce the exact Jacobian using ADVectorKernel, ADVectorNodalBC, and ADVectorIntegratedBC with a first order variable
- 11.4.13We shall be able to produce the exact Jacobian using ADVectorKernel, ADVectorNodalBC, and ADVectorIntegratedBC with a second order variable
- 11.4.14The system shall be able to couple a lower-dimensional variable into a boundary condition for a higher-dimensional variable.
- 11.4.15The system shall support Dirichlet type boundary conditions defined by a function
- using automatic differentiation.
- using automatic differentiation and shall be able to produce the exact Jacobian.
- 11.4.16The system shall support Neumann type boundary conditions defined by a function
- using automatic differentiation.
- using automatic differentiation and shall be able to produce the exact Jacobian.
- 11.4.17MOOSE shall support matching variable values on a boundary using automatic differentiation
- 11.4.18MOOSE shall produce the exact Jacobian for BC matching variable values on a boundary using automatic differentiation
- 11.4.19The system shall support the application of Dirichlet type boundary conditions using the penalty method using the AD system
- with a constant value on the boundary.
- with a constant value on the boundary and shall be able to produce the exact Jacobian.
- with a value on the boundary set by a function.
- with a value on the boundary set by a function and shall be able to produce the exact Jacobian.
- 11.4.20MOOSE shall provide array vacuum boundary condition.
- 11.4.21MOOSE shall support setting Dirichlet type boundary conditions, supplied as a function, directly to the solution vector prior to the solve.
- 11.4.22MOOSE shall support setting Dirichlet type boundary conditions directly to the solution vector prior to the solve.
- 11.4.23MOOSE shall support the creation of BoundaryCondition objects that support conditional activation.
- 11.4.24MOOSE shall support the creation of BoundaryCondition objects that couple to nonlinear variables.
- 11.4.25MOOSE shall support coupled Neumann type boundary conditions.
- 11.4.26The system shall enable scaling of the Neumann type boundary conditions.
- 11.4.27The system shall be able to determine if a non-scalable algorithm is being used for ghosting boundaries.
- 11.4.28The system shall make sure that boundaries are actually distributed.
- 11.4.29The system shall support periodic boundary conditions in a parallel generated 2D mesh.
- 11.4.30The system shall support periodic boundary conditions in a parallel generated 3D mesh.
- 11.4.31The system shall support periodic boundary conditions in a parallel generated 1D mesh.
- 11.4.32MOOSE shall support Dirichlet type boundary conditions defined by a function.
- 11.4.33The system shall support applying a function of space-time as a Neumann boundary condition.
- 11.4.34The system shall support applying a material property as a Neumann boundary condition.
- 11.4.35The system shall support applying a material property as a Neumann boundary condition using AD.
- 11.4.36MOOSE shall support matching variable values on a boundary.
- 11.4.37MOOSE shall support the ability to create convective flux boundary conditions.
- 11.4.38MOOSE shall support a vacuum boundary condition for neutron diffusion on the boundary.
- 11.4.39MOOSE shall support Neumann type boundary conditions where the specified value is defined as the value of a vector, , in the direction of the boundary outward facing normal, (i.e., ).
- 11.4.40MOOSE shall support the 'no boundary condition' type boundary condition (Griffiths, 1997).
- 11.4.41MOOSE shall be capable of computing the nodal normals for triangle elements.
- 11.4.42MOOSE shall be capable of computing the nodal normals for quadrilateral elements.
- 11.4.43MOOSE shall be capable of computing the nodal normals for first order hexahedron elements.
- 11.4.44MOOSE shall be capable of computing the nodal normals for second order hexahedron elements.
- 11.4.45MOOSE shall be capable of computing the first order nodal normals for second order hexahedron elements.
- 11.4.46MOOSE shall be capable of computing the nodal normals for quadrilateral elements on a square domain.
- 11.4.47MOOSE shall support the application of Dirichlet type boundary conditions using the penalty method.
- 11.4.48MOOSE shall support the application of Dirichlet type boundary conditions, defined by a function, using the penalty method.
- 11.4.49MOOSE shall support periodic boundary conditions with transforms defined as functions.
- 11.4.50MOOSE shall support periodic boundary conditions with transforms that are computed automatically in the 'x' and 'y' directions.
- 11.4.51MOOSE shall support periodic boundary conditions with transforms that are computed automatically in the 'x' and 'y' directions using a non-generated mesh.
- 11.4.52The PeriodicDistanceAux object shall produce an error when a point is provided that is outside the mesh domain.
- 11.4.53MOOSE shall support periodic boundary conditions with transforms that are computed automatically in the 'x', 'y', and 'z' directions.
- 11.4.54MOOSE shall support periodic boundary conditions on orthogonal boundaries with transforms defined as functions.
- 11.4.55MOOSE shall support periodic boundary conditions on parallel boundaries with transforms defined as functions.
- 11.4.56MOOSE shall support periodic boundary conditions with mesh adaptivity.
- 11.4.57MOOSE shall support periodic boundary conditions with transforms prescribed as a translation.
- 11.4.58MOOSE shall support periodic boundary conditions on vector variables with transforms prescribed as a translation.
- 11.4.59MOOSE shall support periodic boundary conditions with displacements.
- 11.4.60MOOSE shall support periodic boundary conditions on a trapezoid domain with transforms prescribed as functions.
- 11.4.61Calls to periodic distance and bounds methods on the mesh shall work when periodic boundary conditions are not used.
- 11.4.62MOOSE shall support periodic boundary conditions on a wedge domain with transforms prescribed as functions.
- 11.4.63MOOSE shall support periodic boundary conditions for a single variable on a wedge domain with transforms prescribed as functions.
- 11.4.64MOOSE shall support periodic boundary conditions for input meshes that have repeated element ids.
- 11.4.65The Periodic Boundary system shall not attempt to add periodic boundary conditions to scalar variables.
- 11.4.66MOOSE shall support the application of a Neumann boundary condition computed via Postprocessor object.
- 11.4.67MOOSE shall properly compute second derivatives within BoundaryCondition objects.
- 11.4.68MOOSE shall support creating sidesets from nodesets for hexahedron elements to use with Boundary Condition objects.
- 11.4.69MOOSE shall support creating sidesets from nodesets for tetrahedron elements to use with Boundary Condition objects.
- 11.4.70MOOSE shall include the ability to apply a Neumann boundary condition according to a sin function.
- 11.4.71MOOSE shall include the ability to apply a Dirichlet boundary condition according to a sin function.
- 11.4.72BoundaryCondition objects shall support retrieval of VectorPostprocessor data.
- rdg: Constraints
- 11.5.1MOOSE shall include ability to force the value of a variable to be the same on both sides of an interface using Lagrange multipliers.
- 11.5.2MOOSE shall include the ability to constrain the values on a boundary to a value at a prescribed node.
- 11.5.3MOOSE shall be able to enforce the equal value boundary constraint in parallel with adaptivity.
- 11.5.4The system shall support embedded constraints between using a kinematic formulation between
- 1D and 2D;
- 1D and 3D;
- 2D;
- 2D and 3D; and
- 3D subdomains.
- 11.5.5The system shall support embedded constraints between using a penalty formulation between
- 1D and 2D;
- 1D and 3D;
- 2D;
- 2D and 3D; and
- 3D subdomains.
- 11.5.6MOOSE shall support the ability to constrain nodal values.
- 11.5.7MOOSE shall support the ability to constrain nodal values using a displaced mesh.
- 11.5.8MOOSE shall include ability to force the value of a variable to be the same on both sides of an interface.
- rdg: Controls
- 11.6.1The Control system shall allow a boolean parameter to be controlled with a function.
- 11.6.2The Control system shall be capable of activating or deactivating MOOSE objects using a conditional function.
- 11.6.3The MOOSE control system shall allow parameters from differing objects, with differing names to be associated and changed together.
- 11.6.4The MOOSE control system shall allow parameters from objects to be assigned aliases for the purpose of changing the value.
- 11.6.5The system shall allow controlling piecewise functions and material properties.
- 11.6.6The Control system shall support explicitly defined dependencies.
- 11.6.7The Control system shall error if an attempt to alter a non-controllable parameter is performed.
- 11.6.8The Control system shall error if multiple controllable parameters exists, but only a single parameter is expected to be controlled.
- 11.6.9The Control system shall error if an unknown parameter is supplied for control.
- 11.6.10The Control system shall error if a thread id greater than the number of threads available is supplied when retrieving a Control object.
- 11.6.11The Control system shall error if an attempt is made to disable the Executioner.
- 11.6.12The Control system shall error if an invalid control name is supplied to the Control dependency resolution procedure.
- 11.6.13The Control system shall support the modification of a single parameter using the objects base class name, object name, and parameter name.
- 11.6.14The Control system shall support the modification of multiple parameters using the objects base class and the parameter name.
- 11.6.15The Control system shall include a means to output information regarding the controlled parameters.
- 11.6.16The Control system shall include a means to output information regarding the controlled parameters, including only showing information regarding a parameter if it has changed since the last output.
- 11.6.17MOOSE shall include a command line flag for displaying controllable parameter information.
- 11.6.18The Control system shall include a means to output information regarding the objects with controllable parameters.
- 11.6.19The Control system shall be able to control an input parameter to make a postprocessor match a target value,
- using the principle of Proportional Integral Derivative control,
- using a input postprocessor in lieu of an input parameter,
- with integral windup control, resetting the integral term if the error crosses zero,
- keeping the PID process within a single timestep,
- and resetting the PID process correctly if the solver fails during a Picard/coupling iteration.
- 11.6.20The Control system shall allow a scalar parameter to be controlled with a function.
- 11.6.21The Control system shall allow multiple scalar parameters to be controlled with a function.
- 11.6.22The MOOSE control system shall be capable of restricting parameters to be controlled for specific execution flags.
- 11.6.23The Control system shall allow multiple parameters to be changed by the parameter name alone using input syntax format.
- 11.6.24The Control system shall allow multiple parameters to be changed given the object and parameter names using input syntax format.
- 11.6.25The Control system shall allow for a single parameter to be changes given the input syntax, object name, and parameter name.
- 11.6.26The Control system shall allow for multiple parameters to be changed given input syntax and a parameter name.
- 11.6.27The Control system shall allow multiple parameters to be changed by the parameter name alone using a tag.
- 11.6.28The Control system shall allow multiple parameters to be changed given a tag and parameter names, given a tag assigned across input blocks.
- 11.6.29The Control system shall allow for a single parameter to be changes given a tag and parameter name, given a tag assigned to a single object.
- 11.6.30The Control system shall allow for multiple parameters to be changed given a tag and a parameter name, given a tag assigned within a single input block on multiple objects.
- 11.6.31The Control system shall be capable of activating or deactivating AuxKernel objects with time.
- 11.6.32The Control system shall be capable of activating or deactivating AuxScalarKernel objects with time, given identical start end times.
- 11.6.33The Control system shall be capable of activating or deactivating AuxScalarKernel objects with time, given differing start end times.
- 11.6.34The system shall be capable of activating and/or deactivating boundary contributions to the residual with time
- for contributions from finite element nodes,
- for contributions integrated over a finite element side,
- for contributions from automatic differentiation, and
- perform the activation/deactivation with a single control.
- 11.6.35The Control system shall be capable of activating or deactivating Constraint objects with time.
- 11.6.36MOOSE shall support the disabling an object using an input parameter.
- 11.6.37MOOSE shall support the enabling an object using an input parameter.
- 11.6.38The Control system shall be capable of activating or deactivating Damper objects with time.
- 11.6.39The Control system shall be capable of activating or deactivating DGKernel objects with time.
- 11.6.40The Control system shall be capable of activating or deactivating DiracKernel objects with time.
- 11.6.41The TimePeriod object shall error when used with a steady state problem.
- 11.6.42The TimePeriod object shall error when the start and end time parameters are not the same length.
- 11.6.43The TimePeriod object shall error when start and end time parameters differ in length than the supplied object list.
- 11.6.44The TimePeriod object shall error when a list of objects to control is omitted.
- 11.6.45The TimePeriod object shall error when start time is greater than the end time.
- 11.6.46The system shall be capable of activating or deactivating volume residual contributions with time:
- for non-automatic differentiation and
- automatic differentiation terms.
- 11.6.47The Control system shall be capable of activating or deactivating MultiApp objects with time.
- 11.6.48The Control system shall be capable of activating or deactivating NodalKernel objects with time.
- 11.6.49The Control system shall be capable of activating or deactivating ScalarKernel objects with time.
- 11.6.50The Control system shall be capable of activating or deactivating Transfer objects with time.
- 11.6.51The Control system shall be capable of activating or deactivating UserObject objects with time.
- rdg: Coord Type
- 11.7.1MOOSE shall support cylindrical coordinates with the radial direction in the 'x' direction.
- 11.7.2MOOSE shall support cylindrical coordinates with the radial direction in the 'y' direction.
- 11.7.3MOOSE shall support cylindrical coordinates with the radial direction in the 'x' direction with discontinous Galkerin and integrated boundary conditions.
- 11.7.4MOOSE shall support cylindrical coordinates with the radial direction in the 'y' direction with discontinous Galkerin and integrated boundary conditions.
- rdg: Dampers
- 11.8.1MOOSE shall include the ability to reduce the change in nonlinear residual based on a maximum value on elements.
- 11.8.2MOOSE shall include the ability to reduce the change in nonlinear residual based on a minimum value on elements.
- 11.8.3MOOSE shall include the ability to reduce the change in nonlinear residual based on a maximum value on nodes.
- 11.8.4MOOSE shall include the ability to reduce the change in nonlinear residual based on a minimum value on nodes.
- 11.8.5MOOSE shall include the ability to reduce the change in nonlinear residual based on a constant value.
- 11.8.6The Damper system shall use the minimum of NodalDamper and ElementDamper, when the later computes the minimum.
- 11.8.7The Damper system shall use the minimum of NodalDamper and ElementDamper, when the former computes the minimum.
- 11.8.8The Damper system shall be capable of reducing the change in non linear residual based on an allowable increment on elements using an absolute increment.
- 11.8.9The Damper system shall be capable of reducing the change in non linear residual based on an allowable increment on elements using an fractional increment.
- 11.8.10The BoundingValueNodalDamper object shall report if the minimum value is greater than the maximum value.
- 11.8.11The BoundingValueElementDamper object shall report if the minimum value is greater than the maximum value.
- 11.8.12The Damper system shall error if the damping value is below a minimum.
- rdg: DGKernel Objects
- 11.9.1MOOSE shall support solving 1D advection using the discontinous Galerkin method.
- 11.9.2MOOSE shall support solving 2D diffusion using the discontinuous Galerkin method.
- 11.9.3DGKernels shall coexist with stateful material properties
- 11.9.4The system shall not perform memory allocation automatic scaling when computing values using discontinuous finite element methods.
- 11.9.5When objects that need one layer of coupling (like DGKernels) are added via action, we shall ensure that we have added a proper relationship manager and thus incur no mallocs during calls to MatSetValues. We will not apply algebraic ghosting nor reinitialize system vectors in serial, but we will reinitialize the matrix sparsity
- 11.9.6When objects that need one layer of coupling (like DGKernels) are added via action, we shall ensure that we have added a proper relationship manager and thus incur no mallocs during calls to MatSetValues. We will also apply algebraic ghosting in parallel which will require reinitializing the system; the sparsity pattern will also have to be reinitialized
- 11.9.7If a RelationshipManager with sufficient coverage has already been added through a MooseObjectAction, then the CouplingFunctorCheck action shall not add any relationship managers, avoiding reinitialization of system vectors and the system matrix
- 11.9.8This test shall have one more rm than its replicated counter part because of the geometric-only GhostPointNeighbors rm, also demonstrating no mallocs. Sparsity will be reinitialized but not vectors
- 11.9.9This test shall have one more rm than its replicated counter part because of the geometric-only GhostPointNeighbors rm, also demonstrating no mallocs. Sparsity and vectors will both be reinitialized
- 11.9.10This test shall have one more rm than its replicated counter part because of the geometric-only GhostPointNeighbors rm, also demonstrating no addition of rms by the CouplingFunctorCheckAction
- 11.9.11MOOSE shall support solving 3D diffusion using the discontinuous Galerkin method.
- 11.9.12We shall be able to use constant monomials with AD
- 11.9.13MOOSE should support AD in DG Kernels
- 11.9.14Adaptivity shall work with dg kernels as long as stateful properties are not used.
- 11.9.15The system shall error if the triad of dg kernels, adaptivity, and stateful properties are used together.
- 11.9.16MOOSE shall be able to solve the advection diffusion equation using the discontinuous Galerkin method.
- 11.9.17MOOSE shall compute the correct Jacobian for the advection diffusion equation using the discontinuous Galerkin method.
- 11.9.18The DGKernel system shall support restriction to subdomains, in 1D.
- 11.9.19The DGKernel system shall support restriction to subdomains, in 2D.
- 11.9.20The DGKernel system shall operate with displaced meshes.
- 11.9.21The DGCoupledDiffusion object shall compute the correct Jacobian.
- rdg: Dirackernels
- 11.10.1The system shall support the coupling of scalar aux variables for the purpose of sharing data and reporting values.
- 11.10.2The system shall support block restricted dirac kernels.
- 11.10.3The system shall behave accordingly if the added point is not found, when point_not_found_behavior is set to
- ERROR or
- WARNING.
- 11.10.4The system shall support a constant point source implemented as a Dirac function:
- in 1D,
- in 2D,
- in 3D,
- and with finite volume variables.
- 11.10.5The system shall allow for source locations to be set by a user-defined object.
- 11.10.6The system shall have the ability to set the value of point source from a function.
- 11.10.7The system shall allow point sources originating from the evaluation of material properties.
- 11.10.8DiracKernel objects shall report an error if a material property from a previous time step is requested:
- one step back, and
- two steps back.
- 11.10.9The DiracKernel system shall allow for duplicate source locations to be defined.
- 11.10.10The system shall support the computation of off diagonal Jacobian terms for residual terms defined with a Dirac delta function.
- 11.10.11The system shall support source location caching using element ids:
- on a static mesh with no adaptivity,
- with uniform mesh refinement,
- with adaptive mesh refinement, and
- with displaced mesh.
- 11.10.12The DiracKernel system shall report an error if a location does not correspond with the supplied element id.
- 11.10.13The system shall support point sources with locations and values given by a Reporter
- in a steady state 2D problem, reading data from a reporter and reproducing the constantPointSource.
- in a steady state 2D problem, reading data from a vectorPostProcessor and reproducing the constantPointSource.
- in steady state 3D problem, reproducing the constantPointSource.
- in a transient problem with the vpp source value changing as the vpp changes.
- and shall report an error if the input arrays are not the same size
- rdg: Executioners
- 11.11.1The Executioner system shall support the ability to create custom objects with custom execution callbacks.
- 11.11.2The Executioner system shall support the creation of custom objects with arbitrary execution flags.
- 11.11.3MOOSE shall support solving an Eigen value problem using the inverse power method.
- 11.11.4MOOSE shall support solving an Eigen value problem using Newton's method.
- 11.11.5MOOSE shall support solving an Eigen value problem using Newton's method in parallel.
- 11.11.6MOOSE shall support the use of material properties during an Eigen problem solve.
- 11.11.7MOOSE shall be capable of solving a diffusion problem using an Eigen value solver.
- 11.11.8MOOSE shall be capable of solving a nonlinear diffusion problem using an Eigen value solver.
- 11.11.9MOOSE shall be capable of solving a coupled nonlinear diffusion problem using an Eigen value solver.
- 11.11.10The EigenKernel object shall be capable of using coupled variables.
- 11.11.11MOOSE shall support adaptive solves for steady-state execution.
- 11.11.12MOOSE shall be able to detect steady state conditions during execution.
- 11.11.13MOOSE shall be capable of solving a steady state diffusion problem.
- 11.11.14MOOSE shall be capable of solving a transient diffusion problem.
- 11.11.15MOOSE shall print automatic scaling factors if specified.
- 11.11.16MOOSE shall not print automatic scaling factors if not specified.
- 11.11.17MOOSE shall provide a cability to solve a problem iteratively with a tagged residual vector for
- linear and
- nonlinear problems.
- 11.11.18MOOSE shall provide a capability to solve a problem iteratively with a tagged solution vector being coupled in
- kernels and/or
- materials.
- 11.11.19MOOSE shall correctly compute Jacobians when boundary conditions are disabled.
- 11.11.20The Executioner system shall support the PETSc non-linear divergence tolerance.
- 11.11.21The system shall consider a nonlinear solve diverged if the nonlinear residual exceeds the absolute divergence tolerance while iterating
- 11.11.22The system shall perform n non linear iterations before checking for non linear divergence
- 11.11.23MOOSE shall force the prescribed number of non linear iterations even if convergence tolerance is already satisfied.
- 11.11.24The system shall consider a nonlinear solve diverged if the nonlinear residual oscillates by a user-controlled number of times.
- 11.11.25MOOSE shall compute the solution of rank-deficient linear equations if the right hand side is within the range of the linear operator.
- 11.11.26MOOSE shall compute the solution of rank-deficient linear equations if the right hand side has components that are orthogonal to the range of the linear operator.
- 11.11.27Executioner objects shall be capable of coupling to Postprocessor values.
- 11.11.28The system shall allow executioners to do setups before initializing the problem.
- 11.11.29MOOSE shall correctly evaluate Jacobians with coupled problems and the LINEAR solve type
- 11.11.30MOOSE shall not change the system time during steady-state execution.
- 11.11.31MOOSE shall be able to set the system time for steady-state execution.
- 11.11.32MOOSE shall support controlling what objects are executing based on start and end times.
- 11.11.33MOOSE shall support explicit definition of execution times.
- 11.11.34MOOSE shall support output using a time interval.
- rdg: Fixedbugs
- 11.12.1The Material objects provided on all subdomains shall satisfy requests for objects on all subdomains.
- rdg: Functions
- 11.13.1Generate the fine tabulated function data for the coarsened_piecewise_linear test
- 11.13.2The Function system shall include an object that creates a function based on x- and y-data pairs, reduces the number of data points based on a user supplied cut-off and returns a linearly interpolated value from the coarsened data.
- 11.13.3The Function system shall include a constant function.
- 11.13.4The Function system shall include the ability to set default values for input parameters expecting a function name.
- 11.13.5The Function system shall include the ability to read comma or space separated data and perform linear interpolation using the supplied data.
- 11.13.6MOOSE shall include an InitialCondition object capable of setting values base on a supplied function.
- 11.13.7The Function object shall include a callback executed during each timestep.
- 11.13.8The Material system shall support defining properties within the input file that are associated with functions.
- 11.13.9The system shall allow for piecewise functions to directly set the x and y data internally.
- 11.13.10The system shall include the ability to create functions from image files that errors if
- an unsupported file type is provided;
- if an invalid component value is supplied;
- if an invalid filename is provided; and
- the system is not configured with the correct dependencies.
- 11.13.11MOOSE shall include the ability to define a function based on a 2D image and initialize a nodal variable.
- 11.13.12MOOSE shall include the ability to define a function based on a 2D image and initialize a elemental variable.
- 11.13.13MOOSE shall include the ability to define a function based on a stack of images and initialize a nodal variable.
- 11.13.14MOOSE shall include the ability to define a function based on a subset stack of images and initialize a nodal variable.
- 11.13.15The ImageFunction object shall allow the image data to be set as one of two values based on a threshold value.
- 11.13.16MOOSE shall be capable of initializing a variable from image data and perform initial adaptivity based on the data.
- 11.13.17MOOSE shall be capable of initializing a variable from image data and perform initial adaptivity based on the data, in parallel.
- 11.13.18MOOSE shall be capable of initializing a variable from image data and perform initial adaptivity based on the data, in parallel and produce Nemesis output files.
- 11.13.19The ImageFunction object shall be capable of limiting the supplied data to a single component of the RGB image data.
- 11.13.20The ImageFunction object shall be capable of shifting and scaling the supplied data.
- 11.13.21The ImageFunction object shall be capable of operating on domains that are larger than the image size.
- 11.13.22The ImageFunction object shall be capable of flipping the data along the vertical axis.
- 11.13.23The ImageFunction object shall be capable of flipping the data along vertical axis and shifting the origin.
- 11.13.24The ImageFunction object shall be capable of flipping the data along vertical and horizontal axis.
- 11.13.25The ImageFunction object shall be capable of operating on domains that are smaller than the image size.
- 11.13.26The ImageMesh object shall be capable of generating a 3D mesh based on a stack of 2D images.
- 11.13.27The ImageMesh object shall be capable of generating a 2D mesh based on an image.
- 11.13.28The ImageFunction shift and scale options shall operate independently.
- 11.13.29The LinearCombinationFunction shall report an error if the parameters listing the functions differs in size than the list of coefficients.
- 11.13.30The LinearCombinationFunction shall be capable of computing the sum of function values, each multiplied by a scale factor.
- 11.13.31The LinearCombinationFunction shall be capable of computing the sum of function gradients, each multiplied by a scale factor.
- 11.13.32The LinearCombinationFunction shall be capable of computing the sum of vector functions, each multiplied by a scale factor.
- 11.13.33The Function system shall support the creation of objects that execute a function defined within the input file.
- 11.13.34The ParsedFunction object shall be capable of defining function within the input file for use with the method of manufactured solutions.
- 11.13.35The Function system shall support the creation of objects that execute a vector function defined within the input file.
- 11.13.36The Function system shall support the creation of objects that execute a function defined within the input file that includes a scalar variable.
- 11.13.37The ParsedFunction object shall support the use of other functions specified by their names in its expression.
- 11.13.38The ParsedFunction object shall support the use of functions, scalar values and postprocessor values specified by their names in its expression at the same time.
- 11.13.39The Function system shall support the creation of objects that execute a curl of a vector function defined within the input file.
- 11.13.40The ParsedFunction object shall fail with a human readable error if a vals entry is supplied that is neither a valid postprocessor, scalar variable, function, or real number.
- 11.13.41The Function system shall include an object that creates a function based on x- and y-data pairs and returns an explicit value from the supplied data when queried (i.e., linear interpolation is not performed).
- 11.13.42The PiecewiseMultilinear object will error if the supplied file fails to open.
- 11.13.43The PiecewiseMultiInterpolation object shall error if the supplied data is not monotonically increasing.
- 11.13.44The PiecewiseMultiInterpolation object shall error if the number of requested functions differ than the number available from the file.
- 11.13.45The PiecewiseMultiInterpolation errors if the axes supplied are not independent.
- 11.13.46The PiecewiseMultilinear shall error if the axis lines are not located in the supplied data.
- 11.13.47The PiecewiseMultilinear object shall perform interpolation on a 1D domain.
- 11.13.48The PiecewiseMultilinear object shall perform interpolation on a 1D domain that compares to an equivalent known function.
- 11.13.49The PiecewiseMultilinear object shall perform interpolation of time-dependent data.
- 11.13.50The PiecewiseMultilinear object shall perform interpolation on a 2D domain.
- 11.13.51The PiecewiseMultilinear object shall perform interpolation on a 2D domain that compares to an equivalent known function.
- 11.13.52The PiecewiseMultilinear object shall perform constant interpolation on a 2D domain.
- 11.13.53The PiecewiseMultilinear object shall perform interpolation on a 3D domain with time-dependent data.
- 11.13.54The Function object shall support the ability to couple Postprocessor values.
- 11.13.55The SolutionFunction object shall be capable of evaluating a solution read from XDA mesh and solution files.
- 11.13.56The SolutionFunction object shall be capable of evaluating a solution read from an Exodus file with temporal interpolation.
- 11.13.57The SolutionFunction object shall be capable of evaluating a solution read from an Exodus file.
- 11.13.58The SolutionFunction object shall be capable of evaluating a solution read from an Exodus file and rotated 45 degrees about the z-axis.
- 11.13.59The SolutionFunction object shall be capable of evaluating a solution read from an Exodus file and rotated 45 degrees about the y-axis.
- 11.13.60The SolutionFunction object shall be capable of evaluating a solution read from an Exodus file and rotated 90 degrees about the z-axis and 45 degress about the x-axis.
- 11.13.61The SolutionFunction object shall be capable of evaluating a solution read from an Exodus file and rotated 45 degrees about the z-axis for a 2D domain.
- 11.13.62The SolutionFunction object shall be capable of evaluating a solution read from an Exodus file and scaled by a factor in the x and y directions as well as translated in the x-direction.
- 11.13.63The SolutionFunction object shall be capable of evaluating a solution read from an Exodus file and scaled by a factor of two in the x and y directions.
- 11.13.64The SolutionFunction object shall error if a variable that does not exist is requested.
- 11.13.65The system shall be capable of evaluating the gradient of a solution
- created in a simulation
- and read from another.
- 11.13.66The VectorPostprocessorFunction shall be capable of linear interpolating data generated by a VectorPostprocessor object.
- 11.13.67The VectorPostprocessorFunction shall be capable of linear interpolating data generated by a VPP with respect to time.
- rdg: Fvbcs
- 11.14.1The system shall run a simple 1D diffusion problem with a Neumann BC value.
- 11.14.2The system shall error out if a finite volume flux boundary condition, in this case a finite volume Neumann boundary condition, is used inside the domain.
- 11.14.3The system shall error out if a finite volume flux boundary condition is used on a mesh element face that is not connected to an element with the corresponding finite volume variable.
- 11.14.4The system shall run a simple 1D diffusion problem with a Dirichlet BC value set by a postprocessor.
- rdg: Fviks
- 11.15.1The system shall be able to solve a diffusion problem with finite volumes with the domain split in half and force the two variables living on each side of the domain to match on the interface.
- 11.15.2The system shall be able to solve a diffusion problem with the domain split in half and two finite volume variables living on each side.
- 11.15.3The system shall error if a user specified variable on the 1st side of an interface does not actually exist on the 1st side.
- 11.15.4The system shall error if a user specified variable on the 2nd side of an interface does not actually exist on the 2nd side.
- 11.15.5The system shall error if a user does not specify a variable on the 2nd side of an interface, leading the system to assume that the variable on the 1st side of the interface should be used on the 2nd side, and the variable on the 1st side does not exist on the 2nd side.
- 11.15.6The system shall be able to solve a diffusion problem with finite volumes with the domain split in half and show first order convergence due to its treatment of coefficient discontinuities both
- with an interfacing object
- without an interfacing object
- rdg: Fvkernels
- 11.16.1The system shall support block restriction of finite volume variables and kernels, and shall properly handle material evaluation in block-restricted settings, in a one-dimensional example.
- 11.16.2The system shall return a warning in non-optimized modes if a user supplies a material property with the same name from different block-restricted materials on neighboring subdomains when there are different sets of finite volume flux kernels on those same neighboring subdomains. This is because we have to support ghosting of material properties for block restricted finite volume flux kernels.
- 11.16.3The system shall support simultaneous block restriction of finite volume and finite element variables and have coupling of the finite volume variables into the finite element equations.
- 11.16.4The system shall compute a perfect Jacobian when coupling block-restricted finite volume variables into block-restricted finite element calculations.
- 11.16.5The system shall allow different materials to define the same material property name on different sides of an interface when the finite volume physics is the same on both sides of the interface.
- 11.16.6The system shall compute a perfect Jacobian when different materials define the same material property on different sides of a interface and the finite volume physics are the same on both sides of the interface.
- 11.16.7The system shall error if a user attempts to couple both finite volume and finite element variables into the same material.
- 11.16.8The system shall support coupling of a finite volume variable into a finite element calculation.
- 11.16.9The system shall compute a perfect Jacobian when coupling a finite volume variable into a finite element calculation.
- 11.16.10The system shall error in non-optimized modes if material dependencies for finite volume computations are not satisfied.
- 11.16.11The system shall suggest that the user add a finite volume variable if a finite volume object cannot retrieve one
- 11.16.12The system shall be able to perform finite volume simulations with adaptivity and give correct results
- 11.16.13The system shall display first order convergence when there is significant skewness in the mesh due to mismatch between cell levels.
- 11.16.14The system shall be able to solve the Burgers equation in 1D using the FV method
- 11.16.15The system shall run a 2D linear advection problems using the finite volume method a regular mesh.
- 11.16.16The system shall be able to produce correct mathematical results for a coupled-reaction problem
- using both finite element and finite volume discretizations with
- the correct Jacobian entries.
- 11.16.17The system shall be able to compute the second time derivative of a variable when using the finite volume method and automatic differentiation.
- 11.16.18The system shall be able to couple variables at faces when using the finite volume method.
- 11.16.19The system shall have an accurate Jacobian when coupling variables at faces and using the finite volume method.
- 11.16.20The system shall run a simple 2D linear diffusion problem using the finite volume method with Dirichlet boundary conditions on a regular mesh.
- 11.16.21The system shall run a simple 2D linear diffusion problem in RZ coordinates using the finite volume method with Dirichlet boundary conditions on a regular mesh.
- 11.16.22The system shall be able to compute a full Jacobian matrix when performing finite volume computations
- 11.16.23The system shall run a simple 2D linear diffusion problem using the finite volume method with Neumann and Dirichlet boundary conditions on a regular mesh.
- 11.16.24The system shall run a simple 2D transient linear diffusion problem using the finite volume method with Dirichlet boundary conditions on a regular mesh.
- 11.16.25The system shall be able to solve a finite-volume-only problem
- on an unrefined mesh
- and on a mesh that has been refined to have the same amount of elements and achieve identical results
- 11.16.26The system shall be able solve a three-dimensional diffusion problem using the finite volume method.
- 11.16.27The system shall be able solve a one-dimensional diffusion problem using the finite volume method.
- 11.16.28The system shall correctly account for differences between gradient and divergence operators in cylindrical coordinates.
- 11.16.29The system shall be able to to solve an advection-diffusion equation with a dirichlet condition on the left boundary and a zero gradient condition on the right boundary and display second order convergence with the finite volume method.
- 11.16.30The system shall, while using an advective outflow boundary condition, demonstrate second order convergence if a two term Taylor series is used to approximate the face value and first order convergence if a one term Taylor series is used.
- 11.16.31The system shall be able to do one-term and two-term Taylor expansions for extrapolating finite volume solutions to boundary faces, and these extrapolations should be usable by flux kernels at inflow/outflow boundaries to produce first and second order accurate solutions respectively as measured by an L2 norm.
- 11.16.32The system shall display first order convergence with an upwind limiter.
- 11.16.33The system shall display second order convergence with a central-differencing limiter.
- 11.16.34The system shall display second order convergence with a Van-Leer limiter.
- 11.16.35The system shall display second order convergence with a min-mod limiter.
- 11.16.36The system shall display second order convergence with a second-order-upwind limiter.
- 11.16.37The system shall display second order convergence with a QUICK limiter.
- 11.16.38The system shall provide a Kurganov-Tadmor scheme for evaluating convective intercell fluxes
- with central difference interpolation of face values and resulting second order convergence
- with upwind interpolation of face values and resulting first order convergence
- with central difference interpolation with Van-Leer limiting of face values and resulting two and a half order convergence
- 11.16.39The system shall be able to solve the diffusion equation in 2D axisymmetric coordinates using the finite volume method, and display a second order convergence rate.
- 11.16.40The system shall be able to solve a pure advection problem in 1D cylindrical coordinates using the finite volume method, and display a second order convergence rate.
- 11.16.41The system shall be able to solve a advection-reaction problem in 2D axisymmetric coordinates using the finite volume method, and display a second order convergence rate.
- 11.16.42The system shall be able to solve a advection-diffusion-reaction problem in 2D axisymmetric coordinates using the finite volume method, and display a second order convergence rate.
- 11.16.43The system shall be able to implement advection through an element based kernel, that leverages the system's ability to reconstruct gradients, and demonstrate second order convergence on a cartesian coordinate system.
- 11.16.44The system shall be able to retrieve and usefinite volume variable gradients in materials using a coupling interface and reproduce element-based advection results based on direct use of the variable gradient in a Cartesian coordinate system.
- 11.16.45The system shall be able to implement advection through an element based kernel, that leverages the system's ability to reconstruct gradients, and demonstrate second order convergence in an axisymmetric coordinate system.
- 11.16.46The system shall be able to retrieve and usefinite volume variable gradients in materials using a coupling interface and reproduce element-based advection results based on direct use of the variable gradient in an axisymmetric coordinate system.
- 11.16.47The system shall be able to implement advection through an element based kernel, that leverages the system's ability to reconstruct gradients using an extended stencil based on point-neighbors, and demonstrate second order convergence in a cartesian coordinate system.
- 11.16.48The system shall be able to solve a coupled mass and momentum-type two equation system, which includes advection and diffusion, using the finite volume method, and display second order convergence for both variables.
- 11.16.49The system shall display second order convergence, when using face side neighbors to compute face midpoint values during gradient reconstruction.
- 11.16.50The system shall display 1.5 order convergence, when using face vertex neighbors to compute face midpoint values during gradient reconstruction.
- 11.16.51The system shall be able to solve a diffusion problem with the finite volume method and display second order convergence.
- 11.16.52The system shall be able to solve a advection-diffusion problem with the finite volume method and display second order convergence.
- 11.16.53The system shall be able to solve a advection-diffusion problem with the finite volume method, using a velocity supplied by a material, and display second order convergence.
- 11.16.54The system shall be able to solve a advection problem with the finite volume method and display second order convergence.
- 11.16.55The system shall be able to solve a advection problem with the finite volume method, using a velocity supplied by a material, and display second order convergence.
- 11.16.56The system shall be able to solve a advection-diffusion problem with the finite volume method and display first order convergence with an upwind scheme for the advection operator.
- 11.16.57The system shall be able to solve a advection problem with the finite volume method and display first order convergence with an upwind scheme.
- 11.16.58The system shall be able to solve diffusion on an orthogonal grid using a diffusion kernel which accounts only for orthogonal diffusion.
- 11.16.59The system shall be able to identify and show when a matrix is ill conditioned.
- 11.16.60The system shall be able to condition a system automatically through variable scaling factors.
- 11.16.61The system shall be able to condition a system manually through variable scaling factors.
- 11.16.62The system shall be able to sequentially apply manual and automatic scaling and in the case of poor manual scaling, restore the condition number automatically.
- 11.16.63The system shall be able to run a flux boundary condition and a flux kernel for different variables on the same boundary and calculate correct function and Jacobian values.
- rdg: Geomsearch
- 11.17.1MOOSE shall be capable of computing the distance between two disjoint boundaries on a 1D domain.
- 11.17.2MOOSE shall be capable of computing the distance as well as transfer data between interior boundaries on a 2D domain.
- 11.17.3The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces of a moving interface in 2D.
- 11.17.4The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces of a moving interface in 2D using second order elements.
- 11.17.5The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces of a moving interface in 2D using a tangential tolerance of for the distance.
- 11.17.6The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces of a moving interface in 2D using a tangential tolerance of for the distance and second order elements.
- 11.17.7The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces of a moving interface in 2D.
- 11.17.8The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces of a moving interface in 2D with second order elements.
- 11.17.9The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces of a moving interface in 2D using a tangential tolerance for the distance.
- 11.17.10The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces of a moving interface in 2D using a tangential tolerance for the distance and second order elements.
- 11.17.11The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 2D.
- 11.17.12The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 2D and second order elements.
- 11.17.13The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 2D using a tangential tolerance of for the distance.
- 11.17.14The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 2D using a tangential tolerance of for the distance and second order elements.
- 11.17.15The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 2D using normal smoothing for the distance.
- 11.17.16The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 2D using normal smoothing for the distance and second order elements.
- 11.17.17The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 2D using nodal normal based smoothing for the distance.
- 11.17.18The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 2D using nodal normal based smoothing for the distance and second order elements.
- 11.17.19The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 2D.
- 11.17.20The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 2D using second order elements.
- 11.17.21The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 2D using a tangential tolerance of for the distance.
- 11.17.22The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 2D using a tangential tolerance of for the distance and second order elements.
- 11.17.23The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 2D using normal smoothing for the distance.
- 11.17.24The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 2D using normal smoothing for the distance and second order elements.
- 11.17.25The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 2D using nodal normal based smoothing.
- 11.17.26The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 2D using nodal normal based smoothing and second order elements.
- 11.17.27The systems shall be capable of performing simulations with geometric penetration
- computed within one simulation
- that are restarted from a another.
- 11.17.28The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces in 2D.
- 11.17.29The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces in 2D with triangular elements.
- 11.17.30The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces of a moving interface in 3D.
- 11.17.31The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces of a moving interface in 3D using second order elements.
- 11.17.32The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces of a moving interface in 3D using a tangential tolerance of for the distance.
- 11.17.33The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces of a moving interface in 3D using a tangential tolerance of for the distance and second order elements.
- 11.17.34The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces of a moving interface in 3D.
- 11.17.35The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces of a moving interface in 3D with second order elements.
- 11.17.36The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces of a moving interface in 3D using a tangential tolerance for the distance.
- 11.17.37The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces of a moving interface in 3D using a tangential tolerance for the distance and second order elements.
- 11.17.38The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 3D.
- 11.17.39The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 3D and second order elements.
- 11.17.40The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and convex disjoint surfaces of a moving interface in 3D using a tangential tolerance of for the distance and second order elements.
- 11.17.41The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 3D.
- 11.17.42The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 3D using second order elements.
- 11.17.43The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between a flat and concave disjoint surfaces of a moving interface in 3D using a tangential tolerance of for the distance.
- 11.17.44The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two disjoint surfaces:
- with nodal normal based smoothing;
- with nodal normal based smoothing and a specified tangential tolerance;
- with a specified normal smoothing distance;
- with a specified normal smoothing distance and a specified tangential tolerance;
- with second-order elements and third-order quadrature; and
- with second-order elements and third-order quadrature and a specified tangential tolerance.
- 11.17.45The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two overlapping surfaces:
- with nodal normal based smoothing;
- with nodal normal based smoothing and a specified tangential tolerance;
- with a specified normal smoothing distance;
- with a specified normal smoothing distance and a specified tangential tolerance;
- with second-order elements and third-order quadrature; and
- with second-order elements and third-order quadrature and a specified tangential tolerance.
- 11.17.46The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, overlapping surfaces in 3D.
- 11.17.47The PenetrationAux object shall be capable of computing the distance, tangential distance, normal, closest point, side id, and element id between two parallel, disjoint surfaces in 2D with tetrahedron elements.
- 11.17.48The NearestNodeDistanceAux object shall be capable of computing the shortest distance between a boundary and subdomain.
- 11.17.49The NearestNodeDistanceAux shall be capable of computing the shortest distance between two boundaries.
- 11.17.50The NearestNodeDistanceAux shall be capable of computing the shortest distance between two boundaries with adaptivity.
- 11.17.51MOOSE shall support a means for updating the geometric search patch dynamically that may be disabled.
- 11.17.52MOOSE shall support a means for updating the geometric search patch dynamically that automatically determines when an update to the patch shall occur.
- 11.17.53MOOSE shall support a means for updating the geometric search patch dynamically that updates the patch prior to each solve.
- 11.17.54MOOSE shall support a means for updating the geometric search patch dynamically that updates the patch prior to each iteration.
- 11.17.55The MOOSE penetration locator system shall error if penetration is not detected.
- 11.17.56The system shall be able to perform patch updates on every non-linear iteration while performing uniform coarsening and refinement from grid sequencing
- 11.17.57The PenetrationAux object shall compute the distance between two boundaries in 3D that overlap.
- 11.17.58The PenetrationAux object shall compute, in parallel, the distance between two boundaries in 3D that overlap.
- 11.17.59The nonlinear system shall be able to augment its sparsity based on constraints when we have a quadrature nearest-node locator.
- 11.17.60The NearestNodeDistanceAux object shall compute the shortest distance between nodes on two overlapping boundaries using a constant monomial auxiliary variable.
- 11.17.61Volumetric AD assembly data shall be properly sized when reinitializing faces
- 11.17.62The PenetrationAux object shall compute the distance between two overlapping boundaries using a constant monomial auxiliary variable.
- 11.17.63The PenetrationAux object shall compute the distance between two overlapping boundaries using a constant monomial auxiliary variable in 1D.
- rdg: Globalparams
- 11.18.1The system shall include an input file syntax that supports defining global options.
- rdg: Ics
- 11.19.1The system shall allow to set initial conditions for an array variable based on functions.
- 11.19.2The system shall support setting initial conditions on boundaries.
- 11.19.3Generates a rectangular IC
- 11.19.4BoundingBoxIC shall have a diffuse interface option.
- 11.19.5The system shall report an error when multiple initial conditions are applied to the same boundary.
- 11.19.6The system shall report an error when multiple initial conditions are applied to the same subdomain.
- 11.19.7The system shall report an error when a global initial conditions overlap on the same variable.
- 11.19.8The system shall report an error when a global and subdomain restricted initial conditions overlap on the same variable.
- 11.19.9The system shall support setting different values for each coefficient of higher-order scalar values.
- 11.19.10The system shall support setting initial conditions of field variables to a constant value.
- 11.19.11The system shall support setting initial conditions of subdomain restricted field variables to a constant value.
- 11.19.12The system shall provide current node or element pointers when possible when evaluating initial conditions at a point in the domain.
- 11.19.13The system shall allow setting field initial condition from an user object
- 11.19.14The system shall allow setting scalar initial condition from an user object
- 11.19.15The system shall allow nodal initial condition objects to couple to other nodal variables for computing values for the current variable.
- 11.19.16The system shall allow elemental initial condition objects to couple to other elemental variables for computing values for the current variable.
- 11.19.17The system shall write output files containing nodal solutions in ExodusII format suitable for restart.
- 11.19.18The system shall be able to populate nodal initial conditions from a previous solution file in ExodusII format.
- 11.19.19The system shall write output files containing elemental solutions in ExodusII format suitable for restart.
- 11.19.20The system shall be able to populate elemental initial conditions from a previous solution file in ExodusII format.
- 11.19.21The system shall write output files containing elemental array variable solutions in ExodusII format suitable for restart.
- 11.19.22The system shall be able to populate elemental array variable initial conditions from a previous solution file in ExodusII format.
- 11.19.23The system shall write output files containing nodal array variable solutions in ExodusII format suitable for restart.
- 11.19.24The system shall be able to populate nodal array variable initial conditions from a previous solution file in ExodusII format.
- 11.19.25The system shall support setting gradient values for shape functions that support them.
- 11.19.26The system shall support using a spline function to set both value and gradient values in an initial condition.
- 11.19.27The system shall support setting a scalar initial condition by evaluating a function.
- 11.19.28The system shall support setting initial conditions for the Hermite set of shape functions.
- 11.19.29The system shall support initial conditions on second order Lagrange variables in 3D space.
- 11.19.30MOOSE shall allow initial conditions to retrieve post-processor values.
- 11.19.31MOOSE shall generate parallel agnostic random initial conditions
- 11.19.32MOOSE shall generate threaded agnostic random initial conditions
- 11.19.33The system shall allow to set constant vector-valued initial conditions.
- 11.19.34The system shall allow to set constant vector-valued initial conditions when adding vector variables.
- 11.19.35The system shall allow vector-valued initial conditions be set using a vector function.
- 11.19.36The system shall allow vector-valued initial conditions be set using a function by components.
- 11.19.37The system shall error if the 'function' and 'function_x' parameters are both set within the VectorFunctionIC object.
- 11.19.38The system shall error if the 'function' and 'function_y' parameters are both set within the VectorFunctionIC object.
- 11.19.39The system shall error if the 'function' and 'function_z' parameters are both set within the VectorFunctionIC object.
- 11.19.40The system should supply a special convenience "zero" variable that can be indexed like a normal coupled variable.
- rdg: Indicators
- 11.20.1The system shall include the ability to compute the square of the difference between a solution variable and an analytical function for the purpose of performing automatic mesh adaptivity.
- 11.20.2The system shall include the ability to compute the square of the difference between a FV solution variable and an analytical function for the purpose of performing automatic mesh adaptivity.
- 11.20.3The system shall include the ability to compute the square of the change in the gradient of a variable across element boundaries for the purpose of performing automatic mesh adaptivity.
- 11.20.4The system shall include the ability to compute the square of the change in the Laplacian of a variable across element boundaries for the purpose of performing automatic mesh adaptivity:
- with a penalty based flux boundary condition;
- with a weakly imposed flux boundary condition; and
- for transient calculations.
- 11.20.5The system shall include the ability to compute the square of the change in a variable across element boundaries for the purpose of performing automatic mesh adaptivity:
- 11.20.6The system shall include the ability to compute the square of the change in a FV variable across element boundaries for the purpose of performing automatic mesh adaptivity:
- rdg: InterfaceKernel Objects
- 11.21.1Interface kernels shall provide integrated conditions between subdomains, and shall work with boundary restricted materials with stateful properties.
- 11.21.2The interface diffusion penalty method should reproduce the analytic solution
- 11.21.3The InterfaceKernel system shall use with interface material in 1D.
- 11.21.4The system shall support the evaluation of neighboring quantities on elements containing different shape functions.
- 11.21.5The system shall produce correct Jacobians for coupled flux on an interface.
- 11.21.6The system shall support produce correct Jacobians when evaluating neighboring quantities on elements containing different shape functions.
- 11.21.7The system shall produce correct Jacobians for single variable coupled flux on an interface.
- 11.21.8Save-in shall record the correct residuals and Jacobians representing the interface kernel. This applies the DirichletBC to side a (block 0) of the interface.
- 11.21.9Save-in shall record the correct residuals and Jacobians representing the interface kernel. This applies the DirichletBC to side b (block 1) of the interface.
- 11.21.10The interface reaction kernel should reproduce the analytic solution
- 11.21.11The interface reaction kernel should work with interface diffusion kernel
- 11.21.12The solution should be discontinued at the interface due to the reaction taking place
- 11.21.13The Jacobian from InterfaceReaction shall be perfect
- 11.21.14The system shall ensure that interfacial materials are sorted such that consumers execute after producers.
- 11.21.15The system shall not try to reinit a displaced interface, leading to failed point inversions, if a displaced interface kernel has not been added to the simulation.
- 11.21.16The InterfaceKernel system shall operate with coupled variables in 2D. This uses a penalty implementation that is optimally convergent.
- 11.21.17Allow the interface to impose the same time derivative on two neighboring variables. This uses a penalty implementation that is optimally convergent.
- 11.21.18The InterfaceKernel system shall use with interface material in 2D.
- 11.21.19The Jacobian evaluation for InterfaceKernel objects in 2D shall be analytically correct.
- 11.21.20The finite difference preconditioner shall work in parallel.
- 11.21.21The InterfaceKernel system shall support Vector Finite Elements in 2D.
- 11.21.22The system shall not perform memory allocation for automatic scaling when computing values.
- 11.21.23The InterfaceKernel system shall operate with coupled variables in 3D. This uses a penalty implementation that is optimally convergent.
- 11.21.24The InterfaceKernel system shall support Vector Finite Elements in 3D.
- 11.21.25The InterfaceKernel system shall use with interface material in 3D.
- 11.21.26The system shall be able to solve a simple interfacial source problem using automatic differentiation in which the slope on the left-hand side of the interface has a slope greater by two than the slope on the right-hand side.
- 11.21.27The system shall be able to couple variables at interfaces and have an accurate Jacobian provided through automatic differentiation.
- 11.21.28The system shall be able to solve a simple interfacial source problem using automatic differentiation and vector variables in which the slope on the left-hand side of the interface has a slope greater by two than the slope on the right-hand side.
- 11.21.29The system shall be able to couple vector variables at interfaces and have an accurate Jacobian provided through automatic differentiation.
- 11.21.30Adaptivity shall work with interface kernels as long as stateful properties are not used.
- 11.21.31The system shall error if the triad of interface kernels, adaptivity, and stateful properties are used together.
- 11.21.32The system shall be able to execute interfacial conditions on sidesets generated by gmsh.
- 11.21.33When computing residuals and jacobians on an interface, the system shall be able to use element information from the displaced mesh when requested
- 11.21.34When computing residuals and jacobians on an interface, the system shall be able to use element information from the reference mesh
- 11.21.35During mesh displacement, the system shall be able to compute different element Jacobians for different sides of an interface.
- rdg: Interfaces
- 11.22.1The system shall build a bijective map between variable numbers and their couple variable indices.
- 11.22.2The system shall report a reasonable error when requesting a Postprocessor from a parameter when
- the parameter is not found,
- the parameter does not represent a Postprocessor,
- the parameter is a single Postprocessor value and a greater index than zero is requested,
- and the parameter is a single Postprocessor value and a greater index than zero is requested.
- 11.22.3The system shall report a reasonable error when requesting a Postprocessor name from a parameter in which the postprocessor is a default value and not a name.
- 11.22.4The system shall report a reasonable error when it is too early to request if a postprocesor exists
- by parameter name and
- by Postprocessor name.
- 11.22.5The system shall report a reasonable error when requesting a Postprocessor value
- by parameter and the Postprocessor does not exist and
- by Postprocessor name and the Postprocessor does not exist.
- 11.22.6The system shall produce parallel-agnostic random number fields on a single processor.
- 11.22.7The system shall produce parallel-agnostic random number fields on two or more processors.
- 11.22.8The system shall produce parallel-agnostic random number fields on two or more threads.
- 11.22.9The system shall produce a parallel field without repeating patterns on distributed meshes.
- 11.22.10The system shall produce parallel-agnostic random number fields via the user defined (UserObject) system.
- 11.22.11The system shall produce parallel-agnostic random number fields via the user defined (UserObject) system on two or more processors.
- 11.22.12The system shall produce parallel-agnostic random number fields via the user defined (UserObject) system on two or more threads.
- 11.22.13The system shall produce a parallel field without repeating patterns via the user defined (UserObject) system.
- 11.22.14The system shall produce a parallel-agnostic random number via the material system.
- 11.22.15The system shall produce a parallel-agnostic random number via the material system on two or more processors.
- 11.22.16The system shall report a reasonable error when requesting a Reporter value from a parameter when
- the parameter is not found and
- the parameter does not represent a Reporter
- 11.22.17The system shall report a reasonable error when requesting a Reporter value when a Reporter with the same name exists with a different type.
- 11.22.18The system shall report a reasonable error when requesting a Reporter value
- by parameter and the Reporter value does not exist and
- by Reporter name and the Reporter value does not exist.
- 11.22.19The system shall report a reasonable error when it is too early to request if a Reporter value exists
- by parameter name and
- by Reporter name.
- 11.22.20The system shall report a reasonable error when requesting a UserObject when
- getting the name from a parameter and the parameter is not found,
- getting the name from a parameter and the parameter does not represent a name,
- getting the name from a parameter and the user object is not found,
- getting the UserObject by name and the user object is not found,
- getting the name from a paremeter and the provided object is not of the correct type, and
- getting the UserObject by name and the provided object is not of the correct type.
- 11.22.21The system shall provide an interface that reports if a UserObject exists by
- parameter,
- name,
- parameter and type, and
- name and type.
- 11.22.22The system shall report a reasonable error when requesting a VectorPostprocessor value from a parameter when
- the parameter is not found and
- the parameter does not represent a VectorPostprocessor.
- 11.22.23The system shall report a reasonable error when it is too early to request if a VectorPostprocessor exists
- by vector name and parameter name,
- by vector name and VectorPostprocessor name,
- by parameter name, and
- and by VectorPostprocessor name.
- 11.22.24The system shall report a reasonable error when requesting a VectorPostprocessor value
- by parameter and the VectorPostprocessor does not exist,
- by parameter and the VectorPostprocessor exists but the requested vector does not,
- by VectorPostprocessor name and the VectorPostprocessor does not exist, and
- by VectorPostprocessor name and the VectorPostprocessor exists but the requested vector does not.
- rdg: Kernels
- 11.23.1MOOSE shall provide an ability to solve a 2D diffusion problem with Dirichlet boundary conditions.
- 11.23.2MOOSE shall provide an ability to solve a 2D diffusion problem with Neumann boundary conditions.
- 11.23.3MOOSE shall provide a diffusion kernel that obtains the diffusion coefficient from a material property
- 11.23.4MOOSE shall provide an ability to solve a 2D diffusion problem including a volumetric source term.
- 11.23.5MOOSE shall provide a tester that checks hand-coded Jacobian against finite difference Jacobian using -snes_type=test option.
- 11.23.6MOOSE shall force the solver to take at least one iteration regardless of the initial residual norm when the snes_force_iteration option is specified.
- 11.23.7MOOSE should not compute an extra residual if the linear solver is used
- 11.23.8MOOSE shall provide an ability to solve a 2D diffusion problem with Dirichlet boundary conditions using
- automatic differentiation and
- compute the correct Jacobian matrix.
- 11.23.9MOOSE shall provide an ability to solve a 2D diffusion problem Neumann boundary conditions using
- automatic differentiation and
- compute the correct Jacobian matrix.
- 11.23.10MOOSE shall provide an ability to solve a 2D diffusion problem including a volumetric source term using
- automatic differentiation and
- compute the correct Jacobian matrix.
- 11.23.11Coupled variable gradient Jacobian entries generated with AD shall be accurate
- 11.23.12MOOSE shall provide a source term proportional to the value of
- an aux variable and shall be able to produce the exact Jacobian
- an finite element primary variable and shall be able to produce the exact Jacobian
- 11.23.13Coupled variable value Jacobian entries generated with AD shall be accurate
- 11.23.14We shall be able to get aux variable values through adCoupledValue with the knowledge that the derivatives will always be zero
- 11.23.15Getting a constant aux variable through adCoupledValue shall not destroy our Jacobian
- 11.23.16We shall be able to get dot aux variable values through adCoupledValue with the knowledge that the time derivatives will always be zero
- 11.23.17The system will output the required number of derivative entries needed for automatic differentiation calculations
- 11.23.18The system shall automatically generate a full coupling matrix when doing global AD indexing such that there are no new matrix memory allocations.
- 11.23.19The system shall automatically generate a full coupling matrix when doing global AD indexing, resulting in a perfect Jacobian even when the user has not requested full coupling.
- 11.23.20The system shall allow the user to override the automated generation of a full coupling matrix when doing global AD indexing, which for this test results in a new nonzero allocation because there is off-diagonal coupling.
- 11.23.21Jacobians calculated by ADTimeDerivative and ADBodyForce shall be perfect.
- 11.23.22The system shall solve a one-dimensional Diffusion problem with a material property diffusivity and match a known solution.
- without and
- with automatic differentiation including
- the correct Jacobian matrix.
- 11.23.23The system shall solve a two-dimenional Diffusion problem with a material property diffusivity and match a known solution.
- without and
- with automatic differentiation including
- the correct Jacobian matrix.
- 11.23.24The system will error and tell the user if they use derivative storage that is too small
- 11.23.25Jacobian entries generated with AD for a simple diffusion problem shall be accurate
- 11.23.26The system shall be able to solve a transient diffusion problem with
- automatic differentiation and
- compute the correct Jacobian matrix.
- 11.23.27The system shall be able to solve a transient diffusion problem with vector variables
- automatic differentiation and
- compute the correct Jacobian matrix.
- 11.23.28Jacobian entries generated with AD shall match hand-coded Jacobian entries as measured through save-in values
- 11.23.29The system shall provide a generic kernel object that allows for easy switching between hand-coded and automatic computation of the Jacobian, and encourages maximum kernel code-reuse.
- 11.23.30The system shall support coupling of variables with automatic differentiation and vector values.
- 11.23.31The system shall support coupling to the gradient of variables with automatic differentiation and vector values.
- 11.23.32The system shall support coupling of default values for variables with automatic differentiation and vector values.
- 11.23.33The system shall run a coupled diffusion-advection problem with higher-order variables on a non-regular mesh domain:
- in a steady-state calculation, and
- in a transient calculation.
- 11.23.34The system shall support direct tensor-vector products and vector dot products to maintain dimension agnostic formulations where possible.
- 11.23.35MOOSE shall provide array diffusion kernels on an array variable.
- 11.23.36MOOSE shall provide array reaction kernels on an array variable.
- 11.23.37MOOSE shall provide array DG diffusion kernels on an elemental array variable.
- 11.23.38MOOSE shall provide coupling of standard variables in array kernels.
- 11.23.39MOOSE shall provide coupling of array variables in standard kernels.
- 11.23.40MOOSE shall provide residual save-in and Jacobian diagonal save-in for
- array and
- standard variables.
- 11.23.41MOOSE shall provide array time derivative kernels on an array variable.
- 11.23.42MOOSE shall provide array body-force kernels on an array variable.
- 11.23.43We shall be able to show that without automatic scaling, this system is singular
- 11.23.44We shall be able to show that with automatic scaling, this system is non-singular
- 11.23.45We shall be able to show that with automatic scaling we can run this problem successfully in parallel
- 11.23.46The system shall support the ability to apply a kernel to a subset of the domain
- through a subdomain restriction on the kernel, and
- through a subdomain restriction on the variable.
- 11.23.47The system shall support scaling the computed time derivative by a scalar coefficient.
- 11.23.48The system shall include the ability to compute the residual contribution from the conservative form of the advection operator
- without upwinding in 3D,
- with upwinding in 3D,
- without upwinding in 1D,
- with upwinding in 1D,
- without upwinding in 2D,
- with upwinding in 2D,
- with upwinding and an outflow boundary condition, and
- without any outflow boundary conditions.
- 11.23.49A coupled time derivative kernel shall be provided
- 11.23.50A coupled time derivative kernel with forward mode automatic differentiation shall be provided
- 11.23.51A coupled time derivative kernel compatible with vector variables with hand-coded jacobians shall be provided
- 11.23.52The Jacobian from VectorCoupledTimeDerivative shall be perfect
- 11.23.53The SMP Jacobian for a problem with a hanging-node shall be non-singular
- 11.23.54The colored finite difference Jacobian for a problem with a hanging-node shall be non-singular
- 11.23.55The standard finite difference Jacobian for a problem with a hanging-node shall be non-singular
- 11.23.56A matrix-free operator shall be able to solve the hanging-node problem, indicating it is non-singular
- 11.23.57The SMP Jacobian shall be perfect for the hanging-node problem
- 11.23.58The system shall compute a perfect Jacobian via automatic differentiation for a hanging-node problem and simultaneously handle automatic differentiation objects that do not actually have nonlinear variable dependence.
- 11.23.59The system shall support applying a function of space-time as a forcing function to the mesh domain.
- 11.23.60The system shall report an error when a parsed function expression contains quote characters.
- 11.23.61The system shall support hybrid finite element method (HFEM) calculations with Dirichlet boundary conditions using standard variables.
- 11.23.62The system shall support hybrid finite element method (HFEM) calculations with Dirichlet boundary conditions using array variables.
- 11.23.63The system shall support hybrid finite element method (HFEM) calculations with Neumann boundary conditions using standard variables.
- 11.23.64The system shall support hybrid finite element method (HFEM) calculations with Neumann boundary conditions using array variables.
- 11.23.65The system shall support hybrid finite element method (HFEM) calculations with Robin boundary conditions using standard variables.
- 11.23.66The system shall support hybrid finite element method (HFEM) calculations with Robin boundary conditions using array variables.
- 11.23.67The system shall support hybrid finite element method (HFEM) calculations with high order shape functions.
- 11.23.68The system shall support hybrid finite element method (HFEM) calculations with Robin boundary conditions through Lagrange multipliers.
- 11.23.69The system shall support hybrid finite element method (HFEM) calculations with displaced meshes.
- 11.23.70The system shall issue an error for unsupported mesh adaptation with hybrid finite element method (HFEM) calculations.
- 11.23.71The system shall support hybrid finite element method (HFEM) calculations with Dirichlet boundary conditions with boundary values specified by variables.
- 11.23.72The system shall issue an error for not fully supported distributed mesh with hybrid finite element method (HFEM) calculations.
- 11.23.73The system shall be able to compute lower dimensional element volumes using element Jacobian information computed earlier during finite element object reinitialization and when the highest dimension of the mesh is
- two
- three
- 11.23.74We shall automatically capture the dependence of things like JxW and grad_test on (second order) displacements
- 11.23.75We shall automatically capture the dependence of things like JxW and grad_test on (first order) displacements
- 11.23.76We shall automatically capture the dependence of things like JxW and grad_test on (second order) displacements for a cylindrical geometry
- 11.23.77We shall automatically capture the dependence of things like JxW and grad_test on (first order) displacements for a cylindrical geometry
- 11.23.78We shall automatically capture the dependence of things like JxW and grad_test on (second order) displacements for a spherical geometry
- 11.23.79We shall automatically capture the dependence of things like JxW and grad_test on (first order) displacements for a spherical geometry
- 11.23.80MOOSE shall provide optimized kernels for residuals with the test function or its gradient factored out.
- 11.23.81MOOSE shall provide optimized kernels for residuals with the test function or its gradient factored out in the automatic differentiation system.
- 11.23.82The Jacobian for the automatic differentiation problem shall be perfect
- 11.23.83The system shall support the ability to use mass lumping for time derivative terms.
- 11.23.84The system shall verify that the Jacobian terms when using mass lumping for time derivative terms are computed correctly.
- 11.23.85The system shall support a kernel for coupling the sum of several products of material properties with variables and constant coefficients
- 11.23.86The system shall have the ability to declare the derivatives of material properties.
- 11.23.87The system shall have the ability to verify individual Jacobian contributions before they are scaled by other finite element factors in the system.
- 11.23.88The system shall support solving Ordinary Differential Equations in explicit form.
- 11.23.89The system shall support solving Ordinary Differential Equations in implicit form.
- 11.23.90The system shall support solving ODEs specified within the input file through parsed function syntax.
- 11.23.91The system support coupling of postprocessor values in the parsed function ODE kernel.
- 11.23.92The system shall support solving Coupled Ordinary Differential Equations.
- 11.23.93The system shall allow scalar variable initial condition to be loaded from a file mesh
- 11.23.94The system shall allow auxscalar variable initial condition to be loaded from a file mesh
- 11.23.95MOOSE shall solve the constrained Neumann problem using the Lagrange multiplier approach.
- 11.23.96MOOSE shall solve the constrained Neumann problem using the Lagrange multiplier approach when displacements are active.
- 11.23.97MOOSE shall support the ability to set Dirichlet boundary conditions using the Lagrange multiplier approach.
- 11.23.98The system shall support retrieving a vector of values in a kernel object for the purpose of computing a residual statement.
- 11.23.99The system shall run a simple 2D linear diffusion problem with Dirichlet boundary conditions on a regular mesh.
- 11.23.100MOOSE shall be able to run a transient diffusion problem
- 11.23.101MOOSE shall not do any mallocs in MatSetValues for simple kernels
- 11.23.102We shall not be able to solve a problem where the physics Jacobians are very large compared to the jacobian from a Dirichlet BC (unity)
- 11.23.103We shall be able to solve an initially poorly scaled problem by using MOOSE's automatic scaling feature
- 11.23.104We shall be able to solve an initially poorly scaled problem by using MOOSE's automatic scaling feature in parallel
- 11.23.105We shall not be able to solve a problem where the physics has large changes over time if we only scale once
- 11.23.106We shall be able to solve a problem where the physics has large changes over time if we scale on every time step
- 11.23.107We shall be able to solve a problem where the physics has large changes over time if we scale on every time step in parallel
- 11.23.108The system shall error if the volumetric residual calculation is not assigned an associated vector within the numerical solving routine.
- 11.23.109Time kernel requires a transient executioner
- 11.23.110The kernel can be only assigned to the existing vector tags in the system
- 11.23.111The kernel can be only assigned to the existing matrix tags in the system
- 11.23.112The system shall be able to reproduce the simple_transient_diffusion test with VectorTimeDerivative (hand-coded Jacobian).
- 11.23.113The Jacobian from VectorTimeDerivative shall be perfect
- 11.23.114The system shall compute second-order time derivatives for vector variables
- 11.23.115MOOSE shall be able to solve a curl-curl problem using NEDELEC_ONE elements
- 11.23.116MOOSE shall be able to couple a vector variable into a standard kernel
- 11.23.117MOOSE shall be able to assign a default value for a vector variable from the source file
- 11.23.118MOOSE shall warn when assigning a default value with number of components less than LIBMESH_DIM and it shall be able to assign the default value from the input file
- 11.23.119MOOSE shall be able to assign a default value for a vector variable from the input file and still have the correct jacobian
- 11.23.120MOOSE shall be able to solve multi-dimensional problems with LAGRANGE_VEC variables
- 11.23.121MOOSE shall be able to solve one-dimensional problems with LAGRANGE_VEC variables
- 11.23.122MOOSE shall be able to solve one-dimensional problems with LAGRANGE_VEC variables and produce the correct Jacobian
- 11.23.123MOOSE shall be able to solve multi-d LAGRANGE_VEC problems with automatic differentiation and reproduce the hand-coded result
- 11.23.124MOOSE shall be able to solve multi-d LAGRANGE_VEC problems with automatic differentiation and have a perfect Jacobian
- 11.23.125MOOSE shall be able to couple a vector variable into a standard kernel and produced the correct Jacobian
- 11.23.126MOOSE shall be able to couple a standard variable into a vector kernel. Additionally, MOOSE shall be able to calculate time derivatives of variable gradients.
- 11.23.127MOOSE shall be able to compute the correct Jacobian when coupling a standard variable into a vector kernel and taking time derivatives of variable gradients.
- 11.23.1281) MOOSE shall be able to assign dirichlet boundary conditions for LAGRANGE_VEC variables 2) MOOSE shall be able to obtain coupled vector variable gradients 3) MOOSE shall correctly initialize both volume and face curl shape functions when the curl of a variable is requested
- 11.23.129The system shall error if the 'function' and 'function_x' parameters are both set when defining a vector function Dirichlet boundary condition.
- 11.23.130The system shall error if the 'function' and 'function_x' parameters are both set within the ADVectorFunctionDirichletBC object.
- rdg: Markers
- 11.24.1The system shall include the ability to mark a mesh subdomain for uniform refinement.
- 11.24.2The adaptivity system shall create an auxiliary field variable that marks elements for refinement adjacent to a boundary.
- 11.24.3The adaptivity system shall create an auxiliary field variable that marks elements for refinement within a given distance of a boundary.
- 11.24.4The adaptivity system shall create an auxiliary field variable that marks elements for refinement within a rectangular region.
- 11.24.5The adaptivity system shall adapt the mesh within a rectangular region.
- 11.24.6The system shall include the ability to combine multiple mesh refinement markers into a single value.
- 11.24.7The system shall include the ability to mark elements within a subdomain to be unchanged for mesh adaptivity.
- 11.24.8The system shall include a means for setting mesh refinement flags based on percent of error for a sorted vector of error values computed for each finite element.
- 11.24.9The system shall include the ability to use the same error extremes during all calculations of error fraction values during mesh adaptivity.
- 11.24.10The system shall include a means for setting mesh refinement flags based on percent of error for a sorted vector of error values computed for each finite element using FV variables
- 11.24.11The system shall include a means for computing mesh refinement flags based on an absolute values of error.
- 11.24.12The system shall include a means for performing mesh adaptivity based on an absolute values of error.
- 11.24.13It shall not be possible to specify Markers to run on the displaced mesh.
- 11.24.14The system shall support the ability to mark elements for mesh adaptivity based on a bounding box with arbitrary orientation.
- 11.24.15The system shall support access to finite element quadrature point locations during the calculation of refinement marker flags.
- 11.24.16The system shall support the capability of creating a tool for marking finite elements for mesh refinement, for example:
- adding elements within the intersection of two circles;
- adding elements within the intersection of two circles and removing elements outside the circles; and
- performing adaptivity when a non-uniform initial condition is defined.
- 11.24.17The system shall support marking the entire finite element mesh for refinement.
- 11.24.18The system shall include the ability to mark elements within a finite element mesh for adaptivity based on if the value of a variable is within a specific range.
- 11.24.19The system shall include the ability to mark elements within a finite element mesh for adaptivity based on if the value of a variable is above or below a threshold.
- rdg: Materials
- 11.25.1The Jacobian from a material property declared as AD and gotten as AD shall be accurate
- 11.25.2The Jacobian from a material property declared as regular and gotten as regular shall be inaccurate
- 11.25.3AD shall work with stateful material properties and the Jacobian shall be beautiful
- 11.25.4The time evolution of the stateful diffusivity property shall show that AD works with stateful material properties
- 11.25.5We shall be able to set default values for AD material properties
- 11.25.6We shall have a perfect Jacobian when using default values for an AD material property
- 11.25.7For a given dual number, the system shall be able to construct a map from global degree of freedom index to the corresponding derivative
- 11.25.8ADPiecewiseLinearInterpolationMaterial shall create a material with a linear interpolation of a variable
- 11.25.9PiecewiseLinearInterpolationMaterial shall create a material with a linear interpolation of a variable and perform approriate scaling
- 11.25.10ADPiecewiseLinearInterpolationMaterial shall create a material with a linear interpolation and extrapolation of a variable
- 11.25.11ADPiecewiseLinearInterpolationMaterial shall throw an error if x, y, and xy_data are all specified
- 11.25.12ADPiecewiseLinearInterpolationMaterial shall throw an error if x and xy_data are both specified
- 11.25.13ADPiecewiseLinearInterpolationMaterial shall throw an error if x and y vectors are different lengths
- 11.25.14ADPiecewiseLinearInterpolationMaterial shall throw an error if xy_data vector is not a multiple of two
- 11.25.15ADPiecewiseLinearInterpolationMaterial shall calculate perfect Jacobians
- 11.25.16The system shall provide material properties in boundary restricted objects acting on nodal variables.
- 11.25.17The system shall provide material properties in boundary restricted objects acting on elemental variables.
- 11.25.18The system shall provide location dependent boundary material property evaluations with finite volume variables.
- 11.25.19The system shall issue an error when multiple materials properties with the same name are declared on the same block.
- 11.25.20The system shall be capable of producing analytic derivatives of material properties:
- defined by function expressions,
- involving chain rules of material properties defined by function expressions, and
- for the free energy Allen-Cahn Bulk material function.
- 11.25.21The system shall support late binding of derivative material properties:
- so that construction order does not influence the outcome of the tests, and
- so that construction order does not influence the outcome of the tests when using automatic differentiation, and
- so that they may be retrieved before being declared.
- 11.25.22The system shall support supplying a constant literal in place of a property name for material property derivative consumers.
- 11.25.23The system shall support optional coupling where materials that do not exist are returned as valid objects containing zero.
- 11.25.24The system shall issue an error when required derivative materials that are retrieved are never declared.
- 11.25.25The system shall handle a bad evaluation by
- passing a silent nan.
- throwing a warning and passing a silent nan.
- throwing an error.
- throwing an exception.
- 11.25.26The system shall be capable of couplimng postprocessor values in
- ParsedMaterial
- DerivativeParsedMaterialParsedMaterial
- ADParsedMaterial
- ADDerivativeParsedMaterial
- 11.25.27The system shall be capable of producing analytic derivatives of material properties using dual numbers:
- returning an exact jacobian.
- returning an exact jacobian in derivative materials.
- defined by function expressions,
- involving chain rules of material properties defined by function expressions, and
- 11.25.28The system shall create AD material properties even if the derivatives are zero
- 11.25.29The system shall support late binding of derivative material properties:
- so that they may be retrieved before being declared.
- 11.25.30The system shall support supplying a constant literal in place of a property name for material property derivative consumers that require dual numbers.
- 11.25.31The system shall support optional coupling where materials that do not exist are returned as valid objects containing zero, supporting dual numbers.
- 11.25.32The system shall issue an error when required dual number derivative materials that are retrieved are never declared.
- 11.25.33The system shall allow users to request derivatives with respect to function symbols other than MOOSE variables
- such as derivatives w.r.t. material properties
- and error out if derivatives w.r.t unknown symbols are requested
- and error out if derivatives MOOSE variables are requested in additional_derivative_symbols (as they are requested by default)
- and error out if any symbols are supplied more than once
- 11.25.34The system shall provide a method for summing multiple DerivativeParsedMaterialsand compare exact to a single DerivativeParsedMaterial
- validating coupling
- without validating coupling
- validating coupling using automatic differentiation
- without validating coupling using automatic differentiation
- 11.25.35The system shall support the ability for materials to force immediate execution of other (discrete) materials:
- for a simple monomial expression, and
- for a simple polynomial expression.
- 11.25.36The system shall not calculate materials that are meant to be controlled by other materials (discrete) materials.
- 11.25.37The system shall issue a warning when a "discrete" material object is retrieved for use in a controlling material but it is set to auto-execute.
- 11.25.38The system shall verify that a material being retrieved is defined everywhere that the retrieving material is defined:
- on compatible blocks, and
- on compatible boundaries.
- 11.25.39The system shall issue a warning when a "discrete" material's "reset" method is not defined.
- 11.25.40The system shall provide a material object that can, for a single material property, map subdomain IDs to a possibly discontinuous property value.
- 11.25.41The system shall be able to produce a valid Real material object on the fly for use in calculations requiring material properties
- computed at each quadrature point.
- with a single value per element for efficiency that is made available to all quadrature points in a coupled calculation.
- 11.25.42The system shall shall be able to compute a RankTwoTensor material object
- with constant values.
- with constant values using automatic differentiation.
- with values determined by functions.
- with values determined by functions using automatic differentiation.
- 11.25.43The system shall report the retrieval of material properties by names:
- on boundaries,
- on blocks,
- on the all mesh boundaries, and
- on the all mesh blocks.
- 11.25.44The system shall support retrieving a single property (name) supplied by different materials on different mesh blocks.
- 11.25.45The system shall report an error if a material property is needed on the entire domain but is only supplied on a subset of the subdomains.
- 11.25.46The system shall report that a material property is available when it is defined on a subdomain.
- 11.25.47The system shall support retrieving a boundary restricted material property for performing a calculation on a boundary.
- 11.25.48The system shall report and error when a boundary restricted material is not defined on the same boundary as a boundary restricted object using that property in a calculation.
- 11.25.49The system shall be able to grab face and neighboring face variable values and material properties in a single material object that lives on an interface
- 11.25.50The system shall be able to grab face and neighboring face variable values and material properties in a single material object that lives on an interface when the mesh is split
- 11.25.51The system shall be able to calculate stateful material properties in an interface material object
- 11.25.52The system shall evaluate interface materials such that they can be used in boundary restricted elemental auxiliary kernels
- 11.25.53The system shall support material property calculations that depend on other material properties:
- with one level of dependencies,
- with two levels of dependencies,
- with three levels of dependencies, and
- with differing values across mesh subdomains.
- 11.25.54The system shall support material property calculations for used with discontinuous Galerkin finite element method.
- 11.25.55The system shall support material property calculations that are restricted to boundaries on the mesh.
- 11.25.56The system shall error if material property calculations result in a cyclic dependency.
- 11.25.57The system shall error is a material property is requested on a subdomain on which it is not defined.
- 11.25.58The system shall support material property calculations that operate on auxiliary systems and during volume and surface residual calculations.
- 11.25.59The system shall error if material properties are not computed on all subdomains.
- 11.25.60The system shall include that ability to handle C++ exceptions during material property calculation routines:
- on a single process,
- from processor 1 during a parallel calculation with 4 processes,
- from processor 0 during a parallel calculation with 4 processes.
- 11.25.61The system shall support the calculation of material properties that vary at numerical integration quadrature points.
- 11.25.62The system shall only compute material properties when they are needed (consumed by other objects).
- 11.25.63The system shall support having multiple materials supplying multiple unique material properties on the same subdomains of the mesh.
- 11.25.64The system shall not create a dependency when old versions of material properties are retrieved and used in calculations.
- 11.25.65The system shall support the output of material data as field variables including
- outputting all properties within a material definition;
- outputting all properties from the output definition;
- outputting certain properties within a material definition;
- outputting certain properties within the output definition on a subdomain;
- outputting certain properties within the material definition on a subdomain;
- outputting certain properties within the material definition on a subdomain with a displaced configuration;
- outputting certain properties within the material definition on a boundary;
- outputting certain properties within the material definition to different files; and
- outputting properties for steady-state simulations.
- 11.25.66The system shall error if the supplied output options for material data output are not consistent with the list of available outputs.
- 11.25.67The system shall issue warnings if material data added by materials cannot be outputted as field variables.
- 11.25.68The system shall show the field variable names for outputting material data added by materials.
- 11.25.69The system shall support the calculation of a material property with a
- linear interpolation of a variable,
- with a scaling factor, and
- extrapolation.
- 11.25.70The system shall support the calculation of a material property with a linear interpolation and error if
- x, y, and xy_data are all specified;
- x and xy_data are both specified;
- the x and y vectors are different lengths; and
- the xy_data vector length is not a multiple of two.
- 11.25.71The system shall be able to produce stateful material properties that can be consumed by other objects in the system.
- 11.25.72The system shall support coupling in an auxiliary field variable for use in initializing stateful material properties.
- 11.25.73The system shall allow the retrieval of stateful material properties for calculations on internal sides within a mesh.
- 11.25.74The system shall be able to generate up to three states of material properties for use in other calculations: current, old and older
- where properties are stored in auxiliary spatial fields, and
- when those properties are averaged and output to a comma-separated value file.
- 11.25.75The system shall verify that the oldest material property (older) can be coupled to other objects for use in another calculation:
- where properties are stored in auxiliary spatial fields, and
- when those properties are averaged and output to a comma-separated value file.
- 11.25.76The system shall be able to promote normal material properties to stateful when old/older properties are requested.
- 11.25.77The system shall make material property calculations available during the computation of the initial Residual vector.
- 11.25.78The system shall store stateful properties that vary at every calculation point (quadrature point) similarly to a normal field variable even though they are not interpolatory:
- on blocks, and
- on boundaries.
- 11.25.79The system shall support the ability to copy stored stateful data from one element to another element.
- 11.25.80The system shall handle storing stateful properties related to elements on the mesh as the mesh is adapting:
- when properties are spatially constant, and
- when properties vary spatially.
- 11.25.81The system shall not store any stateful material properties that are declared but never used.
- 11.25.82The system shall be able to correctly handle stateful materials
- when using a regular material property.
- when using an AD material property.
- when using a regular material property using templated methods.
- when using an AD material property using templated methods.
- 11.25.83The system shall be capable of outputting material properties through auxiliary field variables.
- 11.25.84The system shall report and error when invalid indices are requested when attempting to output material properties through auxiliary field variables.
- 11.25.85The system shall only prepare or setup field variables on each element when they are used by a material object.
- 11.25.86The system shall support coupling in a nonlinear field variable for use in initializing stateful material properties.
- rdg: Mesh
- 11.26.1The system shall support importing mesh information from Abaqus that includes
- element identifiers,
- element sets, and
- element sets with extra space in file.
- 11.26.2The system shall perform identical adaptivity patterns on both the reference mesh and the displaced mesh when it exists.
- 11.26.3The system shall support toggling adaptivity on/off during a simulation.
- 11.26.4The system shall perform one or more adaptivity steps on the mesh before the simulation begins.
- 11.26.5The system shall support patch-based error estimation among a stencil of elements.
- 11.26.6The system shall support multiple adaptive steps per solve.
- 11.26.7The system shall perform adaptivity on systems containing multiple independent field variables.
- 11.26.8The system shall support running adaptivity on an interval basis (every several time steps).
- 11.26.9The system shall support weighted error estimation when considering multiple field variables for adaptivity.
- 11.26.10The system shall output all boundary and subdomain connections.
- 11.26.11The system shall support the use of a centroid-based parallel partitioning scheme.
- 11.26.12The system shall generate pre-split mesh files using a standard input file combined with command line arguments.
- 11.26.13The system shall use pre-split binary mesh files using a standard input file combined with command line arguments.
- 11.26.14The system shall auto-detect and use pre-split meshes using a standard input file combined with command line arguments.
- 11.26.15The system shall use pre-split ascii meshes when the command line parameter also includes the pre-split suffix.
- 11.26.16The system shall use pre-splits for several different numbers of processors auto-detected from the number of MPI processors used.
- 11.26.17The system shall use pre-splits for several different numbers of processors when the command line parameter also includes the pre-split suffix.
- 11.26.18The system shall generate a quadrilateral mesh consisting of concentric circles.
- 11.26.19The system shall support the ability to create custom objects for performing mesh partitioning, for example
- a linear partitioner that
- operates with a displaced configuration and
- is capable of restarting.
- 11.26.20The system shall compute and store internal face data on request for
- quadrilateral elements,
- triangular elements, and
- quadrilateral elements in multiple regions.
- 11.26.21The system shall read GMesh (.msh) format file meshes.
- 11.26.22The system shall read GMesh (.msh) format file meshes containing multiple boundaries.
- 11.26.23The system shall support refinement of QUAD4 mesh elements.
- 11.26.24The system shall support refinement of QUAD8 mesh elements.
- 11.26.25The system shall support refinement of QUAD9 mesh elements.
- 11.26.26The system shall support refinement of TRI3 mesh elements.
- 11.26.27The system shall support refinement of TRI6 mesh elements.
- 11.26.28The system shall support refinement of HEX8 mesh elements.
- 11.26.29The system shall support refinement of HEX20 mesh elements.
- 11.26.30The system shall support refinement of HEX27 mesh elements.
- 11.26.31The system shall support refinement of TET4 mesh elements.
- 11.26.32The system shall support refinement of TET10 mesh elements.
- 11.26.33The system shall support refinement of PRISM6 mesh elements.
- 11.26.34The system shall support refinement of PRISM15 mesh elements.
- 11.26.35The system shall support refinement of PRISM18 mesh elements.
- 11.26.36The system shall support refinement of PYRAMID5 mesh elements.
- 11.26.37The system shall support refinement of PYRAMID13 mesh elements.
- 11.26.38The system shall support refinement of PYRAMID14 mesh elements.
- 11.26.39MOOSE shall generate a structured mesh on a Cartesian domain.
- 11.26.40MOOSE shall generate first-order, structured meshes with biasing in the x, y, and z directions.
- 11.26.41MOOSE shall generate second-order, structured meshes with biasing in the x, y, and z directions.
- 11.26.42The system shall include the ability to generate an annular mesh that errors when
- the min radius is larger than the max radius;
- the min angle is greater than or equal to the max angle;
- the angle separation is larger than 360 degrees;
- the number of elements in the angular direction is too small due to the number of elements; and
- the number of elements in the angular direction is too small due to the maximum angle.
- shall throw an error if the quadrilateral and triangular subdomain ids are the same.
- shall throw an error if both radial positions and the number of radial elements are prescribed.
- shall throw an error if both radial positions and the radius growth parameter are prescribed.
- shall throw an error if any of the radial positions fall out of the bounds between rmin and rmax.
- 11.26.43The system shall include the ability to create
- an annulus using quad elements;
- an annulus sector using quad elements;
- a circular disk using quad elements; and
- circular disk sector using quad elements.
- 11.26.44MOOSE shall have an algorithm for meshing an annular region with triangular elements.
- 11.26.45MOOSE shall have an algorithm for generating triangular and quadrilateral meshes for the Ringleb problem.
- 11.26.52The system shall allow writing out the mesh without running a simulation.
- 11.26.53The system shall print out information about the mesh when writing out the mesh.
- 11.26.54The system shall warn when using –mesh-only and there is no clear filename to use
- 11.26.55The system shall support overriding output dimension when necessary to store coordinates in higher planes
- 11.26.56The system shall support writing parallel checkpoint files with –mesh-only
- 11.26.57The system shall support simulations on meshes containing both 1D and 2D element types.
- 11.26.58The system shall support proper material evaluations on meshes containing both 1D and 2D element types.
- 11.26.59The system shall support simulations on meshes containing both 1D and 3D element types.
- 11.26.60MOOSE shall generate meshes with different set of element integers and properly stitch them.
- 11.26.61The system shall support interchangeable use of integer and string identifiers for mesh entities.
- 11.26.62The system shall support interchangeable use of integer and string identifiers for mesh entities read from the XDA format.
- 11.26.63The system shall support interchangeable use of integer and string identifiers within the BCs/Periodic block.
- 11.26.64The system shall support the ability to assign and use string names to mesh entities during the simulation startup.
- 11.26.65The system shall support writing solution data in the Nemesis parallel file format.
- 11.26.66The system shall support the re-partitioning of mesh files input using the Nemesis format.
- 11.26.67The system shall issue an error if no Mesh block is provided.
- 11.26.68The system shall issue a diagnostic when a referenced node set does not exist in the mesh
- 11.26.69The system shall generate a mesh using one or more meshes stitched into a pattern controlled by a 2D array.
- 11.26.70The system shall read in a previously generated "patterned mesh" and run a simulation using that mesh.
- 11.26.71The system shall produce a valid periodic node map with only one periodic constraint direction.
- 11.26.72The system shall produce a valid periodic node map with two periodic constraint directions.
- 11.26.73The system shall produce a valid periodic node map with three periodic constraint directions.
- 11.26.74The system shall issue a diagnostic when a referenced side set does not exist in the mesh.
- 11.26.75The system shall have the ability to construct a side set from a set of nodes.
- 11.26.76The system shall support optionally allowing uniform refinements when using a pre-split mesh
- 11.26.77A mesh can be split into a specified number of files using command line options.
- 11.26.78A mesh can be pre-split properly and used to generate equivalent results to running a simulation with the unsplit mesh.
- 11.26.79Console output should include an indicator that a pre-split mesh is being used when using –split-mesh in distributed = auto mode
- without and
- with the forced option.
- 11.26.80The mesh splitter will throw an error when an attempt is made to split a "DistributedMesh".
- 11.26.81The mesh splitter capability will honor geometric RelationshipManager objects.
- 11.26.82Meshes that are pre-split with active RelationshipManager objects work the same as if using an online DistributedMesh.
- 11.26.83Splitting meshes from file should work with custom partitioners.
- 11.26.84Splitting meshes from a generated mesh should work with custom partitioners.
- 11.26.85The system shall support the creating a single mesh from multiple meshes stitched together.
- 11.26.86The system shall error if at least one mesh file is not supplied when creating a mesh from multiple meshes stitched together.
- 11.26.87The system shall produce a parallel partition based on mesh subdomains for the Mac platform.
- 11.26.88The system shall produce a parallel partition based on mesh subdomains agnostic of platform.
- 11.26.89The system shall produce a parallel partition based on mesh subdomains for the Linux platform.
- 11.26.90The system shall construct a mesh by "tiling" another mesh repeatedly.
- 11.26.91The system shall support avoiding repartitioning the mesh and deleting remote elements after uniform refinements
- 11.26.92The system shall support having a truly unique_id (never recycled) for all mesh elements and nodes when using replicated mesh.
- 11.26.93The system shall support having a truly unique_id (never recycled) for all mesh elements and nodes when using distributed mes.
- rdg: Mesh Modifiers
- 11.27.1The system shall support assigning boundary identifiers base on normal vectors of an element face for
- a rectangular cuboid and
- non regular geometry.
- 11.27.2The system shall support assigning boundary identifiers based on
- a nodal id,
- a spatial coordinate, and
- if the supplied location is outside of the domain.
- 11.27.3The system shall support assigning boundary identifiers based on the normal of a element face for
- specified points and
- specified directions with
- fixed normal application.
- 11.27.4The system shall support assigning boundary identifiers based the bounding box
- for all subdomain sides as well as
- for all subdomain sides including those with multiple existing identifiers in 2D and
- 3D.
- 11.27.5The system shall support assigning boundary identifiers based the bounding box of a subdomain and error if
- if no elements are located in the given bounding box;
- if no sides are located in the given bounding box;
- if no nodes are located in the given bounding box; and
- if the incorrect boundary inputs are supplied.
- 11.27.6The system shall support assigning boundary identifiers based the bounding box of a subdomain
- if existing boundaries overlap and
- error if no nodes are located in the given bounding box.
- 11.27.7The system shall support assigning subdomain identifiers
- given a list of ids for each element; and
- given a list of elements and ids for quadrilateral and
- triangular elements.
- 11.27.8The system shall support assigning subdomain identifiers for the entire domain.
- 11.27.9The system shall support removing elements including
- a 2D concave subdomain;
- a 3D concave subdomain;
- a 2D interior subdomain;
- a 3D interior subdomain;
- a 2D non-concave subdomain;
- a 3D non-concave subdomain;
- a 2D removal of a union of disjoint pieces;
- a 2D removal of a subdomain containing a nodeset;
- a 2D removal of a subdomain that eliminates sideset;
- a 2D removal of a subdomain containing a sideset;
- a 2D concave subdomain with a cut across elements.
- 11.27.10The system shall be capable of adding nodeset identifiers given a bounding box for
- an area inside the box;
- an area outside the box;
- 11.27.11The system shall error when adding nodeset identifiers given a bounding box and
- the supplied location is invalid and
- when multiple ids are provided for assignment.
- 11.27.12The system shall support separation of boundary identifiers for
- all boundaries and
- specific boundaries across a subdomain.
- 11.27.13The system shall support separation of boundary identifiers
- for 2D subdomains;
- across an interface; and
- an unstructured mesh.
- 11.27.14The system shall support separation of boundary identifiers
- for 3D subdomains;
- across an interface; and
- an unstructured mesh.
- 11.27.15The system shall support creating subdomains from
- 2D and
- 3D images.
- 11.27.16The system shall support the creation of lower dimensional elements on an existing sideset for
- first-order and
- second-order elements.
- 11.27.17The system shall support creating of 3D meshes from extrusion of
- 2D quadrilateral elements;
- 2D triangular elements;
- 2D quadrilateral elements at an angle; and
- 2D quadrilateral elements from generated mesh
- 11.27.18The system shall support creating of 3D meshes from extrusion of with the ability to remap subdomain identifiers
- for each layer individually or
- for all layers
- 11.27.19The system shall support the creation of lower dimensional elements along the faces contained in a side.
- 11.27.20The system shall support the modification of the mesh
- without restriction to the order of the supplied inputs with
- a forced mesh preparation step.
- 11.27.21The system shall support the creation of side identifiers based on a function provided in the input file.
- 11.27.22The system shall support the creation of subdomain identifiers based on a function provided in the input file.
- 11.27.23The system shall support the ability to rename mesh subdomains including
- basic two domain meshes and
- multi-subdomain meshes.
- 11.27.24The system shall error when renaming subdomains if
- the number of new subdomain identifiers is greater than the number of old subdomain identifiers;
- the supplied the block identifier name missing;
- the supplied the block identifier number missing;
- the number of old subdomain identifiers is greater than the number of ned subdomain identifiers;
- the supplied the new block identifier name missing; and
- the supplied the new block identifier number missing.
- 11.27.25The system shall support the creating of side identifiers surrounding
- a subdomain;
- a subdomain given a direction;
- a generated subdomain; and
- a multiple generated subdomains
- 11.27.26The system shall support the creating of side identifiers between
- subdomains;
- multiple subdomains; and
- generated subdomains.
- 11.27.27The system shall support the ability to apply smoothing to a mesh.
- 11.27.28The system shall be capable of adding subdomain identifiers given a bounding box for
- an area inside the box;
- an area outside the box;
- an area inside an oriented box; and
- an area outside an oriented box.
- 11.27.29The system shall be capable of transforming an existing mesh.
- rdg: Meshgenerators
- 11.28.1The system shall support automatic addition of sidesets based on outward facing normals of the mesh.
- 11.28.2The system shall group automatically added sidesets when multiple surfaces share the same outward facing normal.
- 11.28.3The system shall have the capability of generating a mesh based upon an annular geometry.
- 11.28.4The system shall have the capability of generating a mesh based upon an annular geometry with a negative growth ratio.
- 11.28.6The system shall generate an annular mesh with prescribed radial positions of the intermediate rings of nodes
- 11.28.7The system shall support the ability to add additional mesh generators from a user accessible programmatic interface.
- 11.28.8The system shall be capable of deleting
- all of the elements in a mesh based on subdomain ID,
- all of the elements in a mesh based on subdomain names and
- multiple blocks simultaneously in a mesh based on subdomain ID.
- 11.28.9The system shall have the capability to remove boundaries in an existing mesh.
- 11.28.10The system shall be capable of generating new mesh node sets based upon a user-specified bounding box
- where the new node set will be placed on nodes within the bounding box, or
- where the new node set will be placed on nodes outside of the bounding box.
- 11.28.11The system shall produce an error when attempting to add a new mesh node set based on a bounding box
- where the bounding box fails to span any mesh nodes, and
- where multiple boundary IDs are supplied for a single bounding box.
- 11.28.12The system shall be capable of splitting existing mesh boundary sets where their underlying subdomain changes
- on external boundaries, and
- on internal boundaries.
- 11.28.13MOOSE shall be able to create separate blocks in a mesh
- without a split interface in 3D;
- with a split interface in 3D;
- with a polycrystal based mesh in 3D;
- without a split interface in 2D;
- with a split interface in 2D; and
- with a polycrystal based mesh in 2D.
- 11.28.14The system shall be able to break the mesh between listed blocks:
- without splitting the interface and with splitting the transition interface;
- with a split interface and without splitting the transition interface;
- with a split interface and splitting the transition interface;
- with a split interface, without splitting the transition interface, and without a transition interface;
- without a split interface, splitting the transition interface, or a transition interface;
- 11.28.15The system shall be able to break the mesh between listed block pairs.
- 11.28.16MOOSE shall be able to break the mesh between listed block pairs
- by creating one new node.
- by creating two new nodes.
- by creating three new nodes.
- 11.28.17The system shall be able to create two sides interface when interfaces are created between listed block pairs.
- 11.28.18The system shall properly assign node processor ids for paritioned meshes
- 11.28.19The system shall be capable of generating an non-uniform mesh on a Cartesian domain in
- one,
- two, and
- three dimensions.
- 11.28.20The system shall support the ability to combine multiple meshes:
- using a single input mesh at multiple positions,
- using a single input mesh at multiple positions obtained from a file,
- using multiple meshes at multiple positions, and
- using multiple meshes at multiple positions obtained from a file, and
- using multiple meshes with no positions.
- 11.28.21The system shall error when trying to combine multiple meshes,
- but only one input is supplied with no positions, or
- but only one input is supplied with no positions file, or
- the number of meshes and the number of positions is mismatched, or
- the number of meshes and the number of positions in the file is mismatched.
- 11.28.22The system shall have the capability to generate a mesh pattern consisting of concentric circles contained within a square.
- 11.28.23The winding order of the elements created by the mesh generator shall be uniform.
- 11.28.24The system shall support the generation of meshes for both reference and displaced mesh configurations.
- 11.28.25The system shall support mesh adaptivity on a distributed generated displaced mesh.
- 11.28.26The system shall support mesh adaptivity with periodic boundary conditions on a distributed generated displaced mesh.
- 11.28.27The system shall support a scalable mesh adaptivity with periodic boundary conditions on a distributed generated displaced mesh
- without and with
- automatic scaling.
- 11.28.28MOOSE shall be able to generate 2D Quad4 mesh in parallel
- 11.28.29MOOSE shall be able to check if or not users ask for too many layers of ghosting elements
- 11.28.30MOOSE shall be able to generate 1D EDGE2 mesh in parallel.
- 11.28.31MOOSE shall be able to generate 3D HEX8 mesh in parallel.
- 11.28.32MOOSE shall be able to generate 3D HEX8 mesh in parallel using ptscotch partitioner
- 11.28.33MOOSE shall be able to generate 3D HEX8 mesh in parallel using hierarch partitioner
- 11.28.34MOOSE shall be able to generate a first-order hexahedral mesh in parallel using a small number of cores for the graph partitioner.
- 11.28.35MOOSE shall error out if the number of cores for partition is larger than the total number of cores.
- 11.28.36The system shall be able to adapt a mesh generated in parallel.
- 11.28.37The system shall generate an arbitrary number of layers of side neighbors using DistributedRectilinearMeshGenerator.
- 11.28.38The system shall be able to generate a squarish partition for a 2D distributed generated mesh using 3 processors.
- 11.28.39The system shall be able to generate a squarish partition for a 2D distributed generated mesh using 4 processors.
- 11.28.40The system shall be able to generate a squarish partition for a 2D distributed generated mesh using 6 processors.
- 11.28.41The system shall be able to generate a squarish partition for a 1D distributed generated mesh using 3 processors.
- 11.28.42The system shall be able to generate a squarish partition for a 1D distributed generated mesh using 4 processors.
- 11.28.43The system shall be able to generate a squarish partition for a 3D distributed generated mesh using 3 processors.
- 11.28.44The system shall be able to generate a squarish partition for a 3D distributed generated mesh using 4 processors.
- 11.28.45The system shall be able to generate a squarish partition for a 3D distributed generated mesh using 8 processors.
- 11.28.46The system shall support the ability to create a mesh element-wise by specifying points, element types, and connectivity,
- resulting in a single element mesh, or
- resulting in a mesh with multiple disconnected elements.
- 11.28.47The system shall have the ability to add extra mesh node sets based on existing node IDs.
- 11.28.48The system shall have the ability to add extra mesh node sets based on node coordinates.
- 11.28.49The system shall have the ability to add extra mesh node sets based on multiple node coordinates.
- 11.28.50The system shall be able to extrude a mesh with variable height elevations, with variable numbers of layers, and swap subdomain IDs
- 11.28.51The system shall make sure the mesh is prepared after a mesh generator has indicated the mesh is not prepared and before running a solve.
- 11.28.52The system shall be able to use the result from FancyExtruderGenerator in subsequent mesh generators
- 11.28.53The system shall be able to retain and swap element extra integers during extrusion.
- 11.28.54The system shall have the ability to generate a mesh by reading it from a file.
- 11.28.55The system shall have the ability to assign element extra integers with elemental variables in an Exodus mesh file.
- 11.28.56The system shall have the ability to output checkpoint files along with the mesh meta data.
- 11.28.57The system shall have the ability to load the mesh from checkpoint files.
- 11.28.58The system shall support using a directed acyclic graph of objects to generate a mesh where multiple possible end points may be explicitly selected:
- the first of two targets
- and the second of two targets.
- 11.28.59The system shall support selecting an earlier generation state of the mesh generator system used to generate the final mesh for a simulation.
- 11.28.60The system shall generate an error when the objects used to generate a mesh results in an ambiguous end point
- due to a single graph with multiple end points, or
- due to multiple independent trees.
- 11.28.61MOOSE shall be able to use libmesh mesh generation tools.
- 11.28.62MOOSE shall be able to use libmesh mesh generation tools and shift node/sideset ids by a constant offset.
- 11.28.63The system shall include mesh generation tools and allow adding a name prefix to the node/sideset names and maintain the
- id and
- include the added name.
- 11.28.64The system shall include mesh generation tools and shift node/sideset ids by a constant offset while also adding a name prefix to them and maintain the
- the shifted id and
- include the added name.
- 11.28.65MOOSE shall generate a warning if Mesh Generators are used with a mesh type that does not accept them
- 11.28.66The system shall support the ability to import meshes written using the General Mesh Viewer format.
- 11.28.67The system shall have the ability to read boundary information from Gmsh formatted mesh files.
- 11.28.68MOOSE shall be able to read in an image.
- 11.28.69The system shall be able to create different subdomains
- using boundary ids.
- using boundary names.
- 11.28.70The system shall be able to combine multiple meshes into a single unconnected mesh.
- 11.28.71The system shall have the capability of extruding a lower dimensional mesh to create a higher dimensional mesh
- from 2D quads to 3D hexes,
- where newly created elements can be assigned a new subdomain IDs based on old IDs,
- where newly created elements can be assigned a new subdomain IDs based on a pattern,
- where the extrusion direction is not orthogonal to the original line or plane of elements, and
- where the extrusion occurs based on another generated mesh,
- while making sure to preserve existing side set names.
- 11.28.72The system shall support the generation of side sets between subdomains of a finite element mesh.
- 11.28.73The system shall support the ability for mesh generators to save attributes to a stateful data store available for use when recovering a simulation.
- 11.28.74The system shall issue an error when mesh meta-data properties are requested but never declared.
- 11.28.75The system shall error if a invalid identifier is supplied when attempting to retrieve a restart meta data object.
- 11.28.76The system shall support the ability to save mesh meta data generated by mesh generators when splitting the mesh.
- 11.28.77The system shall support the ability to use the mesh meta data when using the split mesh.
- 11.28.78The system shall have the ability to assign mesh side sets based on parsed spatial functions.
- 11.28.79The system shall have the ability to filter by neighboring subdomain id in ParsedGenerateSideset.
- 11.28.80The system shall have the ability to assign mesh subdomains based on parsed spatial functions.
- 11.28.81The system shall be able to create a patch test mesh with:
- quad4 elements,
- quad8 elements,
- hex8 elements, and
- hex20 elements.
- 11.28.82The system shall have the ability to stetch multiple input meshes together into a new mesh based upon a user-defined pattern.
- 11.28.83The system shall provide a method for deleting mesh elements lying on one side of a user-defined plane.
- 11.28.84The system shall be able to rename or renumber mesh subdomains prior to running the simulation:
- using a sequence of renaming operations, or
- by renaming several blocks simultaneously.
- 11.28.85The system shall be able to rename or renumber mesh boundaries by:
- identifying both old and new boundaries by ID,
- identifying old boundaries by ID and new boundaries by name,
- identifying old boundaries by name and new boundaries by ID, and
- identifying both old and new boundaries by name,
- and by identifying boundaries by both id and name.
- 11.28.86The system shall be able to merge boundaries in a mesh.
- 11.28.87The system shall throw a reasonable error:
- when old boundaries are provided that do not exist within the mesh
- and when the provided old and new boundaries are not the same length.
- 11.28.88The system shall support the ability to create a mesh for a "Ringleb" geometry.
- 11.28.89The system shall be able to output detailed mesh information about generated meshes.
- 11.28.90The system shall have the ability to create new mesh side sets around subdomains:
- for a subdomain contained completely within a larger domain,
- on specific sides of a subdomain based upon the normal to that side,
- around multiple subdomains within a larger domain, and
- around two blocks within a domain.
- 11.28.91The system shall have the ability to create new side sets between adjacent subdomains:
- on a mesh with several adjacent subdomains,
- where some subdomains are adjacent and not where paired subdomains are not adjacent, and
- between two subdomains in a mesh with two adjacent subdomains.
- 11.28.92The system shall have the ability to generate side sets based upon bounding boxes:
- a bounding box contained within the domain,
- multiple bounding boxes contained within the domain,
- multiple bounding boxes contained within a 3D domain, and
- where bounding boxes perfectly overlap but create unique ids.
- 11.28.93The system shall issue an error when attempting to create side sets from a bounding box:
- when no elements are located within the specified bounding box,
- when the bounding box is larger than the domain so that no new side set is created, and
- when the bounding box fails to span over any nodes.
- 11.28.94The system shall be able to generate mesh side sets for all external surfaces on the mesh for each unique normal.
- 11.28.95The system must be able to replace the side sets when applying side sets during mesh generation.
- 11.28.96The system shall support the generation of multiple mesh side sets on the exterior surfaces of a mesh grouped by normal:
- where the normal varies within a tolerance from element to element,
- where the normal is fixed within a specified tolerance.
- 11.28.97MOOSE shall be able to create sidesets.
- 11.28.98MOOSE shall be able to use libmesh mesh mdification tools.
- 11.28.99MOOSE shall be able to create meshes.
- 11.28.100The system shall be able to generate meshes by stacking up existing meshes in
- two and
- three dimensions and
- error if the dimensions of the meshes to be stacked are not consistent.
- 11.28.101The system shall support the creation of a finite element mesh from existing meshes
- by 'stitching' them together and
- be able to utilize the resulting mesh in a simulation.
- 11.28.102The system shall include the ability to assign subdomain identifiers for elements within a regular bounding box.
- 11.28.103The system shall include the ability to assign subdomain identifiers for elements outside of a regular bounding box.
- 11.28.104The system shall include the ability to assign subdomain identifiers for elements within an arbitrarily oriented bounding box.
- 11.28.105The system shall include the ability to assign subdomain identifiers for elements with a regular bounding box that is restricted to only modify elements with specific subdomain identifiers.
- 11.28.106The system shall include the ability to assign extra element integers within a regular bounding box.
- 11.28.107The system shall have the ability to change or overwrite the subdomain IDs of all elements in a mesh.
- 11.28.108The system mesh generation capability shall be extensible to allow composition of existing mesh generators.
- 11.28.109The system shall include the ability to create a finite element mesh by tiling existing meshes.
- 11.28.110The system shall include the ability to rotate and scale a finite element mesh.
- 11.28.111The system shall include the ability to translate a finite element mesh in a manner that
- is defined by the user,
- places the center of the mesh at the origin, or
- places the minimum of the mesh at the origin.
- rdg: Minimal App
- 11.29.1The system shall support the programmatic creation of a simulation tools without the need of an input file.
- rdg: Misc
- 11.30.1We shall be able to call AD variable methods on an auxiliary variable in a transient simulation and not hit assertions for both regular and neighbor calculations
- 11.30.2Coupling an auxiliary variable into a DGKernel shall not destroy the Jacobian
- 11.30.3We shall be able to do NL variable coupling into a DGKernel
- 11.30.4We shall be able to do NL variable coupling into a DGKernel and have a good Jacobian
- 11.30.5The compiled application shall be capable of returning the name used for registering objects.
- 11.30.6The system shall report an error when a material property is not defined on a boundary.
- 11.30.7The system shall report an error when a material property requested by a UserObject is not defined on a boundary.
- 11.30.8The system shall report an error when a material property requested by a DGKernel is not defined on a boundary.
- 11.30.9The system shall report an error when a material property requested by a DGKernel is not defined on a subdomain.
- 11.30.10The system shall verify that objects that use subdomain restricted variables are defined on a subset of the restricted domain area.
- 11.30.11The system shall produce an error when an object's discretization area is explicitly set to a value greater than the area of the underlying variable used by the object.
- 11.30.12The system shall produce an error when an object's discretization area is greater than the area of the underlying variable used by the object.
- 11.30.13The system shall produce an error when an object's discretization area is explicitly set to a different area than the area of a coupled variable used by the object.
- 11.30.14The system shall produce an error when an object's discretization area is different than an explicitly set variable on only defined on a different portion of the mesh.
- 11.30.15The system shall produce an error when an object's discretization area is covers the whole mesh but a coupled variable only exists on a portion of the mesh.
- 11.30.18The system shall report an error when a null pointer-checked parameter is retrieved from the InputParameters object.
- 11.30.19The system shall report an error when multiple AuxVariables are added to the system with conflicting types.
- 11.30.20The system shall report an error when multiple Scalar AuxVariables are added to the system with conflicting types.
- 11.30.21The system shall report an error when an attempt is made to instantiate a non-existent BoundaryCondition object.
- 11.30.22The system shall report an error when a non-existent nonlinear variable name is used by a MooseObject.
- 11.30.23The system shall report an error message when an invalid enumeration is supplied in any MooseEnum type.
- 11.30.24The system shall report an error message when an invalid Executioner is specified.
- 11.30.25The system shall report an error message when an invalid Kernel is specified.
- 11.30.26The system shall report an error message when a Kernel object attempts to access a non-existent variable.
- 11.30.27The system shall report an error when an invalid Material is specified.
- 11.30.28The system shall report an error when a previously undeclared variable is used in a parsed function expression.
- 11.30.29The system shall report an error when a first order element is used with a second order discretization.
- 11.30.30The system shall report an error message when a deprecated input file block is used.
- 11.30.31The system shall report a warning when a deprecated parameter with a default value is explicitly set by the user.
- 11.30.32The system shall report a warning when an optional deprecated parameter is explicitly set by the user.
- 11.30.33The system shall report an error when conflicting domain restrictions are applied to a single object.
- 11.30.34The system shall report an error when the number of ids and corresponding block names are mismatched.
- 11.30.35The system shall report an error when a duplicate name is provided for a set of unique block ids.
- 11.30.36The system shall report an error when the number of ids and corresponding boundary names are mismatched.
- 11.30.37The system shall report an error when a duplicate name is provided for a set of unique boundary ids.
- 11.30.38The system shall report an error when the linear interpolation utility is supplied with bad domain values.
- 11.30.39The system shall report an error when the Piecewise utility encounters an unexpected column data format.
- 11.30.40The system shall report an error when the Piecewise utility encounters an unexpected row data format.
- 11.30.41The system shall report an error when the Piecewise utility encounters inconsistent domain and range data.
- 11.30.42The system shall report an error when an invalid enumeration is supplied in the Piecewise utility.
- 11.30.43The system shall report an error when the Piecewise data is over-specified with the data file option.
- 11.30.44The system shall report an error when the Piecewise data is over-specified with row/column data.
- 11.30.45The system shall report an error when either the domain or range is missing when using the domain/range option in the Piecewise utility.
- 11.30.46The system shall report and error if the supplied domain/range pairs are not even in the Piecewise utility.
- 11.30.47The system shall report an error if no function is supplied in the Piecewise utility.
- 11.30.48The system shall report an error if the xy_data is supplied but the function is missing in the Piecewise utility.
- 11.30.49The system shall report an error when the number of columns appears incorrect in the Piecewise utility.
- 11.30.50The system shall report an error when an out of range y-column index is supplied in the Piecewise utility.
- 11.30.51The system shall report an error when an out of range x-column index is supplied in the Piecewise utility.
- 11.30.52The system shall report an error if too many rows are supplied when the data is expected to contain row information.
- 11.30.53The system shall report an error when an out of range x-row index is supplied in the Piecewise utility.
- 11.30.54The system shall report an error when an out of range y-row index is supplied in the Piecewise utility.
- 11.30.55The system shall report an error when the x and y index in file are equal in the Piecewise utility.
- 11.30.56The system shall report an error if one or more domain blocks do not have any active Kernels objects assigned.
- 11.30.57The system shall report an error if one or more variables do not have any active Kernel objects assigned.
- 11.30.58The system shall report an error if one or more domain blocks do not have any active FVKernels objects assigned.
- 11.30.59The system shall report an error if one or more variables do not have any active FVKernel objects assigned.
- 11.30.60The system shall report an error when an elemental variable (no continuity) is coupled to a variable with continuity.
- 11.30.61The system shall report an error when an active input block section is specified but missing.
- 11.30.62The system shall report an error when a material property is requested but not supplied on a mesh block.
- 11.30.63The system shall report an error when a coupled variable is supplied that was not added as a valid parameter.
- 11.30.64The system shall report an error when the data file is non-existent or not-readable in the Piecewise utility.
- 11.30.65The system shall report an error when the coupled function does not exist or can not be parsedfor the Piecewise utility.
- 11.30.66The system shall report an error when one or more material properties are missing from any mesh block.
- 11.30.67The system shall report an error when a material property is supplied on some blocks but missing on other blocks where it is requested.
- 11.30.68The system shall report an error when only "old" properties are supplied but current properties are requested.
- 11.30.69The system shall report an error when only "older" properties are supplied but current properties are requested.
- 11.30.70The system shall report an error when the mesh file cannot be found.
- 11.30.71The system shall report an error when a required parameter is not supplied in an Action.
- 11.30.72The system shall report an error when a specific mesh required parameter is not supplied.
- 11.30.73The system shall report an error when the special "type" parameter is not supplied for a MooseObject.
- 11.30.74The system shall report an error when a required parameter is not supplied in a MooseObject.
- 11.30.75The system shall report an error when a required coupling parameter is missing.
- 11.30.76The system shall report an error when more than one preconditioner block is supplied.
- 11.30.77The system shall abort the solve and report a floating point error when a NaN is produced during user computation with the Steady executioner.
- 11.30.78The system shall abort the solve and report a floating point error when a NaN is produced during user computation with the Transient executioner.
- 11.30.79The system shall report an error when a nodal AuxKernel attempts to access a material property.
- 11.30.80The system shall report an error when the same named parameter appears multiple times in the same input file.
- 11.30.81The system shall report an error when the coordinate transformation conflicts with the underlying element types.
- 11.30.82The system shall report an error when nonlinear and auxiliary variables are declared with the same name.
- 11.30.83The system shall report an error when an AuxKernel is applied outside of the domain where a restricted variable exists.
- 11.30.84The system shall report an error when a Kernel is applied outside of the domain where a restricted variable exists.
- 11.30.85The system shall report a warning when an unused parameter is provided through the input file or an Action.
- 11.30.86The system shall report a warning when an unused parameter is supplied on the command line.
- 11.30.87The system shall report an error when a UserObject and a Postprocessor are added with the same names.
- 11.30.88The system shall report and error when a UserObject and a VectorPostprocessor are added with the same names.
- 11.30.89The system shall report an error when an input file block associated with on pluggable system is asked to build an object from a different system.
- 11.30.90The system shall report a standard Unix usage statement when an invalid command line switch is used.
- 11.30.91The system shall report an error when a required variable is missing from the ICs input file block.
- 11.30.92The system shall report an error when a boundary restriction is applied to a non-nodal variable discretization.
- 11.30.93The system shall report an error when coupling to old temporal solution vectors in a Steady (no time) Executioner.
- 11.30.94The system shall report an error when coupling to a time derivative solution vector in a Steady (no time) Executioner.
- 11.30.95The system shall report an error when an older scalar solution variable is accessed in a Steady (no time) Executioner.
- 11.30.96The system shall report an error when an older time derivative scalar solution variable is accessed in a Steady (no time) Executioner.
- 11.30.97The system shall report an error when a coupled variable is not defined in the same region as the variable performing the coupling.
- 11.30.98The system shall report the successful parsing and interpretation of input file syntax when using the "–check-input" command line flag.
- 11.30.99The system shall report an error when performing nodal constraints when there is a mismatch in the number of constrained nodes.
- 11.30.100The system shall report an error when requested to check the syntax in an input file but no input file is supplied.
- 11.30.101The system shall report an error when multiple time schemes are specified in the same input file.
- 11.30.102The system shall report an error when there is a mismatch between the parameter for an object and the type of object are mismatched.
- 11.30.103The system shall report an error when the variables representing displacement are of a lower order than the mesh.
- 11.30.104The system shall report an error when the name of a function could be misinterpreted because it could also be evaluated (e.g. a function name of "x").
- 11.30.105The system shall report an error when floating point input parameter types fail to parse as floating point numbers.
- 11.30.106The system shall report an error when a scalar variable is used where a spatial variable is expected.
- 11.30.107The system shall report an error when a field variable is used where a scalar variable is expected.
- 11.30.108The system shall report an error when an invalid coupled spatial variable is requested.
- 11.30.109The system shall report an error when an invalid coupled scalar variable is requested.
- 11.30.110The system shall report an error when an attempt is made to couple a variable with itself.
- 11.30.111The system shall report an error when an input file cannot be opened and read.
- 11.30.112The system shall report an error when a Kernel attempts to use an auxiliary variable.
- 11.30.113The system shall report an error when a boundary condition object attempts to use an auxiliary variable.
- 11.30.114The system shall report an error when an AuxKernel specifies a non-existent variable.
- 11.30.115The system shall report an error when a scalar Kernel specifies a non-existent variable.
- 11.30.116The system shall report an error when a nodal Kernel attempts to use an auxiliary variable.
- 11.30.117The system shall report an error when a constraint attempts to use an auxiliary variable.
- 11.30.118The system shall report an error when a scalar auxiliary Kernel attempts to use a solution variable.
- 11.30.119The system shall report an error when a DiracKernel attempts to use an auxiliary variable.
- 11.30.120The system shall report an error when a discontinuous Galerkin Kernel attempts to use a solution variable.
- 11.30.121The system shall report an error when an interface Kernel attempts to use an auxiliary variable.
- 11.30.122The system shall report an error when a Kernel attempts to retrieve an empty string variable.
- 11.30.123The system shall report an error when a vector Kernel attempts to use a scalar solution variable.
- 11.30.124The system shall report an error when a Kernel attempts to use a vector solution variable.
- 11.30.125The system shall report an error if users try to get nodal values of non-nodal variables.
- 11.30.126The system shall report an error if users try to get old nodal values of non-nodal variables.
- 11.30.127The system shall report an error if users try to get older nodal values of non-nodal variables.
- 11.30.128The system shall have an integrity check that ensures an Executioner object exists in the system.
- 11.30.129The system shall report an error when nodal boundary condition is applied on a non-nodal variable.
- 11.30.130The system shall report an error when a git-lfs file pointer is encountered.
- 11.30.131The system shall support the ability for actions to query the existence of a mesh attribute (meta data).
- 11.30.132The system shall support the output a processor id field for the purposes of debugging
- 11.30.133The system shall produce a warning when non-expired deprecated code is executed.
- 11.30.134The system shall produce a warning when expired deprecated code is executed.
- 11.30.135The system shall produce an error when the –no-deprecated-flag is passed and deprecated code is executed.
- 11.30.136The system shall produce a warning indicating a possible replacement when deprecated code is superseded.
- 11.30.137The system shall be able to deprecate coupled variable names, while enabling user code to only use the new, blessed name
- 11.30.138The system shall not give a deprecation warning if the user uses the blessed coupled variable name instead of the deprecated coupled variable name.
- 11.30.139The system allow coupling between variables on or off displaced meshes
- not using automatic differentiation methods
- using automatic differentiation methods
- 11.30.140The system shall support throwing an exception during the residual calculation, which will cut back the time step.
- 11.30.141The system shall support throwing an exception during the residual calculation on a non-zero rank, which will cut back the time step.
- 11.30.142The system shall support throwing an exception during the Jacboain calculation, which will cut back the time step.
- 11.30.143The system shall support throwing an exception during the Jacobian calculation on a non-zero rank, which will cut back the time step.
- 11.30.144The system shall support throwing an exception during the initial condition calculation, which will terminate the solve.
- 11.30.145The system shall support throwing an error during a residual calculation, which will terminate the solve.
- 11.30.146The system shall support throwing an error during a Jacobian calculation, which will terminate the solve.
- 11.30.147The system shall allow users to skip exception checks to avoid global communication.
- 11.30.148The system shall maintain a flag available for inspection indicating the current "execution stage" enumeration.
- 11.30.149The system shall verify equality among the current, old, and older solution vectors prior to running the simulation.
- 11.30.150The system shall support a testing mechanism that fails intermittently.
- 11.30.151We shall be able the scrape the DOFMapOutput and determine when the Jacobian is slightly off
- 11.30.152We shall be able the scrape the DOFMapOutput and determine when the Jacobian is questionable
- 11.30.153We shall throw no errors if the off-diagonal Jacobian is wrong if we are only testing the on-diagonal Jacobian
- 11.30.154If use_displaced_mesh = false then MOOSE will not throw an exception if elements are inverted to produce a negative element Jacobian, in 3D simulations
- 11.30.155A 3D simulation shall throw an exception if there is a zero element Jacobian, when use_displaced_mesh = true
- 11.30.156A 3D simulation shall throw an exception if there is a negative element Jacobian, when use_displaced_mesh = true
- 11.30.157If use_displaced_mesh = false then MOOSE will not throw an exception if elements are inverted to produce a negative element Jacobian, in 2D simulations
- 11.30.158If use_displaced_mesh = false then MOOSE will not throw an exception if elements are distored to produce a zero element Jacobian, in 2D simulations
- 11.30.159A 2D simulation shall throw an exception if there is a zero element Jacobian, when use_displaced_mesh = true
- 11.30.160The PETSc Jacobian test shall reveal nans if there are nans in the matrix
- 11.30.161The system shall support embedding a 1D block inside of a 3D block.
- 11.30.162The maximum number of degrees of freedom for a single variable on a 1D EDGE2 elem shall be 2
- 11.30.163The maximum number of degrees of freedom for a single variable on a 2D QUAD4 elem shall be 4
- 11.30.164The maximum number of degrees of freedom for a single variable on a 2D QUAD9 elem shall be 9
- 11.30.165The maximum number of degrees of freedom for a single variable on a 2D TRI3 elem shall be 3
- 11.30.166The maximum number of degrees of freedom for a single variable on a 2D TRI6 elem shall be 6
- 11.30.167The maximum number of degrees of freedom for a single variable on a 3D HEX8 elem shall be 8
- 11.30.168The testing system shall support the ability to disable geometrical mapping of mesh elements for comparison purposes.
- 11.30.169PETSc option database shall work properly
- 11.30.170The system shall print an understandable message when a user-specified path/file does not exist.
- 11.30.171The system shall be capable of storing residual contributions as an auxiliary field variable for
- continuous Galerkin and
- discontinuous Galerkin methods.
- 11.30.172The system shall error if the residual calculation contribution is assigned to the incorrect variable for
- on-diagonal and
- off-diagonal terms.
- 11.30.173The system shall be able to compute the same value for a block-restricted save-in variable regardless of the number of processes used to run a simulation.
- 11.30.174The system shall only reinitialize variables values that are consumed by other active objects in the system.
- 11.30.175The system shall make a serialized solution vector available when requested by objects in the system.
- 11.30.176The system shall make a serialized solution vector available when requested by objects in the system when uniform refinement is active.
- 11.30.177The system shall make a serialized solution vector available when requested by objects in the system when adaptivity is active.
- 11.30.178The test system shall have the ability to execute a specific input file.
- 11.30.179The test system shall have the ability to run a test that neither clears expected outputs or runs the expected executeable for multiple output testing.
- 11.30.180The system shall support pausing execution for the purpose of attaching a debugger after launch.
- 11.30.181The system shall support running a user-defined subroutine each time a subdomain change occurs when iterating over the mesh.
- 11.30.182The application executable shall report the version with the –version command line argument.
- 11.30.183The application executable shall report the version with the -v command line argument.
- rdg: Mortar
- 11.31.1The system shall support the use of constrains using the mortar method in 1D.
- 11.31.2We shall tell the user that mortar doesn't currently work in 3D
- 11.31.3We shall be able to enforce solution continuity on a conforming mesh for one variable
- 11.31.4We shall be able to enforce solution gradient continuity on a conforming mesh for one variable
- 11.31.5We shall be able to enforce solution continuity on a conforming mesh for two variables
- 11.31.6We shall be able to enforce solution continuity on a conforming mesh for one variable using second order shape functions for both primal and lagrange variables. Note that this may be a relatively unstable discretization
- 11.31.7We shall be able to produce the expected result for a solution continuity test case using the mortar method, e.g. the primal variable values across the mortar interface shall be the same.
- 11.31.8We shall be able to produce the expected result for a solution continuity test case using the first order dual basis.
- 11.31.9We shall be able to produce the expected result for a solution continuity test case using the second order dual basis.
- 11.31.10We shall be able to produce the expected result for a fine mesh solution continuity test case using the mortar method, e.g. the primal variable values across the mortar interface shall be the same.
- 11.31.11The Jacobian for the solution continuity test case shall be perfect
- 11.31.12The system shall be able to prolong and restrict stateful material properties because of mesh adaptivity in the presense of lower dimensional subdomains that do not have materials and when stateful properties are needed on boundaries (because of integrated boundary conditions)
- 11.31.13The system shall be able to demonstrate asymptotically correct convergence rates of 3 and 3 for a mortar gap-conductance problem with equal, coarse-secondary, and coarse-primary geometric discretizations when using a second order basis for the temperature variable and a second order basis for the Lagrange multiplier.
- 11.31.14The system shall be able to demonstrate asymptotically correct convergence rates of 3 and 2 for a mortar gap-conductance problem with equal, coarse-secondary, and coarse-primary geometric discretizations when using a second order basis for the temperature variable and a first order basis for the Lagrange multiplier.
- 11.31.15The system shall be able to demonstrate asymptotically correct convergence rates of 2 and 1 for a mortar gap-conductance problem with equal, coarse-secondary, and coarse-primary geometric discretizations when using a second order basis for the temperature variable and a zeroth order basis for the Lagrange multiplier.
- 11.31.16The system shall be able to demonstrate asymptotically correct convergence rates of 2 and 2 for a mortar gap-conductance problem with equal, coarse-secondary, and coarse-primary geometric discretizations when using a first order basis for the temperature variable and a first order basis for the Lagrange multiplier.
- 11.31.17The system shall be able to demonstrate asymptotically correct convergence rates of 2 and 1 for a mortar gap-conductance problem with equal, coarse-secondary, and coarse-primary geometric discretizations when using a first order basis for the temperature variable and a zeroth order basis for the Lagrange multiplier.
- 11.31.18The system shall be able to demonstrate asymptotically correct convergence rates of 3 and 3 for a mortar solution continuity problem with an equal geometric discretization when using a second order basis for the temperature variable and a second order basis for the Lagrange multiplier.
- 11.31.19The system shall be able to demonstrate asymptotically correct convergence rates of 3 and 2 for a mortar solution continuity problem with an equal geometric discretization when using a second order basis for the temperature variable and a first order basis for the Lagrange multiplier.
- 11.31.20The system shall be able to demonstrate asymptotically correct convergence rates of 2 and 1 for a mortar solution continuity problem with an equal geometric discretization when using a second order basis for the temperature variable and a zeroth order basis for the Lagrange multiplier.
- 11.31.21The system shall be able to demonstrate asymptotically correct convergence rates of 2 and 2 for a mortar solution continuity problem with an equal geometric discretization when using a first order basis for the temperature variable and a first order basis for the Lagrange multiplier.
- 11.31.22The system shall be able to demonstrate asymptotically correct convergence rates of 2 and 1 for a mortar solution continuity problem with an equal geometric discretization when using a first order basis for the temperature variable and a zeroth order basis for the Lagrange multiplier.
- 11.31.23We shall be able to couple variables between boundary auxiliary kernels and mortar constraints.
- 11.31.24We shall be able to use boundary-restricted material properties in mortar constraints.
- 11.31.25We shall be able to do gap conductance on a dynamic mesh using auxiliary displacements
- 11.31.26The Jacobian for the dynamic aux displacement gap conductance test case shall be perfect
- 11.31.27We shall be able to do gap conductance on a dynamic mesh using auxiliary displacements on a fine mesh
- 11.31.28We shall generate the exact expected analytic solution for the gap conductance problem
- 11.31.29We shall be able to produce the expected result for a gap conductance test case using the mortar method. Specifically, this test yields lagrange multipliers that are correctly proportional to the delta of temperature across the gap, e.g. the heat flux
- 11.31.30The Jacobian for the gap conductance test case shall be perfect
- 11.31.31We shall be able to produce the expected result for a gap conductance test case using the mortar method on a fine mesh. Specifically, this test yields lagrange multipliers that are correctly proportional to the delta of temperature across the gap, e.g. the heat flux
- 11.31.32The system shall give access to the locations in physical space of mortar segment element quadrature points.
- 11.31.33The system shall compute an exact Jacobian for a simulation involving the physical space location of mortar quadrature points.
- 11.31.34We shall be able to enforce periodic boundary conditions on a non-uniform mesh using the mortar method
- 11.31.35The Jacobian for mortar enforcement of periodic boundary conditions shall be perfect
- rdg: Multiapps
- 11.32.1The system shall allow use of automatic differentiation and automatic scaling in sub-applications.
- 11.32.2The system shall support running a transient simulation with sub-applications that can fail and re-execute with smaller timesteps until the execution times for the master and sub-applications are equivalent.
- 11.32.3The system shall include the ability to execute a sub-application at the centroid of every element within the finite element mesh.
- 11.32.4The system shall detect input file problems with sub app input files.
- 11.32.5The system shall CLI argument problems related to sub app input files.
- 11.32.6The system show error when the number of input files is great than one and doesn't match the number of provided sub app positions.
- 11.32.7The system show error when the number of input files is great than one and doesn't match the number of provided sub app positions when using CLI overrides.
- 11.32.8The system shall error when the number of sub app input files doesn't match the number of provided positions files.
- 11.32.9The system shall error when both positions are provided in the input file along with a separate file of positions.
- 11.32.10The system shall error when the multiapp positions file is malformed.
- 11.32.11The system shall error when the Multiapp parameter sub_cycling and catch_up are both set to true.
- 11.32.12The system shall support reading command-line arguments from a file with multiple lines
- 11.32.13The system shall support reading command-line arguments from a file with a single line
- 11.32.14The system shall support reading command-line arguments from multiple files
- 11.32.15The system shall support reading command-line arguments from a file with multiple parameters separated semicolon
- 11.32.16The system shall not support commandLine arguments from a file and an input at the same time
- 11.32.17The system shall make sure the number of commandLine argument files either be only one or match the number of input files
- 11.32.18The system shall provide at least one commandLine argument file when use parameter 'cli_args_files'
- 11.32.19The system shall not use an empty commandLine argument file
- 11.32.20The system shall the total number of commandLine argument strings be only one or match the total number of sub apps
- 11.32.21The system shall the total number of commandLine argument strings from a file be only one or match the total number of positions
- 11.32.22The MultiApp system shall include the ability to set command line parameters for each sub application from the input file.
- 11.32.23The MultiApp system shall include the ability to set common command line parameters for all sub applications from the input file.
- 11.32.24The MultiApp system shall error when the number of command line arguments supplied in the input file differs from the number if sub apps.
- 11.32.25The system shall include the ability to halt the execution of sub-applications when steady-state is detected.
- 11.32.26The system shall be capable of executing a sub-application from a Steady executioner on
- initial and
- final.
- 11.32.27The system shall be capable of executing a sub-application from a Eigenvalue executioner on
- initial and
- final.
- 11.32.28When sub-application solve does not converge, the system shall be able to either
- abort run,
- throw error if error_on_dtmin is not set, or
- continue run.
- 11.32.29The system shall be able to use the solution of a coarse mesh as the initial guess for a fine mesh solution for a
- diffusion problem and a
- variational inequality problem resulting in a significantly reduced number of nonlinear iterations to solve the fine mesh problem
- 11.32.30The system shall be able to solve a fine mesh variational inequality problem without grid sequencing but with a lot more nonlinear iterations
- 11.32.31The system shall error if the execution of a sub-application fails during the initial execution.
- 11.32.32The system shall support creating a Multiapp that is not initially enabled
- 11.32.33MOOSE shall allow forcely evaluating general user objects on initial before applying initial conditions.
- 11.32.34The system shall support the ability for a sub-application to adaptive modify the time step of the master application when the sub-application operates at the
- beginning and
- end of a timestep.
- 11.32.35The system shall support limiting the number of processors for sub-applications.
- 11.32.36The system shall support the ability to re-position sub-applications at a specified time
- for single and
- multi-level sub-applications.
- 11.32.37The system shall support the ability to re-position and reset sub-applications at a specified time
- for single and
- multi-level sub-applications.
- 11.32.38The system shall support evaluating multi-level sub-applications:
- where the master application controls the time step for all sub-applications;
- where the master application controls the time step via a function for all sub-applications; and
- where the sub-application controls the time step for the master application,
- 11.32.39The system shall support writing screen output from multi-level sub-applications to a file.
- 11.32.40The system shall be capable of running multiple sub-applications that are defined by input and position file pairs.
- 11.32.41The system shall support outputting sub-application data in a specified position
- for single and
- multi-level sub-applications.
- 11.32.42The system shall support the the ability to set solver options within sub-applications.
- 11.32.43The system shall allow transient multiapps to use Picard iterations to rerun the time step
- 11.32.44The system shall support adaptive time stepping for transient multiapps with Picard iterations controlled by tolerances
- 11.32.45The system shall reject the solve if the maximum number of Picard iterations is reached without converging
- 11.32.46The system shall allow transient multiapps with Picard iterations controlled by relative tolerances
- 11.32.47The system shall allow transient multiapps with Picard iterations controlled by absolute tolerances
- 11.32.48The system shall allow function-defined time stepping for transient multiapps
- 11.32.49The system shall allow steady-state Picard iteration with multiapps
- 11.32.50The system shall allow fixed number of Picard iterations
- 11.32.51The system shall allow custom convergence check on Picard iteration with derived executioners
- 11.32.52The system shall allow steady-state Picard iteration with pseudo-transient multiapps
- 11.32.53The system shall allow convergence check with user defined postprocessor directly.
- 11.32.54The system shall allow convergence check with the convergence of a user defined postprocessor.
- 11.32.55The system shall show the Multiapp coupling convergence history of a user defined postprocessor that is used for convergence check.
- 11.32.56The system shall support performing iterative solves of sub-applications that perform additional time steps to maintain time step consistency with the master application
- resetting the initial condition for every coupling
- or re-using the previous solution as the initial condition for subsequent iterations.
- 11.32.57Multiapps shall be able to be restored when a subapp encounters a solve failure.
- 11.32.58CSV file writing should remain unaffected when a subapp encounters a solve failure.
- 11.32.59Multiapps shall be able to cut the master app time step when any subapp encounters a solve failure.
- 11.32.60The system should be able to restart from the latest solution
- 11.32.61The system should be able to check if users provide valid parameter to restart app using the latest solution
- 11.32.62The system shall support Picard iteration with a FullSolveMultiApp at the root with multiple multiapp levels.
- 11.32.63The system shall be able to run multiple timesteps of a multi-level multi-app simulation, handling the case when Picard coupling between two levels fails to converge.
- 11.32.64The system shall be able to uniformly cut the time-step across levels of a multi-app solve, even when there is no Picard coupling between two levels.
- 11.32.65The system shall support Picard iteration with multiple levels of Multiapps.
- 11.32.66The system shall support the evaluation of TIMESTEP_BEGIN and TIMESTEP_END norms even when there are not active Multiapps on both of those execute_on times.
- 11.32.67The system shall allow multiapp steady-state simulations coupled by a postprocessor transfer using Picard iterations
- with a steady-state sub-application,
- and with pseudo-transient sub-applications.
- 11.32.68The system shall allow transient multiapp simulations coupled by a postprocessor transfer using Picard iterations
- with a failed timestep,
- with adaptive timestepping,
- with a subapp using a smaller timestep,
- with the sub-app and the postprocessor transfers executed at the beginning of each time step,
- with the sub-app executed at the beginning of each time step and postprocessor transfers executed at the end of each timestep,
- with the sub-app executed at the end of each time step and postprocessor transfers executed at the beginning of each timestep,
- with the sub-app and the postprocessor transfers executed at the end of each time step.
- for updating the subapp postprocessor with the sub-app and the variable transfers executed at the beginning of each time step,
- for updating the subapp postprocessor with the sub-app executed at the beginning of each time step and variable transfers executed at the end of each timestep,
- for updating the subapp postprocessor with the sub-app executed at the end of each time step and variable transfers executed at the beginning of each timestep,
- and for updating the subapp postprocessor with the sub-app and the variable transfers executed at the end of each time step.
- 11.32.69The system shall support performing iterative solves of sub-applications that used smaller time steps than master application.
- 11.32.70The system shall support evaluating sub-applications at spatial positions specified in a file.
- 11.32.71The system shall provide an ability to perform iterative solves with sub-applications.
- 11.32.72The system shall provide an ability to relax solutions with iterative solves with sub-applications.
- 11.32.73The system shall provide an ability to relax sub-applications solutions along with the master solution for during iterative solves.
- 11.32.74The system shall provide an ability to relax solutions of array variables with iterative solves with sub-applications.
- 11.32.75The system shall error if provided relaxation factor that is less than or equal to 0 or greater than or equal to 2.
- 11.32.76The system shall support the ability to reset a sub-application at a specified time during the simultation
- for single and
- multi-level sub-applications.
- 11.32.77The system shall support simulations that
- that execute sub-applications, which
- are capable of being restarted from a previous simulation.
- 11.32.78The system shall support simulations that
- that execute with multi-level sub-applications, which
- are capable of being restarted from a previous simulation.
- 11.32.79The system shall support simulations that
- that executes sub-applications, which
- can restart from a previous simulation and project the initial condition from the previous solution to the current, restarted simulation.
- 11.32.80The system shall allow steady state multiapp simulations coupled by a variable transfer transformed using the Secant method
- with a steady-state multiapp
- and with a pseudo-transient multiapp.
- 11.32.81The system shall allow multiapp simulations coupled by a variable transfer transformed using the Secant method for transient problems
- with a failed timestep,
- with adaptive timestepping,
- coupled with a subapp using a smaller timestep,
- with the sub-app and the variable transfers executed at the beginning of each time step,
- with the sub-app executed at the beginning of each time step and variable transfers executed at the end of each timestep,
- with the sub-app executed at the end of each time step and variable transfers executed at the beginning of each timestep,
- with the sub-app and the variable transfers executed at the end of each time step.
- and when updating the subapp variables with the sub-app and the variable transfers executed at the beginning of each time step,
- for when updating the subapp variables with the sub-app executed at the beginning of each time step and variable transfers executed at the end of each timestep,
- for updating the subapp variables with the sub-app executed at the end of each time step and variable transfers executed at the beginning of each timestep,
- and for updating the subapp variables with the sub-app and the variable transfers executed at the end of each time step.
- 11.32.82The system shall allow multiapp steady-state simulations coupled by a postprocessor transfer using the secant method
- with a steady-state sub-application,
- and with pseudo-transient sub-applications.
- 11.32.83The system shall allow transient multiapp simulations coupled by a postprocessor transfer using the secant method
- with a failed timestep,
- with adaptive timestepping,
- with a subapp using a smaller timestep,
- with the sub-app and the postprocessor transfers executed at the beginning of each time step,
- with the sub-app executed at the beginning of each time step and postprocessor transfers executed at the end of each timestep,
- with the sub-app executed at the end of each time step and postprocessor transfers executed at the beginning of each timestep,
- with the sub-app and the postprocessor transfers executed at the end of each time step.
- for updating the subapp postprocessor with the sub-app and the variable transfers executed at the beginning of each time step,
- for updating the subapp postprocessor with the sub-app executed at the beginning of each time step and variable transfers executed at the end of each timestep,
- for updating the subapp postprocessor with the sub-app executed at the end of each time step and variable transfers executed at the beginning of each timestep,
- and for updating the subapp postprocessor with the sub-app and the variable transfers executed at the end of each time step.
- 11.32.84The system shall support executing sub-applications that operate with smaller time steps then the master application that include material properties that are based on previous time steps.
- 11.32.85The system shall allow steady state multiapp simulations coupled by a variable transfer transformed using Steffensen's method
- with a steady state multiapp
- and with a pseudo-transient multiapp.
- 11.32.86The system shall allow multiapp simulations coupled by a variable transfer transformed using Steffensen's method for transient problems
- with a failed timestep,
- with adaptive timestepping,
- coupled with a subapp using a smaller timestep,
- with the sub-app and the variable transfers executed at the beginning of each time step,
- with the sub-app executed at the beginning of each time step and variable transfers executed at the end of each timestep,
- with the sub-app executed at the end of each time step and variable transfers executed at the beginning of each timestep,
- with the sub-app and the variable transfers executed at the end of each time step.
- and when updating the subapp variables with the sub-app and the variable transfers executed at the beginning of each time step,
- for when updating the subapp variables with the sub-app executed at the beginning of each time step and variable transfers executed at the end of each timestep,
- for updating the subapp variables with the sub-app executed at the end of each time step and variable transfers executed at the beginning of each timestep,
- and for updating the subapp variables with the sub-app and the variable transfers executed at the end of each time step.
- 11.32.87The system shall allow multiapp steady-state simulations coupled by a postprocessor transfer using Steffensen's method
- with a steady-state sub-application,
- and with pseudo-transient sub-applications.
- 11.32.88The system shall allow transient multiapp simulations coupled by a postprocessor transfer using Steffensen's method
- with a failed timestep,
- with adaptive timestepping,
- with a subapp using a smaller timestep,
- with the sub-app and the postprocessor transfers executed at the beginning of each time step,
- with the sub-app executed at the beginning of each time step and postprocessor transfers executed at the end of each timestep,
- with the sub-app executed at the end of each time step and postprocessor transfers executed at the beginning of each timestep,
- with the sub-app and the postprocessor transfers executed at the end of each time step.
- for updating the subapp postprocessor with the sub-app and the variable transfers executed at the beginning of each time step,
- for updating the subapp postprocessor with the sub-app executed at the beginning of each time step and variable transfers executed at the end of each timestep,
- for updating the subapp postprocessor with the sub-app executed at the end of each time step and variable transfers executed at the beginning of each timestep,
- and for updating the subapp postprocessor with the sub-app and the variable transfers executed at the end of each time step.
- 11.32.89The system shall support the execution of sub-applications that operate with smaller time steps then the master application:
- with a sub-application that continues to the end time of the master application and
- with a sub-application that specifies and completion time prior to the master application.
- 11.32.90The system shall support the output of sub-application data that operate with smaller time steps then the master application.
- 11.32.91The system shall support the execution of sub-application that operate with adaptive time steps that differ from the master application.
- 11.32.92The system shall support sub-cycling with negative times by particularly ensuring that the sub-app does not advance further than the main app.
- 11.32.93The system shall support the failure of sub-application that operates with differing time steps than the master application.
- The simulation shall continue by reducing the time step and
- support the failure and the ability to limit the number of processors for the sub-application.
- 11.32.94The system shall support a time offset between the master and a subapp when using the Multiapp system.
- 11.32.95The system shall support the execution of sub-applications:
- with a time step governed by the sub-application and
- with a time step governed by the master application.
- 11.32.96The system shall support negative times by particularly ensuring that the sub-app properly updates its time without sub-cycling.
- rdg: Nodalkernels
- 11.33.1The system shall include ability to include contributions to the residual nodes of a finite element mesh
- on a single and
- multiple threads.
- 11.33.2The system shall be able to enforce a lower bound on a variable using nodal NCP, nodal application of resultant forces,
- have no oscillations in the solution, and
- have a non-singular matrix
- 11.33.3The system shall be able to enforce an upper bound on a variable using nodal NCP, nodal application of resultant forces,
- have no oscillations in the solution, and
- have a non-singular matrix
- 11.33.4The system shall be able to enforce an upper and lower bound on a variable using nodal NCP, nodal application of resultant forces,
- have no oscillations in the solution, and
- work with automatic differentiation, and
- have a non-singular matrix, and
- be incompataible with algebraic multigrid
- 11.33.5The system shall be able to enforce an upper and lower bound on a variable using a variational inequality
- reduced space active set solver, which
- is compatible with algebraic multigrid, and
- a semi-smooth solver, which
- is also compatible with algebraic multigrid
- The reduced space active set method shall work with a matrix-free approximation of the Jacobian, and the function evaluations corresponding to the nonlinear residual and the base for finite-differencing shall be equivalent.
- 11.33.6The system shall show violation of bounds when a non-variational-inequality solver is used
- 11.33.7The system shall support the use of Crank-Nicolson time integration scheme.
- 11.33.8The system shall include ability to include contributions to the residual nodes of a finite element mesh using an LU preconditioner.
- 11.33.9The system shall include ability to include contributions to the residual nodes of a finite element mesh and compute the correct Jacobian terms for
- subdomain and
- boundary restricted terms.
- 11.33.10The system shall not duplicate computation of kernels on a node that is shared between two subdomains.
- 11.33.11MOOSE shall support the application of Dirichlet type boundary conditions using the penalty method for nodesets.
- 11.33.12The system shall apply scaling to residuals and Jacobians for volumetric PDE terms applied at nodes
- rdg: Outputs
- 11.34.1The system shall support the ability to append the date to output filenames.
- 11.34.2The system shall support outputting of checkpoint files:
- at a specific interval while only maintaining a specified number of recent files and
- be capable of restarting a simulation from previously exported data at this interval.
- 11.34.3The system shall support outputting of checkpoint files, using a simplified input format:
- at every timestep while maintaining the most recent two files and
- be capable of restarting a simulation from the output data.
- 11.34.4The system shall support outputting of checkpoint files, using a complete input block:
- at every timestep while maintaining the most recent two files and
- be capable of restarting a simulation from the output data.
- 11.34.5The system shall support outputting of simulation data using the ExodusII format using simplified input file syntax.
- 11.34.6The system shall by default display data on the console from:
- the Postprocessor system and
- the scalar variable system.
- 11.34.7The system shall output a running list of coupling iteration residual norms during multiapp coupling iterations.
- 11.34.8The system shall only output the coupling iteration residual TIMESTEP_BEGIN norms when there are no TIMESTEP_END Multiapps.
- 11.34.9The system shall only output the coupling iteration TIMESTEP_END norms when there are no TIMESTEP_BEGIN Multiapps.
- 11.34.10The system shall output the coupling iteration residual norm for TIMESTEP_BEGIN and TIMESTEP_END Multiapps when both exist in the simulation.
- 11.34.11The system shall run a simulation without producing any file-based output.
- 11.34.12The system shall support outputting table based Postprocessor data.
- 11.34.13The system shall output Scalar Variables on the console in a table to the screen.
- 11.34.14The system shall warning when multiple console outputs attempt to write to the screen simultaneously.
- 11.34.15The system shall support outputting console information to a file.
- 11.34.16The system shall output Scalar Variables on the console in a table to a file.
- 11.34.17The system shall support outputting Scalar Variables to a file.
- 11.34.18The system shall support writing the console solve log to an output file.
- 11.34.19The system shall support writing norms to the console for each nonlinear variable in the simulation.
- 11.34.20The system shall output a Performance log based on a command line flag.
- 11.34.21The system shall support writing negative time information in the console.
- 11.34.22The system shall support outputting the Performance Log at user specified intervals.
- 11.34.23The system shall support writing to a buffered console object from every MooseObject-derived object.
- 11.34.24The system shall support writing to a buffered console object from const methods in MooseObject-derived objects.
- 11.34.25The system shall support outputting a transformed input file to the screen.
- 11.34.26The system shall support disabling the linear residual output.
- 11.34.27The system shall output a Performance Log based on a single input file parameter.
- 11.34.28The system shall override Performance Log output when conflicting values appear on the command line and input file.
- 11.34.29The system shall support adding an additional output time option without clobbering existing default options.
- 11.34.30The system shall output a "final" label at the end of the simulation before additional screen output occurs.
- 11.34.31The system shall error when specifying an invalid table fit width option.
- 11.34.32The system shall support the output of postprocessors and scalars to CSV files for steady state problems.
- 11.34.33The system shall support the output of postprocessors and scalars to CSV files for transient propblems.
- 11.34.34The system shall support the output of postprocessors and scalars to CSV files for transient problems without a time column.
- 11.34.35The system shall support the output of postprocessors and scalars to Exodus files for transient problems.
- 11.34.36The system shall support the output of CSV data:
- with checkpoint enabled and
- when restarted creates a new output file or
- optionally appends the existing file from the first part.
- 11.34.37The system shall support CSV output aligned columns and a custom delimiter.
- 11.34.38The system shall support CSV output to the console that is sorted by the variable name.
- 11.34.39The CSV output object shall create a symlink to the final output with with a '_FINAL' suffix for VectorPostprocessor data when there are execute flags in addition to FINAL.
- 11.34.40The CSV output object shall create a symlink to the final output with with a '_FINAL' suffix for VectorPostprocessor data when the execute flag is set to FINAL.
- 11.34.41The CSV output object 'create_final_symlink' parameter shall be able to disable the creation of the final symlink.
- 11.34.42The CSV output object shall create a symlink to the most recent output with with a '_LATEST' suffix for VectorPostprocessor data.
- 11.34.43The CSV output object 'create_latest_symlink' parameter shall be able to disable the creation of the latest symlink.
- 11.34.44The system shall be include the ability to display variable residual norms.
- 11.34.45The system shall include debug syntax that includes the ability to enable variable residual norm output.
- 11.34.46The system shall be include the ability to display material property information.
- 11.34.47The system shall include debug syntax that includes the ability to enable material property information output.
- 11.34.48The system shall be include the ability to display residual information for variables.
- 11.34.49The system shall include debug syntax that includes the ability to enable variable residual information.
- 11.34.50The system shall be include the ability to display residual information for variables that is limited to non-linear iterations.
- 11.34.51The system shall be include the ability to display residual information for scalar variables.
- 11.34.52The system shall include debug syntax that includes material property consumption information.
- 11.34.53The system shall be able to output the
displacedmesh for a model with adaptive mesh refinement. - 11.34.54If the user requested the output of a displaced problem and there is none present, the system shall fallback to using the non-displaced problem.
- 11.34.55If the user asks for no displaced mesh to be created, even though displacements are provided in the mesh block, the system shall not create a displaced mesh
- 11.34.56The Output system shall be capable of applying displacements directly to the outputted mesh for steady problems.
- 11.34.57The Output system shall be capable of applying displacements directly to the outputted mesh for transient problems with Kernels using the displaced configuration.
- 11.34.58The Output system shall be capable of applying displacements directly to the outputted mesh for transient problems.
- 11.34.59The system shall support the ability to output the degree-of-freedom information:
- to a json file,
- to the screen,
- with uniform refinement, and
- with transient adaptivity.
- 11.34.60The system shall error when two outputs with the same name are created.
- 11.34.61The system shall error when two outputs produce a file with the same name.
- 11.34.62The system shall reserve names for output objects:
- "none" and
- "all."
- 11.34.63The system shall support ExodusII output.
- 11.34.64The system shall support including the executed input file within the ExodusII output.
- 11.34.65The system shall support inclusion of initial condition data within the ExodusII output.
- 11.34.66The system shall support writing non-linear, auxililary, scalar, and postprocessor variables to ExodusII format.
- 11.34.67The system shall support the exclusion of non-linear, scalar, and postprocessor variables from ExodusII output.
- 11.34.68The system shall error if the supplied names for including or excluding variables is invalid.
- 11.34.69The system shall support outputting elemental and scalar variables as nodal variables within ExodusII output.
- 11.34.70The system shall support outputting discontinuous finite element types with the ExodusII format.
- 11.34.71Nemesis output shall work
- 11.34.72GMV output shall work
- 11.34.73We shall be able to dump YAML data
- 11.34.74Executioner output shall only be given once
- 11.34.75Tecplot output shall work
- 11.34.76If tecplot api is available, tecplot output will be given in tecplot binary format
- 11.34.77If tecplot api is not available, tecplot output will be given in ASCII format
- 11.34.78We shall be able to generate gnuplot postscript output
- 11.34.79We shall be able to generate gnuplot png output
- 11.34.80We shall be able to generate gnuplot gif output
- 11.34.81If a postprocessor utilizes the "outputs" parameter, but postprocessor output is disable for the console object, we shall warn the user
- 11.34.82–show-input shall print parameters
- 11.34.83Solution history output shall work
- 11.34.84MOOSE shall support XDR output
- 11.34.85The system shall be able to dump input file syntax in JSON format
- 11.34.86The system shall be able to dump input file syntax in JSON format and exclude test object syntax.
- 11.34.87The system shall be able to dump a subset of JSON formatted syntax.
- 11.34.88The system shall dump line information along with JSON formatted syntax.
- 11.34.89The system shall not include RESIDUAL and JACOBIAN template arguments in the JSON syntax format.
- 11.34.90The system shall be able to dump input file (HIT) syntax.
- 11.34.91The system shall be able to dump a subset of input file (HIT) syntax.
- 11.34.92MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check InputChoices
- 11.34.93MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check ChildAtLeastOne
- 11.34.94MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check ValEnums
- 11.34.95MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check active parameter
- 11.34.96MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check normal_sub
- 11.34.97MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check type_sub
- 11.34.98MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check default type
- 11.34.99MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check MinValInc
- 11.34.100MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check Block type MaxOccurs NoLimit
- 11.34.101MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check FunctionName type MaxOccurs NoLimit
- 11.34.102MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check Array type MinOccurs zero
- 11.34.103MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check declarator MinOccurs zero
- 11.34.104MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check Eigen::Matrix type MaxOccurs NoLimit
- 11.34.105MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check default types child parameter promotion
- 11.34.106MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check default subblock_types child parameter promotion
- 11.34.107MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check Mesh file parameter requirement removal
- 11.34.108MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check Boolean type ValEnums choices
- 11.34.109MOOSE shall be able to convert a JsonSyntaxTree into Standard Object Notation (SON) for use by the NEAMS workbench. Check beginning and ending markers
- 11.34.110The system shall support outputting data to the general mesh viewer format.
- 11.34.111The system shall support limiting vector postrocessor data to a specific CSV output object.
- 11.34.112The system shall support the ability to control the output of an aggregate calculation via a parameter of the object itself.
- 11.34.113The system shall support specifying an output interval for an output input file block.
- 11.34.114The system shall support specifying an output interval for all outputs.
- 11.34.115The system shall support limiting output to the final timestep of a simulation.
- 11.34.116The system shall support output at specific simulation times.
- 11.34.117The system shall support multiple output objects that have different simulation synchronization times specified.
- 11.34.118The system shall support the disabling of an output object by restricting the execution settings.
- 11.34.119The system shall support the ability to limit output objects only at the beginning and end of a simulation.
- 11.34.120The system shall not output the same information multiple times when an output object is defined to operate on the end of each timestep and the final timestep.
- 11.34.121The system shall support output during linear and non-linear iterations during transient simulations using the ExodusII format.
- 11.34.122The system shall support output during linear and non-linear iterations during steady simulations using the ExodusII format:
- in a single file or
- in a sequence of files.
- 11.34.123The system shall support output during linear and non-linear iterations during transient simulations using the VTK format.
- 11.34.124The system shall support output during linear and non-linear iterations during transient simulations using the CSV format.
- 11.34.125The system shall support output during linear and non-linear iterations during transient simulations:
- with both the start and end times defined,
- with only the start time defined,
- with the start and end timestep provided,
- with the start timestep given, and
- with the end timestep provided.
- 11.34.126The system shall support JSON output for data.
- 11.34.127The system shall include the ability to output simulation data in JSON format:
- that produces multiple files for parallel distributed data and
- for parallel replicated data in a single file.
- 11.34.128The system shall support creating unique JSON output files per timestep.
- 11.34.129The system shall provide an API for retrieving an output object by type and name.
- 11.34.130The system shall provide an API for retrieving all output objects of a type.
- 11.34.131The system shall provide an API for retrieving output objects for the given names and type.
- 11.34.132The system shall provide an API for retrieving all output object names of a type.
- 11.34.133The system shall support the naming of output files based on the input file block name.
- 11.34.134The Nemesis Output object shall output separate files per process for visualization purposes.
- 11.34.135The Nemesis Output object shall support writing elemental variables.
- 11.34.136The Nemesis Output object shall support writing elemental variables with the same numbering on DistributedMesh.
- 11.34.137The Nemesis Ouput object shall support writing scalar variables.
- 11.34.138The Nemesis Ouput object shall support writing scalar variables when using DistributedMesh.
- 11.34.139The system shall support the ability to specify the output dimension when outputting in ExodusII format.
- 11.34.140The system shall support the ability to limit output to certain sub-applications based on name.
- 11.34.141The system shall include the ability to limit automatic output of adaptivity objects, including
- indicators and
- markers.
- 11.34.142The system shall allow the user to select different console output intervals.
- 11.34.143The system shall display active output information with corresponding execute flags.
- 11.34.144The system shall provide a system for outputting solution variables with a uniformly refined mesh:
- with a shift in output position,
- with a custom filename,
- with mesh adaptivity,
- with a generated mesh,
- with a file mesh, and
- with second order elements from a file mesh.
- 11.34.145The system shall include an example demonstrating the use of oversampling.
- without and
- with mesh adaptivity.
- 11.34.146The system shall include the ability to overwrite existing timesteps when writing ExodusII format.
- 11.34.147The system shall output a performance log information for sub-applications
- that are transient,
- use differing time steps from the main, and
- execute an entire simulation.
- 11.34.148MOOSE shall have the ability to output a detailed performance log
- 11.34.149MOOSE shall be able to produce png images:
- for 2D square images,
- arbitrary shapped domains,
- and complex shapes with periodic boudary conditions.
- 11.34.150The system shall support offseting the spatial position of a domain during output.
- 11.34.151The system shall support the ability to specify the output object for postprocessor data from within the input file block defining the postprocessor.
- 11.34.152The system shall error if an invalid output name is provided within the postprocessor input file block.
- 11.34.153The system shall support limiting postprocessor output to the screen.
- 11.34.154The system shall support limiting postprocessor output to from within the input file syntax of an output object.
- The system shall error if a postprocessor variable is listed for suppression and inclusion within an output object block in the input file.
- 11.34.156The system shall support limiting the output of comma seperated value data to the final timestep:
- for all scalar data and
- for postprocessor data only.
- 11.34.157The system shall support the ability to output single value aggregate calculations to JSON format.
- 11.34.158Correctly set up initial recover files for the part2 test.
- 11.34.159A simulation executed using the "–recover" flag successfully runs a simulation using the specified recover file argument.
- 11.34.160Correctly set up initial recover files for the part2_latest test.
- 11.34.161A simulation executed using the "–recover" flag with a file argument using the placeholder "LATEST" successfully runs a simulation using most recent checkpoint/recover file from the specified directory.
- 11.34.162The system shall automatically output values to a comma separated (CSV) file in
- root/replicated mode
- and distributed mode.
- 11.34.163The system shall support the ability to output the residual norms of individual nodal variables.
- 11.34.164The system shall support the ability to output the residual norms of individual elemental variables.
- 11.34.165The system shall support writing file to sub-directories.
- 11.34.166The system shall print the various components of the simulation information header to the screen
- 11.34.167The system shall print the mesh information to the screen when the mesh changes
- 11.34.168The system shall print the auxiliary system information to the screen when the mesh changes
- 11.34.169The system shall print the nonlinear system information to the screen when the mesh changes
- 11.34.170The system shall support Tecplot output.
- 11.34.171The system shall support appending Tecplot output files.
- 11.34.172The system shall optionally support writing binary Teckplot files.
- 11.34.173The system shall guarantee that scalar variables are in the proper state for output when outputting:
- ExodusII format and
- CSV format.
- 11.34.174The system shall support outputting field and scalar data to the ExodusII format.
- The system shall error if a variable is marked for output and output suppression.
- 11.34.176The system shall error if a variable is perscribed for output but does not exist.
- 11.34.177The system shall test that output of an auxiliary field can be disabled within the input block defining the variable.
- 11.34.178The system shall support a system for including or suppressing output variables the operates when only a single variable for each type exists.
- 11.34.179The system shall support a system for including or suppressing output variables.
- 11.34.180The variables specified in an Output object's 'hide = ' list shall not appear in the output file.
- 11.34.181The system shall support the ability to output vector aggregate calculations to JSON format.
- 11.34.182The system shall optionally support output of files using the VTK format:
- in serial and
- in parallel.
- 11.34.183The system shall support the output of data using native libMesh formats:
- in XDA (ASCII) format and
- in XDR (binary) format.
- 11.34.184The system shall support simultaneous output of the ASCII and binary forms of the libMesh native format.
- 11.34.185The system shall support XML output for vector data that is
- replicated or
- distributed in parallel.
- 11.34.186The system shall support XML output for vector data during nonlinear solve.
- rdg: Parser
- 11.35.1The system shall support active/inactive parameters to selectively enable/disable subblocks within all input file blocks.
- 11.35.2The system shall produce an error when the active parameter refers to a non-exiseant block.
- 11.35.3The system shall produce an error when the inactive parameter refers to a non-existent block.
- 11.35.4The system shall produce an error when both the active and inactive parameters are present in the same block.
- 11.35.5The system shall honor the active or inactive parameters at the top (root) level.
- 11.35.6The system shall support the ability to override input file parameters from the command line.
- 11.35.7The system shall support the ability to globally change MultiApp input file syntax from the command line.
- 11.35.8The system shall support the ability to change a whole MultiApp's (multiple SubApps) input file syntax from the command line.
- 11.35.9The system shall support the ability to change individual SubApp input file syntax from the command line.
- 11.35.10The system shall produce an error when a SubApp command line override index is not valid.
- 11.35.11The system shall output all registered objects in HIT format.
- 11.35.12The system shall output all registered objects in single line format.
- 11.35.13The system shall report an error if the supplied input file is not formatted correctly.
- 11.35.14The system shall be able to read input file syntax and write into map parameters.
- 11.35.15The system shall error if a user supplies an odd number of entries, implying an unbalanced key-value set, to a map parameter.
- 11.35.16The system shall error if a user supplies syntax in a map parameter that cannot be cast to the requested mapped type.
- 11.35.17The system shall support for multiple input files, which are merged into one input specification for a simulation
- where no parameters overlap
- where input files may override parameters in previous inputs
- while locating input errors in the correct file
- and inform the user of parameters from earlier files being overidden by later files
- 11.35.18The system shall raise an error if no input files were specified after the -i option
- 11.35.19The system shall support parameter substitution in input files using command line variable expressions.
- 11.35.20The system shall support parameter substitution in input files using variable expressions from within the same input file.
- 11.35.21The system shall support unit conversion in input files using variable expressions.
- 11.35.22The system shall support reading in jagged double-indexed arrays from the input file using two delimiters for columns and rows respectively.
- 11.35.23The system shall support vector size checking on input parameter vectors:
- for ints,
- for Reals.
- 11.35.24The system shall support vector element checking:
- against constant expressions,
- against other unsigned int vector elements,
- against other long vector elements,
- against other int vector elements, and
- against other Real vector elements.
- 11.35.25The system shall support vector bounds checking on input parameter vectors.
- 11.35.26The system shall support checking for non-empty input parameter vectors.
- rdg: Partitioners
- 11.36.1The system shall support a block-weighted partitioner
- when using ReplicatedMesh
- and when using DistributedMesh.
- 11.36.2The system shall allow custom partitioners to work with mesh generators
- 11.36.3MOOSE shall provide a simple regular grid-based partitioner
- 11.36.4MOOSE shall have the ability to do hierarchical partitioning based on a regular grid.
- 11.36.5Make MOOSE support ptscotch via PETSc
- 11.36.6ptscotch shall support element-weighted graphs for balancing workload
- 11.36.7ptscotch shall support side-weighted graphs for minimizing communication
- 11.36.8ptscotch shall take both side weights and element weights into consideration
- 11.36.9Make MOOSE support parmetis via PETSc
- 11.36.10Parmetis shall support element-weighted graphs for balancing workload
- 11.36.11Parmetis shall support side-weighted graphs for minimizing communication
- 11.36.12Parmetis shall take side weights and element weights into consideration
- 11.36.13Parmetis shall support presplit
- 11.36.14MOOSE shall support a serial partitioner Chaco
- 11.36.15MOOSE shall support a serial partitioner party
- 11.36.16MOOSE shall provide a random partitioner
- rdg: Phi Zero
- 11.38.1The system shall be able to construct zero objects for shape functions and shape function gradients consistent with the maximum number ofshape functions and quadrature points in the simulation.
- 11.38.2The system shall be able to construct zero objects for shape functions and shape function gradients consistent with the maximum number ofshape functions and quadrature points in the simulation. This test checks the size of zero objects when using second-order elements and second order-variables.
- rdg: Postprocessors
- 11.39.1The AreaPostprocessor shall compute the "area" or dimension - 1 "volume" of sides.
- 11.39.2The system shall compute the average value of a field variable over time
- at the end of a time step and
- and at the beginning of the time step.
- 11.39.3The system shall compute the average value of a quantity along the axis of rotation in an axisymmetric coordinate system.
- 11.39.4The system shall support calculating the value change overFixedPoint
- with respect to the previous calculation and
- with respect to the initial calculation.
- 11.39.5The system shall issue an error when the dependent "change ofFixedPoint" calculation
- "with respect to initial" isn't calculated at the initial step and
- "with respect to previous" isn't calculated at the previous step.
- 11.39.6The system shall support calculating the value change over time
- with respect to the previous calculation and
- with respect to the initial calculation.
- 11.39.7The system shall issue an error when the dependent "change of time" calculation
- "with respect to initial" isn't calculated at the initial step and
- "with respect to previous" isn't calculated at the previous step.
- 11.39.8The system shall allow for the retrieval of raw elemental degree-of-freedom values directly for elemental evaluations.
- 11.39.9The system shall have the ability to accumulate a scalar value over time.
- 11.39.10The system shall the substitution of a constant value in place of an optional Postprocessor coupling value
- when that value is supplied as a default in the coupling declaration
- or when that value is supplied in the input file.
- 11.39.11The system shall support computing the difference between two scalar Postprocessor values.
- 11.39.12The system shall execute dependent Postprocessors first when computing the difference between two Postprocessors.
- 11.39.13The system shall support running Postprocessors on the the mesh containing displacements:
- elemental and
- side.
- 11.39.14The system shall compute the the average value of a non-AD material property over the domain.
- 11.39.15The system shall compute the the average value of an AD material property over the domain.
- 11.39.16The system shall contain a "Postprocessor" that computes the average value of a variable
- one a single block and
- on multiple blocks.
- 11.39.17The system shall compute the the extreme (min/max) values of a non-AD material property over the domain.
- 11.39.18The system shall compute the the extreme (min/max) values of an AD material property over the domain.
- 11.39.19The system shall compute the the extreme (min/max) values of an elemental field variable over the domain.
- 11.39.20The system shall compute the H1-seminorm between a field variable and a analytical function.
- 11.39.21The system shall compute the element integral of a variable
- over the whole domain and
- over a subset of the domain.
- 11.39.22The system shall compute the average integral quantity over an element of a scalar material property.
- 11.39.23The system shall support computing the integral of a variable quantity over the domain on the mesh
- during the initial setup step
- and at the end of each time step, for FE variables
- and FV variables.
- 11.39.24The system shall compute the L1 error between an elemental field variable and an analytical function.
- 11.39.25The system shall compute the element-wise L2 difference between two field variables.
- 11.39.26The system shall compute the L2-error (Euclidean) between a field variable and a analytical function.
- 11.39.27The system shall compute the volumetric L2 norm of a variable over the mesh.
- 11.39.28The system shall compute the average time derivative of a solution value computed per element in 2D.
- 11.39.29The system shall compute the average time derivative of a solution value computed per element in 1D.
- 11.39.30The system shall support sampling a specific quantity integrated over a single element.
- 11.39.31The system shall support sampling a specific quantity integrated over a single element with finite volume variables.
- 11.39.32The system shall compute the Vector L2 Error of three scalar variables simultaneously as three orthogonal components of a vector.
- 11.39.33Postprocessor objects shall be able to execute and output after the simulation is complete.
- 11.39.34The system shall support an attribute (scalar value) reporter through the "Execution" system.
- 11.39.35The system shall be capable of find a value on a monotonically changing line.
- 11.39.36The system shall report and error when the target value is lower than one of the sampled endpoints.
- 11.39.37The system shall report and error when the target value is greater than one of the sampled endpoints.
- 11.39.38The system shall return the default flag value when the target value is lower than one of the sampled endpoints and error_if_not_found is false.
- 11.39.39The system shall return the default flag value when the target value is greater than one of the sampled endpoints and error_if_not_found is false.
- 11.39.40The system shall return user specified flag value when the target value is lower than one of the sampled endpoints and error_if_not_found is false.
- 11.39.41The system shall return user specified flag value when the target value is greater than one of the sampled endpoints and error_if_not_found is false.
- 11.39.42The system shall report and error when the sampling line extends beyond the mesh bounding box.
- 11.39.43The system shall report and error when the line sampling algorithm fails to converge within the desired depth.
- 11.39.44The system shall integrate functions over volume.
- 11.39.45The system shall compute the integral of a function over a boundary.
- 11.39.46The system shall support evaluating a function of space and time at a single point as a Postprocessor value.
- 11.39.47The system shall be able to correctly compute the volume of blocks and the area of sidesets in 3D.
- 11.39.48The system shall be able to correctly compute the area of blocks and the perimeterof sidesets in 2D and appropriately handle boundary conditions applied to sidesetscreated with respect to different bodies.
- 11.39.49The system shall be able to compute the integral of the diffusive flux at an interface
- with finite element variables,
- and with finite volume variables.
- 11.39.50The system shall be able to compute the average diffusive flux at an interface
- with finite element variables,
- and with finite volume variables.
- 11.39.51Testing the implementation of the InterfaceAverageVariableValuePostprocessor By design at the end of the first step we should observe: an average material property of 7, an average material property absolute jump to 6,a signed material property jump (primary minus secondary) of 6, a signed material propertyjump (secondary minus primary) of -6, a material property value on the primary side of 10, a material property value on the primary side of 4
- 11.39.52Testing the implementation of the InterfaceIntegralVariableValuePostprocessor By design at the end of the first step we should observe: an integral material property of 21, an integral material property absolute jump to 18,a signed integral material property jump (primary minus secondary) of 18, a signed integral material propertyjump (secondary minus primary) of -18, a material integral property value on the primary side of 30, a material integral property value on the primary side of 12
- 11.39.53Testing the implementation of the InterfaceAverageVariableValuePostprocessor for finite volume variables.By design at the end of the first step we should observe: an average material property of 7, an average material property absolute jump to 6,a signed material property jump (primary minus secondary) of 6, a signed material propertyjump (secondary minus primary) of -6, a material property value on the primary side of 10, a material property value on the primary side of 4
- 11.39.54Testing the implementation of the InterfaceIntegralVariableValuePostprocessor for finite volume variables.By design at the end of the first step we should observe: an integral material property of 21, an integral material property absolute jump to 18,a signed integral material property jump (primary minus secondary) of 18, a signed integral material propertyjump (secondary minus primary) of -18, a material integral property value on the primary side of 30, a material integral property value on the primary side of 12
- 11.39.55The system shall support retrieving solution values from neighboring elements for use in internal side calculations.
- 11.39.56The system shall support the ability to compute a linear combination of scalar values (Postprocessors).
- 11.39.57The system shall allow a mix of postprocessor names and real numbers to be provided to PostprocessorName parameters.
- 11.39.58MOOSE shall provide a postprocessor to measure physical and virtual memory usage and the major page fault count, depending on the operating system's ability to make those values available
- 11.39.59MOOSE shall provide a vectorpostprocessor to on each rank measure physical and virtual memory usage, major page fault count, and total available ram available, depending on the operating system's ability to make those values available
- 11.39.60The system shall verify calculations using the method of manufactured solutions using a higher order polynomial function for linear elements.
- 11.39.61The system shall verify calculations using the method of manufactured solutions using sine functions for linear elements:
- on a 3D mesh
- verified with an analytical 3D solution and
- on a 2D mesh
- verified with an analytical 2D solution.
- 11.39.62The system shall verify calculations using the method of manufactured solutions using a functional form of an equation outside of the shape function space.
- 11.39.63The system shall have the capability to compute the nearest node number to a given point.
- 11.39.64The system shall have the capability to compute the nearest node number to a given point, and will choose the smallest node number if more than one node is equidistant.
- 11.39.65The system shall have the capability to compute the nearest node number to a given point, including when the mesh is adapting
- 11.39.66The system shall compute the the extreme (min/max) values of a nodal field variable over the domain.
- 11.39.67The system shall compute the maximum value of a field variable by sampling nodes
- over the whole domain and
- within a subdomain.
- 11.39.68The system shall compute the sum of nodal values of a variable
- on the whole domain,
- on a subset of the domain, and
- on multiple overlapping blocks visiting some nodes multiple times.
- 11.39.69The system shall report the value of a variable at a specified node
- for auxiliary variables and
- for primary (nonlinear) variables.
- 11.39.70The system shall support selecting the output for a single Postprocessor
- to a file and
- to the console.
- 11.39.71The system shall be capable of running multiple adaptivity cycles in a single solve step.
- 11.39.72They system shall be capable of toggling adaptivity at the start of the simulation.
- 11.39.73They system shall be capable of toggling adaptivity during the simulation.
- 11.39.74The NumDOFs Postprocessor shall report the number of degrees of freedom (DOFS) from one or more equations systems in the simulation.
- 11.39.75The NumElems Postprocessor shall report the number of elements (active or total) in the simulation.
- 11.39.76The NumElems Postprocessor shall report the number of elements (active or total) in the simulation when using distributed (pre-split) mesh.
- 11.39.77The system shall support time integration schemes that compute a consistent number of nonlinear and linear iterations for
- four stage, A-stable DIRK;
- explicit Euler;
- lumped explicit Euler;
- lumped and preconditioned explicit Euler;
- second-order backward difference;
- Crank-Nicloson;
- quasi explicit Euler;
- explicit midpoint;
- two-stage TVD Runge-Kutta;
- Heun;
- implicit Euler;
- implicit midpoint;
- two-stage, L-stable DIRK;
- three stage, L-stable DIRK;
- four stage, L-stable DIRK;
- and Ralston methods.
- 11.39.78The NumNodes Postprocessor shall report the number of nodes (replicated or distributed) in the simulation.
- 11.39.79The NumNodes Postprocessor shall report the number of nodes in the simulation when using distributed (pre-split) mesh.
- 11.39.80The system shall be capable of outputting the number of Residual evaluations
- 11.39.81The NumVars Postprocessor shall report the number of variables from one or more equation systems in the simulation.
- 11.39.82The system shall support the ability to retrieve previously computed Postprocessor values within a Postprocessor calculation:
- old (one timestep back) and
- older (two timesteps back).
- 11.39.83The VectorPostprocessor system shall provide a mechanism to retrieve references to old vectors.
- 11.39.84The VectorPostprocessor system shall provide a mechanism to retrieve references to old vectors while maintaining vector history.
- 11.39.85The system shall be able to compute a postprocessor based on a parsed expression of other postprocessors.
- 11.39.86MOOSE shall have the abililty to pull time from the PerfGrahp into a Postprocessor
- 11.39.87The system shall support the ability to sample a field variable value anywhere within the domain.
- 11.39.88The system shall report an error when a field variable sample location is outside of the domain.
- 11.39.89The system shall include the ability to compare post-processor data and return a boolean value for
- greater than operator and the
- less than operator.
- 11.39.90The system shall support evaluating Postprocessors (UserObjects) in the following order: Elemental, Side, Internal Side, Nodal, and General.
- 11.39.91The system shall support outputting the scalar Postprocessor values at specific intervals
- to a file and
- to the console.
- 11.39.92The system shall support outputting the scalar Postprocessor values to multiple locations with different intervals.
- 11.39.93The system shall have the ability to output performance data to a file.
- 11.39.94The system shall calculate performance time when the data is only used by a Postprocessor.
- 11.39.95The system shall calculate performance time even when the performance graph isn't printed to any output format.
- 11.39.96The system shall compute parallel-agnostic random numbers in the Postprocessor system
- when running a complete simulation, or
- when running the first half of the simulation and
- running the second half of the simulation with recovery and receiving the same values.
- 11.39.97The system shall support the ability to report an input parameter on the screen or to an input file.
- 11.39.98The system shall report an error when a requested parameter for reporting does not exist
- with a wildcard in the name and
- a complete name/
- 11.39.99The system shall support the ability to report a scalar value set by arbitrary objects in the simulation
- with an initial default value and
- with a default previous (older) value.
- 11.39.100The system shall support computing the relative difference between two scalar values (Postprocessors)
- when values are non-zero, and
- when values are approximately zero.
- 11.39.101The system shall be capable of computing the relative norm of the solution difference between two consecutive time steps.
- 11.39.102The system shall support coupling in a scalar variable to the Postprocessing system for calculating values.
- 11.39.103The system shall support reporting scalar variables as Postprocessor (scalar output) values.
- 11.39.104The system shall support the scaling of a post processor quantity by another post processor quantity.
- 11.39.105The system shall compute the area-weighted average of the integral of a variable over a side.
- 11.39.106The system shall be capable of computing the average diffusive flux through a specified boundary on the mesh.
- 11.39.107The system shall be capable of computing the average of the diffusive flux integral of a finite volume variable through a specified boundary on the mesh.
- 11.39.108The system shall be capable of computing the integral of the diffusive flux through a specified boundary on the mesh
- with a scalar diffusivity,
- with an anisotropic vector diffusivity.
- 11.39.109The system shall be capable of computing the integral of the diffusive flux integral of a finite volume variable through a specified boundary on the mesh
- with a scalar diffusivity,
- with a vector diffusivity.
- 11.39.110The system shall support computing the integral of a variable quantity over a side on the mesh.
- 11.39.111The system shall support computing the integral of a finite volume variablequantity over a side on the mesh.
- 11.39.112The system shall compute an aggregate scalar quantity when applied along multiple boundaries.
- 11.39.113The TableOutput object shall allow the user to override tolerance checks when determining whether new rows should be added (independent variable delta)
- 11.39.114The system shall have the ability to record a minimum or maximum value of a field variable over time.
- 11.39.115The system shall have the ability to return the time at which a minimum or maximum value of a field variable over time occurred.
- 11.39.116The system shall include the ability to compute the inner product of two variables.
- 11.39.117The system shall compute the difference between the test and trial functions (Residual) for a specified variable.
- 11.39.118Vector post-processor values shall be able to be compared and return a boolean value for
- greater than or equal,
- greater than,
- less than, or
- equal.
- 11.39.119The system shall provide a Postprocessor that returns a single specified component of a VectorPostprocessor
- 11.39.120The Postprocessor that returns a single specified component of a VectorPostprocessor shall generate an error if the requested component is out of the range of the vector
- 11.39.121The system shall have the capability of computing the volume of the mesh domain.
- rdg: Preconditioners
- 11.40.1The system shall support the disabling of an automatically created preconditioning object when preforming a Newton solve.
- 11.40.2The system shall automatically create the correct preconditioning object when preforming a Newton solve.
- 11.40.3The system shall not automatically create a preconditioning object when preforming a Newton solve if the auto preconditioning capability is disabled.
- 11.40.4The system shall produce a perfect coloring for the Jacobian when using the finite difference preconditioner.
- 11.40.5The system shall produce a perfect Jacobian when using the stadard finite difference preconditioner.
- 11.40.6The system shall detect missing off-diagonal Jacobian entries when using a full finite different preconditioner.
- 11.40.7The system shall support the use of field split preconditioner on
- a single subdomain and
- multiple subdomains.
- 11.40.8The system shall support the use of HMG (high performance MG)
- 11.40.9The system shall support the use of HMG (high performance MG) for 3D problems
- 11.40.10The system shall support the use of strumpack (sparse direct solver) for 3D problems
- 11.40.11The system shall support the ability to use multiple cycles within hypre during preconditioning with PETSc.
- 11.40.12The system shall support the use of a physics based preconditioner
- without and
- with mesh adaptivity.
- 11.40.13The system shall support the ability to add arbitrary options to the solver when using a physics based precondioner.
- 11.40.14The system shall support the ability to control the variable solve order when using a physics base preconditioner.
- 11.40.15The system shall support the ability to use the conjugate gradient method for preconditioning with PETSc.
- 11.40.16The system shall support the use of a single matrix preconditioner
- without and
- with mesh adaptivity.
- 11.40.17The system shall support the ability to group variables when using a single matrix preconditioner.
- rdg: Predictors
- 11.41.1The system shall include a means for predicting future solution based on previous solutions.
- 11.41.2The system shall include a means for predicting future solution based on previous solutions and print the scale factor to the output stream.
- 11.41.3The system shall support the ability to skip performing solution predictions
- using solution times or
- previous solution times.
- 11.41.4The system shall support the ability to skip a prediction after a failed time step
- rdg: Problems
- 11.42.1The system shall allow the creation of a custom problem through a user-defined Action.
- 11.42.2The system shall support the creation of a custom problem with parameters in Problem block.
- 11.42.3The system shall error out when Problem block type is not specified.
- 11.42.4The system shall support the creation of a custom problem through Problem block with type specified.
- 11.42.5The system shall support the ability to extend the basic "Problem" interface.
- 11.42.6MOOSE shall have a capability to dump the equivalent input file syntax for all objects added by a given action.
- 11.42.7The system shall include the support for Eigen value calculations that utilize
- an array of residual contributions;
- multiple variables; and
- multiple variables with Eigen values include in preconditioning matrix.
- 11.42.8Eigenvalue system should support standard eigenvalue problems
- 11.42.9Eigenvalue system should support generalized eigenvalue problems
- 11.42.10Eigenvalue system should support IntegratedBC
- 11.42.11Eigenvalue system should not allow users to use inhomogeneous nodal boundary conditions
- 11.42.12Eigenvalue system should use homogeneous boundary conditions only
- 11.42.13Eigenvalue system requires SLEPc installed
- 11.42.14Eigenvalue system should be able to solve a nonlinear eigenvalue problem
- 11.42.15Eigenvalue system should be able to solve a nonlinear eigenvalue problem using Newton
- 11.42.16Eigenvalue system should be able to solve a deficient eigenvalue problem
- 11.42.17Eigenvalue system should be able to compute a nonlinear eigenvalue problem
- 11.42.18Eigenvalue system should be able to compute a coupled nonlinear eigenvalue problem
- 11.42.19Eigenvalue system should be able to handle scalar kernels
- 11.42.20Eigenvalue system should be able to handle DG kernels
- 11.42.21Eigenvalue system shall support Picard iteration using eigenvalue executioner as a master.
- 11.42.22Eigenvalue system shall support Picard iteration using eigenvalue executioner as a master and output eigen vectors as an exodus file.
- 11.42.23Eigenvalue system shall support Picard iteration using eigenvalue executioner as a sub app.
- 11.42.24Eigenvalue system shall support Picard iteration using eigenvalue executioner as a sub app and output eigen vectors as an exodus file.
- 11.42.25Eigenvalue system should be able scale eigenvector such that postprocessor is a certain value
- 11.42.26The system shall be able to automatically condition a nonlinear eigen-solve based on diagonal entries in the preconditioning matrix.
- 11.42.27The system shall be able to automatically scale a nonlinear eigen-solve based on entries in the non-eigen residual vector.
- 11.42.28The system shall provide an initial guess to Newton if users request.
- 11.42.29The system shall support eigenvalue execution without free power iterations.
- 11.42.30The system shall provide an option to output the eigenvalue as its inverse.
- 11.42.31The system shall provide an option to output the eigenvalue on screen as its inverse.
- 11.42.32The system shall support extra power iterations.
- 11.42.33The system shall support extra power iterations and check eigenvalue.
- 11.42.34Eigen solver should work with a physics-based preconditioner
- 11.42.35The system shall support a physics-based preconditioner with using JFNK
- 11.42.36Eigen solver should work with a physics-based preconditioner with a shell preconditioning matrix
- 11.42.37Eigen solver should work with a physics-based preconditioner with a PETSc shell matrix
- 11.42.38Eigen solver should work with a physics-based preconditioner with including eigen kernels in the preconditioning matrix
- 11.42.39MOOSE shall support an code coupling interface that can trigger external solves.
- 11.42.40MOOSE shall support an code coupling interface that can trigger external solves for transient simulations.
- 11.42.41The system shall support different coordinate systems on different subdomains within the mesh.
- 11.42.42The system shall support the ability to disable the check for PDE operators in all or some parts of the domain.
- 11.42.43The system shall support the ability to disable the check for active materials in all parts of the domain.
- 11.42.44The system shall support the ability to disable the check for the existence of all dependent properties within a domain.
- 11.42.45The system shall have the ability to disable the actual nonlinear system solve in a simulation.
- 11.42.46The system shall have the ability to base convergence on the comparison of individual variables to reference quantities of those variables.
- 11.42.47The system shall fail to find a converged solution when basing convergence on individual variable reference quantities with poor scaling.
- 11.42.48The system shall have the ability to automatically scale a originally poorly scaled problem and achieve convergence based on individual reference quantities
- rdg: Quadrature
- 11.43.1The system shall support the use of Gauss-Lobatto quadrature for numerical integration.
- 11.43.2The system shall support the ability to manually increase the quadrature order used for numerical integration on the entire mesh.
- 11.43.3The system shall support the ability to manually specify the quadrature order used for numerical integration on a per-block basis with face quadrature between blocks preferring the higher-order between the two sides.
- 11.43.4The system shall support the ability for objects to increase quadrature order in code during runtime.
- 11.43.5The system shall support the ability to control the volumetric and side quadrature orders used for numerical integration on the entire mesh.
- 11.43.6The system shall support the ability to allow object code to increase the quadrature order used for numerical integration on a per-block basis.
- rdg: Relationship Managers
- 11.44.1The CouplingFunctorCheckAction shall add a default coupling functor if it's needed and hasn't already been added by another Action
- 11.44.2The system shall be able to indicate when libMesh Ghosting Functors are in use.
- 11.44.3MOOSE shall ghost additional solution information when running in parallel with an active RelationshipManager
- 11.44.4MOOSE shall ghost additional neighboring elements surrounding a partition when running in parallel with DistributedMesh
- 11.44.5MOOSE shall ghost additional neighboring elements surrounding a partition when running in parallel with DistributedMesh with 3D
- 11.44.6The system shall be able to ghost elements for algebraic relationships.
- 11.44.7MOOSE shall ghost additional neighboring elements without also supplying solution information when a developer registers a RelationshipManager with an optional second argument to restrict functionality
- 11.44.8MOOSE shall ghost additional neighboring elements without also supplying solution information when a developer registers a RelationshipManager with an optional second argument to restrict functionality in 3D
- 11.44.9The system shall allow multiple active objectsto manage ghosting for the same object using
- replicated and
- distributed parallelism of the mesh.
- rdg: Reporters
- 11.45.1The system shall be able to accumulate reporter values over time steps into a vector reporter value.
- 11.45.2The system shall have a system for computing and retrieving aggregate values of arbitrary type.
- 11.45.3The system shall error if an invalid name is provided when retrieving aggregate value.
- 11.45.4The system shall report a reasonable error when declaring a Reporter value and
- the parameter that contains the name was not found,
- the parameter that contains the name is not of the correct type,
- a Reporter with the same name has already been declared, and
- a Reporter with the same name but a different type has been requested.
- 11.45.5The system shall support the mixing of computing and retreiving aggregate values of arbitrary types with the Postprocessor and VectorPostprocessor system.
- 11.45.6The system shall be able to produce arbitrary integer, real number, and string scalar/vector values for use in other calculations.
- 11.45.7The system shall throw an error when producing constant reporter values if
- no values are specified,
- no names are specified,
- or the number of values and names are not equal.
- 11.45.8The system shall output aggregate simulation information to JSON format
- when the aggregate value is declared after object construction
- and with other values declared at construction time.
- 11.45.9The system shall support getting a reference to an aggregate calculation before it is created.
- 11.45.10The system shall include the ability to report iteration information:
- that outputs all information be default;
- that outputs specific information;
- automatically disables items based on execution;
- 11.45.11The system shall include the ability to report mesh information:
- that outputs all information be default and
- that outputs specific information.
- rdg: Restart
- 11.46.1The system shall support reading and writing solutions on meshes containing duplicate or overlapping mesh nodes.
- 11.46.2The system shall support the ability to
- perform residual calculations that accumulate state and
- restart the calculation using the accumulated state.
- 11.46.3The system shall support the ability to
- to name problem objects in a simulation and
- restart the calculation using the defined name.
- 11.46.4The system shall error when
- a simulation is started with multiple processors but
- restarted with a different number processors.
- 11.46.5The system shall error when
- a simulation is started with multiple threads but
- restarted with a different number threads.
- 11.46.6The system shall support running a transient test for the purposed of changing a restart time step size.
- 11.46.7The system shall support changing the time step size during a recover operation.
- 11.46.8The system shall produce an error when an attempt is made to serialize a type without a serialization (dataStore) routine when that data is declared as restartable.
- 11.46.9The system shall store a custom type that contains a data serialization routine that is declared as restartable.
- 11.46.10The system shall produce an error when an attempt is made to deserialize a type without a deserialization (dataLoad) routine when that data is declared as restartable during a restart or recover operation.
- 11.46.11The systen shall support running and saving off a transient solution with stateful material properties for a restart test.
- 11.46.12The systen shall support restart with a solution containing only a subset of the variables in the restart simulation.
- 11.46.13The system shall support outputting a mesh from a simulation
- with uniform refinement to ExodusII format,
- start a new simulation that adds additional refinement,
- which can be used in an third simulation.
- 11.46.14The system shall support outputting a mesh to checkpoint format for restart testing.
- 11.46.15The system shall support starting a transient simulation from a steady simulation result.
- 11.46.16The system shall support renaming a variable read from a solution file upon restart.
- 11.46.17The system shall support writing out several timesteps to a solution file to test reading from a specific point.
- 11.46.18The system shall support restarting from the last timestep using the keyword "LATEST".
- 11.46.19The system shall issue a useful error message stating the valid options when a user requests an invalid time step number or keyword.
- 11.46.20The system shall support running and saving off a transient solution for using in a steady state restart.
- 11.46.21The system shall support restarting a steady state solve from a transient simulation solution.
- 11.46.22The system shall support solving a transient problem as a reference solution for a two part multiapp solve.
- 11.46.23The system shall support writing out checkpoint directly from a subapp, a subtree of the multiapp tree of the master solve.
- 11.46.24The system shall support restarting a subapp, a subtree of the multiapp tree of a master solve without restarting the master application.
- 11.46.25The system shall support executing a
- a steady-state problem
- and restarting a transient simulation from the previous solution.
- 11.46.26The system shall support generating checkpoint files for restart testing with sub apps.
- 11.46.27The system shall support restarting a transient simulation from a steady solution file with sub apps.
- 11.46.28The system shall support generating checkpoint files for restart testing with multiple sub apps.
- 11.46.29The system shall support restarting a transient simulation from a steady solution file with multiple sub apps.
- 11.46.30The system shall support generating checkpoint files for transient to transient restart testing with multiple sub apps.
- 11.46.31The system shall support restarting a transient simulation from a pseudo-transient solution file with multiple sub apps.
- 11.46.32The system shall be capable, on a single process, of
- writing data to a restart file
- and restarting the simulation from the restart file.
- 11.46.33The system shall be capable, in parallel, of
- writing data to a restart file
- and restarting the simulation from the restart file.
- 11.46.34The system shall be able to restart a scalar variable in the presence of other variables with the standard sequence of:
- run initial input
- run restart input
- 11.46.35The system shall support outputting a mesh to checkpoint format for restart testing with "start_time".
- 11.46.36The system shall use the the final time as the "start_time" from the restart file.
- 11.46.37The system shall support resetting "start_time" when restarting from a checkpoint mesh format.
- 11.46.38The system shall support overriding "start_time" when restarting from a checkpoint mesh format to an arbitrary time.
- rdg: Restrictable
- 11.47.1The system shall include an interface to allow objects to be restricted to subdomains.
- 11.47.2The system shall error if an object is restricted to a set of subdomains that differs from a dependant object.
- 11.47.3The system shall include an interface that provides a method for returning all associated subdomains:
- as a list of names or
- as a list of ids.
- 11.47.4The system shall include an interface that provides methods for indicating if the supplied subdomain identifier(s) exists on the object:
- if a single subdomain is supplied ant the object is not restricted;
- if a single subdoman is supplied and the object is restricted to a set of subdomains; and
- if multiple boundaries are supplied and the object is restricted to a set of subdomains.
- 11.47.5The system shall include an interface that provides a method for indicating if the supplied material property exists on the same subdomains as the object:
- the method shall return true if the property subdomains match with the object subdomains and
- the method shall return false if the property subdomains dot not match with the object subdomains.
- 11.47.6The system shall include an interface that provides a method for returning all associated boundaries:
- as a list of names or
- as a list of ids.
- 11.47.7The system shall include an interface that provides methods for indicating if the supplied boundary identifier(s) exists on the object:
- if a single boundary is supplied and the object is restricted to a set of boundaries and
- if multiple boundaries are supplied.
- 11.47.8The system shall include an interface that provides a method for indicating if the supplied material property exists on the same boundaries as the object:
- the method shall return true if the property boundaries match with the object boundaries and
- the method shall return false if the property boundaries dot not match with the object boundaries.
- 11.47.9The system shall error if an object restricted to subdomains is created without valid data
- regarding the problem being solved or
- information regarding the finite element mesh.
- 11.47.10The system shall support the ability to restrict user defined calculations to sides of a subdomain.
- 11.47.11The system shall issue an error when a referenced subdomain does not exist in the mesh.
- rdg: Samplers
- 11.48.1The system shall include a random number sampling system that operates in parallel
- with threads,
- MPI, and
- that operates with a row-based iteration scheme.
- 11.48.2The system shall include a random number sampling system that creates replicated and/or distribute sample data that is consistent:
- on a single processor,
- on a two processors,
- on a three processors,
- on a one processor with random numbers,
- on two processor with random numbers, and
- on thre processor with random numbers.
- 11.48.3The system shall include a random number sampling system that errors
- if the number of rows is altered during sample access,
- if the number of columns is altered during sample access,
- if the number of random number generator seeds is set after object construction,
- if the number of rows is set to zero,
- if the number of columns is set to zero,
- if the number of random number generator seeds is set to zero,
- if the number of entries in the global sample matrix exceeds the maximum allowed,
- if the number of entries in the local sample matrix exceeds the maximum allowed, and
- if the number of entries in the local sample matrix row exceeds the maximum allowed.
- 11.48.4The system shall error when the expected size of a sampler is altered and accessed prior to initialization by accessing the
- the global sample matrix;
- the local sample matrix;
- the local sample matrix row;
- the total row count;
- the local row count;
- the first local row index;
- the last local row index;
- the column count.
- 11.48.5The system shall include a random number sampling system
- that distributes samples in parallel and
- demonstrates efficient parallel scaling of memory use.
- rdg: Scalar Kernels
- 11.49.1We shall be able to couple a scalar variable into AD objects and do some meaningful physics: depleting boundary source diffusion problem
- 11.49.2We shall be able to couple a scalar variable into AD objects and get the correct Jacobian
- 11.49.3MOOSE shall be able to correctly compute the Jacobian of an ADScalarKernel using automatic differentiation.
- 11.49.4MOOSE shall provide the ability to compute the time derivative of a scalar variable and have its Jacobian computed using automatic differentiation.
- rdg: Scaling
- 11.50.1The system shall be able to automatically compute scaling factors based on Jacobian
- data solely along the diagonal
- data both on- and off-diagonal
- 11.50.2The system shall be able to automatically scale variables and produce a good condition number from a naturally ill-conditioned system using
- automatic and
- manual prescribed settings.
- 11.50.3The system shall display a very poor condition number for an ill-conditioned system.
- 11.50.4The system shall be able to conduct residual based automatic scaling such that the largest residual vector component corresponding to each variable has magnitude unity
- in a one variable problem
- and in a two variable problem.
- 11.50.5The system shall be able to conduct jacobian based automatic scaling such that the largest jacobian diagonal component corresponding to each variable has magnitude unity
- in a one variable problem
- and in a two variable problem
- 11.50.6The system shall print current variable automatic scaling factors
- rdg: Tag
- 11.52.1The system shall support the ability for a specific calculation to fill a labeled or "tagged"
- numeric vector,
- numeric matrix,
- multiple numeric vectors simultaneously, or
- multiple numeric matrices simultaneously.
- 11.52.2The system shall support filling in labeled or "tagged" vectors or matrices from:
- the scalar kernel system,
- the discontinous Galerkin system,
- integrated boundary conditions,
- the interface kernels system,
- the Dirac kernel system,
- the nodal kernel system, and
- the eigen system.
- 11.52.3Cached Active object state will be maintained correctly even when objects' active state changes during runtime.
- rdg: Time Integrators
- 11.53.1The system shall include an option that aborts the solve immediately if a solve fails.
- 11.53.2The system shall support the use of explicit solvers, including
- first-order, forward Euler,
- with mass lumping, and
- with mass lumping and preconditioning.
- 11.53.3The system shall report an error if an explicit solver fails to converge with
- first-order, forward Euler,
- with mass lumping, and
- with mass lumping and preconditioning.
- 11.53.4The system shall correctly solve a time dependent Laplace equation using an explicit first-order, forward Euler scheme with:
- for a 1D problem using linear Lagrange elements and Dirichlet boundary conditions;
- for a 1D problem using second-order Lagrange elements and Dirichlet boundary conditions;
- for a 1D problem using second-order Lagrange elements and Neumann boundary conditions;
- for a 2D problem using linear Lagrange elements and Dirichlet boundary conditions;
- for a 2D problem using linear Lagrange elements, Dirichlet boundary conditions, and mesh adaptivity;
- for a 2D problem using second-order Lagrange elements and Dirichlet boundary conditions;
- 11.53.5The system shall correctly solve a time dependent ordinary differential equation using an explicit first-order, forward Euler scheme.
- 11.53.6The system shall support the use of the Adams Bashforth predictor for time integration.
- 11.53.7The system shall support the second-order backward difference method for time integration
- with and
- without mesh adaptivity.
- 11.53.8The CentralDifference time integrator shall correctly compute the first and second time derivatives.
- 11.53.9A central differencing time integrator shall correctly compute the second time derivative of an automatic differentiation variable.
- 11.53.10The system shall include explicit time integration using the Heun method and converge at the theoretical rate with
- a full timestep,
- a half timestep, and
- a quarter timestep.
- 11.53.11The system shall include explicit time integration using the Ralston method and converge at the theoretical rate with
- a full timestep,
- a half timestep, and
- a quarter timestep.
- 11.53.12The system shall include explicit time integration using the midpoint method and converge at the theoretical rate with
- a full timestep,
- a half timestep, and
- a quarter timestep.
- 11.53.13The system shall include explicit time integration using the Euler method and converge at the theoretical rate with
- a full timestep,
- a half timestep, and
- a quarter timestep.
- 11.53.14The system shall include implicit time integration using the Midpoint method and converge at the theoretical rate with
- a full timestep,
- a half timestep, and
- a quarter timestep.
- 11.53.15The system shall include implicit time integration using the L-stable DIRK3 method and converge at the theoretical rate with
- a full timestep,
- a half timestep, and
- a quarter timestep.
- 11.53.16The system shall include implicit time integration using the L-stable DIRK4 method and converge at the theoretical rate with
- a full timestep,
- a half timestep, and
- a quarter timestep.
- 11.53.17The system shall include implicit time integration using the A-stable DIRK4 method and converge at the theoretical rate with
- a full timestep,
- a half timestep, and
- a quarter timestep.
- 11.53.18The system shall include implicit time integration using the A-stable DIRK4 method (bootstrapped with L-stable DIRK) and converge at the theoretical rate with
- a full timestep,
- a half timestep, and
- a quarter timestep.
- 11.53.19The system shall support the second-order Crank-Nicolson method for time integration
- with and
- without mesh adaptivity.
- 11.53.20The system shall support the L-stable DIRK method for time integration
- with and
- without mesh adaptivity.
- 11.53.21The system shall support the use of quasi-explicit Euler solver with
- 1D elements with first order shape functions and Dirichlet boundary conditions;
- 1D elements with second order shape functions and Dirichlet boundary conditions;
- 1D elements with second order shape functions and Neumann boundary conditions;
- 2D elements with first order shape functions and Dirichlet boundary conditions;
- 2D elements with second order shape functions and Dirichlet boundary conditions; and
- 2D elements with second order shape functions and Neumann boundary conditions.
- 11.53.22The system shall include the strong-stability-preserving Runge-Kutta method of
- 1st order
- 2nd order
- 3rd order
- 11.53.23The system shall provide an informative error message when a user uses an invalid solve type for an explicit time integrator.
- 11.53.24The system shall support the use of an implicit Euler solver with
- with and
- without mesh adaptivity.
- 11.53.25The system shall support the use of an implicit Euler solver with discontinuous (first-order Monomial) shape functions.
- 11.53.26Multi-stage time integrators shall check convergence for all stages
- 11.53.27The NewmarkBeta time integrator shall correctly compute the first and second time derivatives of a variable using the default beta and gamma parameters.
- 11.53.28The NewmarkBeta time integrator shall correctly compute the first and second time derivatives of a variable using user provided beta and gamma parameters.
- 11.53.29The NewmarkBeta time integrator shall correctly use the inactive_tsteps parameter.
- 11.53.30A Newmark-beta method time integrator shall correctly compute the second time derivative of an automatic differentiation variable using the default beta and gamma parameters.
- 11.53.31The system shall support the use of an explicit midpoint time integration scheme for
- 1D elements with linear finite element shape functions and
- 2D elements with quadratic finite element shape functions.
- 11.53.32The system shall compute the Jacobian during explicit midpoint time integration for
- 1D elements with linear finite element shape functions and
- 2D elements with quadratic finite element shape functions.
- 11.53.33The system shall support th used of Crank-Nicolson time integration method for scalar variables with
- scalar variables within and ordinary differential equations including
- stiff and
- nonlinear systems.
- 11.53.34The system shall support the use of an total variation diminishing Runge-Kutta time integration schemefor
- 1D elements with linear finite element shape functions and
- 2D elements with quadratic finite element shape functions.
- 11.53.35The system shall compute the Jacobian during total variation diminishing Runge-Kutta time integration for
- 1D elements with linear finite element shape functions and
- 2D elements with quadratic finite element shape functions.
- rdg: Time Steppers
- 11.54.1The system shall calculate the time step size based one the number of steps and the end time of the simulation when the initial time step size is not supplied:
- when the start time is not supplied, and
- when the start time is supplied.
- 11.54.2The system shall include a means for performing simulations with a constant time step.
- 11.54.3The system shall support the ability to regrow a time step that has been previously cut due to a solve failure.
- 11.54.4The system shall support how time step size is cut, using user-specified cutback_factor_at_failure, due to a solve failure. Here, the original time step size is specified as a constant value.
- 11.54.5The system shall support how time step size is cut, using user-specified cutback_factor_at_failure, due to a solve failure. Here, the original time step size is specified as a function of time.
- 11.54.6The system shall suppport the ability to sample a piecewise linear function for time step sizes while supporting a minimum time step size.
- 11.54.7The system shall support the ability to sample a piecewise constant function for time step sizes choosing either the left or right values between adjacent constants.
- 11.54.8MOOSE shall support the ability to force time steps consistent with points specified in a function.
- 11.54.9MOOSE shall check that a timestep limiting function has been defined when a user specifies the 'force_step_every_function_point' parameter as true.
- 11.54.10MOOSE shall check that a timestep limiting function has been defined when a user specifies a value for the 'max_function_change' parameter.
- 11.54.11MOOSE shall support the ability to grow the time step size when specifying the initial value of dt in the TimeStepper.
- 11.54.12MOOSE shall support the ability to grow the time step size when specifying the initial value of dt in the TimeStepper after a restart.
- 11.54.13MOOSE shall support the ability to grow the time step size when specifying the values of t and dt in the TimeStepper.
- 11.54.14MOOSE shall support the ability to grow the time step size when specifying the values of t and dt in the TimeStepper after a restart.
- 11.54.15MOOSE shall support the ability to limit the time step size based on the optimal iterations and linear_iteration ratio.
- 11.54.16MOOSE shall support the ability to limit the time step size based on the optimal iterations and linear_iteration ratio after a restart.
- 11.54.17MOOSE shall support the ability to limit the time step size based on a postprocessor value.
- 11.54.18MOOSE shall support the ability to reject a time step based on a threshold value for the ratio of the ideal step size to the limit.
- 11.54.19MOOSE shall support the ability to force time steps to resolve sudden changes in piecewise linear functions.
- 11.54.20MOOSE shall support the ability to force time steps to hit all nodes in a set of piecewise linear functions.
- 11.54.21MOOSE shall support the ability to force time steps to resolve sudden changes in multiple piecewise linear functions.
- 11.54.22The system shall support the ability to select a time step size based upon a scaled log-constant calculation.
- 11.54.23The system shall support the ability to use a scalar value computed after a solve to be used as a scaled time step size.
- 11.54.24The system shall support the ability to select time step sizes based upon the ratio of the real (wall) time of the solve and the size of the time step.
- 11.54.25The system shall support the ability to choose time step sizes based on a sequence of increasing numbers:
- beginning at the default start time,
- beginning at an earlier time than the sequence numbers,
- beginning at a time somewhere in-between existing sequence numbers, and
- when reading the sequence from an ExodusII formatted input file.
- when reading the sequence from a comma-separated input file.
- 11.54.26The system shall support the ability to override time sequence time step sizes when solves fail.
- 11.54.27The system shall support the ability to run a calculation for the purpose of creating a time sequence restart file:
- when writing the checkpoint file,
- when restarting where the time sequence is identical, and
- when restarting where the time sequence is different after the point of the checkpoint.
- 11.54.28The system shall support the ability to run a calculation for the purpose of creating a time sequence restart file suitable for failure:
- when writing the checkpoint file,
- when restarting where the time sequence is different prior to the failure.
- 11.54.29The system shall report an error if the initial time step size is calculated to be zero.
- rdg: Transfers
- 11.55.1The system shall support the transfer of data from a completed solve within sub-application to the master application.
- 11.55.2The system shall include an interface for retrieving objects that pertain to transferring data between applications.
- 11.55.3The system shall support conservative transfers
- 11.55.4The system shall check execute_on for PP in sub app
- 11.55.5The system shall support conservative transfers using regular postprocessors
- 11.55.6The system shall check execute_on for PP in master app
- 11.55.7The system shall support conservative transfers with nearestpoint VectorPostprocessors
- 11.55.8The system shall check execute_on for vector PP in master app
- 11.55.9The system shall be able to output the adjusting values in conservative transfers
- 11.55.10The system shall support conservative transfers in MultiAppUserObjectTransfer
- 11.55.11The system shall be able to output the adjusting values in conservative transfers for MultiAppUserObjectTransfer
- 11.55.12The systen shall allow adjustment if both from and to adjuster are negative.
- 11.55.13The systen shall allow to skip adjustments without throwing an error if from/to adjusters do not satisfy conditions.
- 11.55.14The system shall support direct copy of array variables from a sub-application to the main application.
- 11.55.15The system shall support the transfer of auxiliary field variables between identical meshes:
- from a sub-application and
- to a sub-application.
- 11.55.16The system shall error if a variable, during a direct copy of auxiliary field variables, does not exist
- in the sub-application when transferring form it and
- in the master application when transferring for it.
- 11.55.17The system shall support direct copy of a constant monomial auxiliary variable from a sub-application to a constant monomial nonlinear variable in the main application.
- 11.55.18The system shall support direct copy of a constant monomial auxiliary variable from a the main application to a constant monomial nonlinear variable in the sub-application.
- 11.55.19The system shall error when the MultiAppCopyTransfer object is used on non-identical meshes.
- 11.55.20The system shall error when the MultiAppCopyTransfer object is used on meshes with different variable types.
- 11.55.21The system shall support direct copy of a linear Lagrange nonlinear variable from a sub-application to the main application.
- 11.55.22The system shall support direct copy of a linear Lagrange nonlinear variable to a sub-application from the main application.
- 11.55.23The system shall support direct copy of multiple nonlinear variables from a sub-application to the main application.
- 11.55.24The system shall support direct copy of a second-order Lagrange nonlinear variable from a sub-application to the main application.
- 11.55.25The system shall support direct copy of a second-order Lagrange nonlinear variable to a sub-application from the main application.
- 11.55.26The system shall support the transfer of field variables with solution vectors indicated by tags.
- 11.55.27The system shall support direct copy of a third-order monomial auxiliary variable from a sub-application to a third-order monomial nonlinear variable in the main application.
- 11.55.28The system shall support direct copy of a third-order auxiliary variable from a the main application to a third-order monomial nonlinear variable in the sub-application.
- 11.55.29The system shall support mesh to mesh interpolation with the first order elemental variable
- 11.55.30The system shall support mesh to mesh interpolation with the first order elemental variable when a different mesh is used in sub
- 11.55.31The system shall support nearest node transfer with the first order elemental variable
- 11.55.32The system shall support interpolation transfer with the first order elemental variable
- 11.55.33The system shall support user object transfer with the first order elemental variable
- 11.55.34The system shall support conservative transfer with L2 nonlinear variable
- 11.55.35The system shall allow to interpolate variables from the master app to the sub apps
- 11.55.36The system shall allow to interpolate variables from the sub apps to the master app
- 11.55.37The system shall allow to interpolate block restricted variables from the sub apps to the master app
- 11.55.38The system shall support the transfer of data using the finite element solution function:
- to a sub-application,
- from a sub-application,
- from a deformed mesh to a sub-application,
- from to a sub-application with a deformed mesh,
- from a sub-application with deformed mesh, and
- from a sub-application to a deformed mesh.
- 11.55.39The system shall error if preforming a transfer of data using the finite element solution if:
- the evaluation point does not exist and
- if the execution settings do not match between the master and sub-applications.
- 11.55.40The system shall transfer both nodal and elemental fields to a SubApp from the Master App.
- 11.55.41The system shall transfer both nodal and elemental fields from SubApps to the Master App.
- 11.55.42The system shall transfer values from SubApps which set the displaced_source_mesh flag to true.
- 11.55.43The system shall support the 'fixed_meshes' flag which allows caching of nearest neighbors.
- 11.55.44The system shall transfer values to multiple SubApps from the Master App's boundary.
- 11.55.45The system shall transfer values from a SubApp boundary to the Master App.
- 11.55.46The system shall transfer values to multiple target boundaries in both the Master and Sub App.
- 11.55.47The system shall work when there are multiple SubApps present.
- 11.55.48The system shall work in parallel between meshes with different spatial dimensions.
- 11.55.49The system shall support target boundary transfer when use multiple mpi ranks
- 11.55.50The system shall support source boundary transfer when use multiple mpi ranks
- 11.55.51The system shall support source-and-target boundary transfer when use multiple mpi ranks
- 11.55.52The system shall support the transfer of scalars to a field variable between an application and sub-applications:
- using a inverse distance algorithm,
- if the destination variable is CONSTANT MONOMIAL,
- using a radial basis algorithm,
- with multi-level sub-applications,
- with multiple sub-application files, and
- with a single sub-application file.
- 11.55.53The system shall report an error if a data transfer is requested for a data variable that is not defined.
- 11.55.54The system shall report an error if a variable is specified that is not LINEAR LAGRANGE or CONSTANT MONOMIAL
- 11.55.55The system shall support the transfer of data between a master and sub-applications for scalar unknowns and postprocessing data:
- from the master application to the sub-applications and
- to the master application from the sub-applications.
- 11.55.56The system shall error during the transfer of scalar variable and postprocessor data if the number of sub-applications differs from the order of the scalar variable if
- the order is too large and
- the order is too small.
- 11.55.57The system shall support the transfer of scalar post processing data:
- from the master application to sub-applications and
- to the master application from sub-applications.
- 11.55.58The system shall support the transfer of scalar post processing data from a single sub-application.
- 11.55.59The system shall support the transfer of field data using L2 projection:
- from the master application to sub-applications and
- to the master application from sub-applications.
- 11.55.60The system shall support the transfer of field data using L2 projection for first order shaped monomial shape functions.
- 11.55.61The system shall support the transfer of field data using L2 projection and include optimization for non deforming meshes.
- 11.55.62The system shall include the ability to transfer scalar variables to an applications from sub-applications.
- 11.55.63The system shall error if the variable order does not match when transferring scalar variables to an application from sub-applications.
- 11.55.64The system shall include the ability to transfer scalar variables from an applications to sub-applications.
- 11.55.65The system shall error if the variable order does not match when transferring scalar variables from an application to sub-applications.
- 11.55.66The system shall be able to create virtually translated points during MultiApp transfers.
- 11.55.67The system shall support an interface for transferring user-defined spatial data
- to a master application from sub-applications,
- from a master application to sub-applications,
- from a master application to sub-applications that have a deformed mesh, and
- between a 3D master application and 1D sub-applications.
- 11.55.68The system shall transfer user-defined spatial data into block and boundary restricted nodal variables.
- 11.55.69The system shall transfer user-defined spatial data into block and boundary restricted elemental variables.
- 11.55.70MultiAppUserObjectTransfer shall generate an error if a master node/element is not contained within any sub application domains.
- 11.55.71MultiAppUserObjectTransfer shall allow skipping the bounding box test.
- 11.55.72The system shall include the ability to transfer a field variable sampled at a point to populate a field variable on the sub-application with the supplied value.
- 11.55.73The system shall include the ability to transfer a field variable sampled at a point to post processing variable on the sub-application
- from a linear Lagrange source variable and
- from a constant monomial source variable and
- from a finite volume constant monomial source variable.
- 11.55.74The system shall support the ability to disable the use of parallel barriers when streaming text to the screen.
- 11.55.75The system shall support the ability transfer vectors of post processing data between the master application and sub-applications.
- 11.55.76The system shall support the ability to transfer vectorpostprocessor data
- from the main application to all sub-applications,
- from the main application to a single sub-applications,
- and from a sub-application to the main application.
- 11.55.77The system shall support the ability to transfer integer, real, vector, and string reporter data.
- 11.55.78The system shall support the ability to transfer reporter data and error if an invalid sub-application number is supplied when transferring data
- to a sub-application,
- from a sub-application.
- from multiple sub-applications.
- 11.55.79The system shall support declaring reporter value clone on a main application and transferring sub-application data into it
- in serial and
- in parallel.
- 11.55.80If processors do not contain a sub-application and reporter clone transfer is requested, the system shall
- be able to transfer if reporter types are specified and
- error if types are not specified.
- 11.55.81The system shall support support the ability to perform interpolation between time steps when transferring field data between a master application and sub-applications.
- 11.55.82The Transfer system shall support execution with the EXEC_FINAL flag.
- 11.55.83The system shall support the transfer of data between a master application and sub-applications after a sub-application as been reset.
- rdg: Userobjects
- 11.57.1The system shall be able to terminate the execution of a solve based on post-processing calculations performed within the simulation.
- 11.57.2The system shall be able to terminate abort the current step in a solve based on post-processing calculations performed within the simulation to cut the timestep.
- 11.57.3The terminator system shall be able to output a custom info, warning, or error message.
- 11.57.4The terminator system shall check the compatibility of the suplied parameters.
- 11.57.5The terminator system shall check that a message is supplied if required.
- 11.57.6The system shall support the use of data produced by a custom user object calculations within a kernel object.
- 11.57.7The system shall evaluate the quality of all the mesh elements and report
- a warning when the "warning" option is selected,
- an error when the "error" option is selected, or
- a message when the selected metric does not apply to the element type being examined.
- 11.57.8The framework shall include the ability to change element subdomain during simulation
- reversibly,
- irreversibly,
- with and without a specified boundary,
- with solution
- and stateful material properties properly initialized.
- 11.57.9The framework shall include the ability to change element subdomain for a steady state simulation
- 11.57.10The system shall support overriding the inter-system dependency resolution to allow for developers to decide when specific calculations should be forced into a specific order,
- by forcing a user object to execute before auxiliary kernels
- by forcing a user object to execute after auxiliary kernels
- 11.57.11The system shall support "snapping" or moving new nodes and sides created by mesh adaptivity to the surface of a geometric sphere to capture high fidelity features on curved geometries.
- 11.57.12Testing the implementation of the InterfaceQpValueUserObject. This test also shows the use of InterfaceValueUserObjectAux AuxKernel. InterfaceValueUserObjectAux use interface values computed and stored at each qp from the InterfaceQpValueUserObject and output them into an auxvaraible.Values on the interface are then computed via SideAverageValue PP.By design at the end of the first step we should observe: an average material property of 7, an average material property absolute jump fo 6, a singed material property jump (primary-secondary) of 6 a singed material propertyjump (secondary-primary) of -6 a material property value on the primary side of 10 a material property value on the primary side of 4
- 11.57.13The InterfaceUserObject system shall be able to get updated bulk, boundary and interface material property values.This test uses two specific test materials (e.g. LinearNonLinearIterationMaterial and LinearNonLinearIterationInterfaceMaterial) and one test userobject (e.g. InterfaceUserObjectTestGetMaterialProperty).This test will produce an error if the computed an retrived material property are not the same.
- 11.57.14Testing the implementation of the InterfaceQpValueUserObject when computing the variable rate or increment.
- 11.57.15Testing the implementation of the InterfaceQpMaterialPropertyRealUO.
- 11.57.16The system shall support executing custom algorithms on all internal sides of the mesh where properties retrieved on that side come from:
- the same subdomain, or
- different subdomains.
- 11.57.17MOOSE shall allow taking averages of variables along a coordinate axis in layers
- 11.57.18The system shall be capable of computing layered averages of a variable given bounds.
- 11.57.19The system shall shall error when computing layered averages of a variable if
- the bounding box is set along with the number of layers or
- sample interpolate and
- if neither the bounds or number of layers are set.
- 11.57.20MOOSE shall allow interpolating between layers for layered averages
- 11.57.21MOOSE shall respect mesh displacements in layered average
- 11.57.22The system shall be capable of computing layered averages of a variable
- within a subdomain and
- within a prescribed region in a subdomain.
- 11.57.23MOOSE shall respect block restriction for layered averages even when using num_layers
- 11.57.24MOOSE shall allow bounds for layered averages when using num_layers to come from a block different than the block restriction
- 11.57.25The system shall have the ability to maintain persistent generic user data stored in "layers" that may persist across invocations in the form of file data.
- 11.57.26The system shall include the ability to computes volume integrals of a variable storing partial sums for the specified number of intervals in a direction (x,y,z)
- using 3 layers with
- as a cumulative calculation and
- as an average calculation,
- and using finite volume variables.
- 11.57.27MOOSE shall correctly compute layered integrals along a specified boundary.
- 11.57.28MOOSE shall correctly compute layered integrals of finite volume variables along a specified boundary.
- 11.57.29MOOSE shall allow taking averages of variables along a coordinate axis in layers on a boundary.
- 11.57.30MOOSE shall allow taking averages of the diffusive flux of variables along a coordinate axis in layers on a boundary.
- 11.57.31MOOSE shall allow taking averages of the diffusive flux of finite volume variables along a coordinate axis in layers on a boundary.
- 11.57.32MOOSE shall not allow both the block and boundary parameter to be specified for layered side integrals.
- 11.57.33The system shall support late binding of material properties to other objects so that those objects may be created first, or material property retrieval may be delayed until the system is initialized.
- 11.57.34The system shall compute layered averages that computed from the closest values for a list of points that are explicitly specified in an input file
- 11.57.35The system shall compute layered averages that computed from the closest values for a list of points that are specified in an external file
- 11.57.36The system shall report an error when points are not specified in an input file nor an external file when computing nearest point layered averages
- 11.57.37The system shall report an error when points are specified both in an input file and an external file when computing nearest point layered averages
- 11.57.38The system shall report an error when there is not enough coordinates specified in an external file specifing the point for computing nearest point layered averages
- 11.57.39The system shall compute layered averages for concentric cylindrical rings with equal thickness for a list of points that correspond to the average radius of each ring
- 11.57.40The system shall compute layered integrals that computed from the closest values for a list of points that are specified in an external file
- 11.57.41The system shall compute layered side averages that computed from the closest values for a list of points
- 11.57.42The system shall compute layered side integrals that computed from the closest values for a list of points
- 11.57.43The system shall be able to keep track of a postprocessor value associated with a sub-app at a geometrical location
- 11.57.44MOOSE shall consider that when auxkernel depends on a UO, the exec flag will be taken into consideration to determin when the UO must be executed preaux.
- 11.57.45The system shall execute objects associated with mesh entities corresponding to the number of times those objects appear:
- once for general user objects,
- for each element,
- for each side,
- for each internal side, and
- for each node.
- 11.57.46The system shall support optionally initializing shape function data structures for use in custom algorithm (UserObject) calculations.
- 11.57.47The system shall compute the proper shape functions which can be used to verify Residual and Jacobian calculations
- of a single variable,
- of two coupled variables with explicit off-diagonals requested,
- of two coupled variables with a full Jacobian matrix
- on the side of elements, and
- for a full physics test.
- 11.57.48The system shall error if the boundary is not specified when computing the average value of a variable on a boundary.
- 11.57.49The system shall be capable of writing out a solution file with both continuous and discontinuous fields for the purpose of verifying that ability to read those solutions back into a new simulation.
- 11.57.50The system shall be capable of reading in field information and producing gradient values from both continuous and discontinuous fields.
- 11.57.51The system shall support creating n-thread copies of user-defined objects (GeneralUserObjects) for the purpose of running multiple related calculations simultaneously, avoiding thread locks during common look-up operations, where individual thread ids may be used to calculate a quantity based on the number of threads for:
- one thread,
- two threads,
- three threads,
- four threads,
- five threads,
- six threads,
- seven threads, and
- eight threads.
- 11.57.52The system shall support the ability to toggle mesh adaptivity:
- off when it has been turned on in the input file,
- off when we are using initial adaptivity in the input file,
- off after a specific time, or
- off after some number of steps.
- rdg: Utils
- 11.58.1The system shall support a piecewise bilinear interpolation object to be constructed from x, y data read from an external file.
- 11.58.2The system shall support a piecewise bilinear interpolation object to be constructed from x, y data.
- 11.58.3The system shall error when a file and data are supplied simultaneously in the PiecewiseBilinear object.
- 11.58.4The system shall error when there is a mismatch in vector lengths in the PiecewiseBilinear object.
- 11.58.5The system shall error when there are insufficient parameters supplied for the PiecewiseBilinear object.
- 11.58.6The system shall provide a method for transferring common parameters from one object to another.
- 11.58.7The system shall prevent the user from copying InputParameters objects inside of MooseObject-derived objects.
- 11.58.8Moose shall have a function that evaluates the polynomial and derivative of polyonimal of varying degree and arbitrary coefficients
- 11.58.9Moose shall have a clamp function that returns a value limited to upper and lower bounds
- 11.58.10Moose shall have a smootherstep function that returns a smooth transition value between an upper and lower bound
- 11.58.11The system shall support the use of the Dennis-Schnabel method for computing the finite difference parameter for matrix free finite difference solver.
- 11.58.12The system shall automatically report input errors when a required parameter is not specified.
- 11.58.13The system shall allow for timing sections of code and having automated print-outs when they take too long or use too much memory
- 11.58.14The system shall include a utility for swapping values within a vector of data.
- 11.58.15The system shall include a utility for shuffling values within a vector of data.
- 11.58.16The system shall include a utility for resampling values within a vector of data.
- 11.58.17The system shall include a utility for computing spline functions.
- 11.58.18The system shall include a utility for computing bicubic spline functions
- using the x-component, and
- using the y-component.
- using the z-component,
- rdg: Variables
- 11.59.1MOOSE shall provide an ability to add array variables with constant initial conditions.
- 11.59.2The system shall support direct calculation of field variables on multiple mesh subdomains.
- 11.59.3The system shall support the ability to couple a scalar auxiliary calculation for use in a field auxiliary calculation:
- using current scalar values,
- using previously calculated scalar values (old), and
- using values calculated from two steps back (older).
- 11.59.4The system shall support the ability to use a default value when an optional scalar coupling is requested but not supplied.
- 11.59.5The system shall support the ability to use the initial value of a scalar auxiliary calculation when it is coupled into another object that executes at the beginning of the simulation.
- 11.59.6The system shall support "curvilinear" elements (elements that contain curved edges.
- 11.59.7The system shall support the hierarchical family of shape functions on mesh
- in 1D,
- in 2D, and
- in 3D.
- 11.59.8The system shall produce the correct convergence rate for third-order Hermite shape function discretizations as mesh refinement is performed:
- when using periodic boundary conditions, and
- when using Dirichlet boundary conditions.
- 11.59.9The system shall support the hierarchical family of shape functions on mesh including:
- first-order on 1D elements,
- second-order on 1D elements,
- third-order on 1D elements,
- first-order on 2D elements,
- second-order on 2D elements,
- third-order on 2D elements,
- first-order on 3D elements,
- second-order on 3D elements, and
- third-order on 3D elements.
- 11.59.10The system shall support the constant Monomial family of shape functions on mesh elements:
- in one dimension,
- in two dimensions, and
- in three dimensions.
- 11.59.11The system shall support the direct retrieval of "elemental solution" or "degree of freedom" values without the need to sample the finite element shape function:
- for current solution values,
- for previous solution values (old), and
- for solution values calculated two steps back (older).
- 11.59.12The system shall support second and third order Monomial family of shape functions.
- 11.59.13The system shall support the ability to have mixed field variable orders on the same mesh.
- 11.59.14The system shall support the ability to have multiple independent block restricted variables in a mesh contain multiple blocks.
- 11.59.15Allow optional variable coupling where a default constant value is assumed when the user omits specifying a variable.
- 11.59.16Users are allowed to provide constant numeric values as input to an optionally coupled variable in addition to variable names that overrides the default constant value specified in code.
- 11.59.17Simulations with second derivative variable coupling shall not crash due to access to uninitialized data structures.
- 11.59.18Coupleable shall provide an interface that allows providing default values for a variables that operates
- with defaults or
- a vector of coupled variables.
- 11.59.19The system shall report an error when users couple constant values and variables together
- 11.59.20The system shall report an error when requested default vector value is out of range and
- accessed by name or
- accessed by index.
- 11.59.21The system shall support the ability to couple to a previous field variable calculation to produce another field such that there is no Jacobian contribution due to the lagged coupling.
- 11.59.22The system shall ensure that coupled second derivative calculations are only performed when requested and are only performed on the minimum required fields.
- 11.59.23The system shall compute time derivatives on a neighbor element for constant monomials
- rdg: Vectorpostprocessors
- 11.60.1Line sampling shall account for floating point precision error.
- 11.60.2The system shall be able to produce arbitrary vectors of values for use in other calculations.
- 11.60.3The system shall be able to produce multiple arbitrary vectors of values for use in other calculations.
- 11.60.4The system shall support the ability to read a comma separated file into an object and make it accessible through easy to use standard C++ containers.
- 11.60.5The system shall support the ability to read CSV data on only one processor and broadcast it to other ranks.
- 11.60.6The system shall error if the broadcast CSV data does not match on all ranks in a parallel job.
- 11.60.7The system shall support the ability to read a comma separated file into an object prior to initial setup.
- 11.60.8The system shall issue an error if the CSVReader is used in a UserObjectTransfer because the former does not have any notion of "spatial" information.
- 11.60.9MOOSE shall support the computation of averages of variables over cylindrical shells.
- 11.60.10The system shall support writing a vector of data
- that is completely stored on a single processor or
- distributed across many and
- allows for the creation of symbolic links to the the most recent and final files on each processor.
- 11.60.11The system shall support dynamic numbers of sample points during the simulation.
- 11.60.12The system shall support dynamic numbers of sample points during the simulation with move semantics of the points vector.
- 11.60.13The system shall have the ability to retrieve element integers when visiting elements.
- 11.60.14The system shall have the ability to retrieve element integers when visiting elements only on certain subdomains.
- 11.60.15The system shall have the ability to retrieve element integers of attached elements when visiting sides of a side set.
- 11.60.16The system shall have the ability to retrieve element integers of attached elements on both sides when visiting internal interfaces.
- 11.60.17The system shall have the ability to retrieve element integers of attached elements on both sides when visiting all internal sides.
- 11.60.18The system shall support sampling of a field variable at the centroid of every element in the domain
- for elemental FE variables and
- for FV variables,
- but not for nodal variables.
- 11.60.19The system shall be capable of locating the maximum distances (the element) between two field variables:
- the true maximum involving a simple difference, and
- the absolute maximum involving the difference between absolute values.
- 11.60.20The ElementsAlongLine VectorPostprocessor shall output the IDs of all elements intersected by a line on a 1D mesh
- 11.60.21The ElementsAlongLine VectorPostprocessor shall output the IDs of all elements intersected by a line on a 2D mesh
- 11.60.22The ElementsAlongLine VectorPostprocessor shall output the IDs of all elements intersected by a line on a 3D mesh
- 11.60.23The ElementsAlongPlane VectorPostprocessor shall output the IDs of all elements intersected by a plane on a 1D mesh
- 11.60.24The ElementsAlongPlane VectorPostprocessor shall output the IDs of all elements intersected by a plane on a 2D mesh
- 11.60.25The ElementsAlongPlane VectorPostprocessor shall output the IDs of all elements intersected by a plane on a 3D mesh
- 11.60.26The system shall be able to compute a histogram of each vector of data produced by a vector data producer (VectorPostprocessor).
- 11.60.27The histogram vector postprocessor shall generate an error if the vector postprocessor that it operates on does not have any declared vectors
- 11.60.28The system shall support finding all of the elements intersected by a line:
- in 1D,
- in 2D, and
- in 3D.
- 11.60.29The system shall have late binding producers of vector quantities (VectorPostprocessors) that may be declared after system initialization.
- 11.60.30The LeastSquaresFit vectorpostprocessor shall compute a least squares fit of a first-order polynomial sampled from a solution field using LineValueSampler with shifting and scaling parameters specified
- 11.60.31The LeastSquaresFit vectorpostprocessor shall compute a least squares fit of a zeroth-rder polynomial with data provided by a CSVReader
- 11.60.32The LeastSquaresFit vectorpostprocessor shall compute a least squares fit of a first-rder polynomial with data provided by a CSVReader
- 11.60.33The LeastSquaresFit vectorpostprocessor shall compute a least squares fit of a second-rder polynomial with data provided by a CSVReader
- 11.60.34The LeastSquaresFit vectorpostprocessor shall generate an error if a fit for a third-order polynomial is requested and only three data points are provided
- 11.60.35The system shall support computing the least squares fit of a set of time values obtained from an aggregate operation defined by the developer.
- 11.60.36The system shall support sampling one or more spatial functions along a line with fixed sampling intervals.
- 11.60.37The system shall support the ability to sample a scalar material along an arbitrary line through the mesh domain.
- 11.60.38MOOSE shall allow to sample variables at equally spaced points for outputting.
- 11.60.39MOOSE shall allow to sample variables at equally spaced points in parallel.
- 11.60.40MOOSE shall allow to scale the line value sampler with a postprocessor.
- 11.60.41MOOSE shall allow to sample auxvariables at equally spaced points with CSV delimiter and precision setting.
- 11.60.42The system shall be able to output material properties calculated at quadrature points on user-defined elements in a comma separated format.
- 11.60.43The system shall issue an error if material output samples are attempted for elements:
- but the material is restricted to a boundary, or
- the material is restricted to a block not containing the desired elements.
- 11.60.44The system shall support sampling of a field variable at every node in the domain.
- 11.60.45The system shall issue an error when a nodal sampler is used on a field that does not have values defined at the nodes.
- 11.60.46MOOSE shall provide VectorPostprocessor results to all processors as scattered data
- 11.60.47MOOSE shall provide VectorPostprocessor results to all processors as replicated data
- 11.60.48The system shall support the ability to sample field variables at user specified points.
- 11.60.49The system shall support the ability to sample field FV variables at user specified points.
- 11.60.50The system shall report an error when requested sample points do not fall within the mesh domain.
- 11.60.51The VectorPostprocessor system takes a parameter "contains_complete_history" which guarentees the vector state is left alone between invocations resulting in a single CSV output file.
- 11.60.52The system shall be capable of sampling one or more field variables along a side at each quadrature point along the side.
- 11.60.53The system shall allow outputting relevant information about sidesets
- 11.60.54The system shall be able to query a spatial user object and aggregate the results into a vector postprocessor.
- 11.60.55The system shall support computing the spherical average of a variable as a function of radius throughout the mesh domain.
- 11.60.56The system shall support the ability to output a separate comma separated value file containing time and time time information corresponding to vector Postprocessor output.
- 11.60.57The system shall be able to aggregate an arbitrary set of scalar data producers (Postprocessors) into a single vector of Postprocessors.
- 11.60.58The system shall allow support the creation of histogram or binned data of volume fractions with respect to variable values.
- 11.60.59The system shall have the ability to compute several statistics related to the balance of the mesh partitioning
- on replicated meshes, and
- on distributed meshes.
Usability Requirements
- rdg: Usability
- 11.56.1The system will be operated using a command-line interface that
- reports the available options in non are provided and
- accepts defined command-line flags.
- 11.56.2The system will be operated using
- an input file and
- command-line options.
- 11.56.3The system shall return usage messages when unidentified arguments or incorrectly used arguments are passed.
- 11.56.4The system shall provide diagnostics when the input file fails to parse, or the format is incorrect.
- 11.56.5The system will provide on screen information about the simulation characteristics of the solves under normal operating conditions.
Performance Requirements
- rdg: Performance
- 11.37.1The system shall support the use of multiple processors using
- distributed memory,
- shared memory, and
- both distributed and shared memory.
- 11.37.2The system shall support execution on
- macOS and
- Linux operating systems.
System Requirements
- rdg: System Interfaces
- 11.51.1The system shall support the use of message passing interface (MPI).
- 11.51.2The system shall support the use of shared memory threads using
- 'pthreads' or
- OpenMP.
- 11.51.3The system shall support the use of the following parallel mesh partitioners:
- Chaco,
- ParMETIS,
- Party, and
- PTScotch.
- 11.51.4The system shall support the use of the following solver packages:
- SuperLU,
- MUMPS, and
- SLEPc.
- 11.51.5The system shall support the use of the following C++ libraries:
- Visualization ToolKit (VTK) and
- BOOST.
- 11.51.6The system shall interface operate with the following C++ compilers:
- Clang and
- GCC.
References
- D. F. Griffiths.
The `No Boundary Condition' outflow boundary condition.
International Journal of Numerical Methods in Fluids, 24(4):393–411, 1997.
URL: http://tinyurl.com/y77au2k.[BibTeX]