37 #include <boost/functional/hash.hpp>
50 m_shapeType(shapeType),
51 m_base(stdExpansion.GetBase()),
52 m_ncoeffs(stdExpansion.GetNcoeffs()),
53 m_matrixType(matrixType),
54 m_nodalPointsType(nodalType),
56 m_varcoeffs(varCoeffMap),
57 m_varcoeff_hashes(varCoeffMap.size())
61 for (VarCoeffMap::const_iterator x = varCoeffMap.begin(); x != varCoeffMap.end(); ++x)
71 m_shapeType(rhs.m_shapeType),
73 m_ncoeffs(rhs.m_ncoeffs),
74 m_matrixType(matrixType),
75 m_nodalPointsType(rhs.m_nodalPointsType),
76 m_factors(rhs.m_factors),
77 m_varcoeffs(rhs.m_varcoeffs),
78 m_varcoeff_hashes(rhs.m_varcoeff_hashes)
83 m_shapeType(rhs.m_shapeType),
85 m_ncoeffs(rhs.m_ncoeffs),
86 m_matrixType(rhs.m_matrixType),
87 m_nodalPointsType(rhs.m_nodalPointsType),
88 m_factors(rhs.m_factors),
89 m_varcoeffs(rhs.m_varcoeffs),
90 m_varcoeff_hashes(rhs.m_varcoeff_hashes)
145 ConstFactorMap::const_iterator x, y;
149 if (x->second < y->second)
153 if (x->second > y->second)
221 ConstFactorMap::const_iterator x, y;
225 if (x->second != y->second)
250 VarCoeffMap::const_iterator x;
253 VarCoeffMap::const_iterator y;
260 if (x->second != y->second)
265 for (
unsigned int i = 0; i < lhs.
m_varcoeffs.size(); ++i)
284 os <<
"Constants: " << endl;
285 ConstFactorMap::const_iterator x;
293 os <<
"Variable coefficients: " << endl;
294 VarCoeffMap::const_iterator x;
305 os << rhs.
GetBase()[i]->GetBasisKey();