Hermes2D  2.0
Hermes::Hermes2D::Views::Orderizer Class Reference

#include <orderizer.h>

+ Inheritance diagram for Hermes::Hermes2D::Views::Orderizer:

Public Member Functions

template<typename Scalar >
void process_space (const Space< Scalar > *space)
 
template<typename Scalar >
void save_orders_vtk (const Space< Scalar > *space, const char *file_name)
 Saves a MeshFunction (Solution, Filter) in VTK format.
 
template<typename Scalar >
void save_mesh_vtk (const Space< Scalar > *space, const char *file_name)
 
int get_labels (int *&lvert, char **&ltext, double2 *&lbox) const
 
void calc_vertices_aabb (double *min_x, double *max_x, double *min_y, double *max_y) const
 Returns axis aligned bounding box (AABB) of vertices. Assumes lock.
 
int get_num_vertices ()
 
double3 * get_vertices ()
 
void free ()
 
- Public Member Functions inherited from Hermes::Hermes2D::Views::LinearizerBase
void set_max_absolute_value (double max_abs)
 
double get_min_value () const
 
double get_max_value () const
 
void lock_data () const
 
void unlock_data () const
 
int3 * get_triangles ()
 
int * get_triangle_markers ()
 
int get_num_triangles ()
 
int2 * get_edges ()
 
int * get_edge_markers ()
 
int get_num_edges ()
 
virtual bool is_empty ()
 
void free ()
 Frees the instance.
 

Protected Member Functions

void add_triangle (int iv0, int iv1, int iv2, int order, int marker)
 
void add_edge (int iv1, int iv2, int marker)
 
int add_vertex ()
 
void make_vert (int &index, double x, double y, double val)
 
- Protected Member Functions inherited from Hermes::Hermes2D::Views::LinearizerBase
 LinearizerBase (bool auto_max=true)
 
void process_edge (int iv1, int iv2, int marker)
 
void regularize_triangle (int iv0, int iv1, int iv2, int mid0, int mid1, int mid2, int marker)
 
int peek_vertex (int p1, int p2)
 
void add_edge (int iv1, int iv2, int marker)
 
void add_triangle (int iv0, int iv1, int iv2, int marker)
 
int hash (int p1, int p2)
 

Protected Attributes

char buffer [1000]
 
char * labels [11][11]
 
int * tris_orders
 
double3 * verts
 vertices: (x, y, value) triplets
 
int label_size
 
int label_count
 
int cl1
 
int cl2
 
int cl3
 
int * lvert
 
char ** ltext
 
double2 * lbox
 
- Protected Attributes inherited from Hermes::Hermes2D::Views::LinearizerBase
bool empty
 
double max
 
bool auto_max
 
int3 * tris
 triangles: vertex index triplets
 
int * tri_markers
 triangle_markers: triangle markers, ordering equal to tris
 
int2 * edges
 edges: pairs of vertex indices
 
int * edge_markers
 edge_markers: edge markers, ordering equal to edges
 
int * hash_table
 hash table
 
int4 * info
 info[0] = p1, info[1] = p2, info[2] = next vertex in hash
 
int vertex_count
 
int triangle_count
 
int edges_count
 Real numbers of vertices, triangles and edges.
 
int vertex_size
 
int triangle_size
 
int edges_size
 Size of arrays of vertices, triangles and edges.
 
double eps
 
double min_val
 
double max_val
 
int del_slot
 free slot index after a triangle which was deleted
 
pthread_mutex_t data_mutex
 
Hermes::Exceptions::Exception * caughtException
 

Additional Inherited Members

- Static Protected Member Functions inherited from Hermes::Hermes2D::Views::LinearizerBase
static void calc_aabb (double *x, double *y, int stride, int num, double *min_x, double *max_x, double *min_y, double *max_y)
 Calculates AABB from an array of X-axis and Y-axis coordinates. The distance between values in the array is stride bytes.
 

Detailed Description

Like the Linearizer, but generates a triangular mesh showing polynomial orders in a space, hence the funky name.

Definition at line 30 of file orderizer.h.


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