Skip to content
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

Contact 3 of 3 #202

Open
wants to merge 40 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
6f8d07f
fixed issue with region box defition missing from map
gabemorris12 Apr 29, 2024
d5cce25
temporarily removed linear algebra functions
gabemorris12 Apr 30, 2024
5dc3c6b
put gitignore back to normal
gabemorris12 Apr 30, 2024
819bbe9
fixed conflict with linear_algebra.h
gabemorris12 Apr 30, 2024
9aca4d7
graphics is starting at 0
gabemorris12 May 1, 2024
3dc2d4b
added contact test files
gabemorris12 May 2, 2024
136c52b
setting up the contact environment
gabemorris12 May 2, 2024
23bb2c7
ENH: New 'global' geometry option
gabemorris12 May 3, 2024
b9842a3
PERF: Added a boundary contact pointer
gabemorris12 May 3, 2024
2cd47e4
WIP: Undid pointer and getting started on setting up the data structure
gabemorris12 May 3, 2024
0fb86f9
WIP: Added update nodes
gabemorris12 May 6, 2024
d390bc4
BUG: Fixed issue with static member matar types existing after Kokkos…
gabemorris12 May 6, 2024
29fd79c
WIP: Finished adding the sorting method
gabemorris12 May 7, 2024
3aa0fd2
ENH: Added capture box and find nodes
gabemorris12 May 7, 2024
8b2e4ee
WIP: Added get_contact_point
gabemorris12 May 10, 2024
9900874
WIP: changed ambiguously defined names for bucket_size and num_contac…
gabemorris12 May 10, 2024
8eaa119
WIP: added the contact_check function
gabemorris12 May 10, 2024
91c97a0
STYLE: Updated the documentation style to doxygen standards
gabemorris12 May 11, 2024
2999fb9
WIP: removed the std::vector usage from find_nodes
gabemorris12 May 13, 2024
4f1d527
WIP: removed det_sol; contact_check now takes in xi_val, eta_val, and…
gabemorris12 May 13, 2024
e98a1ce
WIP: added the first, main conditional for getting the contact pairs;…
gabemorris12 May 14, 2024
f9ce3a1
WIP: added patches in node
gabemorris12 May 15, 2024
faa30f9
WIP: added the second case in the get_contact_pairs member
gabemorris12 May 15, 2024
1552df5
WIP: added more unit tests for edge cases
gabemorris12 May 16, 2024
bb106d3
ENH: Completed the get_contact_pairs member
gabemorris12 May 16, 2024
d069512
DOC: Added some missing documentation
gabemorris12 May 16, 2024
32647aa
BUG: Fixed uninitialized members in the unit tests
gabemorris12 May 17, 2024
8f5d054
WIP: Added frictionless force calculation
gabemorris12 May 18, 2024
7be443c
WIP: Added force resolution and remove pairs
gabemorris12 May 20, 2024
6702db6
WIP: contact patch objects now have access to node objects
gabemorris12 May 21, 2024
430f6d0
WIP: Created update node function that updates the node members apart…
gabemorris12 May 22, 2024
cabcbd8
WIP: Cleaned up contact_patch_t to where only the node objects are be…
gabemorris12 May 22, 2024
f75d910
WIP: Sort no longer needs instances of mesh, node, and corner
gabemorris12 May 23, 2024
94de776
WIP: Added contact implementation into the SGH solving scheme
gabemorris12 May 23, 2024
40997e0
WIP: Removed user material members from SGH solver
gabemorris12 May 23, 2024
a109389
BUG: Fixed issue with non-contact input files
gabemorris12 May 23, 2024
fd891dd
ENH: Updating changes to parsing for strength
jacob-moore22 May 24, 2024
353aa9e
BUG: Added more contact tests and moved the call of update_nodes to b…
gabemorris12 May 24, 2024
08bc46f
STYLE: Added a note about multi-stage detection that needs to be impl…
gabemorris12 May 24, 2024
3d404df
BUG: Changed the default tolerance to 1e-15
gabemorris12 May 24, 2024
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
100 changes: 100 additions & 0 deletions single-node-refactor/contact_test_inputs/block_sliding_test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
# num_dims: 3

dynamic_options:
time_final: 3.0
dt_min: 1e-6
dt_max: 0.05
dt_start: 1.e-5
cycle_stop: 300000


mesh_options:
source: file
file_path: contact_test_inputs/contact_test.geo

#mesh_options:
# source: generate
# num_dims: 3
# type: Box
# origin: [0.0, 0.0, 0.0]
# length: [1.2, 1.2, 1.2]
# num_elems: [12, 12, 12]


output_options:
timer_output_level: thorough
output_file_format: ensight
graphics_time_step: 0.02
# graphics_iteration_step: 10

solver_options:
- solver:
method: SGH
# solver_vars:
# - blah
# - blah
# - blah

boundary_conditions:

# Tag Z plane
- boundary_condition:
solver: SGH
geometry: z_plane
direction: z_dir
value: 0.0
type: reflected

