![]() |
|
Simple 2D triangular mesh for TElements. More...
#include <simple_rectangular_tri_mesh.template.h>
Inheritance diagram for oomph::SimpleRectangularTriMesh< ELEMENT >:Public Member Functions | |
| SimpleRectangularTriMesh (const unsigned &n_x, const unsigned &n_y, const double &l_x, const double &l_y, TimeStepper *time_stepper_pt=&Mesh::Default_TimeStepper) | |
| const unsigned & | nx () const |
| Access function for number of elements in x directions. More... | |
| const unsigned & | ny () const |
| Access function for number of elements in y directions. More... | |
Public Member Functions inherited from oomph::TriangleMeshBase | |
| TriangleMeshBase () | |
| Constructor. More... | |
| TriangleMeshBase (const TriangleMeshBase &node)=delete | |
| Broken copy constructor. More... | |
| virtual | ~TriangleMeshBase () |
| Broken assignment operator. More... | |
| void | setup_boundary_element_info () |
| void | setup_boundary_element_info (std::ostream &outfile) |
| virtual void | load_balance (const Vector< unsigned > &target_domain_for_local_non_halo_element) |
| Virtual function to perform the load balance rutines. More... | |
| virtual void | reset_boundary_element_info (Vector< unsigned > &ntmp_boundary_elements, Vector< Vector< unsigned >> &ntmp_boundary_elements_in_region, Vector< FiniteElement * > &deleted_elements) |
| Virtual function to perform the reset boundary elements info rutines. More... | |
Public Member Functions inherited from oomph::UnstructuredTwoDMeshGeometryBase | |
| UnstructuredTwoDMeshGeometryBase () | |
| Empty constructor. More... | |
| UnstructuredTwoDMeshGeometryBase (const UnstructuredTwoDMeshGeometryBase &dummy)=delete | |
| Broken copy constructor. More... | |
| void | operator= (const UnstructuredTwoDMeshGeometryBase &)=delete |
| Broken assignment operator. More... | |
| ~UnstructuredTwoDMeshGeometryBase () | |
| Empty destructor. More... | |
| unsigned | nregion () |
| Return the number of regions specified by attributes. More... | |
| unsigned | nregion_element (const unsigned &i) |
| Return the number of elements in the i-th region. More... | |
| FiniteElement * | region_element_pt (const unsigned &i, const unsigned &e) |
| Return the e-th element in the i-th region. More... | |
| unsigned | nregion_attribute () |
| Return the number of attributes used in the mesh. More... | |
| double | region_attribute (const unsigned &i) |
| Return the attribute associated with region i. More... | |
| GeomObject * | boundary_geom_object_pt (const unsigned &b) |
| std::map< unsigned, GeomObject * > & | boundary_geom_object_pt () |
| Return direct access to the geometric object storage. More... | |
| std::map< unsigned, Vector< double > > & | boundary_coordinate_limits () |
| Vector< double > & | boundary_coordinate_limits (const unsigned &b) |
| unsigned | nboundary_element_in_region (const unsigned &b, const unsigned &r) const |
| Return the number of elements adjacent to boundary b in region r. More... | |
| FiniteElement * | boundary_element_in_region_pt (const unsigned &b, const unsigned &r, const unsigned &e) const |
| Return pointer to the e-th element adjacent to boundary b in region r. More... | |
| int | face_index_at_boundary_in_region (const unsigned &b, const unsigned &r, const unsigned &e) const |
| Return face index of the e-th element adjacent to boundary b in region r. More... | |
| TriangleMeshPolyLine * | boundary_polyline_pt (const unsigned &b) |
| std::map< unsigned, std::set< Node * > > & | nodes_on_boundary_pt () |
| const bool | get_connected_vertex_number_on_destination_polyline (TriangleMeshPolyLine *dst_polyline_pt, Vector< double > &vertex_coordinates, unsigned &vertex_number) |
| void | check_contiguousness_on_polylines_helper (Vector< TriangleMeshPolyLine * > &polylines_pt, unsigned &index) |
| void | check_contiguousness_on_polylines_helper (Vector< TriangleMeshPolyLine * > &polylines_pt, unsigned &index_halo_start, unsigned &index_halo_end) |
| bool | is_point_inside_polygon_helper (Vector< Vector< double >> polygon_vertices, Vector< double > point) |
| Helper function that checks if a given point is inside a polygon. More... | |
| void | enable_automatic_creation_of_vertices_on_boundaries () |
| void | disable_automatic_creation_of_vertices_on_boundaries () |
| bool | is_automatic_creation_of_vertices_on_boundaries_allowed () |
| template<class ELEMENT > | |
| void | setup_boundary_coordinates (const unsigned &b) |
| template<class ELEMENT > | |
| void | setup_boundary_coordinates (const unsigned &b, std::ofstream &outfile) |
Public Member Functions inherited from oomph::Mesh | |
| Mesh () | |
| Default constructor. More... | |
| Mesh (const Vector< Mesh * > &sub_mesh_pt) | |
| void | merge_meshes (const Vector< Mesh * > &sub_mesh_pt) |
| template<class BULK_ELEMENT > | |
| void | doc_boundary_coordinates (const unsigned &b, std::ofstream &the_file) |
| virtual void | scale_mesh (const double &factor) |
| Mesh (const Mesh &dummy)=delete | |
| Broken copy constructor. More... | |
| void | operator= (const Mesh &)=delete |
| Broken assignment operator. More... | |
| virtual | ~Mesh () |
| Virtual Destructor to clean up all memory. More... | |
| void | flush_element_and_node_storage () |
| void | flush_element_storage () |
| void | flush_node_storage () |
| Node *& | node_pt (const unsigned long &n) |
| Return pointer to global node n. More... | |
| Node * | node_pt (const unsigned long &n) const |
| Return pointer to global node n (const version) More... | |
| GeneralisedElement *& | element_pt (const unsigned long &e) |
| Return pointer to element e. More... | |
| GeneralisedElement * | element_pt (const unsigned long &e) const |
| Return pointer to element e (const version) More... | |
| const Vector< GeneralisedElement * > & | element_pt () const |
| Return reference to the Vector of elements. More... | |
| Vector< GeneralisedElement * > & | element_pt () |
| Return reference to the Vector of elements. More... | |
| FiniteElement * | finite_element_pt (const unsigned &e) const |
| Node *& | boundary_node_pt (const unsigned &b, const unsigned &n) |
| Return pointer to node n on boundary b. More... | |
| Node * | boundary_node_pt (const unsigned &b, const unsigned &n) const |
| Return pointer to node n on boundary b. More... | |
| void | set_nboundary (const unsigned &nbound) |
| Set the number of boundaries in the mesh. More... | |
| void | remove_boundary_nodes () |
| Clear all pointers to boundary nodes. More... | |
| void | remove_boundary_nodes (const unsigned &b) |
| void | remove_boundary_node (const unsigned &b, Node *const &node_pt) |
| Remove a node from the boundary b. More... | |
| void | add_boundary_node (const unsigned &b, Node *const &node_pt) |
| Add a (pointer to) a node to the b-th boundary. More... | |
| void | copy_boundary_node_data_from_nodes () |
| bool | boundary_coordinate_exists (const unsigned &i) const |
| Indicate whether the i-th boundary has an intrinsic coordinate. More... | |
| unsigned long | nelement () const |
| Return number of elements in the mesh. More... | |
| unsigned long | nnode () const |
| Return number of nodes in the mesh. More... | |
| unsigned | ndof_types () const |
| Return number of dof types in mesh. More... | |
| unsigned | elemental_dimension () const |
| Return number of elemental dimension in mesh. More... | |
| unsigned | nodal_dimension () const |
| Return number of nodal dimension in mesh. More... | |
| void | add_node_pt (Node *const &node_pt) |
| Add a (pointer to a) node to the mesh. More... | |
| void | add_element_pt (GeneralisedElement *const &element_pt) |
| Add a (pointer to) an element to the mesh. More... | |
| virtual void | node_update (const bool &update_all_solid_nodes=false) |
| virtual void | reorder_nodes (const bool &use_old_ordering=true) |
| virtual void | get_node_reordering (Vector< Node * > &reordering, const bool &use_old_ordering=true) const |
| template<class BULK_ELEMENT , template< class > class FACE_ELEMENT> | |
| void | build_face_mesh (const unsigned &b, Mesh *const &face_mesh_pt) |
| unsigned | self_test () |
| Self-test: Check elements and nodes. Return 0 for OK. More... | |
| void | max_and_min_element_size (double &max_size, double &min_size) |
| double | total_size () |
| void | check_inverted_elements (bool &mesh_has_inverted_elements, std::ofstream &inverted_element_file) |
| void | check_inverted_elements (bool &mesh_has_inverted_elements) |
| unsigned | check_for_repeated_nodes (const double &epsilon=1.0e-12) |
| Vector< Node * > | prune_dead_nodes () |
| unsigned | nboundary () const |
| Return number of boundaries. More... | |
| unsigned long | nboundary_node (const unsigned &ibound) const |
| Return number of nodes on a particular boundary. More... | |
| FiniteElement * | boundary_element_pt (const unsigned &b, const unsigned &e) const |
| Return pointer to e-th finite element on boundary b. More... | |
| Node * | get_some_non_boundary_node () const |
| unsigned | nboundary_element (const unsigned &b) const |
| Return number of finite elements that are adjacent to boundary b. More... | |
| int | face_index_at_boundary (const unsigned &b, const unsigned &e) const |
| virtual void | dump (std::ofstream &dump_file, const bool &use_old_ordering=true) const |
| Dump the data in the mesh into a file for restart. More... | |
| void | dump (const std::string &dump_file_name, const bool &use_old_ordering=true) const |
| Dump the data in the mesh into a file for restart. More... | |
| virtual void | read (std::ifstream &restart_file) |
| Read solution from restart file. More... | |
| void | output_paraview (std::ofstream &file_out, const unsigned &nplot) const |
| void | output_fct_paraview (std::ofstream &file_out, const unsigned &nplot, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt) const |
| void | output_fct_paraview (std::ofstream &file_out, const unsigned &nplot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt) const |
| void | output (std::ostream &outfile) |
| Output for all elements. More... | |
| void | output (std::ostream &outfile, const unsigned &n_plot) |
| Output at f(n_plot) points in each element. More... | |
| void | output (FILE *file_pt) |
| Output for all elements (C-style output) More... | |
| void | output (FILE *file_pt, const unsigned &nplot) |
| Output at f(n_plot) points in each element (C-style output) More... | |
| void | output (const std::string &output_filename) |
| Output for all elements. More... | |
| void | output (const std::string &output_filename, const unsigned &n_plot) |
| Output at f(n_plot) points in each element. More... | |
| void | output_fct (std::ostream &outfile, const unsigned &n_plot, FiniteElement::SteadyExactSolutionFctPt) |
| Output a given Vector function at f(n_plot) points in each element. More... | |
| void | output_fct (std::ostream &outfile, const unsigned &n_plot, const double &time, FiniteElement::UnsteadyExactSolutionFctPt) |
| void | output_boundaries (std::ostream &outfile) |
| Output the nodes on the boundaries (into separate tecplot zones) More... | |
| void | output_boundaries (const std::string &output_filename) |
| void | assign_initial_values_impulsive () |
| Assign initial values for an impulsive start. More... | |
| void | shift_time_values () |
| void | calculate_predictions () |
| void | set_nodal_and_elemental_time_stepper (TimeStepper *const &time_stepper_pt, const bool &preserve_existing_data) |
| virtual void | set_mesh_level_time_stepper (TimeStepper *const &time_stepper_pt, const bool &preserve_existing_data) |
| void | set_consistent_pinned_values_for_continuation (ContinuationStorageScheme *const &continuation_stepper_pt) |
| Set consistent values for pinned data in continuation. More... | |
| bool | does_pointer_correspond_to_mesh_data (double *const ¶meter_pt) |
| Does the double pointer correspond to any mesh data. More... | |
| void | set_nodal_time_stepper (TimeStepper *const &time_stepper_pt, const bool &preserve_existing_data) |
| Set the timestepper associated with the nodal data in the mesh. More... | |
| void | set_elemental_internal_time_stepper (TimeStepper *const &time_stepper_pt, const bool &preserve_existing_data) |
| virtual void | compute_norm (double &norm) |
| virtual void | compute_norm (Vector< double > &norm) |
| virtual void | compute_error (std::ostream &outfile, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm) |
| virtual void | compute_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm) |
| virtual void | compute_error (FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, double &error, double &norm) |
| virtual void | compute_error (FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, Vector< double > &error, Vector< double > &norm) |
| virtual void | compute_error (std::ostream &outfile, FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, Vector< double > &error, Vector< double > &norm) |
| virtual void | compute_error (std::ostream &outfile, FiniteElement::SteadyExactSolutionFctPt exact_soln_pt, Vector< double > &error, Vector< double > &norm) |
| virtual void | compute_error (FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, double &error, double &norm) |
| Returns the norm of the error and that of the exact solution. More... | |
| virtual void | compute_error (FiniteElement::UnsteadyExactSolutionFctPt exact_soln_pt, const double &time, Vector< double > &error, Vector< double > &norm) |
| bool | is_mesh_distributed () const |
| Boolean to indicate if Mesh has been distributed. More... | |
| OomphCommunicator * | communicator_pt () const |
| void | delete_all_external_storage () |
| Wipe the storage for all externally-based elements. More... | |
Private Attributes | |
| unsigned | Nx |
| Number of elements in x direction. More... | |
| unsigned | Ny |
| Number of elements in y directions. More... | |
| double | Lx |
| Length of mesh in x-direction. More... | |
| double | Ly |
| Length of mesh in y-direction. More... | |
Simple 2D triangular mesh for TElements.
| oomph::SimpleRectangularTriMesh< ELEMENT >::SimpleRectangularTriMesh | ( | const unsigned & | n_x, |
| const unsigned & | n_y, | ||
| const double & | l_x, | ||
| const double & | l_y, | ||
| TimeStepper * | time_stepper_pt = &Mesh::Default_TimeStepper |
||
| ) |
Constructor n_x : number of elements in the x direction; n_y : number of elements in the y direction; l_x : length in the x direction l_y : length in the y direction Ordering of elements: 'lower left' to 'lower right' then 'upwards'
Constructor for simple 2D triangular mesh class:
n_x : number of elements in the x direction
n_y : number of elements in the y direction
l_x : length in the x direction
l_y : length in the y direction
Ordering of elements: 'lower left' to 'lower right' then 'upwards'
References oomph::Mesh::add_boundary_node(), oomph::FiniteElement::construct_node(), oomph::Mesh::convert_to_boundary_node(), oomph::Mesh::Element_pt, oomph::Mesh::finite_element_pt(), i, j, oomph::SimpleRectangularTriMesh< ELEMENT >::Lx, oomph::SimpleRectangularTriMesh< ELEMENT >::Ly, oomph::FiniteElement::nnode_1d(), oomph::FiniteElement::node_pt(), oomph::Mesh::Node_pt, oomph::SimpleRectangularTriMesh< ELEMENT >::Nx, oomph::SimpleRectangularTriMesh< ELEMENT >::Ny, OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION, and oomph::Mesh::set_nboundary().
|
inline |
Access function for number of elements in x directions.
References oomph::SimpleRectangularTriMesh< ELEMENT >::Nx.
|
inline |
Access function for number of elements in y directions.
References oomph::SimpleRectangularTriMesh< ELEMENT >::Ny.
|
private |
Length of mesh in x-direction.
Referenced by oomph::SimpleRectangularTriMesh< ELEMENT >::SimpleRectangularTriMesh().
|
private |
Length of mesh in y-direction.
Referenced by oomph::SimpleRectangularTriMesh< ELEMENT >::SimpleRectangularTriMesh().
|
private |
Number of elements in x direction.
Referenced by oomph::SimpleRectangularTriMesh< ELEMENT >::nx(), and oomph::SimpleRectangularTriMesh< ELEMENT >::SimpleRectangularTriMesh().
|
private |
Number of elements in y directions.
Referenced by oomph::SimpleRectangularTriMesh< ELEMENT >::ny(), and oomph::SimpleRectangularTriMesh< ELEMENT >::SimpleRectangularTriMesh().