mesh_node.h
Go to the documentation of this file.
1 //
2 // This file is part of the FFEA simulation package
3 //
4 // Copyright (c) by the Theory and Development FFEA teams,
5 // as they appear in the README.md file.
6 //
7 // FFEA is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // FFEA is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with FFEA. If not, see <http://www.gnu.org/licenses/>.
19 //
20 // To help us fund FFEA development, we humbly ask that you cite
21 // the research papers on the package.
22 //
23 
24 /*
25  * mesh_node.hpp
26  *
27  */
28 
29 #ifndef MESH_NODE_H_INCLUDED
30 #define MESH_NODE_H_INCLUDED
31 
32 #include <stddef.h>
33 #include <stdio.h>
34 #include "mat_vec_fns.h"
35 
39 class mesh_node {
40 public:
41 
42  mesh_node();
43  ~mesh_node();
44 
45  void move(int direction, scalar dx);
46 
47  void set_pos(scalar x, scalar y, scalar z);
48 
49  void print();
50 
53 
56 
59 
61 
66 
68  int index;
69 
72 
75 
78 
81 
83  bool linear;
84 
85  void set_linear();
86  bool am_I_linear();
87 };
88 
89 #endif
static const int z
Definition: rod_math_v9.h:54
void print()
Definition: mesh_node.cpp:92
void set_pos(scalar x, scalar y, scalar z)
Definition: mesh_node.cpp:86
bool linear
Definition: mesh_node.h:83
int num_element_contributors
Definition: mesh_node.h:60
~mesh_node()
Definition: mesh_node.cpp:53
scalar stokes_radius
Definition: mesh_node.h:77
static const int y
Definition: rod_math_v9.h:53
static const int x
Definition: rod_math_v9.h:52
vector3 ** force_contributions
Definition: mesh_node.h:65
void set_linear()
Definition: mesh_node.cpp:97
scalar stokes_drag
Definition: mesh_node.h:80
vector3 pos_0
Definition: mesh_node.h:71
bool am_I_linear()
Definition: mesh_node.cpp:101
Definition: mesh_node.h:39
vector3 pos
Definition: mesh_node.h:52
mesh_node()
Definition: mesh_node.cpp:34
int index
Definition: mesh_node.h:68
scalar rho
Definition: mesh_node.h:74
vector3 vel
Definition: mesh_node.h:55
Definition: mat_vec_types.h:90
double scalar
Definition: mat_vec_types.h:36
scalar phi
Definition: mesh_node.h:58
void move(int direction, scalar dx)
Definition: mesh_node.cpp:72