Go to the documentation of this file.
17 #ifndef __ESCRIPT_BINARYOP_H__
18 #define __ESCRIPT_BINARYOP_H__
37 void binaryOpDataCCC(DataConstant& result,
const DataConstant& left,
const DataConstant& right,
39 void binaryOpDataTCT(DataTagged& result,
const DataConstant& left,
const DataTagged& right,
41 void binaryOpDataTTC(DataTagged& result,
const DataTagged& left,
const DataConstant& right,
43 void binaryOpDataTTT(DataTagged& result,
const DataTagged& left,
const DataTagged& right,
45 void binaryOpDataEEC(DataExpanded& result,
const DataExpanded& left,
const DataConstant& right,
47 void binaryOpDataECE(DataExpanded& result,
const DataConstant& left,
const DataExpanded& right,
49 void binaryOpDataEEE(DataExpanded& result,
const DataExpanded& left,
const DataExpanded& right,
51 void binaryOpDataETE(DataExpanded& result,
const DataTagged& left,
const DataExpanded& right,
53 void binaryOpDataEET(DataExpanded& result,
const DataExpanded& left,
const DataTagged& right,
58 #endif // __ESCRIPT_BINARYOP_H__
#define PASO_ONE
Definition: Paso.h:66
const DataMapType & getTagLookup() const
getTagLookup
Definition: DataTagged.h:772
void addTag(int tagKey)
addTag - does not modify the default value for this object. ** Not unit tested **
Definition: DataTagged.cpp:683
virtual const DataTypes::RealVectorType & getTypedVectorRO(DataTypes::real_t dummy) const
Definition: DataConstant.cpp:870
void binaryOpDataEEC(DataExpanded &result, const DataExpanded &left, const DataConstant &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:751
void binaryOpDataEEE(DataExpanded &result, const DataExpanded &left, const DataExpanded &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:833
virtual DataTypes::RealVectorType & getTypedVectorRW(DataTypes::real_t dummy)
These versions use the type system rather than method name to determine return type.
Definition: DataExpanded.cpp:1524
void binaryOpDataReadyHelperTTT(DataTagged &res, const DataTagged &left, const DataTagged &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:558
DataConstant stores a single data point which represents the entire function space.
Definition: DataConstant.h:48
DataTypes::vec_size_type size_type
Definition: DataVectorAlt.h:84
boost::shared_ptr< SystemMatrix > SystemMatrix_ptr
Definition: SystemMatrix.h:51
void binaryOpDataEET(DataExpanded &result, const DataExpanded &left, const DataTagged &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:326
#define MPI_SUM
Definition: EsysMPI.h:50
void binaryOpDataReadyHelperEEC(DataExpanded &res, const DataExpanded &left, const DataConstant &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:709
bool hasNoSamples() const
Definition: DataAbstract.h:170
void binaryOpVectorLeftScalar(DataTypes::RealVectorType &res, typename DataTypes::RealVectorType::size_type resOffset, const typename DataTypes::RealVectorType::size_type samplesToProcess, const typename DataTypes::RealVectorType::size_type sampleSize, const DataTypes::real_t *left, const bool leftreset, const DataTypes::RealVectorType &right, typename DataTypes::RealVectorType::size_type rightOffset, escript::ES_optype operation, bool singlerightsample)
Definition: DataVectorOps.cpp:637
unsigned int getRank() const
Return the rank information for the point data.
Definition: DataAbstract.h:663
void binaryOpDataReadyHelperECE(DataExpanded &res, const DataConstant &left, const DataExpanded &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:229
void binaryOpDataTCT(DataTagged &result, const DataConstant &left, const DataTagged &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:190
std::map< int, int > DataMapType
Definition: DataTagged.h:68
void binaryOpDataReadyHelperTCT(DataTagged &res, const DataConstant &left, const DataTagged &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:103
SolverResult Solver_BiCGStab(SystemMatrix_ptr A, double *r, double *x, dim_t *iter, double *tolerance, Performance *pp)
Definition: BiCGStab.cpp:89
Simulates a full dataset accessible via sampleNo and dataPointNo.
Definition: DataTagged.h:55
void binaryOpDataTTT(DataTagged &result, const DataTagged &left, const DataTagged &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:671
int getNumDPPSample() const
Return the number of data points per sample.
Definition: DataAbstract.h:622
Definition: DataException.h:37
index_t dim_t
Definition: DataTypes.h:87
Describes binary operations performed on instances of DataAbstract.
virtual DataTypes::RealVectorType & getTypedVectorRW(DataTypes::real_t dummy)
These versions use the type system rather than method name to determine return type.
Definition: DataConstant.cpp:863
int noValues(const ShapeType &shape)
Calculate the number of values in a datapoint with the given shape.
Definition: DataTypes.cpp:89
const DataTypes::ShapeType & getShape() const
Return the shape information for the point data.
Definition: DataAbstract.h:652
int getNumSamples() const
Return the number of samples.
Definition: DataAbstract.h:633
void binaryOpDataECE(DataExpanded &result, const DataConstant &left, const DataExpanded &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:270
SolverResult
Definition: Paso.h:53
virtual DataTypes::RealVectorType & getTypedVectorRW(DataTypes::real_t dummy)
These versions use the type system rather than method name to determine return type.
Definition: DataTagged.cpp:1667
virtual const DataTypes::RealVectorType & getTypedVectorRO(DataTypes::real_t dummy) const
Definition: DataTagged.cpp:1674
Give a short description of what DataExpanded does.
Definition: DataExpanded.h:54
void binaryOpDataReadyHelperTTC(DataTagged &res, const DataTagged &left, const DataConstant &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:423
void binaryOpDataTTC(DataTagged &result, const DataTagged &left, const DataConstant &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:519
size_t getTagCount() const
Return the number of tags which have been given values (+the default)
Definition: DataTagged.cpp:1693
void binaryOpDataReadyHelperEET(DataExpanded &res, const DataExpanded &left, const DataTagged &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:308
virtual const DataTypes::RealVectorType & getTypedVectorRO(DataTypes::real_t dummy) const
Definition: DataExpanded.cpp:1530
void binaryOpDataETE(DataExpanded &result, const DataTagged &left, const DataExpanded &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:382
ES_optype
Definition: ES_optype.h:37
#define TOLERANCE_FOR_SCALARS
Definition: Solver.h:39
void binaryOpDataReadyHelperEEE(DataExpanded &res, const DataExpanded &left, const DataExpanded &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:790
#define MPI_DOUBLE
Definition: EsysMPI.h:45
void binaryOpVectorTagged(DataTypes::RealVectorType &res, const typename DataTypes::RealVectorType::size_type samplesToProcess, const typename DataTypes::RealVectorType::size_type DPPSample, const typename DataTypes::RealVectorType::size_type DPSize, const DataTypes::RealVectorType &left, const bool leftscalar, const DataTypes::RealVectorType &right, const bool rightscalar, const bool lefttagged, const DataTagged &tagsource, escript::ES_optype operation)
Definition: DataVectorOps.cpp:338
void binaryOpDataReadyHelperETE(DataExpanded &res, const DataTagged &left, const DataExpanded &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:365
void binaryOpVectorRightScalar(DataTypes::RealVectorType &res, typename DataTypes::RealVectorType::size_type resOffset, const typename DataTypes::RealVectorType::size_type samplesToProcess, const typename DataTypes::RealVectorType::size_type sampleSize, const DataTypes::RealVectorType &left, typename DataTypes::RealVectorType::size_type leftOffset, const DataTypes::real_t *right, const bool rightreset, escript::ES_optype operation, bool singleleftsample)
Definition: DataVectorOps.cpp:498
Definition: AbstractContinuousDomain.cpp:22
DataTypes::RealVectorType::size_type getOffsetForTag(int tag) const
getOffsetForTag
Definition: DataTagged.cpp:993
Describes binary operations performed on DataVector.
void binaryOpDataCCC(DataConstant &result, const DataConstant &left, const DataConstant &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:65
bool isComplex() const
true if the components of datapoints are complex
Definition: DataAbstract.cpp:68
Definition: BiCGStab.cpp:25
void binaryOpDataReadyHelperCCC(DataConstant &res, const DataConstant &left, const DataConstant &right, escript::ES_optype operation)
Definition: BinaryDataReadyOps.cpp:31
void binaryOpVector(DataTypes::RealVectorType &res, typename DataTypes::RealVectorType::size_type resOffset, const typename DataTypes::RealVectorType::size_type samplesToProcess, const typename DataTypes::RealVectorType::size_type sampleSize, const DataTypes::RealVectorType &left, typename DataTypes::RealVectorType::size_type leftOffset, const bool leftreset, const DataTypes::RealVectorType &right, typename DataTypes::RealVectorType::size_type rightOffset, const bool rightreset, escript::ES_optype operation)
Definition: DataVectorOps.cpp:766
#define PASO_ZERO
Definition: Paso.h:67