|
ESyS-Particle
2.3.4
|
#include <InteractionToStressConverter.h>

Public Types | |
| typedef StressTensorCollection< ContactPtTensorCalculator > | StressTensCollection |
| typedef StressTensCollection::StressCalculator | StressTensorCalculator |
Public Member Functions | |
| InteractionToStressConverter (const BoundingBox &box, double gridSpacing) | |
| void | addRaw2Interactions (std::istream &iStream) |
| void | writeVtkUnstructuredXml (std::ostream &oStream) |
| void | writeVtkUnstructuredXmlGridInformation (std::ostream &oStream) |
| void | writeVtkStructuredXml (std::ostream &oStream) |
| StressTensorPtrGrid & | getTensorIrregularGrid () |
| void | calcTensorIrregularGrid () |
| TensorGrid & | getTensorRegularGrid () |
| void | calcTensorRegularGrid () |
| DoubleGrid & | getDevRegularGrid () |
| void | calcDevRegularGrid () |
| void | writeFlatStructured (std::ostream &oStream) |
| void | writeFlatUnstructured (std::ostream &oStream) |
| void | writeUnstructuredDx (std::ostream &oStream) |
| double | getMaxRadius () |
Protected Member Functions | |
| double | getRealDevStress (const Tensor &stressTensor) const |
| double | getNormDevStress (const Tensor &stressTensor) const |
| bool | is3d () const |
| typedef StressTensorCollection<ContactPtTensorCalculator> esys::lsm::InteractionToStressConverter::StressTensCollection |
| typedef StressTensCollection::StressCalculator esys::lsm::InteractionToStressConverter::StressTensorCalculator |
| esys::lsm::InteractionToStressConverter::InteractionToStressConverter | ( | const BoundingBox & | box, |
| double | gridSpacing | ||
| ) |
| void esys::lsm::InteractionToStressConverter::addRaw2Interactions | ( | std::istream & | iStream | ) |
Reads RAW2 interaction data from the specified stream and converts it to stress tensor values (unstructured grid of tensors).
References esys::lsm::StressTensorCollection< TmplStressTensorCalculator >::addContactIterators(), esys::lsm::ContactCollection::addInteractions(), esys::lsm::ContactCollection::getContactIteratorIterator(), and m_stressTensorCollection.
Referenced by main().


| void esys::lsm::InteractionToStressConverter::calcDevRegularGrid | ( | ) |
References esys::lsm::CartesianGrid< TmplValue >::getCellIterator(), esys::lsm::Tensor::getPos(), getRealDevStress(), getTensorRegularGrid(), esys::lsm::CartesianGrid< TmplValue >::insert(), m_bBox, m_gridSpacing, and m_regDevStressGrid.
Referenced by getDevRegularGrid().


| void esys::lsm::InteractionToStressConverter::calcTensorIrregularGrid | ( | ) |
References esys::lsm::StressTensorCollection< TmplStressTensorCalculator >::getIterator(), esys::lsm::ForwardIterator< TmplIteratable >::hasNext(), esys::lsm::CartesianGrid< TmplValue >::insert(), m_bBox, m_gridSpacing, m_irrStressTensorGrid, m_stressTensorCollection, and esys::lsm::ForwardIterator< TmplIteratable >::next().
Referenced by getTensorIrregularGrid().


| void esys::lsm::InteractionToStressConverter::calcTensorRegularGrid | ( | ) |
References esys::lsm::getBoxTensor(), esys::lsm::CartesianGrid< TmplValue >::getCellIterator(), getMaxRadius(), getTensorIrregularGrid(), esys::lsm::CartesianGrid< TmplValue >::insert(), is3d(), m_bBox, m_gridSpacing, and m_regTensorGrid.
Referenced by getTensorRegularGrid().


