hp2D::BaseQuadGraphics< F > Class Template Referenceabstract

Base class for handling graphics for 2D hp quadrilateral FEM elements. More...

#include <baseQuadGraphics.hh>

Inheritance diagram for hp2D::BaseQuadGraphics< F >:
concepts::ElementGraphics< F > hp2D::l2::QuadGraphics< F > hp2D::QuadGraphics< F > hp2Dedge::QuadGraphics< F >

Public Member Functions

 BaseQuadGraphics ()
 Constructor. More...
 
virtual void operator() (const concepts::Element< F > &elm, enum concepts::ElementGraphicsBase::graphicsType type, concepts::CellPostprocess< F > &post) const
 
virtual void operator() (const Element< F > &elm, enum graphicsType type, CellPostprocess< F > &post) const =0
 Writes necessary data to a file for graphics. More...
 
void setValue (const concepts::ElementFunction< Cmplx, F > *value)
 
void setValue (const concepts::ElementFunction< Real, F > *value)
 Gives the appropiate element function. More...
 
 ~BaseQuadGraphics ()
 

Protected Member Functions

virtual std::ostream & info (std::ostream &os) const
 

Private Member Functions

bool countDenseMatrix_ (const BaseQuad< F > &quad, graphics::MatrixCounterCell *bdc) const
 Count the number of nodes, edges and quads in the mesh. More...
 
bool handleDenseMatrix_ (const BaseQuad< F > &quad, concepts::CellPostprocess< F > &post) const
 Handle and casts different CellPostProcesses to Cell post processes that store quad informations in matrices. More...
 
void value_ (const concepts::ElementFunction< Cmplx, F > *&fun) const
 
void value_ (const concepts::ElementFunction< Real, F > *&fun) const
 Returns a pointer to the appropiate element function of the value. More...
 
template<class G >
bool writeDenseMatrix_ (const BaseQuad< F > &quad, graphics::MatrixBaseElementFormulaCell< G, F > *bdc) const
 Writes values from an ElementFormula on the quadrature points of the quad into an ElementMatrix. More...
 
template<class G >
bool writeDenseMatrix_ (const BaseQuad< F > &quad, graphics::MatrixSolutionEvaluationCell< G, F > *bdc) const
 Writes values from a FEM Solution on the quadrature points of the quad into an ElementMatrix. More...
 
bool writeDenseMatrix_ (const BaseQuad< F > &quad, graphics::MatrixSpaceOutputCell< F > *bdc) const
 Writes geometric informations, attributes and quadrature weights of the quad into an ElementMatrix. More...
 
void writeGnuplot_ (const BaseQuad< F > &quad, concepts::CellPostprocess< F > &post) const
 Gnuplot output of data. More...
 
void writeMatlab_ (const BaseQuad< F > &quad, concepts::CellPostprocess< F > &post) const
 Matlab output, calls the right method dependent from cell post process. More...
 
template<typename G >
bool writeMatlab_ (const BaseQuad< F > &quad, graphics::BaseDataCell< G, F > *stream) const
 Matlab output of FEM solution. More...
 
template<typename G >
bool writeMatlab_ (const BaseQuad< F > &quad, graphics::BaseElementFormulaCell< G, F > *stream) const
 Matlab output of an element formula. More...
 
void writeTecplot_ (const BaseQuad< F > &quad, concepts::CellPostprocess< F > &post) const
 Tecplot output, calls the right method dependent from cell post process. More...
 
template<typename G >
bool writeTecplot_ (const BaseQuad< F > &quad, graphics::BaseDataCell< G, F > *stream) const
 Tecplot output of FEM solution. More...
 
template<typename G >
bool writeTecplot_ (const BaseQuad< F > &quad, graphics::BaseElementFormulaCell< G, F > *stream) const
 Tecplot output of an element formula. More...
 

Private Attributes

concepts::Real2d p_
 Local coordinates in [0,1]^2 (intermediate data) More...
 
const concepts::ElementFunction< Cmplx, F > * valueC_
 Complex element function of the value itself. More...
 
const concepts::ElementFunction< Real, F > * valueR_
 Real element function of the value itself. More...
 
concepts::Real2d x_
 Actual coordinates (intermediate data) More...
 

Detailed Description

template<class F>
class hp2D::BaseQuadGraphics< F >

Base class for handling graphics for 2D hp quadrilateral FEM elements.

Author
Kersten Schmidt, 2005

Definition at line 32 of file baseQuadGraphics.hh.

Constructor & Destructor Documentation

◆ BaseQuadGraphics()

template<class F >
hp2D::BaseQuadGraphics< F >::BaseQuadGraphics ( )

Constructor.

◆ ~BaseQuadGraphics()

template<class F >
hp2D::BaseQuadGraphics< F >::~BaseQuadGraphics ( )

Member Function Documentation

◆ countDenseMatrix_()

template<class F >
bool hp2D::BaseQuadGraphics< F >::countDenseMatrix_ ( const BaseQuad< F > &  quad,
graphics::MatrixCounterCell bdc 
) const
private

Count the number of nodes, edges and quads in the mesh.

◆ handleDenseMatrix_()

template<class F >
bool hp2D::BaseQuadGraphics< F >::handleDenseMatrix_ ( const BaseQuad< F > &  quad,
concepts::CellPostprocess< F > &  post 
) const
private

Handle and casts different CellPostProcesses to Cell post processes that store quad informations in matrices.

◆ info()

template<class F >
virtual std::ostream& hp2D::BaseQuadGraphics< F >::info ( std::ostream &  os) const
protectedvirtual

◆ operator()() [1/2]

