-
Notifications
You must be signed in to change notification settings - Fork 37
Geometric Contact Potential #191
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
Huangzizhou
wants to merge
310
commits into
ipc-sim:main
Choose a base branch
from
Huangzizhou:gcp
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+26,842
−135
Open
Changes from 250 commits
Commits
Show all changes
310 commits
Select commit
Hold shift + click to select a range
04582ab
add local eps print
maxpaik16 1a337db
quadrature for point face potential
Huangzizhou 2b4ed80
face vertex potential in 3D, incomplete
Huangzizhou 0880e1e
comment out
maxpaik16 d13b29f
comment out
maxpaik16 ed0574c
fix grad/hess bug
maxpaik16 3304f5d
cleanup code
maxpaik16 eacfadc
more cleaning
maxpaik16 ff34c1c
set a to 0
maxpaik16 4be830b
add distance ratio param
maxpaik16 88010e6
use simple dist method
maxpaik16 733f077
fix some sqs, test case, and candidate dhat
maxpaik16 fd67ace
parallelize init_vertex_contact_distance_map
Huangzizhou 2861e12
make json param dhat max for local dhat
maxpaik16 e1335be
Merge pull request #2 from geometryprocessing/adaptive-eps
Huangzizhou 4d1a502
make adaptive epsilon optional
maxpaik16 fdcacdb
Merge pull request #3 from geometryprocessing/main
maxpaik16 50172fb
add some prints
maxpaik16 c0fc86e
fix dhat vs dhat**2
maxpaik16 f0c2e26
remove comments
maxpaik16 c397561
Merge pull request #4 from geometryprocessing/adaptive-eps
Huangzizhou 5127eb7
point face potential
Huangzizhou 3916061
Merge branch 'main' of https://github.com/geometryprocessing/smooth-ipc
Huangzizhou b7c5282
fix eps
Huangzizhou b2163fc
verified 3D vertex-face potential
Huangzizhou dfdf68e
template dimension in SmoothEdgeEdgeCollision
Huangzizhou 9db82e2
face-face candidate
Huangzizhou 52b7b8c
consider orientation in 2D
Huangzizhou 66d932e
include adjacent edges in edge-edge candidates
Huangzizhou a90e489
face-face candidate for BVH
Huangzizhou 3d03151
refactor code, 2D validated, 3D buggy
Huangzizhou f773104
fix bug in 3d face-vertex
Huangzizhou bf2eb75
reduce template params
Huangzizhou 0d524d7
fix bug in edge-edge potential
Huangzizhou 08db98f
fix artifact in point-edge potential
Huangzizhou 5008192
2D simulation working!
Huangzizhou b96ad43
fix compile err on mac
Huangzizhou ea98be7
add back adaptive dhat
Huangzizhou 49f9aaf
test for adaptive barrier
Huangzizhou d7d203a
remove smooth_point_edge in python
Huangzizhou d4f8237
add neighboring face-face pairs
Huangzizhou d5ec4e7
3d edge-edge collision, use the same as IPC for now
Huangzizhou 7454e2d
Merge branch 'main' of https://github.com/geometryprocessing/smooth-ipc
Huangzizhou 83d16b7
use old edge-edge potential for now
Huangzizhou 84a2c4b
reduce face-face candidates
Huangzizhou b329c67
code refactor
Huangzizhou ce4770b
fix comment
Huangzizhou ea98b45
re-organize code for 3d edge-edge collision
Huangzizhou 9802bfc
new edge-edge potential in 3D
Huangzizhou ae3e8b3
fix bugs in edge-edge potential
Huangzizhou 319163f
add finite difference
Huangzizhou b66a53b
move distance functions to separate folder
Huangzizhou c82234e
mollifier for edge-edge potential
Huangzizhou 6a96573
change edge-edge mollification
Huangzizhou a47399f
fix compile error
Huangzizhou 39f7648
fix compile error
Huangzizhou f8107d3
accelerate
Huangzizhou 5d7839d
normal penalty in edge-edge potential
Huangzizhou 02215e8
acceleration with more caching
Huangzizhou d6f56f5
more acceleration
Huangzizhou 81e64d7
acceleration
Huangzizhou c64a660
fix compute_min_distance
Huangzizhou f6c6c58
adaptive dhat
Huangzizhou 317ab27
fix bug in edge-edge potential normal term
Huangzizhou bb0200a
change minimum distance computation
Huangzizhou c997ce8
point-point potential in 2D
Huangzizhou 214366d
fix bug in edge-edge potential in 3D
Huangzizhou 050d163
point-point potential in 2D
Huangzizhou 92ec656
vertex-vertex potential in 3D
Huangzizhou 58de39a
vertex-vertex potential in 3D
Huangzizhou bc10ad5
vertex-edge potential in 3D
Huangzizhou 9eab924
fix bug in minimum distance
Huangzizhou 246f893
change virtual function
Huangzizhou 39e4aa6
more meaningful log
Huangzizhou 96f9b99
change hashing
Huangzizhou 372e56b
fix bug in edge-edge 3d
Huangzizhou d0872f3
fix adaptive dhat
Huangzizhou b0dcae5
add project_to_psd
Huangzizhou c9e88a0
2d vertex-edge potential
Huangzizhou 993d47a
edge_mollifier
Huangzizhou a2abd37
fix bug in edge-vertex potential
Huangzizhou 3dfdc51
simpler mollifier
Huangzizhou 8020b63
change to 3d formulation
Huangzizhou 5a16978
optimize code
Huangzizhou 26952a0
fix wrong type check
Huangzizhou 31edf09
try to fix edge-vertex in 2D
Huangzizhou d3429f8
change adaptive dhat
Huangzizhou 35b264a
fix discontinuity in energy
Huangzizhou ae11c38
fix bug in face_vertex
Huangzizhou b3ad2bb
smoother potential
Huangzizhou f2cb5a0
fix bug in wrong number of vertices
Huangzizhou 8cda392
fix bug
Huangzizhou a74b901
fix mollifier, change heaviside
Huangzizhou 6d19d14
better scaled contact weights
Huangzizhou 486aef2
clean code, change eps to dhat
Huangzizhou a70afad
move files around
Huangzizhou e52c175
fix bug in triangle area
Huangzizhou 5a11138
add autodiff lib, not used
Huangzizhou a928856
fixed-size matrix for autodiff
Huangzizhou 0973df9
clean functions
Huangzizhou 668af7c
acceleration of edge-edge by caching
Huangzizhou 9ac3bc8
clean function
Huangzizhou 3979683
make tests pass
Huangzizhou bc7cd7e
move around files
Huangzizhou db02e38
rename autodiff type
Huangzizhou 7d6e5c5
remove project PSD; class for each primitive
Huangzizhou dd77bde
fix bug in unordered_tuple
Huangzizhou 5b46b73
refactor 3D potential for better efficiency
Huangzizhou b9171fb
change tolerance
Huangzizhou c8612d4
remove not used files
Huangzizhou f60395a
add check for number of vertices
Huangzizhou 0bcbb48
put back caching
Huangzizhou 8644b0b
try to reduce cost of point_edge_distance autodiff
Huangzizhou 3c78e26
refactor for better efficiency
Huangzizhou abf6b11
remove AD for edge-edge mollifier grad
Huangzizhou 19ff37d
remove autodiff in edge mollifier, static size for autodiff
Huangzizhou 81ab0e2
more manual derivatives and tests
Huangzizhou 9744902
remove not used functions
Huangzizhou 25639bd
remove point term autodiff
Huangzizhou d5f3ca4
remove unused files
Huangzizhou a8cb493
prepare for point2
Huangzizhou 9984ba5
fix bug in point term
Huangzizhou f00f984
remove autodiff for edge term gradient
Huangzizhou b3a8a45
remove AD in point term hessian
Huangzizhou 4ca0667
fix compile error
Huangzizhou ef7bd14
use indices instead of blocks
Huangzizhou e73ed0e
format files
Huangzizhou b07cf48
remove autodiff in edge-edge mollifier
Huangzizhou 66fde95
move around functions
Huangzizhou fff6888
replace line-line closest direction autodiff
Huangzizhou 9bd7afb
refactor mollifier
Huangzizhou 3c8ca72
more robust
Huangzizhou 66b53f8
remove autodiff for point-face mollifier
Huangzizhou 313ed38
move 2D into the new code structure
Huangzizhou de10633
faster matrix assembly
Huangzizhou 52a7304
fix nan in energy
Huangzizhou 0bbdb8e
change scaling of mollifiers
Huangzizhou 6fcc3e0
friction
Huangzizhou b446664
change threshold for mollifier
Huangzizhou f955b1e
fix bug in edge term
Huangzizhou de21594
change mollifier threshold
Huangzizhou b318898
fix bugs in derivatives
Huangzizhou 076a3bf
change barrier power to integer
Huangzizhou 1e2ed31
change alpha to 1 in normal term
Huangzizhou b59dba2
clean code
Huangzizhou c609038
clean parallelism code
Huangzizhou b809f9c
refactor builder
Huangzizhou e5f79b3
simplify collisions builder
Huangzizhou 4ddced5
clean code
Huangzizhou cc0347f
make autodiff cmake option
Huangzizhou 90123d2
active min dist
Huangzizhou d894e33
fix compile error in python addon
Huangzizhou 001ec08
python binding for smooth collisions
Huangzizhou ff6ceac
new normal term formulation
Huangzizhou bd3dd26
merge main
Huangzizhou 51e0cf3
fix bug in edge term autodiff
Huangzizhou 1461cd3
enable shape derivatives for new formulation
Huangzizhou 7431bc7
support collisions deep copy
Huangzizhou 9504cf5
try to add friction force jacobian, still buggy
Huangzizhou 6752391
fix small bugs
Huangzizhou 1ec6e77
fix memory issue
Huangzizhou 557dbb0
fix compile error
Huangzizhou 2c29a4d
fix bug in compute_active_minimum_distance
Huangzizhou 8dda64a
Merge commit '617b80e92eb4310791a722fd1cc20c902b17683f' into fix-bug
Huangzizhou cbf0f79
fix python binding and compile error
Huangzizhou 3c30dc5
comment huge test
Huangzizhou beb56c1
increase threshold for failed unit test
Huangzizhou 0c287e1
friction force jacobian
Huangzizhou 5dc2eaa
separate 2d and 3d tests
Huangzizhou 8410ada
2D friction force jacobian tests
Huangzizhou 80e4d59
fix friction force jacobian test
Huangzizhou ecfebca
force hessian symmetric
Huangzizhou b9050b3
Update CI
Huangzizhou 6a78e28
fix cmake
Huangzizhou 0bfb223
remove autodiff lib
Huangzizhou 7e3e12a
disable complex tests in debug
Huangzizhou 3b8e90b
increase tolerance
Huangzizhou 816307f
Increase FD order
Huangzizhou 6e96e53
update unit test
Huangzizhou 20b0617
fix python binding
Huangzizhou 7fd5787
Fix problems with templated return types.
daniel-zint 2aded9d
Merge pull request #5 from geometryprocessing/dzint/windows_template_fix
Huangzizhou 0ba4e7c
fix warning
Huangzizhou 182eb72
template vector size
Huangzizhou 059cda0
fix bugs
Huangzizhou f90e8c7
fix missing definition
Huangzizhou d128e2c
fix compile error
Huangzizhou 512fda2
deal with codim vert/edge in 2D
Huangzizhou 1f7c102
3D codimensional edge/face
Huangzizhou 182e09b
try to fix CI
Huangzizhou 82f483d
fix compile error
Huangzizhou 7ee2026
fix wrong derivatives
Huangzizhou bc3fa7c
fix CI
Huangzizhou f937e09
fix compile error on windows
Huangzizhou f73987b
Fix compile error on windows
Huangzizhou 12db2bc
readme
Huangzizhou 6718175
Merge branch 'main' of github.com:geometryprocessing/geometric-contac…
Huangzizhou 9fa2c71
Merge branch 'main' of https://github.com/ipc-sim/ipc-toolkit
Huangzizhou 446c384
clang formatting
Huangzizhou e0c68dc
fix python compilation
Huangzizhou c7f8b9d
orientable flag
Huangzizhou 11467a0
remove deprecated flag
Huangzizhou 450a1d5
enum class BroadPhaseMethod
Huangzizhou e22a89c
remove CollisionBase class
Huangzizhou 9b7650f
get rid off templates
Huangzizhou ae528e7
fix bug
Huangzizhou aaf9513
change test param
Huangzizhou 80dda64
fix format
Huangzizhou 3b19523
Merge branch 'main' of https://github.com/ipc-sim/ipc-toolkit into dy…
Huangzizhou 7a1627e
format files
Huangzizhou a775902
disable pypi workflow
Huangzizhou 44c5e56
format files
Huangzizhou 81c41e3
format file
Huangzizhou 97316fe
remove not used file
Huangzizhou 15f3a13
skip expensive test
Huangzizhou 7185ecd
Merge pull request #6 from geometryprocessing/dynamic
Huangzizhou 8905abe
Merge branch 'main' into gcp
Huangzizhou 21f4a60
revert changes
Huangzizhou f622856
revert test change
Huangzizhou 6f1d422
Revert changes
Huangzizhou 7951138
clean repo
Huangzizhou b746117
format doc
Huangzizhou 9f0ed6d
formatting
Huangzizhou c861e4a
Merge branch 'main' of https://github.com/ipc-sim/ipc-toolkit into gcp
Huangzizhou 3726206
formatting
Huangzizhou 3da47f0
build function for broad phase methods
Huangzizhou baeed9b
formatting
Huangzizhou 91b840e
formatting
Huangzizhou a6931a2
Refactor IPC utility files and remove unused components
zfergus 72eb417
clang-tidy clean
Huangzizhou 82d5320
Merge branch 'gcp' of https://github.com/Huangzizhou/ipc-toolkit into…
Huangzizhou 73caa43
Resolve reviews
Huangzizhou 016164c
revert change
Huangzizhou 41643ab
Remove unecessary files
Huangzizhou 426fb4b
remove not used functions
Huangzizhou 0082b53
Disable readability-uppercase-literal-suffix clang-tidy
zfergus 56708d7
Update SPDLOG to remove clang-tidy errors
zfergus 6a1fd44
Clang-tidy ignore autodiff.h
zfergus 1a7b0a7
Add comment of changes to autodiff.h
zfergus f670742
more clang-tidy clean
Huangzizhou 405c086
Merge branch 'gcp' of https://github.com/Huangzizhou/ipc-toolkit into…
Huangzizhou 509eb19
Apply clang-tidy -fix
zfergus 545aebf
Fix formatting of enum class declaration for PointPointDistanceType
zfergus fbc8a2b
Fix remaining clang-tidy errors
zfergus 19332e4
Mark constructor explicit
zfergus dda8f3b
Hard code to use TBB in config.hpp
zfergus f3c8128
Change to Eigen::ConstRef
zfergus 2578f26
Move create_broad_phase to separate file
zfergus 36a937e
Refactor tangential collision methods to unify build function and imp…
zfergus 527d131
clean tests
Huangzizhou File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
# autodiff (https://github.com/autodiff/autodiff.git) | ||
# BSD license | ||
if(TARGET autodiff::autodiff) | ||
return() | ||
endif() | ||
|
||
message(STATUS "Third-party: creating target 'autodiff::autodiff'") | ||
|
||
option(AUTODIFF_BUILD_TESTS "Enable the compilation of the test files." OFF) | ||
option(AUTODIFF_BUILD_PYTHON "Enable the compilation of the python bindings." OFF) | ||
option(AUTODIFF_BUILD_EXAMPLES "Enable the compilation of the example files." OFF) | ||
option(AUTODIFF_BUILD_DOCS "Enable the build of the documentation and website." OFF) | ||
|
||
include(CPM) | ||
CPMAddPackage("gh:autodiff/[email protected]") | ||
target_link_libraries(ipc_toolkit PRIVATE autodiff::autodiff) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.