AbstractConductivityTensors< SPACE_DIM > Class Template Reference

#include <AbstractConductivityTensors.hpp>

Inherited by AxisymmetricConductivityTensors< SPACE_DIM >, and OrthotropicConductivityTensors< SPACE_DIM >.

Collaboration diagram for AbstractConductivityTensors< SPACE_DIM >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void SetFibreOrientationFile (const std::string &rFibreOrientationFilename)
void SetConstantConductivities (c_vector< double, 1 > constantConductivities)
void SetConstantConductivities (c_vector< double, 2 > constantConductivities)
virtual void SetConstantConductivities (c_vector< double, 3 > constantConductivities)
void SetNonConstantConductivities (std::vector< c_vector< double, SPACE_DIM > > *pNonConstantConductivities)
virtual void Init ()=0 throw (Exception)
c_matrix< double, SPACE_DIM,
SPACE_DIM > & 
operator[] (const unsigned index)

Protected Member Functions

void OpenFibreOrientationFile ()
void CloseFibreOrientationFile ()
unsigned GetTokensAtNextLine (std::vector< double > &rTokens)
unsigned GetNumElementsFromFile ()

Protected Attributes

unsigned mNumElements
bool mUseNonConstantConductivities
bool mUseFibreOrientation
c_vector< double, SPACE_DIM > mConstantConductivities
std::vector< c_vector< double,
SPACE_DIM > > * 
mpNonConstantConductivities
std::vector< c_matrix< double,
SPACE_DIM, SPACE_DIM > > 
mTensors
bool mInitialised
std::string mFibreOrientationFilename
std::ifstream mDataFile

Detailed Description

template<unsigned SPACE_DIM>
class AbstractConductivityTensors< SPACE_DIM >

Base class for different representations of conductivity tensors.

Definition at line 41 of file AbstractConductivityTensors.hpp.


Member Function Documentation

template<unsigned SPACE_DIM>
void AbstractConductivityTensors< SPACE_DIM >::CloseFibreOrientationFile (  )  [inline, protected]
template<unsigned SPACE_DIM>
unsigned AbstractConductivityTensors< SPACE_DIM >::GetNumElementsFromFile (  )  [inline, protected]

