PRISMS-PF Manual
Loading...
Searching...
No Matches
temporal_discretization.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/parameter_handler.h>
7
10
12
13#include <prismspf/config.h>
14
15#include <cfloat>
16#include <limits>
17
19
24{
29
33 TemporalDiscretization(double _dt,
34 unsigned int _n_increments,
35 double _initial_time = 0.0);
36
40 TemporalDiscretization(double _dt, double _final_time, double _initial_time = 0.0);
41
45 static void
46 declare(dealii::ParameterHandler &parameter_handler,
47 unsigned int n_subsections = Numbers::default_subsections);
48
52 void
53 assign(dealii::ParameterHandler &parameter_handler,
54 unsigned int n_subsections = Numbers::default_subsections) override;
55
59 void
60 validate(const std::vector<FieldAttributes> &field_attributes,
61 const std::vector<SolveBlock> &solve_blocks) const override;
62
63 // Timestep
64 double dt = 1.0;
65
66 // Initial time
67 double initial_time = 0.0;
68
69 // Total number of increments
70 unsigned int n_increments = 0;
71};
72
73PRISMS_PF_END_NAMESPACE
static constexpr unsigned int default_subsections
Max number of subsections.
Definition types.h:33
Definition conditional_ostreams.cc:20
ParameterBase()=default
double dt
Definition temporal_discretization.h:64
double initial_time
Definition temporal_discretization.h:67
void assign(dealii::ParameterHandler &parameter_handler, unsigned int n_subsections=Numbers::default_subsections) override
Assign the parameters from file.
Definition temporal_discretization.cc:92
static void declare(dealii::ParameterHandler &parameter_handler, unsigned int n_subsections=Numbers::default_subsections)
Declare the parameters to be read from file.
Definition temporal_discretization.cc:36
TemporalDiscretization()=default
Constructor.
unsigned int n_increments
Definition temporal_discretization.h:70
void validate(const std::vector< FieldAttributes > &field_attributes, const std::vector< SolveBlock > &solve_blocks) const override
Validate.
Definition temporal_discretization.cc:110