|
53 | 53 | function eval_energy(eos::Birch)::Function
|
54 | 54 | v0, b0, bp0 = eos.parameters
|
55 | 55 |
|
56 |
| - function (v::Float64, f0::Float64=0)::Float64 |
| 56 | + function (v::Float64, f0::Float64=0) |
57 | 57 | x = (v0 / v)^(2 / 3) - 1
|
58 | 58 | xi = 9 / 16 * b0 * v0 * x^2
|
59 | 59 | return f0 + 2 * xi + (bp0 - 4) * xi * x
|
|
63 | 63 | function eval_pressure(eos::Birch)::Function
|
64 | 64 | v0, b0, bp0 = eos.parameters
|
65 | 65 |
|
66 |
| - function (v::Float64)::Float64 |
| 66 | + function (v::Float64) |
67 | 67 | x = v0 / v
|
68 | 68 | xi = x^(2 / 3) - 1
|
69 | 69 | return 3 / 8 * b0 * x^(5 / 3) * xi * (4 + 3 * (bp0 - 4) * xi)
|
|
73 | 73 | function eval_energy(eos::Murnaghan)::Function
|
74 | 74 | v0, b0, bp0 = eos.parameters
|
75 | 75 |
|
76 |
| - function (v::Float64, f0::Float64=0)::Float64 |
| 76 | + function (v::Float64, f0::Float64=0) |
77 | 77 | x = bp0 - 1
|
78 | 78 | y = (v0 / v)^bp0
|
79 | 79 | return f0 + b0 / bp0 * v * (y / x + 1) - v0 * b0 / x
|
|
83 | 83 | function eval_pressure(eos::Murnaghan)::Function
|
84 | 84 | v0, b0, bp0 = eos.parameters
|
85 | 85 |
|
86 |
| - function (v::Float64)::Float64 |
| 86 | + function (v::Float64) |
87 | 87 | return b0 / bp0 * ((v0 / v)^bp0 - 1)
|
88 | 88 | end
|
89 | 89 | end
|
90 | 90 |
|
91 | 91 | function eval_energy(eos::BirchMurnaghan2nd)::Function
|
92 | 92 | v0, b0 = eos.parameters
|
93 | 93 |
|
94 |
| - function (v::Float64, f0::Float64=0)::Float64 |
| 94 | + function (v::Float64, f0::Float64=0) |
95 | 95 | f = ((v0 / v)^(2 / 3) - 1) / 2
|
96 | 96 | return f0 + 9 / 2 * b0 * v0 * f^2
|
97 | 97 | end
|
|
100 | 100 | function eval_pressure(eos::BirchMurnaghan2nd)::Function
|
101 | 101 | v0, b0 = eos.parameters
|
102 | 102 |
|
103 |
| - function (v::Float64)::Float64 |
| 103 | + function (v::Float64) |
104 | 104 | f = ((v0 / v)^(2 / 3) - 1) / 2
|
105 | 105 | return 3 * b0 * f * (1 + 2 * f)^(5 / 2)
|
106 | 106 | end
|
|
109 | 109 | function eval_energy(eos::BirchMurnaghan3rd)::Function
|
110 | 110 | v0, b0, bp0 = eos.parameters
|
111 | 111 |
|
112 |
| - function (v::Float64, f0::Float64=0)::Float64 |
| 112 | + function (v::Float64, f0::Float64=0) |
113 | 113 | eta = (v0 / v)^(1 / 3)
|
114 | 114 | xi = eta^2 - 1
|
115 | 115 | return f0 + 9 / 16 * b0 * v0 * xi^2 * (6 + bp0 * xi - 4 * eta^2)
|
|
119 | 119 | function eval_pressure(eos::BirchMurnaghan3rd)::Function
|
120 | 120 | v0, b0, bp0 = eos.parameters
|
121 | 121 |
|
122 |
| - function (v::Float64)::Float64 |
| 122 | + function (v::Float64) |
123 | 123 | eta = (v0 / v)^(1 / 3)
|
124 | 124 | return 3 / 2 * b0 * (eta^7 - eta^5) * (1 + 3 / 4 * (bp0 - 4) * (eta^2 - 1))
|
125 | 125 | end
|
|
128 | 128 | function eval_energy(eos::BirchMurnaghan4th)::Function
|
129 | 129 | v0, b0, bp0, bpp0 = eos.parameters
|
130 | 130 |
|
131 |
| - function (v::Float64, f0::Float64=0)::Float64 |
| 131 | + function (v::Float64, f0::Float64=0) |
132 | 132 | f = ((v0 / v)^(2 / 3) - 1) / 2
|
133 | 133 | h = b0 * bpp0 + bp0^2
|
134 | 134 | return f0 + 3 / 8 * v0 * b0 * f^2 * ((9 * h - 63 * bp0 + 143) * f^2 + 12 * (bp0 - 4) * f + 12)
|
|
138 | 138 | function eval_pressure(eos::BirchMurnaghan4th)::Function
|
139 | 139 | v0, b0, bp0, bpp0 = eos.parameters
|
140 | 140 |
|
141 |
| - function (v::Float64)::Float64 |
| 141 | + function (v::Float64) |
142 | 142 | f = ((v0 / v)^(2 / 3) - 1) / 2
|
143 | 143 | h = b0 * bpp0 + bp0^2
|
144 | 144 | return 1 / 2 * b0 * (2 * f + 1)^(5 / 2) * ((9 * h - 63 * bp0 + 143) * f^2 + 9 * (bp0 - 4) * f + 6)
|
|
148 | 148 | function eval_energy(eos::Vinet)::Function
|
149 | 149 | v0, b0, bp0 = eos.parameters
|
150 | 150 |
|
151 |
| - function (v::Float64, f0::Float64=0)::Float64 |
| 151 | + function (v::Float64, f0::Float64=0) |
152 | 152 | x = (v / v0)^(1 / 3)
|
153 | 153 | xi = 3 / 2 * (bp0 - 1)
|
154 | 154 | return f0 + 9 * b0 * v0 / xi^2 * (1 + (xi * (1 - x) - 1) * np.exp(xi * (1 - x)))
|
|
158 | 158 | function eval_pressure(eos::Vinet)::Function
|
159 | 159 | v0, b0, bp0 = eos.parameters
|
160 | 160 |
|
161 |
| - function (v::Float64)::Float64 |
| 161 | + function (v::Float64) |
162 | 162 | x = (v / v0)^(1 / 3)
|
163 | 163 | xi = 3 / 2 * (bp0 - 1)
|
164 | 164 | return 3 * b0 / x^2 * (1 - x) * np.exp(xi * (1 - x))
|
|
0 commit comments