svMultiPhysics
Loading...
Searching...
No Matches
read_files.h
1// SPDX-FileCopyrightText: Copyright (c) Stanford University, The Regents of the University of California, and others.
2// SPDX-License-Identifier: BSD-3-Clause
3
4#ifndef READ_FILES_H
5#define READ_FILES_H
6
7#include "Simulation.h"
8
9#include <string>
10
11/// @brief Define some types used to pass data to functions.
12///
13/// \todo [TODO:DaveP] maxOutput=5 is is defined in consts but in the Fortran READEQ
14/// subroutine is defined as maxOutput=22.
15//
16namespace read_files_ns {
17
18 const int maxOutput = 22;
19 using EquationNdop = std::array<int, 4>;
20 using EquationOutputs = std::array<consts::OutputNameType, maxOutput>;
21 using EquationPhys = std::vector<consts::EquationType>;
22 using EquationProps = std::array<std::array<consts::PhysicalProperyType, consts::maxNProp>, 20>;
23
24 void face_match(ComMod& com_mod, faceType& lFa, faceType& gFa, Vector<int>& ptr);
25
26 void read_bc(Simulation* simulation, EquationParameters* eq_params, eqType& lEq, BoundaryConditionParameters* bc_params, bcType& lBc);
27
28 void read_bct(ComMod& com_mod, MBType& lMB, faceType& lFa, const std::string& fName);
29
30 void read_bf(ComMod& com_mod, BodyForceParameters* bf_params, bfType& lBf);
31
32 void read_cplbc_initialization_file(const std::string& file_name, cplBCType& cplBC);
33
34 void read_domain(Simulation* simulation, EquationParameters* eq_params, eqType& lEq, EquationProps& propL, EquationPhys = {});
35
36 void read_eq(Simulation* simulation, EquationParameters* params, eqType& eq);
37
38 void read_files(Simulation* simulation, const std::string& file_name);
39
40 void read_fourier_coeff_values_file(const std::string& file_name, bcType& lBc);
41 void read_fourier_coeff_values_file(const std::string& file_name, bfType& lBf);
42
43 void read_ls(Simulation* simulation, EquationParameters* eq_params, consts::SolverType solver_type, eqType& lEq);
44
45 void read_mat_model(Simulation* simulation, EquationParameters* eq_params, DomainParameters* domain_params, dmnType& lDmn);
46
47 void read_outputs(Simulation* simulation, EquationParameters* eq_params, eqType& lEq, EquationNdop& nDOP, EquationOutputs& outPuts);
48
49 void read_rmsh(Simulation* simulation, EquationParameters* eq_param);
50
51 void read_spatial_values(const ComMod& com_mod, const mshType& msh, const faceType& lFa, const std::string& file_name, bcType& lBc);
52
53 void read_temporal_values(const std::string& file_name, bcType& lBc);
54 void read_temporal_values(const std::string& file_name, bfType& lBf);
55
56 void read_temp_spat_values(const ComMod& com_mod, const mshType& msh, const faceType& lFa,
57 const std::string& file_name, bcType& lBc);
58 void read_temp_spat_values(const ComMod& com_mod, const mshType& msh, const std::string& file_name, bfType& lBf);
59
60 void read_trac_bcff(ComMod& com_mod, MBType& lMB, faceType& lFa, const std::string& file_name);
61
62 void read_fluid_visc_model(Simulation* simulation, EquationParameters* eq_params, DomainParameters* domain_params, dmnType& lDmn);
63
64 void read_solid_visc_model(Simulation* simulation, EquationParameters* eq_params, DomainParameters* domain_params, dmnType& lDmn);
65
66 void read_wall_props_ff(ComMod& com_mod, const std::string& file_path, const int iM, const int iFa);
67
68 void set_cmm_bdry(mshType& lM, Vector<int>& bNds);
69
70 void set_equation_properties(Simulation* simulation, EquationParameters* eq_params, eqType& lEq, EquationProps& propL,
71 EquationOutputs& outPuts, EquationNdop& nDOP);
72
73
74};
75
76#endif
77
Body force over a mesh using the "Add_BF" command.
Definition Parameters.h:687
The BoundaryConditionParameters stores paramaters for various type of boundary conditions under the A...
Definition Parameters.h:743
The ComMod class duplicates the data structures in the Fortran COMMOD module defined in MOD....
Definition ComMod.h:1514
The DomainParameters class stores parameters for the XML 'Domain' element to specify properties for s...
Definition Parameters.h:1145
The EquationParameters class stores parameters for the 'Add_equation' XML element used to specify an ...
Definition Parameters.h:1290
Moving boundary data structure (used for general BC)
Definition ComMod.h:82
Definition Simulation.h:14
The Vector template class is used for storing int and double data.
Definition Vector.h:23
Boundary condition data type.
Definition ComMod.h:126
Definition ComMod.h:281
For coupled 0D-3D problems.
Definition ComMod.h:805
Domain type is to keep track with element belong to which domain and also different physical quantiti...
Definition ComMod.h:422
Equation type.
Definition ComMod.h:1069
The face type containing mesh at boundary.
Definition ComMod.h:511
This is the container for a mesh or NURBS patch, those specific to NURBS are noted.
Definition ComMod.h:863
Define some types used to pass data to functions.
Definition read_files.cpp:27
void face_match(ComMod &com_mod, faceType &lFa, faceType &gFa, Vector< int > &ptr)
Match two faces?
Definition read_files.cpp:38