hp3D::ArrayElementFormula< F > Class Template Reference

Array of formula values on quadrature points. More...

#include <arrayElementFormula.hh>

Inheritance diagram for hp3D::ArrayElementFormula< F >:
concepts::Array< Real >

Public Member Functions

Array< Real > & apply (const Array< H > &a, Real fnc(const H &))
 Application operator to each component. More...
 
Array< Real > & apply (const Array< H > &a, Real fnc(const H &, const Real &))
 Application operator to each component. More...
 
Array< Real > & apply (Real &fnc(Real &))
 Application operator to each component, e.g. More...
 
 ArrayElementFormula ()
 Constructor. More...
 
 ArrayElementFormula (const Hexahedron &elm, const concepts::ElementFormulaContainer< F > frm)
 Constructor with calling of compute. More...
 
void compute (const Hexahedron &elm, const concepts::ElementFormulaContainer< F > frm)
 Evaluates the formula frm on all quadrature points of element elm. More...
 
uint cursize () const
 Returns the size of the allocated memory. More...
 
std::ostream & info (std::ostream &os) const
 
int memory () const
 Returns the memory usage in bytes. More...
 
 operator const Real * () const
 Returns a pointer to the array. More...
 
 operator Real * ()
 Returns a pointer to the array. More...
 
Array< Real > & operator*= (const Array< H > &a)
 Multiplication operator. More...
 
Array< Real > & operator*= (const G n)
 Scaling operator. More...
 
Array< Real > & operator+= (const Array< H > &a)
 Addition operator. More...
 
Array< Real > & operator+= (const Real n)
 Addition operator. More...
 
Array< Real > operator- () const
 Negation operator. More...
 
Array< Real > & operator-= (const Array< H > &a)
 Subtraction operator. More...
 
Array< Real > & operator-= (const Real n)
 Subtraction operator. More...
 
Real & operator[] (const int i)
 Index operator. More...
 
const Real & operator[] (const int i) const
 Index operator. More...
 
void resize (const uint sz)
 Resizes the array. More...
 
void resizePreserve (const uint sz)
 Resizes the array. More...
 
Array< Real > & reverse ()
 Reverse the order of the entries. More...
 
uint size () const
 Returns the requested size of the array. More...
 
void zeros ()
 Fills the memory with zeros. More...
 

Protected Attributes

Real * data_
 Data. More...
 
uint n_
 Requested size of the array. More...
 
uint size_
 Current real size of the array. More...
 

Detailed Description

template<class F = Real>
class hp3D::ArrayElementFormula< F >

Array of formula values on quadrature points.

Definition at line 23 of file arrayElementFormula.hh.

Constructor & Destructor Documentation

◆ ArrayElementFormula() [1/2]

Constructor.

The array is empty at the beginning.

Definition at line 41 of file arrayElementFormula.hh.

◆ ArrayElementFormula() [2/2]

template<class F >
hp3D::ArrayElementFormula< F >::ArrayElementFormula ( const Hexahedron elm,
const concepts::ElementFormulaContainer< F >  frm 
)

Constructor with calling of compute.

Definition at line 44 of file arrayElementFormula.hh.

Member Function Documentation

◆ apply() [1/3]

Array<Real >& concepts::Array< Real >::apply ( const Array< H > &  a,
F   fncconst H & 
)
inlineinherited

Application operator to each component.

Each array value is the function applied to the appropiate array value in a.

  @param a   Array with elements of type H
  @param fnc Function which maps from H to F

Definition at line 233 of file array.hh.

◆ apply() [2/3]

Array<Real >& concepts::Array< Real >::apply ( const Array< H > &  a,
F   fncconst H &, const F & 
)
inlineinherited

Application operator to each component.

Each array value is the function applied to the appropiate array value in a and to the old array value.

  @param a   Array with elements of type H
  @param fnc Function which maps from (H,F) to F

Definition at line 249 of file array.hh.

◆ apply() [3/3]

Array<Real >& concepts::Array< Real >::apply ( F &  fncF &)
inlineinherited

Application operator to each component, e.g.

std::sin or std::conj

Definition at line 219 of file array.hh.

◆ compute()