template<class F >
virtual void hp2D::BaseQuadGraphics< F >::operator() ( const concepts::Element< F > &  elm,
enum concepts::ElementGraphicsBase::graphicsType  type,
concepts::CellPostprocess< F > &  post 
) const
virtual

◆ operator()() [2/2]

template<typename F = int>
virtual void concepts::ElementGraphics< F >::operator() ( const Element< F > &  elm,
enum graphicsType  type,
CellPostprocess< F > &  post 
) const
pure virtualinherited

Writes necessary data to a file for graphics.

This method is called by the application operator of the object which should create the graphics file. Such an object is a specialization of CellPostprocess. It is best if an element returns an object of this type.

Parameters
elmElement which should be depicted
typeType of graphics
postCalling CellPostprocess specialization, might be necessary to get some data
See also
CellPostprocess
Element

◆ setValue() [1/2]

template<class F >
void hp2D::BaseQuadGraphics< F >::setValue ( const concepts::ElementFunction< Cmplx, F > *  value)

◆ setValue() [2/2]

template<class F >
void hp2D::BaseQuadGraphics< F >::setValue ( const concepts::ElementFunction< Real, F > *  value)

Gives the appropiate element function.

◆ value_() [1/2]

template<class F >
void hp2D::BaseQuadGraphics< F >::value_ ( const concepts::ElementFunction< Cmplx, F > *&  fun) const
private

◆ value_() [2/2]

template<class F >
void hp2D::BaseQuadGraphics< F >::value_ ( const concepts::ElementFunction< Real, F > *&  fun) const
private

Returns a pointer to the appropiate element function of the value.

◆ writeDenseMatrix_() [1/3]

template<class F >
template<class G >
bool hp2D::BaseQuadGraphics< F >::writeDenseMatrix_ ( const BaseQuad< F > &  quad,
graphics::MatrixBaseElementFormulaCell< G, F > *  bdc 
) const
private

Writes values from an ElementFormula on the quadrature points of the quad into an ElementMatrix.

◆ writeDenseMatrix_() [2/3]

template<class F >
template<class G >
bool hp2D::BaseQuadGraphics< F >::writeDenseMatrix_ ( const BaseQuad< F > &  quad,
graphics::MatrixSolutionEvaluationCell< G, F > *  bdc 
) const
private

Writes values from a FEM Solution on the quadrature points of the quad into an ElementMatrix.

◆ writeDenseMatrix_() [3/3]

template<class F >
bool hp2D::BaseQuadGraphics< F >::writeDenseMatrix_ ( const BaseQuad< F > &  quad,
graphics::MatrixSpaceOutputCell< F > *  bdc 
) const
private

Writes geometric informations, attributes and quadrature weights of the quad into an ElementMatrix.

◆ writeGnuplot_()

template<class F >
void hp2D::BaseQuadGraphics< F >::writeGnuplot_ ( const BaseQuad< F > &  quad,
concepts::CellPostprocess< F > &  post 
) const
private

Gnuplot output of data.

◆ writeMatlab_() [1/3]

template<class F >
void hp2D::BaseQuadGraphics< F >::writeMatlab_ ( const BaseQuad< F > &  quad,
concepts::CellPostprocess< F > &  post 
) const
private

Matlab output, calls the right method dependent from cell post process.

◆ writeMatlab_() [2/3]

template<class F >
template<typename G >
bool hp2D::BaseQuadGraphics< F >::writeMatlab_ ( const BaseQuad< F > &  quad,
graphics::BaseDataCell< G, F > *  stream 
) const
private

Matlab output of FEM solution.

◆ writeMatlab_() [3/3]

template<class F >
template<typename G >
bool hp2D::BaseQuadGraphics< F >::writeMatlab_ ( const BaseQuad< F > &  quad,
graphics::BaseElementFormulaCell< G, F > *  stream 
) const
private

Matlab output of an element formula.

◆ writeTecplot_() [1/3]

template<class F >
void hp2D::BaseQuadGraphics< F >::writeTecplot_ ( const BaseQuad< F > &  quad,
concepts::CellPostprocess< F > &  post 
) const
private

Tecplot output, calls the right method dependent from cell post process.

◆ writeTecplot_() [2/3]

template<class F >
template<typename G >
bool hp2D::BaseQuadGraphics< F >::writeTecplot_ ( const BaseQuad< F > &  quad,
graphics::BaseDataCell< G, F > *  stream 
) const
private

Tecplot output of FEM solution.

◆ writeTecplot_() [3/3]

template<class F >
template<typename G >
bool hp2D::BaseQuadGraphics< F >::writeTecplot_ ( const BaseQuad< F > &  quad,
graphics::BaseElementFormulaCell< G, F > *  stream 
) const
private

Tecplot output of an element formula.

Member Data Documentation

◆ p_

template<class F >
concepts::Real2d hp2D::BaseQuadGraphics< F >::p_
mutableprivate

Local coordinates in [0,1]^2 (intermediate data)

Definition at line 115 of file baseQuadGraphics.hh.

◆ valueC_

template<class F >
const concepts::ElementFunction<Cmplx, F>* hp2D::BaseQuadGraphics< F >::valueC_
private

Complex element function of the value itself.

Definition at line 112 of file baseQuadGraphics.hh.

◆ valueR_

template<class F >
const concepts::ElementFunction<Real, F>* hp2D::BaseQuadGraphics< F >::valueR_
private

Real element function of the value itself.

Definition at line 110 of file baseQuadGraphics.hh.

◆ x_

template<class F >
concepts::Real2d hp2D::BaseQuadGraphics< F >::x_
mutableprivate

Actual coordinates (intermediate data)

Definition at line 117 of file baseQuadGraphics.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich