Electromagnetics Requirements Traceability Matrix

This template follows INL template TEM-214, "IT System Requirements Traceability Matrix."

commentnote

This document serves as an addendum to Framework Requirements Traceability Matrix and captures information for RTM specific to the Electromagnetics module.

Introduction

Minimum System Requirements

In general, the following is required for MOOSE-based development:

A POSIX compliant Unix-like operating system. This includes any modern Linux-based operating system (e.g., Ubuntu, Fedora, Rocky, etc.), or a Macintosh machine running either of the last two MacOS releases.

HardwareInformation
CPU Architecturex86_64, ARM (Apple Silicon)
Memory8 GB (16 GBs for debug compilation)
Disk Space30GB

LibrariesVersion / Information
GCC9.0.0 - 12.2.1
LLVM/Clang10.0.1 - 19
Intel (ICC/ICX)Not supported at this time
Python3.10 - 3.13
Python Packagespackaging pyaml jinja2

System Purpose

The MOOSE Electromagnetics module provides an interface to and library containing Maxwell's equations within the MOOSE application ecosystem. It is intended to be used as either a standalone simulation code for electrodynamics or coupled to other MOOSE ecosystem codes (including MOOSE-wrapped applications). Thus, the Electromagnetics module uses the same object-oriented design as MOOSE in order to make simulation design and new development straightforward for engineers and researchers.

System Scope

The scope of the Electromagnetics module is to provide a set of interfaces and objects for building electrodynamics simulations based on the finite element method (FEM). Regarding solvers, meshing libraries, as well as solution/coupling methods and interfaces, the Electromagnetics module relies on the infrastructure provided by the MOOSE framework.

The system contains, generally, a base set of kernels, boundary conditions, and interface conditions designed for the solution of vector fields derived from Maxwell's equations. Further, it currently contains more specific capability in the following general areas:

  • Wave reflection, transmission, and absorption

  • Electrostatic contact on electrically imperfect surfaces

Electromagnetics module developers work with framework and other module and application developers to ensure that the Electromagnetics module provides adequate capability to support on-going and prospective research opportunities involving aspects of electromagnetics.

Assumptions and Dependencies

The Electromagnetics module is developed using MOOSE and can itself be based on various MOOSE modules, as such the RTM for the Electromagnetics module is dependent upon the files listed at the beginning of this document.

Pre-test Instructions/Environment/Setup

Ideally all testing should be performed on a clean test machine following one of the supported configurations setup by the test system engineer. Testing may be performed on local workstations and cluster systems containing supported operating systems.

The repository should be clean prior to building and testing. When using "git" this can be done by doing a force clean in the main repository and each one of the submodules:


git clean -xfd
git submodule foreach 'git clean -xfd'

All tests must pass in accordance with the type of test being performed. This list can be found in the Software Test Plan.

Changelog Issue Revisions

Errors in changelog references can sometimes occur as a result of typos or conversion errors. If any need to be noted by the development team, they will be noted here.

The changelog for all code residing in the MOOSE repository is located in the MOOSE RTM.

System Requirements Traceability

