This repository has been archived by the owner on Feb 26, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
peri3d.in
118 lines (88 loc) · 3.14 KB
/
peri3d.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# 3D Tensile Test With Peridynamics
########################################
# -------- GENERAL SETTINGS ------------
########################################
units si
dimension 3
boundary s s s
atom_style peri
atom_modify map array
neighbor 0.0001 bin
########################################
# -------- CREATE GEOMETRY -------------
########################################
lattice sc 0.005
region whole block -0.35 0.351 -0.5 0.501 0.0 0.026 units box
create_box 10 whole
region specimen block -0.25 0.251 -0.5 0.501 0.0 0.026 units box
create_atoms 1 region specimen
region 1 block -0.25 0.251 -0.5 -0.4875 0.0 0.026 units box
group lower region 1
region 2 block -0.25 0.251 0.4875 0.501 0.0 0.026 units box
group upper region 2
group boundary union lower upper
group remaining subtract all lower upper
########################################
# -------- CREATE A CRACK --------------
########################################
region crack block -0.25 -0.2399 -0.001 0.001 0.0 0.026 units box
set region crack lambda 0
########################################
# -------- DEFINE POTENTIAL ------------
########################################
pair_style peri/pmb
#pair_coeff * * 5.9683223e18 0.02001 0.00137689 0.0
pair_coeff * * 5.9683223e18 0.02001 0.0008 0.0
set group all density 7800
set group all volume 1.25e-7
########################################
# -------- CALCULATION ------------
########################################
# Fixes
fix 1 all nve
fix 2 upper setforce NULL 0.0 NULL
fix 3 lower setforce NULL 0.0 NULL
# Velocity
velocity upper ramp vy -1.0 1.0 y -0.5 0.5 units box
velocity lower ramp vy -1.0 1.0 y -0.5 0.5 units box
# Computes
compute 1 all damage/atom
compute 2 all stress/atom NULL virial
compute 3 remaining paris/atom NULL 2 3.0e-10 3 10 1 1.25e-7
###########################################################
########## GENERATE STRESS FIELD ##########################
###########################################################
# Calculation Settings
dump 1 all custom 100 dump.peri id type x y z fx fy fz c_1 vy c_2[2] concentration temperature lambda chemPotential
thermo 1
thermo_style custom step temp pe etotal press vol ke
timestep 1.0e-7
min_style hftn
#------------------------------------------------------#
## loop starts here ###
#------------------------------------------------------#
label loop
variable a loop 30
run 50
minimize 0.0 1e-10 10000 50000
if "${a} > 30" then "jump SELF break"
next a
jump SELF loop
label break
print "Applied Stress Field Finished"
#######################################
# FATIGUE
#######################################
undump 1
velocity all set 0.0 0.0 0.0 units box
dump 2 all custom 10000000000000 dump_fatigue.peri* id type x y z fx fy fz c_1 vx vy vz chemPotential lambda c_3[2]
min_style fire
#-------------------- loop -------------------------#
label loop2
variable b loop 2000
minimize 1e-10 1e-10 10000 50000
if "${b} > 2000" then "jump SELF break2"
next b
jump SELF loop2
label break2
print "Fatigue Finished"