Skip to content

Commit

Permalink
Merge branch 'master' into compiler_options
Browse files Browse the repository at this point in the history
  • Loading branch information
MatthijsBurgh committed Oct 31, 2023
2 parents 4f192e7 + 7478f96 commit 5cab53f
Show file tree
Hide file tree
Showing 11 changed files with 35 additions and 20 deletions.
17 changes: 13 additions & 4 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,15 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04]
os: [ubuntu-20.04, ubuntu-22.04]
orocos_build_type: [Debug, Release]
compiler: [gcc, clang]
python_version: ['3.8']
python_version: ['3.8', '3.10']
exclude:
- os: ubuntu-20.04
python_version: '3.10'
- os: ubuntu-22.04
python_version: '3.8'
include:
- os: ubuntu-20.04
orocos_build_type: Release
Expand All @@ -29,12 +34,16 @@ jobs:
orocos_build_type: Release
compiler: gcc
python_version: '3.11'
- os: ubuntu-22.04
orocos_build_type: Release
compiler: gcc
python_version: '3.11'
env:
CC: ${{ matrix.compiler }}
OROCOS_BUILD_TYPE: ${{ matrix.orocos_build_type }}
ROS_PYTHON_VERSION: ${{ matrix.python_version }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive
- uses: actions/setup-python@v4
Expand Down Expand Up @@ -88,7 +97,7 @@ jobs:
branch: release-1.5
env: ${{ matrix.env }}
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive
if: ${{ (github.event_name == 'push' && endsWith(github.ref, matrix.branch)) || (github.event_name == 'pull_request' && endsWith(github.base_ref, matrix.branch)) }}
Expand Down
2 changes: 1 addition & 1 deletion orocos_kdl/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ if(NOT EIGEN3_FOUND)
include(${PROJ_SOURCE_DIR}/cmake/FindEigen3.cmake)
endif()
include_directories(SYSTEM ${EIGEN3_INCLUDE_DIR})
SET(KDL_CFLAGS "${KDL_CFLAGS} -I${EIGEN3_INCLUDE_DIR}")
SET(KDL_CFLAGS "${KDL_CFLAGS} -I\"${EIGEN3_INCLUDE_DIR}\"")

# Check the platform STL containers capabilities
include(cmake/CheckSTLContainers.cmake)
Expand Down
6 changes: 3 additions & 3 deletions orocos_kdl/examples/chainiksolverpos_lma_demo.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -90,9 +90,9 @@ void test_inverseposkin(KDL::Chain& chain) {
KDL::JntArray q_sol(n);
for (int trial=0;trial<num_of_trials;++trial) {
q.data.setRandom();
q.data *= PI;
q.data *= KDL::PI;
q_init.data.setRandom();
q_init.data *= PI;
q_init.data *= KDL::PI;
KDL::Frame pos_goal,pos_reached;
fwdkin.JntToCart(q,pos_goal);
//solver.compute_fwdpos(q.data);
Expand Down Expand Up @@ -177,7 +177,7 @@ int main(int argc,char* argv[]) {
<< " This routine can take more then 6 minutes to execute. It then gives statistics on execution times\n"
<< " and failures.\n"
<< " Typically when executed 1 000 000 times, you will still see some small amount of failures\n"
<< " Typically these failures are in the neighbourhoud of singularities. Most failures of type -2 still\n"
<< " Typically these failures are in the neighbourhood of singularities. Most failures of type -2 still\n"
<< " reach an accuracy better than 1E-4.\n"
<< " This is much better than ChainIkSolverPos_NR, which fails a few times per 100 trials.\n";

Expand Down
1 change: 1 addition & 0 deletions orocos_kdl/package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@

<export>
<build_type>cmake</build_type>
<rosdoc config="rosdoc.yaml"/>
</export>

</package>
5 changes: 5 additions & 0 deletions orocos_kdl/rosdoc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
- builder: doxygen
name: C++ API
file_patterns: '*.cpp *.cxx *.h *.hpp *.inl'
tab_size: 4
exclude_patterns: '*.svn* CMake*'
2 changes: 1 addition & 1 deletion orocos_kdl/src/chainexternalwrenchestimator.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ namespace KDL {

/**
* Calculates robot's initial momentum in the joint space.
* Bassically, sets the offset for future estimation (momentum calculation).
* Basically, sets the offset for future estimation (momentum calculation).
* If this method is not called by the user, zero values will be taken for the initial momentum.
*/
int setInitialMomentum(const JntArray &joint_position, const JntArray &joint_velocity);
Expand Down
2 changes: 1 addition & 1 deletion orocos_kdl/src/chainhdsolver_vereshchagin.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -311,7 +311,7 @@ namespace KDL
* simulate constraint forces in certain situations, however, there, final derivation of this principle in the software is different. However, in
* the case of this more advanced forward dynamics computations, the user needs to be aware of prioritizations between input interfaces
* (mentioned in "Prioritizations" section above) and internal policies on
* handling singularities (mentioned in "Singularities and matrix inversions" section bellow).
* handling singularities (mentioned in "Singularities and matrix inversions" section below).
*
* ### Singularities and matrix inversions
*
Expand Down
2 changes: 1 addition & 1 deletion orocos_kdl/src/path_roundedcomposite.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,7 @@ class Path_RoundedComposite : public Path
Path_RoundedComposite(double radius,double eqradius,RotationalInterpolation* orient, bool aggregate=true);

/**
* Adds a point to this rounded composite, between to adjecent points
* Adds a point to this rounded composite, between two adjacent points
* a Path_Line will be created, between two lines there will be
* rounding with the given radius with a Path_Circle
*
Expand Down
2 changes: 1 addition & 1 deletion orocos_kdl/src/utilities/ldl_solver_eigen.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ namespace KDL
*
* The algorithm factor A into the product of three matrices LDL^T, where L
* is a lower triangular matrix and D is a diagonal matrix. This allows q
* to be computed without explicity inverting A. Note that the LDL decomposition
* to be computed without explicitly inverting A. Note that the LDL decomposition
* is a variant of the classical Cholesky Decomposition that does not require
* the computation of square roots.
* Input parameters:
Expand Down
14 changes: 7 additions & 7 deletions orocos_kdl/tests/solvertest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -922,12 +922,12 @@ void SolverTest::VereshchaginTest()
Twist unit_force_x_a(
Vector(0.0, 0.0, 0.0),
Vector(0.0, 0.0, 0.0));
alpha_unit_force.setColumn(3, unit_force_x_a); // constraint diabled... In this direction, end-effector's motion is left to emerge naturally
alpha_unit_force.setColumn(3, unit_force_x_a); // constraint disabled... In this direction, end-effector's motion is left to emerge naturally

Twist unit_force_y_a(
Vector(0.0, 0.0, 0.0),
Vector(0.0, 0.0, 0.0));
alpha_unit_force.setColumn(4, unit_force_y_a); // constraint diabled... In this direction, end-effector's motion is left to emerge naturally
alpha_unit_force.setColumn(4, unit_force_y_a); // constraint disabled... In this direction, end-effector's motion is left to emerge naturally

Twist unit_force_z_a(
Vector(0.0, 0.0, 0.0),
Expand Down Expand Up @@ -1515,8 +1515,8 @@ void SolverTest::FdAndVereshchaginSolversConsistencyTest()

// #########################################################################################
// Vereshchagin Hybrid Dynamics solver
// When the Cartesian Acceleration Constraints are deactivated, the computations perfomed
// in the Vereshchagin solver are completely the same as the computations perfomed in
// When the Cartesian Acceleration Constraints are deactivated, the computations performed
// in the Vereshchagin solver are completely the same as the computations performed in
// the well-known FD Articulated Body Algorithm (ABA) developed by Featherstone

// Constraint Unit forces at the end-effector. Set to zero to deactivate all constraints
Expand All @@ -1533,7 +1533,7 @@ void SolverTest::FdAndVereshchaginSolversConsistencyTest()
Vector linearAcc(0.0, 0.0, 9.81); Vector angularAcc(0.0, 0.0, 0.0);
Twist root_Acc(linearAcc, angularAcc);

// Torques felt in robot's joints due to constrait forces acting on the end-effector
// Torques felt in robot's joints due to constraint forces acting on the end-effector
JntArray constraint_tau(nj); // In this test, all elements of this array should result to zero
JntArray q_dd_Ver(nj); // Resultant joint accelerations

Expand Down Expand Up @@ -1574,7 +1574,7 @@ void SolverTest::ExternalWrenchEstimatorTest()
/**
* This EPS has a slightly different purpose than the EPSes of the other solver-tests. While other EPSes are taking care of the differences that
* originate from e.g. floating-number imprecisions, different compilers (or same compiler but different flags) used between different machines (OS), etc.
* The EPS specified bellow is there to cover those imperfections as well but, it's also there to
* The EPS specified below is there to cover those imperfections as well but, it's also there to
* take into account the noise in estimated signals (the differences between estimated and ground-truth wrenches), caused by other computations in this test
* (ones coming from the implemented controller and the dynamics simulator) not just those coming from the estimator itself.
*/
Expand Down Expand Up @@ -1637,7 +1637,7 @@ void SolverTest::ExternalWrenchEstimatorTest()
std::vector<KDL::JntArray> jnt_pos;
std::vector<KDL::Wrench> wrench_reference;

// Intialize random generator
// Initialize random generator
std::random_device rd; //Will be used to obtain a seed for the random number engine
std::mt19937 gen(rd()); //Standard mersenne_twister_engine seeded with rd()
std::uniform_real_distribution<> dis_force(-15.0, 15.0);
Expand Down
2 changes: 1 addition & 1 deletion python_orocos_kdl/pybind11
Submodule pybind11 updated 113 files

0 comments on commit 5cab53f

Please sign in to comment.