-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMaterial_Properties.jl
64 lines (46 loc) · 1.79 KB
/
Material_Properties.jl
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
"""
LaMEM generation setup
Main goal: creating a simple julia script that produces .dat file for LaMEM, producing additional plot
and table related to the initial setup
"""
using Parameters
"""
Abstract type Material Parameters
-> Material
a) Density -> constant -> thermal -> pressure -> thermal-pressure ->compressible ->Phase diagram
b) rheology ->Elastic -> Viscous ->Plastic
->linear -> Drucker-Prager
-> Diffusion creep -> Constant tau yield
-> Newtonian s.s.
->non linear
-> Power-law
-> Dislocation creep
-> Peirl Creep
c) Thermal -> Basic_Thermal -> Temperature-Dependent Conductivity
"""
abstract type Material end
# 2nd Level
abstract type Density <: Material end
abstract type Rheology <:Material end
abstract type Thermal <: Material end
abstract type Diking <: Material end
# 3rd level
# Density
abstract type Constant_den <: Density end
abstract type Thermal_den <: Density end
abstract type Thermal_Pres_den <: Density end
abstract type Phase_Diagram_den <: Density end
abstract type Compressibility_den <: Density end
# Rheology
abstract type Elastic <: Rheology end
abstract type Viscous <: Rheology end
abstract type Plastic <: Rheology end
# Thermal
abstract type Basic_Thermal <: Thermal end
abstract type T_P_Conductivity <: Thermal end
# 4th level
abstract type Linear <: Viscous end
abstract type Non_linear <: Viscous end
abstract type Diffusion_Creep <: Viscous end
abstract type Dislocation_Creep <: Viscous end
abstract type Peirls_Creep <: Viscous end