47 |
|
#include "math/SeqRandNumGen.hpp" |
48 |
|
|
49 |
|
namespace oopse { |
50 |
< |
|
51 |
< |
|
52 |
< |
struct HydroProp{ |
50 |
> |
|
51 |
> |
|
52 |
> |
struct HydroProp{ |
53 |
|
Vector3d cor; |
54 |
|
Mat3x3d Xirtt; |
55 |
|
Mat3x3d Xirrt; //Xirrt == Xirtr |
56 |
|
Mat3x3d Xirtr; |
57 |
|
Mat3x3d Xirrr; |
58 |
|
Mat6x6d S; |
59 |
< |
}; |
60 |
< |
|
59 |
> |
}; |
60 |
> |
|
61 |
|
/** |
62 |
|
* @class LDForceManager |
63 |
< |
* Force manager for Lagevin Dynamics applying friction and random forces as well as torques. |
63 |
> |
* Force manager for Lagevin Dynamics applying friction and random |
64 |
> |
* forces as well as torques. |
65 |
|
*/ |
66 |
< |
class LDForceManager : public ForceManager{ |
67 |
< |
|
66 |
> |
class LDForceManager : public ForceManager{ |
67 |
> |
|
68 |
|
public: |
69 |
|
LDForceManager(SimInfo * info); |
70 |
< |
|
70 |
> |
|
71 |
|
protected: |
72 |
|
virtual void postCalculation(); |
73 |
< |
|
73 |
> |
|
74 |
|
private: |
75 |
|
std::map<std::string, HydroProp> parseFrictionFile(const std::string& filename); |
76 |
|
void genRandomForceAndTorque(Vector3d& force, Vector3d& torque, unsigned int index, double variance); |
77 |
|
std::vector<HydroProp> hydroProps_; |
78 |
|
SeqRandNumGen randNumGen_; |
79 |
|
double variance_; |
80 |
< |
}; |
81 |
< |
|
80 |
> |
double langevinBufferRadius_; |
81 |
> |
double frozenBufferRadius_; |
82 |
> |
bool sphericalBoundaryConditions_; |
83 |
> |
}; |
84 |
> |
|
85 |
|
} //end namespace oopse |
86 |
|
#endif //BRAINS_FORCEMANAGER_HPP |
87 |
|
|