#ifndef __JMATHTESTKIT__ #define __JMATHTESTKIT__ #include "TRandom3.h" #include "JMath/JMatrix1D.hh" #include "JMath/JMatrix2D.hh" #include "JMath/JMatrix3D.hh" #include "JMath/JMatrix4D.hh" #include "JMath/JMatrix5D.hh" #include "JMath/JMatrix1S.hh" #include "JMath/JMatrix2S.hh" #include "JMath/JMatrix3S.hh" #include "JMath/JMatrix4S.hh" #include "JMath/JMatrix5S.hh" #include "JMath/JRandom.hh" /** * \author mdejong */ namespace JMATH {} namespace JPP { using namespace JMATH; } namespace JMATH { /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix1D* p) { new (p) JMatrix1D(getRandom(-1.0, +1.0)); } /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix2D* p) { new (p) JMatrix2D(getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0)); } /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix3D* p) { new (p) JMatrix3D(getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0)); } /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix4D* p) { new (p) JMatrix4D(getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0)); } /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix5D* p) { new (p) JMatrix5D(getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0)); } /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix1S* p) { new (p) JMatrix1S(getRandom(-1.0, +1.0)); } /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix2S* p) { new (p) JMatrix2S(getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0)); p->a01 = p->a10; } /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix3S* p) { new (p) JMatrix3S(getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0)); p->a01 = p->a10; p->a02 = p->a20; p->a12 = p->a21; } /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix4S* p) { new (p) JMatrix4S(getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0)); p->a01 = p->a10; p->a02 = p->a20; p->a03 = p->a30; p->a12 = p->a21; p->a13 = p->a31; p->a23 = p->a32; } /** * Randomize matrix. * * \param p pointer to valid object */ inline void randomize(JMatrix5S* p) { new (p) JMatrix5S(getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0), getRandom(-1.0,+1.0)); p->a01 = p->a10; p->a02 = p->a20; p->a03 = p->a30; p->a04 = p->a40; p->a12 = p->a21; p->a13 = p->a31; p->a14 = p->a41; p->a23 = p->a32; p->a24 = p->a42; p->a34 = p->a43; } } #endif