-
Notifications
You must be signed in to change notification settings - Fork 1
/
jaguar3d_hatch_case1.i
114 lines (103 loc) · 2.08 KB
/
jaguar3d_hatch_case1.i
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
[Mesh]
type = GeneratedMesh
dim = 3
nx = 300
ny = 80
nz = 50
xmax = 3 # Length of test block
ymax = 0.8 # Width of test block
zmax = 0.5 # Thickness of test block
[]
[Variables]
[./temperature]
initial_condition = 296 # Initial temperature
[../]
[]
[AuxVariables]
[./a] #For 3d visualization purpose
initial_condition = 0
[../]
[./b]
initial_condition = 0
[../]
[]
[Kernels]
[./heat_conduction]
type = HeatConduction
variable = temperature
[../]
[./heat_conduction_time_derivative]
type = HeatConductionTimeDerivative
variable = temperature
[../]
[]
[DiracKernels]
[./point_heat_source_raster]
type = MovingDirac3dHatch_case1_raster
variable = temperature
value = 135
point = '0.2 0.506 0.495'
[../]
[./point_heat_source_contour]
type = MovingDirac3dHatch_case1_contour
variable = temperature
value = 75
point = '0 0 0'
[../]
[]
[AuxKernels]
[./phase]
type = ParsedAux
variable = a
args = temperature
function = 'if(temperature>=1916,1,0)'
[../]
[./accumulate_phase] # Calculate the total time a cell > Tmelt
type = AccumulateAux
variable = b
accumulate_from_variable = a
execute_on = timestep_begin
[../]
[]
[BCs]
[./outlet_temperature]
type = DirichletBC
variable = temperature
boundary = 'back'
value = 296 # (K)
[../]
[]
[Controls]
[./period_0]
type = TimePeriod
disable_objects = 'DiracKernels::point_heat_source_contour'
start_time = 0
end_time = 0.002248564
execute_on = 'initial timestep_begin'
[../]
[]
[Materials]
[./Ti64]
type = GenericConstantMaterial
prop_names = 'thermal_conductivity specific_heat density'
prop_values = '0.0067 0.526 0.0043' # W/mm*K, J/g-K, g/mm^3 @ 296K
[../]
[]
[Problem]
type = FEProblem
# coord_type = RZ
# rz_coord_axis = X
[]
[Executioner]
type = Transient
nl_rel_tol = 1e-10
l_tol = 1e-08
num_steps = 450
end_time = 0.013
solve_type = 'PJFNK'
petsc_options_iname = '-pc_type -pc_hypre_type'
petsc_options_value = 'hypre boomeramg'
[]
[Outputs]
exodus = true
[]