PRISMS-PF Manual
Loading...
Searching...
No Matches
miscellaneous_parameters.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: © 2026 PRISMS Center at the University of Michigan
2// SPDX-License-Identifier: GNU Lesser General Public Version 2.1
3
4#pragma once
5
6#include <deal.II/base/mpi.h>
7#include <deal.II/base/parameter_handler.h>
8
11
13
15
16#include <prismspf/config.h>
17
18#include <mpi.h>
19#include <random>
20
22
23using RNGEngine = std::mt19937;
24
29{
33 static void
34 declare(dealii::ParameterHandler &parameter_handler,
35 unsigned int n_subsections = Numbers::default_subsections);
39 void
40 assign(dealii::ParameterHandler &parameter_handler,
41 unsigned int n_subsections = Numbers::default_subsections) override;
42
46 void
47 validate(const std::vector<FieldAttributes> &field_attributes,
48 const std::vector<SolveBlock> &solve_blocks) const override;
59 void
60 set_random_seed(const unsigned int &_random_seed);
61
62 // Random seed
63 unsigned int random_seed = 2025;
64
65 // RNG
67};
68
69PRISMS_PF_END_NAMESPACE
std::mt19937 RNGEngine
Definition miscellaneous_parameters.h:23
static constexpr unsigned int default_subsections
Max number of subsections.
Definition types.h:33
Definition conditional_ostreams.cc:20
Struct that holds miscellaneous parameters.
Definition miscellaneous_parameters.h:29
static void declare(dealii::ParameterHandler &parameter_handler, unsigned int n_subsections=Numbers::default_subsections)
Declare the parameters to be read from file.
Definition miscellaneous_parameters.cc:11
void assign(dealii::ParameterHandler &parameter_handler, unsigned int n_subsections=Numbers::default_subsections) override
Assign the parameters from file.
Definition miscellaneous_parameters.cc:27
void set_random_seed(const unsigned int &_random_seed)
Set the random seed and initialize the RNG.
Definition miscellaneous_parameters.cc:44
void validate(const std::vector< FieldAttributes > &field_attributes, const std::vector< SolveBlock > &solve_blocks) const override
Validate.
Definition miscellaneous_parameters.cc:38
RNGEngine rng
Definition miscellaneous_parameters.h:66
unsigned int random_seed
Definition miscellaneous_parameters.h:63
ParameterBase()=default