Cmake gtest (#79)
* Check rackpin and gear for zero radii * rebase zero-radii-check (#69) * contributing * Update push-freecad.yml updated actions/checkout to v4 * dragging log for debugging * fix calcdxNorm crash * setDebug and remove MBDyn* * Update cmakelists.txt * fix includes for gcc-14 gcc-14 is more disciplined about not including <algorithm> transitively. * fix runDragStep * backhoe files (#65) * Mark unused variables to silence compiler warnings. (#64) * Backhoe issues (#67) * backhoe issues * runDragStep edit * backhoe issues * runDragStep edit * Reduce large drag step progressively until convergence. * Switch to using built-in M_PI, even on MSVC (#68) --------- Co-authored-by: Brad Collette <bradcollette@pop-os.localdomain> Co-authored-by: mosfet80 <realeandrea@yahoo.it> Co-authored-by: PaddleStroke <pierrelouis.boyer@gmail.com> Co-authored-by: Jed Brown <jed@jedbrown.org> Co-authored-by: sliptonic <shopinthewoods@gmail.com> Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org> * in progress * Gtest added * With changes from Assembly * WinMerge main and this branch * Add flag for GTest * Flag to suppress OndselSolverMain * rebase zero-radii-check (#69) * contributing * Update push-freecad.yml updated actions/checkout to v4 * dragging log for debugging * fix calcdxNorm crash * setDebug and remove MBDyn* * Update cmakelists.txt * fix includes for gcc-14 gcc-14 is more disciplined about not including <algorithm> transitively. * fix runDragStep * backhoe files (#65) * Mark unused variables to silence compiler warnings. (#64) * Backhoe issues (#67) * backhoe issues * runDragStep edit * backhoe issues * runDragStep edit * Reduce large drag step progressively until convergence. * Switch to using built-in M_PI, even on MSVC (#68) --------- Co-authored-by: Brad Collette <bradcollette@pop-os.localdomain> Co-authored-by: mosfet80 <realeandrea@yahoo.it> Co-authored-by: PaddleStroke <pierrelouis.boyer@gmail.com> Co-authored-by: Jed Brown <jed@jedbrown.org> Co-authored-by: sliptonic <shopinthewoods@gmail.com> Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org> * in progress * Gtest added * With changes from Assembly * Add flag for GTest * Flag to suppress OndselSolverMain --------- Co-authored-by: Brad Collette <bradcollette@pop-os.localdomain> Co-authored-by: mosfet80 <realeandrea@yahoo.it> Co-authored-by: PaddleStroke <pierrelouis.boyer@gmail.com> Co-authored-by: Jed Brown <jed@jedbrown.org> Co-authored-by: sliptonic <shopinthewoods@gmail.com> Co-authored-by: Chris Hennes <chennes@pioneerlibrarysystem.org>
This commit is contained in:
@@ -360,6 +360,26 @@ ASMTSpatialContainer* MbD::ASMTSpatialContainer::partOrAssembly()
|
||||
return this;
|
||||
}
|
||||
|
||||
void MbD::ASMTSpatialContainer::updateForFrame(size_t index)
|
||||
{
|
||||
position3D = getPosition3D(index);
|
||||
rotationMatrix = getRotationMatrix(index);
|
||||
velocity3D = getVelocity3D(index);
|
||||
omega3D = getOmega3D(index);
|
||||
acceleration3D = getAcceleration3D(index);
|
||||
alpha3D = getAlpha3D(index);
|
||||
}
|
||||
|
||||
void MbD::ASMTSpatialContainer::updateFromInitiallyAssembledState()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void MbD::ASMTSpatialContainer::updateFromInputState()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void MbD::ASMTSpatialContainer::updateFromMbD()
|
||||
{
|
||||
auto mbdUnts = mbdUnits();
|
||||
@@ -372,6 +392,7 @@ void MbD::ASMTSpatialContainer::updateFromMbD()
|
||||
omega3D = omeOPO;
|
||||
auto aOcmO = mbdPart->qXddot()->times(mbdUnts->acceleration);
|
||||
auto alpOPO = mbdPart->alpOpO()->times(mbdUnts->alpha);
|
||||
alpha3D = alpOPO;
|
||||
auto& rPcmP = principalMassMarker->position3D;
|
||||
auto& aAPp = principalMassMarker->rotationMatrix;
|
||||
auto aAOP = aAOp->timesTransposeFullMatrix(aAPp);
|
||||
@@ -384,7 +405,8 @@ void MbD::ASMTSpatialContainer::updateFromMbD()
|
||||
auto vOPO = vOcmO->minusFullColumn(omeOPO->cross(rPcmO));
|
||||
velocity3D = vOPO;
|
||||
auto aOPO = aOcmO->minusFullColumn(alpOPO->cross(rPcmO))->minusFullColumn(omeOPO->cross(omeOPO->cross(rPcmO)));
|
||||
xs->push_back(rOPO->at(0));
|
||||
acceleration3D = aOPO;
|
||||
xs->push_back(rOPO->at(0));
|
||||
ys->push_back(rOPO->at(1));
|
||||
zs->push_back(rOPO->at(2));
|
||||
auto bryantAngles = aAOP->bryantAngles();
|
||||
@@ -764,3 +786,21 @@ FColDsptr MbD::ASMTSpatialContainer::getOmega3D(size_t i)
|
||||
vec3->atiput(2, omezs->at(i));
|
||||
return vec3;
|
||||
}
|
||||
|
||||
FColDsptr MbD::ASMTSpatialContainer::getAcceleration3D(size_t i)
|
||||
{
|
||||
auto vec3 = std::make_shared<FullColumn<double>>(3);
|
||||
vec3->atiput(0, axs->at(i));
|
||||
vec3->atiput(1, ays->at(i));
|
||||
vec3->atiput(2, azs->at(i));
|
||||
return vec3;
|
||||
}
|
||||
|
||||
FColDsptr MbD::ASMTSpatialContainer::getAlpha3D(size_t i)
|
||||
{
|
||||
auto vec3 = std::make_shared<FullColumn<double>>(3);
|
||||
vec3->atiput(0, alpxs->at(i));
|
||||
vec3->atiput(1, alpys->at(i));
|
||||
vec3->atiput(2, alpzs->at(i));
|
||||
return vec3;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user