svMultiPhysics
Loading...
Searching...
No Matches
shells.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 SHELLS_H
5#define SHELLS_H
6
7#include "ComMod.h"
8#include "Simulation.h"
9
10namespace shells {
11
12void construct_shell(ComMod& com_mod, const mshType& lM, const Array<double>& Ag,
13 const Array<double>& Yg, const Array<double>& Dg);
14
15void shell_3d(ComMod& com_mod, const mshType& lM, const int g, const int eNoN,
16 const int nFn, const Array<double>& fN, const Array<double>& al, const Array<double>& yl,
17 const Array<double>& dl, const Array<double>& xl, const Array<double>& bfl,
18 Array<double>& lR, Array3<double>& lK);
19
20void shell_bend_cst(ComMod& com_mod, const mshType& lM, const int e, const Vector<int>& ptr,
21 Array<double>& x0, Array<double>& xc, double bb_0[2][2], double bb_x[2][2],
22 Array3<double>& Bb, const bool vflag);
23
24void shell_bf(ComMod& com_mod, const int eNoN, const double w, const Vector<double>& N, const Array<double>& Nx,
25 const Array<double>& dl, const Array<double>& xl, const Array<double>& tfl, Array<double>& lR, Array3<double>& lK);
26
27void shell_cst(ComMod& com_mod, const mshType& lM, const int e, const int eNoN, const int nFn, const Array<double>& fN,
28 const Array<double>& al, const Array<double>& yl, const Array<double>& dl, const Array<double>& xl,
29 const Array<double>& bfl, const Vector<int>& ptr);
30
31void shell_fp(ComMod& com_mod, const int eNoN, const double w, const Vector<double>& N, const Array<double>& Nx,
32 const Array<double>& dl, const Array<double>& xl, const Array<double>& tfl, Array<double>& lR, Array3<double>& lK);
33
34void shl_strs_res(const ComMod& com_mod, const dmnType& lDmn, const int nFn, const Array<double>& fNa0,
35 const double aa_0[2][2], const double aa_x[2][2], const double bb_0[2][2], const double bb_x[2][2],
36 double& lam3, Array<double>& Sm, Array3<double>& Dm);
37
38};
39
40#endif
41
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
The Vector template class is used for storing int and double data.
Definition Vector.h:23
Domain type is to keep track with element belong to which domain and also different physical quantiti...
Definition ComMod.h:422
This is the container for a mesh or NURBS patch, those specific to NURBS are noted.
Definition ComMod.h:863