svMultiPhysics
Loading...
Searching...
No Matches
nn.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 NN_H
5#define NN_H
6
7#include "Simulation.h"
8#include "ComMod.h"
9#include "consts.h"
10
11namespace nn {
12
13 void get_gip(const int insd, consts::ElementType eType, const int nG, Vector<double>& w, Array<double>& xi);
14 void get_gip(Simulation* simulation, faceType& face);
15 void get_gip(mshType& mesh);
16
17 void get_gnn(const int insd, consts::ElementType eType, const int eNoN, const int g, Array<double>& xi,
18 Array<double>& N, Array3<double>& Nx);
19 void get_gnn(const int insd, consts::ElementType eType, const int eNoN, Vector<double>& xi, Vector<double>& N,
20 Array<double>& Nx);
21
22 void get_gnn(Simulation* simulation, int gaus_pt, faceType& face);
23 void get_gnn(int gaus_pt, mshType& mesh);
24 void get_gn_nxx(const int insd, const int ind2, consts::ElementType eType, const int eNoN, const int gaus_pt,
25 const Array<double>& xi, Array3<double>& Nxx);
26
27 void get_nn_bnds(const int nsd, consts::ElementType eType, const int eNoN, Array<double>& xib, Array<double>& Nb);
28 void get_nn_bnds(const ComMod& com_mod, mshType& mesh);
29
30 void get_nnx(const int nsd, const consts::ElementType eType, const int eNoN, const Array<double>& xl,
31 const Array<double>& xib, const Array<double>& Nb, const Vector<double>& xp, Vector<double>& xi,
32 Vector<double>& N, Array<double>& Nx);
33
34 void get_xi(const int nsd, consts::ElementType eType, const int eNoN, const Array<double>& xl, const Vector<double>& xp,
35 Vector<double>& xi, bool& flag);
36
37 void gnn(const int eNoN, const int nsd, const int insd, Array<double>& Nxi, Array<double>& x, Array<double>& Nx,
38 double& Jac, Array<double>& ks);
39
40 void gnnb(const ComMod& com_mod, const faceType& lFa, const int e, const int g, const int nsd, const int insd,
41 const int eNoNb, const Array<double>& Nx, Vector<double>& n, consts::MechanicalConfigurationType cfg=consts::MechanicalConfigurationType::reference);
42
43 void gnns(const int nsd, const int eNoN, const Array<double>& Nxi, Array<double>& xl, Vector<double>& nV,
44 Array<double>& gCov, Array<double>& gCnv);
45
46 void gn_nxx(const int l, const int eNoN, const int nsd, const int insd, Array<double>& Nxi, Array<double>& Nxi2, Array<double>& lx,
47 Array<double>& Nx, Array<double>& Nxx);
48
49 void select_ele(const ComMod& com_mod, mshType& mesh);
50
51 void select_eleb(Simulation* simulation, mshType& mesh, faceType& face);
52
53};
54
55#endif
56
The Array3 template class implements a simple interface to 3D arrays.
Definition Array3.h:25
The ComMod class duplicates the data structures in the Fortran COMMOD module defined in MOD....
Definition ComMod.h:1514
Definition Simulation.h:14
The Vector template class is used for storing int and double data.
Definition Vector.h:23
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