18 #ifndef OUTPUT_MESH_HH_ 19 #define OUTPUT_MESH_HH_ 148 std::shared_ptr<ElementDataCache<double>>
nodes_;
152 std::shared_ptr<ElementDataCache<unsigned int>>
offsets_;
155 std::shared_ptr<ElementDataCache<unsigned int>>
node_ids_;
157 std::shared_ptr<ElementDataCache<unsigned int>>
elem_ids_;
189 bool refinement_criterion();
222 void refine_aux_element(
const AuxElement& aux_element,
228 bool refinement_criterion(
const AuxElement& ele,
232 bool refinement_criterion_uniform(
const AuxElement& ele);
235 bool refinement_criterion_error(
const AuxElement& ele,
241 #endif // OUTPUT_MESH_HH_ Class represents output mesh with continuous elements.
static const unsigned int spacedim
Shortcut instead of spacedim template. We suppose only spacedim=3 at the moment.
Base class for Output mesh.
GeneralIterator< OutputElement > OutputElementIterator
Represents an element of the output mesh. Provides element access on the data of the output mesh (nod...
std::function< void(const std::vector< Space< spacedim >::Point > &, const ElementAccessor< spacedim > &, std::vector< double > &)> ErrorControlFieldFunc
unsigned int n_elements()
Returns number of element.
Mesh * orig_mesh_
Pointer to the computational mesh.
static const Input::Type::Record & get_input_type()
The specification of output mesh.
const unsigned int max_level_
Maximal level of refinement.
Template GeneralIterator serves as general template for internal iterators.
double refinement_error_tolerance_
Tolerance for error criterion refinement.
std::shared_ptr< ElementDataCache< unsigned int > > connectivity_
Vector maps the nodes to their coordinates in vector nodes_.
std::shared_ptr< ElementDataCache< unsigned int > > node_ids_
Vector gets ids of nodes. Data is used in GMSH output.
std::shared_ptr< ElementDataCache< unsigned int > > offsets_
Vector of offsets of node indices of elements. Maps elements to their nodes in connectivity_.
unsigned int n_nodes()
Returns number of nodes.
std::shared_ptr< ElementDataCache< double > > nodes_
Vector of node coordinates. [spacedim x n_nodes].
Class represents output mesh with discontinuous elements.
ErrorControlFieldFunc error_control_field_func_
Refinement error control field function (hold value_list function of field).
arma::vec::fixed< spacedim > Point
virtual void create_refined_mesh()=0
Creates refined mesh.
Auxiliary structure defining element of refined output mesh.
This class is used for output data to VTK file format.
void set_error_control_field(ErrorControlFieldFunc error_control_field_func)
Selects the error control field computing function of output field set according to input record...
std::shared_ptr< ElementDataCache< unsigned int > > region_ids_
Vector gets ids of regions. Data is used in GMSH output.
virtual ~OutputMeshBase()
virtual void create_sub_mesh()=0
Creates sub mesh containing only local elements.
The class for outputting data during time.
Input::Record input_record_
Input record for output mesh.
OutputElementIterator end()
Gives iterator to the LAST element of the output mesh.
std::shared_ptr< ElementDataCache< int > > partitions_
Vector gets partitions of elements. Data is used in GMSH output.
bool refine_by_error_
True, if output mesh is to be refined by error criterion.
virtual void create_mesh()=0
Creates the output mesh identical to the orig mesh.
MeshType mesh_type_
Type of OutputMesh.
std::vector< Space< spacedim >::Point > nodes
General iterator template. Provides iterator over objects in some container.
void create_id_caches()
Create nodes and elements data caches.
bool is_created()
Check if nodes_, connectivity_ and offsets_ data caches are created.
std::shared_ptr< ElementDataCache< unsigned int > > elem_ids_
Vector gets ids of elements. Data is used in GMSH output.
same as original (computational) mesh
This class is used for output data to VTK file format.
std::shared_ptr< std::vector< unsigned int > > orig_element_indices_
Vector of element indices in the computational mesh. (Important when refining.)
OutputElementIterator begin()
Gives iterator to the FIRST element of the output mesh.
OutputMeshBase(Mesh &mesh)
Constructor. Takes computational mesh as a parameter.