18 #ifndef OUTPUT_MESH_HH_ 19 #define OUTPUT_MESH_HH_ 34 template<
int,
class Value>
class Field;
53 <<
"' is not scalar in spacedim 3.");
82 std::shared_ptr<MeshData<double>>
nodes_;
86 std::shared_ptr<MeshData<unsigned int>>
offsets_;
120 void create_identical_mesh();
123 void create_refined_mesh();
126 bool refinement_criterion();
141 void create_mesh(std::shared_ptr<OutputMesh> output_mesh);
144 void create_refined_mesh();
147 bool refinement_criterion();
150 #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.
Container for various descendants of FieldCommonBase.
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...
unsigned int n_elements()
Returns number of element.
Mesh * orig_mesh_
Pointer to the computational mesh.
void select_error_control_field(FieldSet &output_fields)
Selects the error control field out of output field set according to input record.
Class template representing a field with values dependent on: point, element, and region...
std::shared_ptr< MeshData< unsigned int > > connectivity_
Vector maps the nodes to their coordinates in vector nodes_.
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.
std::shared_ptr< MeshData< double > > nodes_
Vector of node coordinates. [spacedim x n_nodes].
unsigned int n_nodes()
Returns number of nodes.
DECLARE_EXCEPTION(ExcFieldNotScalar,<< "Field '"<< FieldCommon::EI_Field::qval<< "' is not scalar in spacedim 3.")
virtual ~OutputMeshBase()
Input::Record input_record_
Input record for output mesh.
std::shared_ptr< MeshData< unsigned int > > offsets_
Vector of offsets of node indices of elements. Maps elements to their nodes in connectivity_.
OutputElementIterator end()
Gives iterator to the LAST element of the output mesh.
General iterator template. Provides iterator over objects in some container.
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.
Field< 3, FieldValue< 3 >::Scalar > * error_control_field_
Refinement error control field.
OutputMeshBase(Mesh &mesh)
Constructor. Takes computational mesh as a parameter.