| 760 |
|
*/ |
| 761 |
|
void addTrq(const Vector3d& trq, int snapshotNo) { |
| 762 |
|
((snapshotMan_->getSnapshot(snapshotNo))->*storage_).torque[localIndex_] += trq; |
| 763 |
+ |
} |
| 764 |
+ |
|
| 765 |
+ |
|
| 766 |
+ |
|
| 767 |
+ |
/** |
| 768 |
+ |
* Returns the previous particlePot of this stuntDouble |
| 769 |
+ |
* @return the particlePot of this stuntDouble |
| 770 |
+ |
*/ |
| 771 |
+ |
RealType getPrevParticlePot() { |
| 772 |
+ |
return ((snapshotMan_->getPrevSnapshot())->*storage_).particlePot[localIndex_]; |
| 773 |
+ |
} |
| 774 |
+ |
|
| 775 |
+ |
/** |
| 776 |
+ |
* Returns the current particlePot of this stuntDouble |
| 777 |
+ |
* @return the particlePot of this stuntDouble |
| 778 |
+ |
*/ |
| 779 |
+ |
RealType getParticlePot() { |
| 780 |
+ |
return ((snapshotMan_->getCurrentSnapshot())->*storage_).particlePot[localIndex_]; |
| 781 |
+ |
} |
| 782 |
+ |
|
| 783 |
+ |
/** |
| 784 |
+ |
* Returns the particlePot of this stuntDouble in specified snapshot |
| 785 |
+ |
* |
| 786 |
+ |
* @return the particlePot of this stuntDouble |
| 787 |
+ |
* @param snapshotNo |
| 788 |
+ |
*/ |
| 789 |
+ |
RealType getParticlePot(int snapshotNo) { |
| 790 |
+ |
return ((snapshotMan_->getSnapshot(snapshotNo))->*storage_).particlePot[localIndex_]; |
| 791 |
+ |
} |
| 792 |
+ |
|
| 793 |
+ |
/** |
| 794 |
+ |
* Sets the previous particlePot of this stuntDouble |
| 795 |
+ |
* |
| 796 |
+ |
* @param particlePot new particlePot |
| 797 |
+ |
* @see #getParticlePot |
| 798 |
+ |
*/ |
| 799 |
+ |
void setPrevParticlePot(const RealType& particlePot) { |
| 800 |
+ |
((snapshotMan_->getPrevSnapshot())->*storage_).particlePot[localIndex_] = particlePot; |
| 801 |
+ |
} |
| 802 |
+ |
|
| 803 |
+ |
/** |
| 804 |
+ |
* Sets the current particlePot of this stuntDouble |
| 805 |
+ |
* @param particlePot new particlePot |
| 806 |
+ |
*/ |
| 807 |
+ |
void setParticlePot(const RealType& particlePot) { |
| 808 |
+ |
((snapshotMan_->getCurrentSnapshot())->*storage_).particlePot[localIndex_] = particlePot; |
| 809 |
+ |
} |
| 810 |
+ |
|
| 811 |
+ |
/** |
| 812 |
+ |
* Sets the particlePot of this stuntDouble in specified snapshot |
| 813 |
+ |
* |
| 814 |
+ |
* @param particlePot particlePot to be set |
| 815 |
+ |
* @param snapshotNo |
| 816 |
+ |
* @see #getParticlePot |
| 817 |
+ |
*/ |
| 818 |
+ |
void setParticlePot(const RealType& particlePot, int snapshotNo) { |
| 819 |
+ |
((snapshotMan_->getSnapshot(snapshotNo))->*storage_).particlePot[localIndex_] = particlePot; |
| 820 |
+ |
} |
| 821 |
+ |
|
| 822 |
+ |
/** |
| 823 |
+ |
* Adds particlePot into the previous particlePot of this stuntDouble |
| 824 |
+ |
* |
| 825 |
+ |
* @param particlePot new particlePot |
| 826 |
+ |
* @see #getParticlePot |
| 827 |
+ |
*/ |
| 828 |
+ |
void addPrevParticlePot(const RealType& particlePot) { |
| 829 |
+ |
((snapshotMan_->getPrevSnapshot())->*storage_).particlePot[localIndex_] += particlePot; |
| 830 |
+ |
} |
| 831 |
+ |
|
| 832 |
+ |
/** |
| 833 |
+ |
* Adds particlePot into the current particlePot of this stuntDouble |
| 834 |
+ |
* @param particlePot new particlePot |
| 835 |
+ |
*/ |
| 836 |
+ |
void addParticlePot(const RealType& particlePot) { |
| 837 |
+ |
((snapshotMan_->getCurrentSnapshot())->*storage_).particlePot[localIndex_] += particlePot; |
| 838 |
+ |
} |
| 839 |
+ |
|
| 840 |
+ |
/** |
| 841 |
+ |
* Adds particlePot into the particlePot of this stuntDouble in specified snapshot |
| 842 |
+ |
* |
| 843 |
+ |
* @param particlePot particlePot to be add |
| 844 |
+ |
* @param snapshotNo |
| 845 |
+ |
* @see #getParticlePot |
| 846 |
+ |
*/ |
| 847 |
+ |
void addParticlePot(const RealType& particlePot, int snapshotNo) { |
| 848 |
+ |
((snapshotMan_->getSnapshot(snapshotNo))->*storage_).particlePot[localIndex_] += particlePot; |
| 849 |
|
} |
| 850 |
|
|
| 851 |
|
|
| 1008 |
|
|
| 1009 |
|
Vector3d body2Lab(const Vector3d& v, int frame){ |
| 1010 |
|
return getA(frame).transpose() * v; |
| 925 |
– |
} |
| 926 |
– |
|
| 927 |
– |
/** |
| 928 |
– |
* Returns the previous particle potential of this stuntDouble |
| 929 |
– |
* @return the particle potential of this stuntDouble |
| 930 |
– |
*/ |
| 931 |
– |
RealType getPrevParticlePot() { |
| 932 |
– |
return ((snapshotMan_->getPrevSnapshot())->*storage_).particlePot[localIndex_]; |
| 933 |
– |
} |
| 934 |
– |
|
| 935 |
– |
/** |
| 936 |
– |
* Returns the current particle potential of this stuntDouble |
| 937 |
– |
* @return the particle potential of this stuntDouble |
| 938 |
– |
*/ |
| 939 |
– |
RealType getParticlePot() { |
| 940 |
– |
return ((snapshotMan_->getCurrentSnapshot())->*storage_).particlePot[localIndex_]; |
| 941 |
– |
} |
| 942 |
– |
|
| 943 |
– |
/** |
| 944 |
– |
* Returns the particle potential of this stuntDouble in specified snapshot |
| 945 |
– |
* @return the particle potential of this stuntDouble |
| 946 |
– |
* @param snapshotNo |
| 947 |
– |
*/ |
| 948 |
– |
RealType getParticlePot(int snapshotNo) { |
| 949 |
– |
return ((snapshotMan_->getSnapshot(snapshotNo))->*storage_).particlePot[localIndex_]; |
| 1011 |
|
} |
| 1012 |
|
|
| 1013 |
|
/** |
| 953 |
– |
* Sets the previous particle potential of this stuntDouble |
| 954 |
– |
* @param po tnew particle potential |
| 955 |
– |
* @see #getParticlePot |
| 956 |
– |
*/ |
| 957 |
– |
void setPrevParticlePot(RealType pot) { |
| 958 |
– |
((snapshotMan_->getPrevSnapshot())->*storage_).particlePot[localIndex_] = pot; |
| 959 |
– |
} |
| 960 |
– |
|
| 961 |
– |
/** |
| 962 |
– |
* Sets the current velocity of this stuntDouble |
| 963 |
– |
* @param vel new velocity |
| 964 |
– |
*/ |
| 965 |
– |
void setParticlePot(RealType pot) { |
| 966 |
– |
((snapshotMan_->getCurrentSnapshot())->*storage_).particlePot[localIndex_] = pot; |
| 967 |
– |
} |
| 968 |
– |
|
| 969 |
– |
/** |
| 970 |
– |
* Sets the particle potential of this stuntDouble in specified snapshot |
| 971 |
– |
* @param pot potential to be set |
| 972 |
– |
* @param snapshotNo |
| 973 |
– |
* @see #getVel |
| 974 |
– |
*/ |
| 975 |
– |
void setParticlePot(RealType pot, int snapshotNo) { |
| 976 |
– |
((snapshotMan_->getSnapshot(snapshotNo))->*storage_).particlePot[localIndex_] = pot; |
| 977 |
– |
} |
| 978 |
– |
|
| 979 |
– |
/** |
| 1014 |
|
* <p> |
| 1015 |
|
* The purpose of the Visitor Pattern is to encapsulate an operation that you want to perform on |
| 1016 |
|
* the elements of a data structure. In this way, you can change the operation being performed |