Strong Coupling Core
0.1.0
Library for solving a system of strong coupled physical subsystems.
|
Base class for equations. Constrains two instances of Connector. More...
#include <Equation.h>
Public Member Functions | |
Equation () | |
Equation (Connector *, Connector *) | |
virtual | ~Equation () |
Connector * | getConnA () |
Connector * | getConnB () |
void | setDefault () |
void | setConnA (Connector *) |
void | setConnB (Connector *) |
void | setConnectors (Connector *, Connector *) |
JacobianElement | getGA () |
JacobianElement | getGB () |
JacobianElement | getddA () |
JacobianElement | getddB () |
void | setSpookParams (double relaxation, double compliance, double timeStep) |
Sets a, b, epsilon according to SPOOK. More... | |
double | getViolation () |
Get constraint violation, g. More... | |
double | setViolation (double g) |
void | setDefaultViolation () |
double | getVelocity () |
Get constraint velocity, G*W. More... | |
double | getFutureVelocity () |
void | setSpatialJacobianA (double x, double y, double z) |
Set the spatial components of connector A jacobian. More... | |
void | setSpatialJacobianA (const Vec3 &seed) |
void | setRotationalJacobianA (double x, double y, double z) |
Set the rotational components of connector A jacobian. More... | |
void | setRotationalJacobianA (const Vec3 &seed) |
void | setSpatialJacobianB (double x, double y, double z) |
Set the spatial components of connector B jacobian. More... | |
void | setSpatialJacobianB (const Vec3 &seed) |
void | setRotationalJacobianB (double x, double y, double z) |
Set the rotational components of connector B jacobian. More... | |
void | setRotationalJacobianB (const Vec3 &seed) |
void | setJacobian (double, double, double, double, double, double, double, double, double, double, double, double) |
Set all jacobian elements at once. More... | |
void | getSpatialJacobianSeedA (Vec3 &seed) |
Get the spatial components of connector A jacobian seed. More... | |
void | getRotationalJacobianSeedA (Vec3 &seed) |
Get the rotational components of connector A jacobian. More... | |
void | getSpatialJacobianSeedB (Vec3 &seed) |
Get the spatial components of connector B jacobian. More... | |
void | getRotationalJacobianSeedB (Vec3 &seed) |
Get the rotational components of connector B jacobian. More... | |
void | setG (double, double, double, double, double, double, double, double, double, double, double, double) |
void | setG (const Vec3 &spatialA, const Vec3 &rotationalA, const Vec3 &spatialB, const Vec3 &rotationalB) |
Public Attributes | |
double | m_a |
Spook parameter "a". More... | |
double | m_b |
Spook parameter "b". More... | |
double | m_epsilon |
Spook parameter "epsilon". More... | |
double | m_timeStep |
Time step. More... | |
Base class for equations. Constrains two instances of Connector.
Equation::Equation | ( | ) |
|
virtual |
Connector * Equation::getConnA | ( | ) |
Connector * Equation::getConnB | ( | ) |
JacobianElement Equation::getddA | ( | ) |
JacobianElement Equation::getddB | ( | ) |
double Equation::getFutureVelocity | ( | ) |
JacobianElement Equation::getGA | ( | ) |
JacobianElement Equation::getGB | ( | ) |
void Equation::getRotationalJacobianSeedA | ( | Vec3 & | seed | ) |
Get the rotational components of connector A jacobian.
void Equation::getRotationalJacobianSeedB | ( | Vec3 & | seed | ) |
Get the rotational components of connector B jacobian.
void Equation::getSpatialJacobianSeedA | ( | Vec3 & | seed | ) |
Get the spatial components of connector A jacobian seed.
seed |
void Equation::getSpatialJacobianSeedB | ( | Vec3 & | seed | ) |
Get the spatial components of connector B jacobian.
double Equation::getVelocity | ( | ) |
Get constraint velocity, G*W.
double Equation::getViolation | ( | ) |
Get constraint violation, g.
void Equation::setConnA | ( | Connector * | c | ) |
void Equation::setConnB | ( | Connector * | c | ) |
void Equation::setDefault | ( | ) |
void Equation::setDefaultViolation | ( | ) |
void Equation::setG | ( | double | sxA, |
double | syA, | ||
double | szA, | ||
double | rxA, | ||
double | ryA, | ||
double | rzA, | ||
double | sxB, | ||
double | syB, | ||
double | szB, | ||
double | rxB, | ||
double | ryB, | ||
double | rzB | ||
) |
void Equation::setG | ( | const Vec3 & | spatialA, |
const Vec3 & | rotationalA, | ||
const Vec3 & | spatialB, | ||
const Vec3 & | rotationalB | ||
) |
void Equation::setJacobian | ( | double | G1, |
double | G2, | ||
double | G3, | ||
double | G4, | ||
double | G5, | ||
double | G6, | ||
double | G7, | ||
double | G8, | ||
double | G9, | ||
double | G10, | ||
double | G11, | ||
double | G12 | ||
) |
Set all jacobian elements at once.
void Equation::setRotationalJacobianA | ( | double | x, |
double | y, | ||
double | z | ||
) |
Set the rotational components of connector A jacobian.
void Equation::setRotationalJacobianA | ( | const Vec3 & | seed | ) |
void Equation::setRotationalJacobianB | ( | double | x, |
double | y, | ||
double | z | ||
) |
Set the rotational components of connector B jacobian.
void Equation::setRotationalJacobianB | ( | const Vec3 & | seed | ) |
void Equation::setSpatialJacobianA | ( | double | x, |
double | y, | ||
double | z | ||
) |
Set the spatial components of connector A jacobian.
x | |
y | |
z |
void Equation::setSpatialJacobianA | ( | const Vec3 & | seed | ) |
void Equation::setSpatialJacobianB | ( | double | x, |
double | y, | ||
double | z | ||
) |
Set the spatial components of connector B jacobian.
void Equation::setSpatialJacobianB | ( | const Vec3 & | seed | ) |
void Equation::setSpookParams | ( | double | relaxation, |
double | compliance, | ||
double | timeStep | ||
) |
Sets a, b, epsilon according to SPOOK.
relaxation | |
compliance | |
timeStep |
double Equation::setViolation | ( | double | g | ) |
double sc::Equation::m_a |
Spook parameter "a".
double sc::Equation::m_b |
Spook parameter "b".
double sc::Equation::m_epsilon |
Spook parameter "epsilon".
double sc::Equation::m_timeStep |
Time step.