Flow123d  release_3.0.0-506-g34af125
Public Types | Public Member Functions | Private Attributes | List of all members
VectorSeqDouble Class Reference

#include <vec_seq_double.hh>

Collaboration diagram for VectorSeqDouble:
Collaboration graph
[legend]

Public Types

typedef std::shared_ptr< std::vector< double > > VectorSeq
 

Public Member Functions

 VectorSeqDouble ()
 Constructor. More...
 
void resize (unsigned int size)
 Create shared pointer and PETSC vector with given size. More...
 
VectorSeq get_data_ptr ()
 Getter for shared pointer of output data. More...
 
Vec & get_data_petsc ()
 Getter for PETSC vector of output data (e.g. can be used by scatters). More...
 
unsigned int size ()
 Getter for shared pointer of output data. More...
 
void fill (double value)
 Fill all values of data vector with given value. More...
 
template<int spacedim, class Value >
std::shared_ptr< FieldFE< spacedim, Value > > create_field (Mesh &mesh, unsigned int n_comp)
 Create and return shared pointer to FieldFE object. More...
 
template<int spacedim, class Value >
void fill_output_data (std::shared_ptr< FieldFE< spacedim, Value > > field_ptr)
 
 ~VectorSeqDouble ()
 Destructor. More...
 
double & operator[] (unsigned int idx)
 

Private Attributes

VectorSeq data_ptr_
 shared pointer to vector of data More...
 
Vec data_petsc_
 stored vector of data in PETSC format More...
 
FiniteElement< 0 > * fe0_
 Finite element objects (allow to create DOF handler) More...
 
FiniteElement< 1 > * fe1_
 
FiniteElement< 2 > * fe2_
 
FiniteElement< 3 > * fe3_
 
std::shared_ptr< DOFHandlerMultiDimdh_
 

Detailed Description

Auxiliary class for output elementwise concentration vectors in convection transport, sorptions, dual porosity etc.

Stores data in two formats:

Allows the following functionalities:

Definition at line 46 of file vec_seq_double.hh.

Member Typedef Documentation

typedef std::shared_ptr< std::vector<double> > VectorSeqDouble::VectorSeq

Definition at line 48 of file vec_seq_double.hh.

Constructor & Destructor Documentation

VectorSeqDouble::VectorSeqDouble ( )
inline

Constructor.

Definition at line 51 of file vec_seq_double.hh.

Here is the caller graph for this function:

VectorSeqDouble::~VectorSeqDouble ( )
inline

Destructor.

Definition at line 105 of file vec_seq_double.hh.

Member Function Documentation

template<int spacedim, class Value >
template std::shared_ptr< FieldFE< 3, FieldValue< 3 >::VectorFixed > > VectorSeqDouble::create_field ( Mesh mesh,
unsigned int  n_comp 
)

Create and return shared pointer to FieldFE object.

Definition at line 27 of file vec_seq_double.cc.

Here is the caller graph for this function:

void VectorSeqDouble::fill ( double  value)
inline

Fill all values of data vector with given value.

Definition at line 85 of file vec_seq_double.hh.

Here is the caller graph for this function:

template<int spacedim, class Value >
template void VectorSeqDouble::fill_output_data ( std::shared_ptr< FieldFE< spacedim, Value > >  field_ptr)

Fill output data of field_ptr.

Set data to data vector of field in correct order according to values of DOF handler indices.

Definition at line 82 of file vec_seq_double.cc.

Here is the caller graph for this function:

Vec& VectorSeqDouble::get_data_petsc ( )
inline

Getter for PETSC vector of output data (e.g. can be used by scatters).

Definition at line 71 of file vec_seq_double.hh.

VectorSeq VectorSeqDouble::get_data_ptr ( )
inline

Getter for shared pointer of output data.

Definition at line 63 of file vec_seq_double.hh.

Here is the caller graph for this function:

double& VectorSeqDouble::operator[] ( unsigned int  idx)
inline

Access to the vector element on index idx.

Definition at line 113 of file vec_seq_double.hh.

void VectorSeqDouble::resize ( unsigned int  size)
inline

Create shared pointer and PETSC vector with given size.

Definition at line 55 of file vec_seq_double.hh.

Here is the caller graph for this function:

unsigned int VectorSeqDouble::size ( )
inline

Getter for shared pointer of output data.

Definition at line 77 of file vec_seq_double.hh.

Here is the caller graph for this function:

Member Data Documentation

Vec VectorSeqDouble::data_petsc_
private

stored vector of data in PETSC format

Definition at line 123 of file vec_seq_double.hh.

VectorSeq VectorSeqDouble::data_ptr_
private

shared pointer to vector of data

Definition at line 121 of file vec_seq_double.hh.

std::shared_ptr<DOFHandlerMultiDim> VectorSeqDouble::dh_
private

Definition at line 130 of file vec_seq_double.hh.

FiniteElement<0>* VectorSeqDouble::fe0_
private

Finite element objects (allow to create DOF handler)

Definition at line 125 of file vec_seq_double.hh.

FiniteElement<1>* VectorSeqDouble::fe1_
private

Definition at line 126 of file vec_seq_double.hh.

FiniteElement<2>* VectorSeqDouble::fe2_
private

Definition at line 127 of file vec_seq_double.hh.

FiniteElement<3>* VectorSeqDouble::fe3_
private

Definition at line 128 of file vec_seq_double.hh.


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