12 integer,
parameter :: kreal = kind(0.0d0)
13 real(kind=kreal),
parameter :: s13 = sqrt(1.0d0/3.0d0)
14 real(kind=kreal),
parameter :: s35 = sqrt(3.0d0/5.0d0)
16 real(kind=kreal),
parameter :: mitc4_points(2, 4) = reshape((/ &
23 real(kind=kreal),
parameter :: mitc9_rr_points(2, 6) = reshape((/ &
32 real(kind=kreal),
parameter :: mitc9_ss_points(2, 6) = reshape((/ &
41 real(kind=kreal),
parameter :: mitc9_rs_points(2, 4) = reshape((/ &
48 real(kind=kreal),
parameter :: mitc3_points(2, 3) = reshape((/ &
55 real(kind=kreal),
parameter,
public ::
mitc9_xi_sign(6, 2) = reshape((/ &
56 -1.0d0, 1.0d0, 1.0d0, -1.0d0, 1.0d0, -1.0d0, &
57 -1.0d0, 0.0d0, 1.0d0, 1.0d0, 0.0d0, -1.0d0 &
61 -1.0d0, -1.0d0, 1.0d0, 1.0d0, 0.0d0, 0.0d0, &
62 -1.0d0, -1.0d0, -1.0d0, 1.0d0, 1.0d0, 1.0d0 &
73 integer,
intent(in) :: etype
81 stop
"Unsupported MITC shell element type"
87 integer,
intent(in) :: etype, iset
89 if (iset < 1 .or. iset >
numoftyingsets(etype)) stop
"Invalid MITC tying set"
108 integer,
intent(in) :: etype, iset, ip
109 real(kind=kreal),
intent(out) :: pos(2)
111 if (iset < 1 .or. iset >
numoftyingsets(etype)) stop
"Invalid MITC tying set"
112 if (ip < 1 .or. ip >
numoftyingpoints(etype, iset)) stop
"Invalid MITC tying point"
116 pos = mitc3_points(:, ip)
118 pos = mitc4_points(:, ip)
122 pos = mitc9_rr_points(:, ip)
124 pos = mitc9_ss_points(:, ip)
126 pos = mitc9_rs_points(:, ip)
This module encapsulate the basic functions of all elements provide by this software.
integer, parameter fe_mitc4_shell
integer, parameter fe_mitc9_shell
integer, parameter fe_mitc3_shell
MITC assumed-strain tying-point rules.
integer function, public numoftyingpoints(etype, iset)
Number of tying points in one tying set.
real(kind=kreal), dimension(6, 2), parameter, public mitc9_eta_sign
subroutine, public gettyingpoint(etype, iset, ip, pos)
Natural coordinate of one MITC tying point.
real(kind=kreal), dimension(6, 2), parameter, public mitc9_xi_sign
Sign patterns used by the MITC9 interpolation polynomials.
integer function, public numoftyingsets(etype)
Number of tying-point sets used by an MITC shell element.