Functional Requirements

  • electromagnetics: Bcs
  • 3.2.1The system shall be able to simulate the field result of an incoming wave reflected on a biased surface and properly absorb the reflected wave in a boundary condition.

    Specification(s): test

    Design: EMRobinBC

    Issue(s): #21098

    Collection(s): FUNCTIONAL

    Type(s): Exodiff

  • 3.2.2The system shall be able to simulate a first order electromagnetic wave launching/absorbing port as a boundary condition, given the incoming/outgoing wave, for real and imaginary components of the field and for vector variables.

    Specification(s): waves

    Design: VectorEMRobinBC

    Issue(s): #21077

    Collection(s): FUNCTIONAL

    Type(s): Exodiff

  • 3.2.3The system shall use the correct jacobian contribution for a first order electromagnetics wave launching/absorbing port boundary condition for vector field variables.

    Specification(s): waves_jacobian_test

    Design: VectorEMRobinBC

    Issue(s): #21077

    Collection(s): FUNCTIONAL

    Type(s): PetscJacobianTester

    Prerequisite(s): 3.2.2

  • 3.2.4The system shall present an error to the user whenever the mode of operation for VectorEMRobinBC is set to absorbing, but incoming wave information is supplied.

    Specification(s): waves_absorbing_error

    Design: VectorEMRobinBC

    Issue(s): #21100

    Collection(s): FUNCTIONALFAILURE_ANALYSIS

    Type(s): RunException

    Prerequisite(s): 3.2.2

  • electromagnetics: Kernels
  • 3.5.1The system shall be capable of modeling the Helmholtz equation for scalar complex field variables, where real/imaginary coupling occurs for both the diffusion and reaction terms and coefficient values vary spatially.

    Specification(s): scalar_complex_helmholtz

    Design: FunctionDiffusionADMatReactionADMatCoupledForce

    Issue(s): #13744

    Collection(s): FUNCTIONAL

    Type(s): Exodiff

  • 3.5.2The system shall be capable of modeling the vector Helmholtz equation for vector fields.

    Specification(s): vector_kernels

    Design: CurlCurlFieldVectorFunctionReaction

    Issue(s): #21078

    Collection(s): FUNCTIONAL

    Type(s): Exodiff

  • 3.5.3The system shall be capable of modeling the vector Helmholtz equation for vector fields with a vector current density source for real and imaginary components.

    Specification(s): vector_current_source

    Design: VectorCurrentSource

    Issue(s): #21080

    Collection(s): FUNCTIONAL

    Type(s): Exodiff

  • 3.5.4The system shall be capable of modeling the vector Helmholtz equation for vector fields using Nedelec elements of the first kind with automatic differentiation.

    Specification(s): ad_vector_kernels

    Design: ADCurlCurlField

    Issue(s): #29868

    Collection(s): FUNCTIONAL

    Type(s): Exodiff

  • 3.5.5The system shall be capable of modeling the vector Helmholtz equation for vector fields using Nedelec elements of the first kind with automatic differentiation and have a perfect Jacobian.

    Specification(s): ad_vector_kernels_jacobian

    Design: ADCurlCurlField

    Issue(s): #29868

    Collection(s): FUNCTIONAL

    Type(s): PetscJacobianTester

  • 3.5.6The system shall be capable of modeling the vector Helmholtz equation for vector fields with supplied AD material properties.

    Specification(s): vector_ADmaterial_wave_reaction

    Design: ADMatWaveReaction

    Issue(s): #28758

    Collection(s): FUNCTIONAL

    Type(s): Exodiff

  • 3.5.7The system shall be able to perform a convergence analysis for modeling the vector Helmholtz equation for vector fields with supplied AD material properties.

    Specification(s): vector_ADmaterial_wave_reaction_csv

    Design: ADMatWaveReaction

    Issue(s): #28758

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.5.8The system shall be capable of modeling the vector Helmholtz equation for vector fields with a current density based on the material conductivity.

    Specification(s): vector_conduction_current

    Design: ADConductionCurrent

    Issue(s): #28758

    Collection(s): FUNCTIONAL

    Type(s): Exodiff

  • 3.5.9The system shall be able to perform a convergence analysis for modeling the vector Helmholtz equation for vector fields with a current density based on the material conductivity.

    Specification(s): vector_conduction_current_convergence_csv

    Design: ADConductionCurrent

    Issue(s): #28758

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.5.10The system shall be capable of modeling the power deposition due to the electric field interactions using the deprecated method.

    Specification(s): deprecated_microwave_heating

    Design: EMJouleHeatingSource

    Issue(s): #28758#30000

    Collection(s): FUNCTIONAL

    Type(s): Exodiff

  • 3.5.11The system shall be able to perform a convergence analysis for modeling the power deposition due to the electric field interactions using the deprecated method.

    Specification(s): deprecated_microwave_heating_convergence_csv

    Design: EMJouleHeatingSource

    Issue(s): #28758#30000

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • electromagnetics: Postprocessors
  • 3.6.1The system shall supply an error if the ReflectionCoefficient object is used on meshes with a dimension larger than one.

    Specification(s): dim_error

    Design: ReflectionCoefficient

    Issue(s): #13744

    Collection(s): FUNCTIONALFAILURE_ANALYSIS

    Type(s): RunException

Usability Requirements

No requirements of this type exist for this application, beyond those of its dependencies.

Performance Requirements

No requirements of this type exist for this application, beyond those of its dependencies.

System Interface Requirements

No requirements of this type exist for this application, beyond those of its dependencies.

References

No citations exist within this document.