svMultiPhysics
Loading...
Searching...
No Matches
all_fun.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 ALL_FUN_H
5#define ALL_FUN_H
6
7#include "Array3.h"
8#include "SolutionStates.h"
9#include "Array.h"
10#include "Vector.h"
11#include "ComMod.h"
12
13#include "consts.h"
14
15#include <optional>
16#include <string>
17
18namespace all_fun {
19
20 double aspect_ratio(ComMod& com_mod, const int nDim, const int eNoN, const Array<double>& x);
21
22 void commu(const ComMod& com_mod, Vector<double>& u);
23 void commu(const ComMod& com_mod, Array<double>& u);
24
25 int domain(const ComMod& com_mod, const mshType& lM, const int iEq, const int e);
26
27 void find_face(const std::vector<mshType>& mesh_list, const std::string& faceName, int& iM, int& iFa);
28
29 void find_msh(const std::vector<mshType>& mesh_list, const std::string& mesh_name, int& iM);
30
31 Array<double> global(const ComMod& com_mod, const CmMod& cm_mod, const mshType& lM, const Array<double>& U);
32
33 double integ(const ComMod& com_mod, const CmMod& cm_mod, int iM, const Array<double>& s, const SolutionStates& solutions);
34
35 double integ(const ComMod& com_mod, const CmMod& cm_mod, int dId, const Array<double>& s, int l, int u,
36 const SolutionStates& solutions, bool pFlag=false);
37
38 double integ(const ComMod& com_mod, const CmMod& cm_mod, const faceType& lFa, const Vector<double>& s,
39 const SolutionStates& solutions, bool pFlag=false, consts::MechanicalConfigurationType cfg=consts::MechanicalConfigurationType::reference);
40
41 double integ(const ComMod& com_mod, const CmMod& cm_mod, const faceType& lFa, const Array<double>& s,
42 const int l, const SolutionStates& solutions, std::optional<int> uo=std::nullopt, bool THflag=false, consts::MechanicalConfigurationType cfg=consts::MechanicalConfigurationType::reference);
43
44 double integ(const ComMod& com_mod, const CmMod& cm_mod, const faceType& lFa, const Array<double>& s, const SolutionStates& solutions, consts::MechanicalConfigurationType cfg=consts::MechanicalConfigurationType::reference);
45
46 bool is_domain(const ComMod& com_mod, const eqType& eq, const int node, const consts::EquationType phys);
47
48 double jacobian(ComMod& com_mod, const int nDim, const int eNoN, const Array<double>& x, const Array<double>&Nxi);
49
50 Vector<int> local(const ComMod& com_mod, const CmMod& cm_mod, const cmType& cm, Vector<int>& u);
51
52 Array<double> local(const ComMod& com_mod, const CmMod& cm_mod, const cmType& cm, Array<double>& u);
53
54 Array3<double> local(const ComMod& com_mod, const CmMod& cm_mod, const cmType& cm, Array3<double>& u);
55
56 Vector<double> mkc(const ComMod& com_mod, Vector<double>& U);
57 Array<double> mkc(const ComMod& com_mod, Array<double>& U);
58
59 void mkci(const ComMod& com_mod, Vector<double>& U);
60 void mkci(const ComMod& com_mod, Array<double>& U);
61
62 void set_dmn_id(mshType& mesh, const int iDmn, const int ifirst=consts::int_inf, const int ilast=consts::int_inf);
63
64 double skewness(ComMod& com_mod, const int nDim, const int eNoN, const Array<double>& x);
65
66 void split_jobs(int tid, int m, int n, Array<double>& A, Vector<double>& b);
67
68};
69
70#endif
71
The Array3 template class implements a simple interface to 3D arrays.
Definition Array3.h:25
The CmMod class duplicates the data structures in the Fortran CMMOD module defined in COMU....
Definition CmMod.h:35
The ComMod class duplicates the data structures in the Fortran COMMOD module defined in MOD....
Definition ComMod.h:1525
The Vector template class is used for storing int and double data.
Definition Vector.h:24
The cmType class stores data and defines methods used for mpi communication.
Definition CmMod.h:55
Equation type.
Definition ComMod.h:1077
The face type containing mesh at boundary.
Definition ComMod.h:519
This is the container for a mesh or NURBS patch, those specific to NURBS are noted.
Definition ComMod.h:871
Holds solution state at old, current, and intermediate time levels.
Definition SolutionStates.h:39