Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
9b74235
Add start of dynamics code
zfergus May 31, 2024
75d0588
Add comments to OrthogonalityPotential::hessian
zfergus May 31, 2024
8b3a1b2
Add J matrix to AffineBody class
zfergus Jun 6, 2024
1e31d41
Merge branch 'main' into dynamics
zfergus Nov 10, 2024
5c73e27
Fix comment
zfergus Nov 11, 2024
73c28ce
Merge branch 'main' into dynamics
zfergus Jun 8, 2025
47c282b
[WIP] Implement rigid body dynamics framework
zfergus Jun 13, 2025
caf4d50
Fix rotation_vector_to_matrix derivatives
zfergus Jun 14, 2025
59edd85
Test RigidBody class
zfergus Jun 17, 2025
5cbe3d4
Test InertialTerm
zfergus Jun 18, 2025
dbad1ba
Add density parameter to mass calculations; store R0 in RB
zfergus Jun 18, 2025
5d7512a
Add (empty) simulator loop
zfergus Jun 18, 2025
0107073
Move body forces into separate class
zfergus Jun 21, 2025
e118277
Merge branch 'main' into dynamics
zfergus Aug 18, 2025
6987872
Remove duplicate cross_product_matrix function
zfergus Aug 18, 2025
3bb8029
Refactor error handling in matrix projection functions to use log_and…
zfergus Aug 18, 2025
f34250b
Remove cross_product_matrix function from pose.cpp
zfergus Aug 18, 2025
42510aa
Fix CMake option syntax for CCD Query IO, filib, libigl, and scalable…
zfergus Aug 18, 2025
e560de5
Initialize integral array in compute_mass_properties_3D with empty br…
zfergus Aug 18, 2025
3a9b326
Remove unicode from test names for Windows CI
zfergus Aug 18, 2025
3491217
Remove unused K_dKj_plus_K_dKj_T
zfergus Aug 19, 2025
e10542a
Add RigidBody class bindings to expose mass and inertia properties.
zfergus Aug 20, 2025
ea38e5d
Fix broad phase benchmark
zfergus Aug 24, 2025
f27fbe8
Update GIT_TAG for ipc_toolkit_tests_data and modify expected output …
zfergus Aug 24, 2025
7f75e25
Refactor broad phase collision detection methods
zfergus Aug 24, 2025
0c00276
Refactor nonlinear CCD methods to use NonlinearCCD class and simplify…
zfergus Aug 28, 2025
0f3bc00
Add RigidCandidates class for managing collision candidates and imple…
zfergus Aug 28, 2025
7470786
Merge branch 'main' into dynamics
zfergus Sep 1, 2025
a5674a6
Merge branch 'main' into dynamics
zfergus Sep 1, 2025
7c702d6
Merge branch 'main' into dynamics
zfergus Jan 27, 2026
6b834f5
Refactor math utils and update NonlinearCCD API
zfergus Jan 27, 2026
d647396
Fix NonlinearCCD parameter order
zfergus Jan 27, 2026
63b330c
Fix Clang-Tidy Errors
zfergus Jan 27, 2026
701318d
Add NOLINTNEXTLINE for identifier-naming
zfergus Jan 27, 2026
30c802f
Assert Q_hat size instead of torque size
zfergus Jan 27, 2026
ebf466f
Fix nonlinear CCD; update body force parameter names
zfergus Jan 28, 2026
7cb148b
Use Eigen::ConstRef for function parameters
zfergus Jan 28, 2026
52bdbfd
Start work on RigidCandidates
zfergus Feb 1, 2026
d29ec6a
Update normal hessians to vectorized 3rd-order tensor format
zfergus Feb 2, 2026
1c89c51
Remove invisible unicode
zfergus Feb 2, 2026
e7c63c3
Skip force and torque computations when zero
zfergus Feb 2, 2026
22fc7b1
Fix normal hessian calculations for vectorized order
zfergus Feb 3, 2026
860f714
Refactor tangent basis and rel velocity Jacobians and update tests
zfergus Feb 4, 2026
c1cbee6
Update TangentialPotential to match new layout for Jacobians
zfergus Feb 4, 2026
81d7b29
Update finite-diff package version to 1.0.4
zfergus Feb 4, 2026
7febecd
Add ground contact dynamics and related tests
zfergus Feb 4, 2026
486985b
Bind write_gltf and add Save button
zfergus Feb 4, 2026
ae11670
Merge branch 'main' into dynamics
zfergus Feb 7, 2026
c182fe8
Remove maybe_parallel_for from utils sources
zfergus Feb 7, 2026
41c8b71
Rigid dynamics: simulator API, fixes, and tests
zfergus Feb 7, 2026
0aa7eda
Merge branch 'main' into dynamics
zfergus Feb 9, 2026
5bb84f1
Add linearized rigid body collision to simulator
zfergus Feb 10, 2026
40ec7cd
Enhance rigid body dynamics and GLTF I/O support
zfergus Feb 18, 2026
29fdcb9
Improve robustness of rigid simulator
zfergus Feb 20, 2026
6a1b2c9
Use Eigen::Hyperplane for planes
zfergus Feb 21, 2026
1948283
Refactor rigid/affine dynamics API and potentials
zfergus Feb 21, 2026
72379e7
Merge branch 'main' into dynamics
zfergus Feb 21, 2026
122f4e7
Enable extra-semi warning and fix extra semicolons
zfergus Feb 21, 2026
07f211e
Bump ipc_toolkit tests data Git tag
zfergus Feb 21, 2026
73256f8
Include <memory> in read_gltf.hpp
zfergus Feb 21, 2026
2b20d22
Use Eigen::VectorXd for gradient in test
zfergus Feb 21, 2026
18a0e90
Expose Eigen system include dir and fix tests
zfergus Feb 21, 2026
bccae4e
Merge branch 'main' into dynamics
zfergus Feb 28, 2026
5d432b4
Merge branch 'main' into dynamics
zfergus Feb 28, 2026
0581aa9
Merge branch 'main' into dynamics
zfergus Mar 1, 2026
f08278a
Fix tests for ColMajor derivatives
zfergus Mar 1, 2026
34fe26e
Merge branch 'main' into dynamics
zfergus Mar 1, 2026
14503a6
Merge branch 'main' into dynamics
zfergus Mar 1, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,10 @@ include(tinyad)
# TODO: Make this a private dependency once we stop exposing TinyAD types in the public API.
target_link_libraries(ipc_toolkit PUBLIC TinyAD::TinyAD)