| DoubleGrid & esys::lsm::InteractionToStressConverter::getDevRegularGrid | ( | ) |
Converts irregular grid of average particle stress tensor data a regular grid using the volume of intersection between a sphere and the box formed by a grid-cell.
| bBox | - regular grid is restricted to this bounding box (all irregular point data are considered even if they are outside this bounding box. But the regular grid cells are contained in the box. |
| gridSpacing | - distance between regular grid points (x, y and z dimensions). |
References calcDevRegularGrid(), m_regDevStressGrid, and esys::lsm::CartesianGrid< TmplValue >::size().
Referenced by writeFlatStructured().


| double esys::lsm::InteractionToStressConverter::getMaxRadius | ( | ) |
References esys::lsm::StressTensor::getRad(), getTensorIrregularGrid(), and esys::lsm::CartesianGrid< TmplValue >::getValueIterator().
Referenced by calcTensorRegularGrid().


|
protected |
References esys::lsm::Tensor::getEigenvalues(), and is3d().
Referenced by writeVtkUnstructuredXml(), and writeVtkUnstructuredXmlGridInformation().


|
protected |
References esys::lsm::Tensor::getEigenvalues(), and is3d().
Referenced by calcDevRegularGrid(), writeFlatUnstructured(), writeUnstructuredDx(), writeVtkStructuredXml(), writeVtkUnstructuredXml(), and writeVtkUnstructuredXmlGridInformation().


| StressTensorPtrGrid & esys::lsm::InteractionToStressConverter::getTensorIrregularGrid | ( | ) |
References calcTensorIrregularGrid(), m_irrStressTensorGrid, and esys::lsm::CartesianGrid< TmplValue >::size().
Referenced by calcTensorRegularGrid(), and getMaxRadius().


| TensorGrid & esys::lsm::InteractionToStressConverter::getTensorRegularGrid | ( | ) |
Converts irregular grid of average particle stress tensors (\sigma_{ij}) to a regular grid.
| bBox | - regular grid is restricted to this bounding box (all irregular point data are considered even if they are outside this bounding box. |
| gridSpacing | - distance between regular grid points (x, y and z dimensions). |
References calcTensorRegularGrid(), m_regTensorGrid, and esys::lsm::CartesianGrid< TmplValue >::size().
Referenced by calcDevRegularGrid(), writeVtkStructuredXml(), and writeVtkUnstructuredXmlGridInformation().


|
protected |
References esys::lsm::ParticleData::is3d().
Referenced by calcTensorRegularGrid(), getNormDevStress(), and getRealDevStress().


| void esys::lsm::InteractionToStressConverter::writeFlatStructured | ( | std::ostream & | oStream | ) |
Writes "x y z \sigma_{max}-\sigma_{min})" records to the specifed file. The irregular point data is converted to a regular grid specified by bBox and gridSpacing parameters.
References esys::lsm::CartesianGrid< TmplValue >::getCellIterator(), and getDevRegularGrid().
Referenced by main().


| void esys::lsm::InteractionToStressConverter::writeFlatUnstructured | ( | std::ostream & | oStream | ) |
Writes "x y z r \sigma_{max}-\sigma_{min})" records to the specifed file. An (x,y,z) value is the centre point of the spherical particle of radius r.
References esys::lsm::StressTensorCollection< TmplStressTensorCalculator >::getIterator(), getRealDevStress(), esys::lsm::ForwardIterator< TmplIteratable >::hasNext(), m_stressTensorCollection, and esys::lsm::ForwardIterator< TmplIteratable >::next().
Referenced by main().


| void esys::lsm::InteractionToStressConverter::writeUnstructuredDx | ( | std::ostream & | oStream | ) |
Writes open-dx format file of unstructured point data (\sigma_{max}-\sigma_{min}) to the specified stream.
| oStream | Data is written to this stream. |
References esys::lsm::StressTensorCollection< TmplStressTensorCalculator >::getIterator(), getRealDevStress(), esys::lsm::ForwardIterator< TmplIteratable >::hasNext(), m_stressTensorCollection, esys::lsm::ForwardIterator< TmplIteratable >::next(), and esys::lsm::StressTensorCollection< TmplStressTensorCalculator >::size().

| void esys::lsm::InteractionToStressConverter::writeVtkStructuredXml | ( | std::ostream & | oStream | ) |
Writes VTK StructuredGrid XML format file of eigenvalue point-data to the specified output-stream. The irregular point data is converted to a regular grid using the bounding-box and grid-spacing values of this object.
| oStream | vtx xml written to this stream. |
References esys::lsm::vtk::StructuredGrid::addPiece(), esys::lsm::CartesianGrid< TmplValue >::getCellIterator(), esys::lsm::vtk::StructuredPiece< TmplPointType, TmplPointDataTypeTuple >::getMaxExtent(), esys::lsm::CartesianGrid< TmplValue >::getMaxVecIndex(), esys::lsm::vtk::StructuredPiece< TmplPointType, TmplPointDataTypeTuple >::getMinExtent(), esys::lsm::CartesianGrid< TmplValue >::getMinVecIndex(), getRealDevStress(), getTensorRegularGrid(), esys::lsm::vtk::StructuredPiece< TmplPointType, TmplPointDataTypeTuple >::setExtent(), esys::lsm::vtk::StructuredGrid::setExtent(), esys::lsm::vtk::Piece< TmplPointType, TmplPointDataTypeTuple >::setPoint(), and esys::lsm::vtk::StructuredGrid::writeXml().

| void esys::lsm::InteractionToStressConverter::writeVtkUnstructuredXml | ( | std::ostream & | oStream | ) |
Writes VTK UnstructuredGrid XML format file of tensor point-data and eigenvalue point-data.
References esys::lsm::vtk::UnstructuredGrid::addPiece(), esys::lsm::StressTensorCollection< TmplStressTensorCalculator >::getIterator(), getNormDevStress(), getRealDevStress(), esys::lsm::ForwardIterator< TmplIteratable >::hasNext(), m_stressTensorCollection, esys::lsm::ForwardIterator< TmplIteratable >::next(), esys::lsm::vtk::Piece< TmplPointType, TmplPointDataTypeTuple >::setPoint(), and esys::lsm::vtk::UnstructuredGrid::writeXml().
Referenced by main().


| void esys::lsm::InteractionToStressConverter::writeVtkUnstructuredXmlGridInformation | ( | std::ostream & | oStream | ) |
References esys::lsm::vtk::UnstructuredGrid::addPiece(), esys::lsm::CartesianGrid< TmplValue >::getCellIterator(), getNormDevStress(), getRealDevStress(), getTensorRegularGrid(), esys::lsm::vtk::Piece< TmplPointType, TmplPointDataTypeTuple >::setPoint(), and esys::lsm::vtk::UnstructuredGrid::writeXml().
Referenced by main().


|
private |
Referenced by calcDevRegularGrid(), calcTensorIrregularGrid(), and calcTensorRegularGrid().
|
private |
Referenced by calcDevRegularGrid(), calcTensorIrregularGrid(), and calcTensorRegularGrid().
|
private |
Referenced by calcTensorIrregularGrid(), and getTensorIrregularGrid().
|
private |
Referenced by calcDevRegularGrid(), and getDevRegularGrid().
|
private |
Referenced by calcTensorRegularGrid(), and getTensorRegularGrid().
|
private |
|
private |