FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
InternalCableWithAttractor.h
1
9
10#pragma once
11
12// Includes
13#include "AttractorNetBin.h"
14
15#include <cable/subroutines/InternalCableWithBottomContact.h>
16
17// Class definition
19{
20public:
22 InternalCableWithAttractor(ISimObjectCreator* creator, const SCableSpec& CableSpec, std::string attractorName);
23 virtual void FinalSetup(const double dT, const double* const adX, ISimObjectCreator* const creator);
24
26 void SetAttractor(AttractorNetBin* attractor);
27
30 void UpdateAttractorMotion(double dT, const double* adX) const;
31
32protected:
34 void AddNodeForce(const double pos[3], const double vel[3], double force[3]) const override;
35
37 void AddElementForce(int cableElement,
38 const double adPosA[3],
39 const double adVelA[3],
40 const double adPosB[3],
41 const double adVelB[3],
42 double adForceA[3],
43 double adForceB[3],
44 double dT) const override;
45
46
47 std::string m_attractorName;
50};
The net bin of Seine/Vessel: a sphere that pulls the net and warp nodes inside it.
Definition AttractorNetBin.h:16
Class containing a cable object to be part of larger cable structures.
Definition InternalCableWithAttractor.h:19
void SetAttractor(AttractorNetBin *attractor)
Sets the attractor to use.
InternalCableWithAttractor(ISimObjectCreator *creator, const SCableSpec &CableSpec, std::string attractorName)
The constructor sets the pointer to the output object and the parser object.
void UpdateAttractorMotion(double dT, const double *adX) const
AttractorNetBin * m_attractor
A pointer to the attractor to use.
Definition InternalCableWithAttractor.h:48
void AddNodeForce(const double pos[3], const double vel[3], double force[3]) const override
Adds the attractor's pull on an internal node, once (FISH-0114).
AttractorNetBin::Motion m_attractorMotion
As UpdateAttractorMotion found it.
Definition InternalCableWithAttractor.h:49
void AddElementForce(int cableElement, const double adPosA[3], const double adVelA[3], const double adPosB[3], const double adVelB[3], double adForceA[3], double adForceB[3], double dT) const override
Adds the forces from each cable element.
Class containing a cable object to be part of other structures.
Definition InternalCableWithBottomContact.h:21
Where the attractor is, how fast it moves, and how strongly it pulls.
Definition AttractorNetBin.h:20
Contains some specifications used for simulating cables.
Definition InternalCable.h:36