template<class F = Real>
void hp3D::ArrayElementFormula< F >::compute ( const Hexahedron elm,
const concepts::ElementFormulaContainer< F >  frm 
)

Evaluates the formula frm on all quadrature points of element elm.

◆ cursize()

uint concepts::Array< Real >::cursize ( ) const
inlineinherited

Returns the size of the allocated memory.

Definition at line 262 of file array.hh.

◆ info()

std::ostream & concepts::Array< Real >::info ( std::ostream &  os) const
inherited

Definition at line 270 of file array.hh.

◆ memory()

int concepts::Array< Real >::memory ( ) const
inlineinherited

Returns the memory usage in bytes.

Definition at line 265 of file array.hh.

◆ operator const Real *()

concepts::Array< Real >::operator const Real * ( ) const
inlineinherited

Returns a pointer to the array.

Definition at line 133 of file array.hh.

◆ operator Real *()

concepts::Array< Real >::operator Real * ( )
inlineinherited

Returns a pointer to the array.

Definition at line 131 of file array.hh.

◆ operator*=() [1/2]

Array<Real >& concepts::Array< Real >::operator*= ( const Array< H > &  a)
inlineinherited

Multiplication operator.

Definition at line 158 of file array.hh.

◆ operator*=() [2/2]

Array<Real >& concepts::Array< Real >::operator*= ( const G  n)
inlineinherited

Scaling operator.

Definition at line 150 of file array.hh.

◆ operator+=() [1/2]

Array<Real >& concepts::Array< Real >::operator+= ( const Array< H > &  a)
inlineinherited

Addition operator.

Definition at line 191 of file array.hh.

◆ operator+=() [2/2]

Array<Real >& concepts::Array< Real >::operator+= ( const F  n)
inlineinherited

Addition operator.

Definition at line 185 of file array.hh.

◆ operator-()

Array<Real > concepts::Array< Real >::operator- ( ) const
inlineinherited

Negation operator.

Definition at line 211 of file array.hh.

◆ operator-=() [1/2]

Array<Real >& concepts::Array< Real >::operator-= ( const Array< H > &  a)
inlineinherited

Subtraction operator.

Definition at line 204 of file array.hh.

◆ operator-=() [2/2]

Array<Real >& concepts::Array< Real >::operator-= ( const F  n)
inlineinherited

Subtraction operator.

Definition at line 198 of file array.hh.

◆ operator[]() [1/2]

Real & concepts::Array< Real >::operator[] ( const int  i)
inlineinherited

Index operator.

Definition at line 142 of file array.hh.

◆ operator[]() [2/2]

const Real & concepts::Array< Real >::operator[] ( const int  i) const
inlineinherited

Index operator.

Definition at line 136 of file array.hh.

◆ resize()

void concepts::Array< Real >::resize ( const uint  sz)
inherited

Resizes the array.

A reallocation occurs only if the requested space is not available, ie. making the array smaller does not result in a reallocation. If a reallocation occurs, the data is not preserved.

Definition at line 122 of file array.hh.

◆ resizePreserve()

void concepts::Array< Real >::resizePreserve ( const uint  sz)
inherited

Resizes the array.

Basically, it does the same as resize. But, if a reallocation occurs, the data is preserved.

Definition at line 126 of file array.hh.

◆ reverse()

Array< Real > & concepts::Array< Real >::reverse
inherited

Reverse the order of the entries.

Definition at line 268 of file array.hh.

◆ size()

uint concepts::Array< Real >::size ( ) const
inlineinherited

Returns the requested size of the array.

Definition at line 259 of file array.hh.

◆ zeros()

void concepts::Array< Real >::zeros ( )
inlineinherited

Fills the memory with zeros.

Definition at line 128 of file array.hh.

Member Data Documentation

◆ data_

Real * concepts::Array< Real >::data_
protectedinherited

Data.

Definition at line 273 of file array.hh.

◆ n_

uint concepts::Array< Real >::n_
protectedinherited

Requested size of the array.

Definition at line 277 of file array.hh.

◆ size_

uint concepts::Array< Real >::size_
protectedinherited

Current real size of the array.

Definition at line 275 of file array.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