# TinyGLTF
include(tinygltf)
target_link_libraries(ipc_toolkit PRIVATE tinygltf::tinygltf)

# CCD
if(IPC_TOOLKIT_WITH_INEXACT_CCD)
# Etienne Vouga's CTCD Library for the floating point root finding algorithm
Expand Down
2 changes: 1 addition & 1 deletion cmake/ipc_toolkit/ipc_toolkit_tests_data.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ else()
SOURCE_DIR ${IPC_TOOLKIT_TESTS_DATA_DIR}

GIT_REPOSITORY https://github.com/ipc-sim/ipc-toolkit-tests-data.git
GIT_TAG c7eba549d9a80d15569a013c473f0aff104ac44a
GIT_TAG 5f455c16f461e56d68e9241fa038bd20d95bce0a

CONFIGURE_COMMAND ""
BUILD_COMMAND ""
Expand Down
21 changes: 21 additions & 0 deletions cmake/recipes/tinygltf.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# TinyGLTF (https://github.com/syoyo/tinygltf)
# License: MIT
if(TARGET tinygltf::tinygltf)
return()
endif()

message(STATUS "Third-party: creating target 'tinygltf::tinygltf'")

include(CPM)
CPMAddPackage(
URI "gh:syoyo/tinygltf@2.9.6"
DOWNLOAD_ONLY TRUE
)

add_library(tinygltf)
add_library(tinygltf::tinygltf ALIAS tinygltf)
target_sources(tinygltf PRIVATE ${tinygltf_SOURCE_DIR}/tiny_gltf.cc)
target_include_directories(tinygltf INTERFACE
$<BUILD_INTERFACE:${tinygltf_SOURCE_DIR}>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
)
Loading