Alsvinn  0.5.3
The fast FVM simulator with UQ support
PythonInitialData.hpp
Go to the documentation of this file.
1 /* Copyright (c) 2018 ETH Zurich, Kjetil Olsen Lye
2  * This program is free software: you can redistribute it and/or modify
3  * it under the terms of the GNU General Public License as published by
4  * the Free Software Foundation, either version 3 of the License, or
5  * (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program. If not, see <http://www.gnu.org/licenses/>.
14  */
15 
16 #pragma once
20 namespace alsfvm {
21 namespace init {
22 
28 public:
63  PythonInitialData(const std::string& programString,
64  const Parameters& parameters);
65 
66 
78  virtual void setInitialData(volume::Volume& conservedVolume,
79  volume::Volume& primitiveVolume,
80  equation::CellComputer& cellComputer,
81  grid::Grid& grid) override;
82 
83 
85  virtual void setParameters(const Parameters& parameters) override;
86 
87 
91  virtual boost::property_tree::ptree getDescription() const override
92  ;
93 
94 private:
95  Parameters parameters;
96  std::string programString;
97 
98 };
99 } // namespace alsfvm
100 } // namespace init
virtual boost::property_tree::ptree getDescription() const override
Definition: PythonInitialData.cpp:292
Definition: Grid.hpp:27
The CellComputer class defines some useful per cell computations.
Definition: CellComputer.hpp:25
virtual void setParameters(const Parameters &parameters) override
Sets the given parameters.
Definition: PythonInitialData.cpp:283
The Volume class represents a volume (a collection of cells with values for each cell (eg...
Definition: Volume.hpp:30
Definition: Parameters.hpp:27
PythonInitialData(const std::string &programString, const Parameters &parameters)
PythonInitialData constructs the object.
Definition: PythonInitialData.cpp:78
Definition: InitialData.hpp:25
const grid::Grid & grid
Definition: NumericalFluxFactory.cpp:104
virtual void setInitialData(volume::Volume &conservedVolume, volume::Volume &primitiveVolume, equation::CellComputer &cellComputer, grid::Grid &grid) override
setInitialData sets the initial data
Definition: PythonInitialData.cpp:84
Various utility functions to implement the tecno flux.
Definition: types.hpp:30
The PythonInitialData class sets the initial data through a python string.
Definition: PythonInitialData.hpp:27