Read number of elements from mDataFile Note: Must be called before GetTokensAtNextLine (it assumes that it's reading the first line.

Definition at line 88 of file AbstractConductivityTensors.cpp.

References AbstractConductivityTensors< SPACE_DIM >::CloseFibreOrientationFile(), and AbstractConductivityTensors< SPACE_DIM >::GetTokensAtNextLine().

Referenced by OrthotropicConductivityTensors< SPACE_DIM >::Init(), and AxisymmetricConductivityTensors< SPACE_DIM >::Init().

template<unsigned SPACE_DIM>
unsigned AbstractConductivityTensors< SPACE_DIM >::GetTokensAtNextLine ( std::vector< double > &  rTokens  )  [inline, protected]
template<unsigned SPACE_DIM>
virtual void AbstractConductivityTensors< SPACE_DIM >::Init (  )  throw (Exception) [pure virtual]

Computes the tensors based in all the info set

Implemented in AxisymmetricConductivityTensors< SPACE_DIM >, and OrthotropicConductivityTensors< SPACE_DIM >.

template<unsigned SPACE_DIM>
void AbstractConductivityTensors< SPACE_DIM >::OpenFibreOrientationFile (  )  [inline, protected]
template<unsigned SPACE_DIM>
c_matrix< double, SPACE_DIM, SPACE_DIM > & AbstractConductivityTensors< SPACE_DIM >::operator[] ( const unsigned  index  )  [inline]
template<unsigned SPACE_DIM>
void AbstractConductivityTensors< SPACE_DIM >::SetConstantConductivities ( c_vector< double, 3 >  constantConductivities  )  [inline, virtual]

Sets constant conductivities for all the elements of the mesh.

Parameters:
constantConductivities Longitudinal, Transverse (y axis) and Normal conductivity (z axis)

We need explicit instanciation of this method to make sure that c_vector length matches SPACE_DIM. Compiler won't detect mismatches.

Reimplemented in AxisymmetricConductivityTensors< SPACE_DIM >.

Definition at line 154 of file AbstractConductivityTensors.cpp.

References AbstractConductivityTensors< SPACE_DIM >::mConstantConductivities, and AbstractConductivityTensors< SPACE_DIM >::mUseNonConstantConductivities.

template<unsigned SPACE_DIM>
void AbstractConductivityTensors< SPACE_DIM >::SetConstantConductivities ( c_vector< double, 2 >  constantConductivities  )  [inline]

Sets constant conductivities for all the elements of the mesh.

Parameters:
constantConductivities Longitudinal, Transverse (y axis) and Normal conductivity (z axis)

We need explicit instanciation of this method to make sure that c_vector length matches SPACE_DIM. Compiler won't detect mismatches.

Definition at line 142 of file AbstractConductivityTensors.cpp.

References AbstractConductivityTensors< SPACE_DIM >::mConstantConductivities, and AbstractConductivityTensors< SPACE_DIM >::mUseNonConstantConductivities.

template<unsigned SPACE_DIM>
void AbstractConductivityTensors< SPACE_DIM >::SetConstantConductivities ( c_vector< double, 1 >  constantConductivities  )  [inline]

Sets constant conductivities for all the elements of the mesh.

Parameters:
constantConductivities Longitudinal, Transverse (y axis) and Normal conductivity (z axis)

We need explicit instanciation of this method to make sure that c_vector length matches SPACE_DIM. Compiler won't detect mismatches.

Definition at line 130 of file AbstractConductivityTensors.cpp.

References AbstractConductivityTensors< SPACE_DIM >::mConstantConductivities, and AbstractConductivityTensors< SPACE_DIM >::mUseNonConstantConductivities.

template<unsigned SPACE_DIM>
void AbstractConductivityTensors< SPACE_DIM >::SetFibreOrientationFile ( const std::string &  rFibreOrientationFilename  )  [inline]

Sets a file for reading the fibre orientation from.

Parameters:
rFibreOrientationFilename Relative path to the file defining the fibre orientation

Definition at line 123 of file AbstractConductivityTensors.cpp.

References AbstractConductivityTensors< SPACE_DIM >::mFibreOrientationFilename, and AbstractConductivityTensors< SPACE_DIM >::mUseFibreOrientation.

template<unsigned SPACE_DIM>
void AbstractConductivityTensors< SPACE_DIM >::SetNonConstantConductivities ( std::vector< c_vector< double, SPACE_DIM > > *  pNonConstantConductivities  )  [inline]
Parameters:
pNonConstantConductivities pointer to vector of conductivities (one per element)

Definition at line 166 of file AbstractConductivityTensors.cpp.

References AbstractConductivityTensors< SPACE_DIM >::mpNonConstantConductivities, and AbstractConductivityTensors< SPACE_DIM >::mUseNonConstantConductivities.


Member Data Documentation

template<unsigned SPACE_DIM>
c_vector<double, SPACE_DIM> AbstractConductivityTensors< SPACE_DIM >::mConstantConductivities [protected]
template<unsigned SPACE_DIM>
std::ifstream AbstractConductivityTensors< SPACE_DIM >::mDataFile [protected]
template<unsigned SPACE_DIM>
std::string AbstractConductivityTensors< SPACE_DIM >::mFibreOrientationFilename [protected]

Name of fibre orienation file (see SetFibreOrientationFile)

Definition at line 62 of file AbstractConductivityTensors.hpp.

Referenced by AbstractConductivityTensors< SPACE_DIM >::OpenFibreOrientationFile(), and AbstractConductivityTensors< SPACE_DIM >::SetFibreOrientationFile().

template<unsigned SPACE_DIM>
bool AbstractConductivityTensors< SPACE_DIM >::mInitialised [protected]
template<unsigned SPACE_DIM>
unsigned AbstractConductivityTensors< SPACE_DIM >::mNumElements [protected]
template<unsigned SPACE_DIM>
std::vector<c_vector<double, SPACE_DIM> >* AbstractConductivityTensors< SPACE_DIM >::mpNonConstantConductivities [protected]

Non-constant conductivities for each elemenet (when mUseNonConstantConductivities==true)

Definition at line 53 of file AbstractConductivityTensors.hpp.

Referenced by OrthotropicConductivityTensors< SPACE_DIM >::Init(), AxisymmetricConductivityTensors< SPACE_DIM >::Init(), and AbstractConductivityTensors< SPACE_DIM >::SetNonConstantConductivities().

template<unsigned SPACE_DIM>
std::vector< c_matrix<double,SPACE_DIM,SPACE_DIM> > AbstractConductivityTensors< SPACE_DIM >::mTensors [protected]

Container for conductivity tensors (single [one for all space] or multiple [one for each element])

Definition at line 56 of file AbstractConductivityTensors.hpp.

Referenced by OrthotropicConductivityTensors< SPACE_DIM >::Init(), AxisymmetricConductivityTensors< SPACE_DIM >::Init(), and AbstractConductivityTensors< SPACE_DIM >::operator[]().

template<unsigned SPACE_DIM>
bool AbstractConductivityTensors< SPACE_DIM >::mUseFibreOrientation [protected]
template<unsigned SPACE_DIM>
bool AbstractConductivityTensors< SPACE_DIM >::mUseNonConstantConductivities [protected]

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

Generated by  doxygen 1.6.2