Hermes2D  2.0
Hermes::Hermes2D::VonMisesFilter Class Reference

Calculates the Von Mises stress. More...

#include <filter.h>

+ Inheritance diagram for Hermes::Hermes2D::VonMisesFilter:

Public Member Functions

 VonMisesFilter (Hermes::vector< MeshFunction< double > * > solutions, double lambda, double mu, int cyl=0, int item1=H2D_FN_VAL, int item2=H2D_FN_VAL)
 
 VonMisesFilter (MeshFunction< double > **solutions, int num, double lambda, double mu, int cyl=0, int item1=H2D_FN_VAL, int item2=H2D_FN_VAL)
 
virtual Func< double > * get_pt_value (double x, double y)
 Returns the value at the coordinates x,y.
 
virtual MeshFunction< double > * clone () const
 
- Public Member Functions inherited from Hermes::Hermes2D::Filter< double >
 Filter (const Hermes::vector< MeshFunction< double > * > &solutions)
 
 Filter (MeshFunction< double > **solutions, int num)
 
 Filter (const Hermes::vector< Solution< double > * > &solutions)
 
virtual void reinit ()
 
std::string getClassName () const
 State querying helpers.
 
- Public Member Functions inherited from Hermes::Hermes2D::MeshFunction< double >
 MeshFunction (const Mesh *mesh)
 
virtual bool isOkay () const
 State querying helpers.
 
std::string getClassName () const
 Get class name, for the purpose of messaging.
 
const Meshget_mesh () const
 
RefMapget_refmap (bool update=true)
 
void set_refmap (RefMap *refmap_to_set)
 
virtual int get_edge_fn_order (int edge)
 
virtual void handle_overflow_idx ()
 
- Public Member Functions inherited from Hermes::Hermes2D::Function< double >
 Function ()
 Default constructor.
 
virtual ~Function ()
 
int get_num_components () const
 Returns the number of components of the function being represented by the class.
 
double * get_fn_values (int component=0)
 Returns function values. More...
 
double * get_dx_values (int component=0)
 Returns the x partial derivative. More...
 
double * get_dy_values (int component=0)
 Returns the y partial derivative. More...
 
void get_dx_dy_values (double *&dx, double *&dy, int component=0)
 Returns both x and y partial derivatives. This function provides the both often-used dx and dy values in one call. More...
 
double * get_dxx_values (int component=0)
 Returns the second x partial derivative. More...
 
double * get_dyy_values (int component=0)
 Returns the second y partial derivative. More...
 
double * get_dxy_values (int component=0)
 Returns the second mixed derivative. More...
 
Quad2Dget_quad_2d () const
 Returns the current quadrature points.
 
void set_quad_order (unsigned int order, int mask=H2D_FN_DEFAULT)
 
double * get_values (int a, int b)
 
int get_fn_order () const
 Returns the polynomial degree of the function being represented by the class.
 
- Public Member Functions inherited from Hermes::Hermes2D::Transformable
Elementget_active_element () const
 
void set_transform (uint64_t idx)
 
uint64_t get_transform () const
 
- Public Member Functions inherited from Hermes::Hermes2D::Mixins::StateQueryable
void check () const
 Method to handle the state.
 

Protected Member Functions

virtual void precalculate (int order, int mask)
 precalculates the current function at the current integration points.
 
- Protected Member Functions inherited from Hermes::Hermes2D::Filter< double >
void init (const Hermes::vector< MeshFunction< double > * > &solutions)
 
virtual void init ()
 
virtual void set_quad_2d (Quad2D *quad_2d)
 Selects the quadrature points in which the function will be evaluated. More...
 
virtual void set_active_element (Element *e)
 
virtual void free ()
 Frees all precalculated tables.
 
virtual void push_transform (int son)
 See Transformable::push_transform.
 
virtual void pop_transform ()
 
void copy_base (Filter *flt)
 
virtual void setDeleteSolutions ()
 
- Protected Member Functions inherited from Hermes::Hermes2D::MeshFunction< double >
void force_transform (MeshFunction< double > *mf)
 
void force_transform (uint64_t sub_idx, Trf *ctm)
 
void update_refmap ()
 
- Protected Member Functions inherited from Hermes::Hermes2D::Function< double >
virtual int get_edge_fn_order (int edge) const
 Returns the polynomial degree of the function at given edge. To be overridden in derived classes. More...
 
void update_nodes_ptr ()
 
void force_transform (uint64_t sub_idx, Trf *ctm)
 For internal use only.
 
Nodenew_node (int mask, int num_points)
 allocates a new Node structure
 
void replace_cur_node (Node *node)
 
- Protected Member Functions inherited from Hermes::Hermes2D::Transformable
void reset_transform ()
 Empties the stack, loads identity transform.
 
double get_transform_jacobian () const
 
Trfget_ctm () const
 
unsigned int get_depth () const
 

Protected Attributes

double lambda
 
double mu
 
int cyl
 
int item1
 
int item2
 
- Protected Attributes inherited from Hermes::Hermes2D::Filter< double >
int num
 
MeshFunction< double > * sln [H2D_MAX_COMPONENTS]
 
uint64_t sln_sub [H2D_MAX_COMPONENTS]
 
std::map< uint64_t, LightArray
< struct Filter< double >
::Node * > * > 
tables [H2D_MAX_QUADRATURES]
 
bool unimesh
 
UniData ** unidata
 
bool deleteSolutions
 
- Protected Attributes inherited from Hermes::Hermes2D::MeshFunction< double >
ElementMode2D mode
 
const Meshmesh
 
RefMaprefmap
 
- Protected Attributes inherited from Hermes::Hermes2D::Function< double >
int order
 current function polynomial order
 
int num_components
 number of vector components
 
std::map< uint64_t, LightArray
< Node * > * > * 
sub_tables
 Table of Node tables, for each possible transformation there can be a different Node table.
 
LightArray< Node * > * nodes
 Table of nodes.
 
Nodecur_node
 Current Node.
 
LightArray< Node * > * overflow_nodes
 Nodes for the overflow sub-element transformation.
 
Quad2Dquads [8]
 list of available quadratures
 
int cur_quad
 active quadrature (index into 'quads')
 
int total_mem
 total memory in bytes used by the tables
 
int max_mem
 peak memory usage
 
- Protected Attributes inherited from Hermes::Hermes2D::Transformable
Elementelement
 The active element.
 
Trfctm
 Current sub-element transformation matrix.
 
uint64_t sub_idx
 Sub-element transformation index.
 
Trf stack [21]
 Transformation matrix stack.
 
unsigned int top
 Stack top.
 

Additional Inherited Members

- Static Protected Member Functions inherited from Hermes::Hermes2D::Function< double >
static void check_params (int component, Node *cur_node, int num_components)
 
static void check_table (int component, Node *cur_node, int n, const char *msg)
 
- Static Protected Attributes inherited from Hermes::Hermes2D::Function< double >
static int idx2mask [6][2]
 index to mask table
 

Detailed Description

Calculates the Von Mises stress.

VonMisesFilter is a postprocessing filter for visualizing elastic stresses in a body. It calculates the stress tensor and applies the Von Mises equivalent stress formula to obtain the resulting stress measure.

Definition at line 393 of file filter.h.

Constructor & Destructor Documentation

Hermes::Hermes2D::VonMisesFilter::VonMisesFilter ( Hermes::vector< MeshFunction< double > * >  solutions,
double  lambda,
double  mu,
int  cyl = 0,
int  item1 = H2D_FN_VAL,
int  item2 = H2D_FN_VAL 
)
Todo:
cylindrical coordinates

Definition at line 1101 of file filter.cpp.


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