File indexing completed on 2025-04-19 09:09:49
0001 #ifndef ATOOLS_Math_PermStore_H
0002 #define ATOOLS_Math_PermStore_H
0003
0004 #include <vector>
0005 #include "ATOOLS/Math/MyComplex.H"
0006
0007
0008
0009 namespace ATOOLS {
0010
0011
0012 class PermStore: public std::vector<PermStore*> {
0013 private:
0014
0015 Complex amplitude;
0016 Complex colorstr;
0017
0018
0019 public:
0020
0021
0022 PermStore(size_t pnumber);
0023
0024
0025 ~PermStore();
0026
0027 void PutAmp(size_t* perm,Complex amp);
0028 void PutColor(size_t* perm,Complex color);
0029 Complex GetAmp(size_t* perm);
0030 Complex GetColor(size_t* perm);
0031
0032 };
0033
0034
0035
0036
0037 class PermStoreFast: public std::vector<PermStoreFast*> {
0038 private:
0039
0040 Complex amplitude;
0041 Complex colorstr;
0042
0043
0044 public:
0045
0046
0047 PermStoreFast(size_t pnumber,size_t m_pnumber);
0048
0049
0050 ~PermStoreFast();
0051
0052 void PutAmp(size_t* perm,Complex amp,size_t pnumber);
0053 void PutColor(size_t* perm,Complex color,size_t pnumber);
0054 Complex GetAmp(size_t* perm,size_t pnumber);
0055 Complex GetColor(size_t* perm,size_t pnumber);
0056
0057 };
0058
0059
0060
0061
0062
0063 }
0064
0065 #endif