# global contact condition (this should be used when it is not clear what the contact surface(s) will be)
- boundary_condition:
solver: SGH
geometry: global
type: contact

materials:
- material:
id: 0
eos_model: ideal_gas
# strength_model: none
elastic_modulus: 10
poisson_ratio: 0.3
q1: 1.0
q2: 1.333
q1ex: 1.0
q2ex: 1.333
eos_global_vars:
- 10
- 1.0E-14
- 1.0

regions:
- fill_volume:
type: global
material_id: 0
den: 1.0
sie: 1.e-10
velocity: cartesian
u: 0.0
v: 0.0
w: 0.0



# top block initial velocity conditions
- fill_volume:
type: box
origin: [0.0, 0.0, 0.0]
x1: -0.25
x2: 0.25
y1: -0.25
y2: 0.25
z1: 1
z2: 1.5
material_id: 0
den: 10.0
# ie: 0.25833839995946534
sie: 1.e-5
velocity: cartesian
u: 0.0
v: 0.2
w: -0.001
100 changes: 100 additions & 0 deletions single-node-refactor/contact_test_inputs/contact_sie_test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
# num_dims: 3

dynamic_options:
time_final: 3.0
dt_min: 0.02
dt_max: 0.05
dt_start: 1.e-2
cycle_stop: 300000


mesh_options:
source: file
file_path: contact_test_inputs/contact_test.geo

#mesh_options:
# source: generate
# num_dims: 3
# type: Box
# origin: [0.0, 0.0, 0.0]
# length: [1.2, 1.2, 1.2]
# num_elems: [12, 12, 12]


output_options:
timer_output_level: thorough
output_file_format: ensight
graphics_time_step: 0.02
# graphics_iteration_step: 10

solver_options:
- solver:
method: SGH
# solver_vars:
# - blah
# - blah
# - blah

boundary_conditions:

# Tag Z plane
- boundary_condition:
solver: SGH
geometry: z_plane
direction: z_dir
value: 0.0
type: reflected

# global contact condition (this should be used when it is not clear what the contact surface(s) will be)
- boundary_condition:
solver: SGH
geometry: global
type: contact

materials:
- material:
id: 0
eos_model: ideal_gas
# strength_model: none
elastic_modulus: 10
poisson_ratio: 0.3
q1: 1.0
q2: 1.333
q1ex: 1.0
q2ex: 1.333
eos_global_vars:
- 3
- 1.0E-14
- 1.0

regions:
- fill_volume:
type: global
material_id: 0
den: 10.0
sie: 1.e-10
velocity: cartesian
u: 0.0
v: 0.0
w: 0.0



# top block initial velocity conditions
- fill_volume:
type: box
origin: [0.0, 0.0, 0.0]
x1: -1.0
x2: 1.0
y1: -1.0
y2: 1.0
z1: 0.0
z2: 1.5
material_id: 0
den: 1.0
# ie: 0.25833839995946534
sie: 0.5
velocity: cartesian
u: 0.0
v: 0.0
w: 0.0
94 changes: 94 additions & 0 deletions single-node-refactor/contact_test_inputs/contact_test.geo
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
Description line 1
Description line 2
node id assign
element id assign
part
1
Mesh
coordinates
26
1.00000e+00
1.00000e+00
1.00000e+00
1.00000e+00
1.00000e+00
1.00000e+00
0.00000e+00
0.00000e+00
0.00000e+00
0.00000e+00
0.00000e+00
0.00000e+00
-1.00000e+00
-1.00000e+00
-1.00000e+00
-1.00000e+00
-1.00000e+00
-1.00000e+00
-2.50000e-01
-2.50000e-01
-2.50000e-01
-2.50000e-01
2.50000e-01
2.50000e-01
2.50000e-01
2.50000e-01
-1.00000e+00
0.00000e+00
1.00000e+00
1.00000e+00
0.00000e+00
-1.00000e+00
-1.00000e+00
0.00000e+00
1.00000e+00
1.00000e+00
0.00000e+00
-1.00000e+00
-1.00000e+00
0.00000e+00
1.00000e+00
1.00000e+00
0.00000e+00
-1.00000e+00
-2.50000e-01
2.50000e-01
2.50000e-01
-2.50000e-01
-2.50000e-01
2.50000e-01
2.50000e-01
-2.50000e-01
0.00000e+00
0.00000e+00
0.00000e+00
1.00000e+00
1.00000e+00
1.00000e+00
0.00000e+00
0.00000e+00
0.00000e+00
1.00000e+00
1.00000e+00
1.00000e+00
0.00000e+00
0.00000e+00
0.00000e+00
1.00000e+00
1.00000e+00
1.00000e+00
1.00000e+00
1.00000e+00
1.50000e+00
1.50000e+00
1.00000e+00
1.00000e+00
1.50000e+00
1.50000e+00
hexa8
5
7 8 11 12 1 2 5 6
8 9 10 11 2 3 4 5
13 14 17 18 7 8 11 12
14 15 16 17 8 9 10 11
19 20 21 22 23 24 25 26
Loading