-
Notifications
You must be signed in to change notification settings - Fork 0
/
mgs_3par_phi.h
149 lines (136 loc) · 4.09 KB
/
mgs_3par_phi.h
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
!******************************************************************************
!* Material model plugin for Elmer's MagnetoStriction.f90 *
!* *
!* This file is part of 'elmer-mgs-galfenol' *
!******************************************************************************
!***************************************************
! This file is manually implemented, do not delete!
!***************************************************
! Do not compact the format of the intent declarations. The rudimentary parser
! in the stage2 code generator only understands this one-item-per-line format.
! (This format is also produced by SymPy.)
!
! This file contains essentially additional, user-defined stage1 functions
! and subroutines.
!
! The potential ϕ, 3-parameter model.
interface
pure REAL(KIND=dp) function phi(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface
interface
pure REAL(KIND=dp) function dphi_du(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface
interface
pure REAL(KIND=dp) function dphi_dv(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface
interface
pure REAL(KIND=dp) function dphi_dw(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface
interface
pure REAL(KIND=dp) function d2phi_du2(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface
interface
pure REAL(KIND=dp) function d2phi_dv2(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface
interface
pure REAL(KIND=dp) function d2phi_dw2(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface
interface
pure REAL(KIND=dp) function d2phi_dudv(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface
interface
pure REAL(KIND=dp) function d2phi_dvdw(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface
interface
pure REAL(KIND=dp) function d2phi_dudw(u, v, w,
young_E, poisson_nu)
use types
implicit none
REAL(KIND=dp), intent(in) :: u
REAL(KIND=dp), intent(in) :: v
REAL(KIND=dp), intent(in) :: w
REAL(KIND=dp), intent(in) :: young_E
REAL(KIND=dp), intent(in) :: poisson_nu
end function
end interface