mesh_node Class Reference

#include <mesh_node.h>

Public Member Functions

 mesh_node ()
 
 ~mesh_node ()
 
void move (int direction, scalar dx)
 
void set_pos (scalar x, scalar y, scalar z)
 
void print ()
 
void set_linear ()
 
bool am_I_linear ()
 

Data Fields

vector3 pos
 
vector3 vel
 
scalar phi
 
int num_element_contributors
 
vector3 ** force_contributions
 
int index
 
vector3 pos_0
 
scalar rho
 
scalar stokes_radius
 
scalar stokes_drag
 
bool linear
 

Detailed Description

Structure for a mesh_node: the points FEM meshes are built from.

Constructor & Destructor Documentation

◆ mesh_node()

mesh_node::mesh_node ( )

◆ ~mesh_node()

mesh_node::~mesh_node ( )

Member Function Documentation

◆ am_I_linear()

bool mesh_node::am_I_linear ( )

◆ move()

void mesh_node::move ( int  direction,
scalar  dx 
)

◆ print()

void mesh_node::print ( )

◆ set_linear()

void mesh_node::set_linear ( )

Referenced by Blob::load_topology().

◆ set_pos()

void mesh_node::set_pos ( scalar  x,
scalar  y,
scalar  z 
)

Field Documentation

◆ force_contributions

vector3** mesh_node::force_contributions

An array of pointers to contributions to the total force on this node. There should be one contribution from each element this node is a part of (so the length will be num_element_contributors).

Referenced by Blob::aggregate_forces_and_solve(), Blob::calculate_node_element_connectivity(), mesh_node(), and ~mesh_node().

◆ index

◆ linear

bool mesh_node::linear

Stores whether or not this node is linear (as the order is surface - interior, not linear - secondary)

Referenced by am_I_linear(), mesh_node(), set_linear(), and ~mesh_node().

◆ num_element_contributors

int mesh_node::num_element_contributors

◆ phi

◆ pos

vector3 mesh_node::pos

Position of node

Referenced by Blob::apply_ctforces(), Face::barycentric_calc_point(), Face::barycentric_calc_point_f2(), BEM_Poisson_Boltzmann::build_BEM_matrices(), Blob::build_linear_node_rp_diffusion_matrix(), Face::build_opposite_node(), Face::calc_area_normal_centroid(), Blob::calc_centroid(), tetra_element_linear::calc_centroid(), SecondOrderFunctions::calc_jacobian_column_coefficients(), tetra_element_linear::calculate_jacobian(), Face::checkTetraIntersection(), Face::checkTetraIntersectionAndGetVolume(), Blob::compress_blob(), PreComp_solver::compute_bead_positions(), ffea_test::connection_energy_3(), ffea_test::connection_test(), Blob::copy_node_positions(), Blob::create_viewer_node_file(), Blob::euler_integrate(), Face::get_area(), rod::Rod_blob_interface::get_attachment_node(), rod::Rod_blob_interface::get_attachment_node_pos(), Face::get_centroid(), Blob::get_centroid(), Blob::get_CoM(), rod::Rod_blob_interface::get_element_id(), rod::get_jacobian(), Blob::get_min_max(), Blob::get_node(), rod::Rod_blob_interface::get_node_energy(), Face::getTetraIntersectionVolume(), Face::getTetraIntersectionVolumeAndArea(), Face::getTetraIntersectionVolumeTotalGradientAndShapeFunctions(), ffea_test::identify_face(), PreComp_solver::init(), ffea_test::jacobian_rotate(), Face::length_of_longest_edge(), tetra_element_linear::length_of_longest_edge(), tetra_element_linear::linearise_element(), Blob::load_nodes(), Blob::make_measurements(), mesh_node(), move(), Blob::move(), Blob::position(), Blob::pre_print(), print(), Blob::print_node_positions(), Face::print_nodes(), Blob::read_nodes_from_file(), Blob::rotate(), rod::rotate_tet(), rod::Rod_blob_interface::set_edge_vecs(), Blob::set_node_positions(), set_pos(), Blob::set_pos_0(), rod::Rod_blob_interface::set_tet(), Blob::translate_linear(), Face::vec3Vec3SubsToArr3Mod(), tetra_element_linear::volume_coord_to_xyz(), Blob::write_nodes_to_file(), and ~mesh_node().

◆ pos_0

◆ rho

scalar mesh_node::rho

Charge density on this node

Referenced by tetra_element_linear::calculate_electrostatic_forces(), and Blob::init().

◆ stokes_drag

scalar mesh_node::stokes_drag

◆ stokes_radius

scalar mesh_node::stokes_radius

◆ vel


The documentation for this class was generated from the following files: