Stochastic Tools Requirement Traceability Matrix

Introduction

The Requirement Traceability Matrix (RTM) for Stochastic Tools captures all requirements and maps each to the associated design documentation and associated test case.

Dependencies

The Stochastic Tools application is developed using MOOSE and is based on various modules, as such the RTM for Stochastic Tools is dependent upon the following documents.

Requirements

The following is a complete list for all the functional requirements including links to the design documents and test cases for Stochastic Tools.

Functional Requirements

  • stochastic_tools: Ics
  • 3.2.1The system shall generate parallel agnostic random initial conditions using a distribution function.

    Specification(s): generate

    Design: RandomIC

    Issue(s): #5567#11901#9710

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.2.2The system shall generate an error the random initial condition is used with both a distribution and min or max value defined.

    Specification(s): test_err_distribution_and_min_max

    Design: RandomIC

    Issue(s): #5567#11901#9710

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

    Prerequisite(s): 3.2.1

  • stochastic_tools: Transfers
  • 3.7.1The system shall include the ability to modify parameters for sub-applications using values from a distribution
    1. on a single processor,
    2. on multiple processors,
    3. and on more processors than samples.

    Specification(s): normal/n1, normal/n2, normal/n3

    Design: SamplerParameterTransfer

    Issue(s): #8863

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.7.2The system shall include the ability to modify parameters for sub-applications executed in batches using values from a distribution
    1. on a single processor,
    2. on multiple processors, and
    3. on multiple processors using in-memory sub-application restore.

    Specification(s): batch/n1, batch/n2, batch/n2_restore

    Design: SamplerParameterTransfer

    Issue(s): #8863

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

    Prerequisite(s): 3.7.1

  • 3.7.3The system shall include the ability to transfer stochastic results for two sub apps.

    Specification(s): batch_two_subapps

    Design: SamplerParameterTransfer

    Issue(s): #17079

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.7.4The 'StochasticToolsTransfer object shall error if the 'execute_on' parameter is defined when the corresponding MultiApp object is running in batch mode.

    Specification(s): StochasticToolsTransfer_execute_on_error

    Design: SamplerParameterTransfer

    Issue(s): #8863

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.5The 'StochasticToolsTransfer' object shall error if the 'execute_on' parameter does not match the corresponding MultiApp object is running in normal mode.

    Specification(s): StochasticToolsTransfer_execute_on_check

    Design: SamplerParameterTransfer

    Issue(s): #8863

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.6The system shall produce an error if sub-application type is not correct for performing a transfer of stochastic data.

    Specification(s): multiapp_type

    Design: SamplerParameterTransfer

    Issue(s): #11363

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.7The system shall produce an error if the sampler sub-application does not contain control object with the correct name.

    Specification(s): control_missing

    Design: SamplerTransientMultiApp

    Issue(s): #11363

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.8The system produce an error if the sampler sub-application does not have a correct object for receiving stochastic data.

    Specification(s): wrong_control

    Design: SamplerTransientMultiApp

    Issue(s): #11363

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.9The system shall produce an error if supplied vector of real values is not sized correctly.

    Specification(s): num_pararameters_wrong

    Design: SamplerParameterTransfer

    Issue(s): #11363

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.10The system shall support the creation of a sub-application for each row of the stochastic data.

    Specification(s): monte_carlo

    Design: MonteCarloSamplerParameterTransfer

    Issue(s): #8863

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.7.11The system shall produce an error if neither a 'SamplerTransientMultiApp' nor SamplerFullSolveMultiApp is provided in SamplerPostprocessorTransfer.

    Specification(s): wrong_multi_app

    Design: StochasticResults

    Issue(s): #9419

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.12The system shall produce an error if the 'result' object in 'SamplerPostprocessorTransfer' is not a 'StochasticResults object'.

    Specification(s): require_stochastic_results

    Design: StochasticResults

    Issue(s): #9419

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.13The system shall support the ability to transfer a single value from each sub-application for a set of stochastic data.

    Specification(s): sobol_from_multiapp

    Design: SamplerPostprocessorTransfer

    Issue(s): #8065

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.7.14The system shall error if the supplied name is invalid when attempting to transfer a single value from a sub-application.

    Specification(s): invalid_sub_pp_name

    Design: SamplerPostprocessorTransfer

    Issue(s): #8065

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.15When sub-application solve does not converge, the system shall either
    1. abort run,
    2. transfer last computed postprocessor value,
    3. or transfer NaN.

    Specification(s): solve_not_converge/abort, solve_not_converge/last_computed, solve_not_converge/nan

    Design: SamplerPostprocessorTransfer

    Issue(s): #8065

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunExceptionCheckFilesCSVDiff

  • 3.7.16The system shall support the ability to transfer reporter data from each sub-application for a set of stochastic data
    1. in normal mode,
    2. in batch mode,
    3. with distributed output,
    4. with more processors than samples,
    5. and error if transferring unsupported type.

    Specification(s): transfer/normal, transfer/batch, transfer/distributed, transfer/more_cpus, transfer/invalid_type

    Design: SamplerReporterTransfer

    Issue(s): #16166

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): JSONDiffRunException

  • 3.7.17MOOSE shall produce an error if neither a 'SamplerTransientMultiApp' nor SamplerFullSolveMultiApp is provided in SamplerParameterTransfer.

    Specification(s): multiapp_type

    Design: SamplerParameterTransfer

    Issue(s): #11363

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.18MOOSE shall produce an error if the sampler sub-application does not contain a Control object with the name 'stochastic'.

    Specification(s): control_missing

    Design: SamplerTransientMultiApp

    Issue(s): #11363

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.19MOOSE shall produce an error if the sampler sub-application does not have a correct Control object with 'to_control' parameter being 'SamplerReceiver' type.

    Specification(s): wrong_control

    Design: SamplerTransientMultiApp

    Issue(s): #11363

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.20MOOSE shall produce an error if supplied vector of real values is not sized correctly.

    Specification(s): num_pararameters_wrong

    Design: SamplerParameterTransfer

    Issue(s): #11363

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.21MOOSE shall produce an error if sampling method differs between the sub-application and the associated sub-application data transfer.

    Specification(s): sampler_mismatch

    Design: SamplerParameterTransfer

    Issue(s): #11363

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.22The system shall be capable of transferring scalar data to sub-applications for each row of the stochastic data
    1. using a Monte Carlo and
    2. Sobol sampling scheme.

    Specification(s): transfer/monte_carlo, transfer/sobol

    Design: SamplerParameterTransfer

    Issue(s): #8065

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.7.23The system shall be capable of transferring vector data to sub-applications for each row of the stochastic data.

    Specification(s): monte_carlo

    Design: SamplerParameterTransfer

    Issue(s): #8065

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.7.24The system shall error if the transferred vector to a sub-application
    1. is not sized correctly for stochastic data,
    2. is not sized uniformily across sub-applications,
    3. if the vector parameter does not exist, and
    4. if the sub-application does not consume all of the supplied data.

    Specification(s): errors/not_enough_data, errors/size_mismatch, errors/invalid_name, errors/extra_data

    Design: SamplerParameterTransfer

    Issue(s): #8065

    Collection(s): FAILURE_ANALYSISFUNCTIONAL

    Type(s): RunException

  • 3.7.25The system shall support the creation of a sub-application for each row sampled data generated from a Sobol scheme.

    Specification(s): sobol

    Design: SobolSamplerParameterTransfer

    Issue(s): #8863

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • stochastic_tools: Vectorpostprocessors
  • 3.8.9The system shall support the collection of stochastic data from multiple sub-applications.

    Specification(s): multiple

    Design: StochasticResults

    Issue(s): #14414

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.8.10The system shall support the ability to compute first, second, and total-effect Sobol sensitivity indices.

    Specification(s): sobol

    Design: SobolStatistics

    Issue(s): #14784

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.8.13The system shall support the collection of stochastic data that is
    1. replicated on all processors and
    2. distributed across many.

    Specification(s): parallel_type/replicated, parallel_type/distributed

    Design: StochasticResults

    Issue(s): #14410

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.8.14The system shall support the labeling of collection of stochastic data
    1. with custom prefix and
    2. without a prefix.

    Specification(s): prefix/custom, prefix/none

    Design: StochasticResults

    Issue(s): #14410

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

  • 3.8.15The system shall support the collection of stochastic data that
    1. can be appended into a single data set or
    2. or contain a single file per timestep.

    Specification(s): data/complete, data/time

    Design: StochasticResults

    Issue(s): #14412

    Collection(s): FUNCTIONAL

    Type(s): CSVDiff

Usability Requirements

Performance Requirements

System Requirements