39 1 NGL, OFFG, VOLG, DELTAX,
40 2 VOLG0, ITET, NEL, ISMSTR,DT )
49#include "implicit_f.inc"
59 INTEGER,
INTENT(IN) :: NEL
60 INTEGER,
INTENT(IN) :: ISMSTR
63 . offg(*),volg(*),deltax(*), volg0(*)
64 TYPE(
dt_),
INTENT(INOUT) :: DT
68 INTEGER I,J,ICOUNT,LIST(MVSIZ)
70 . tet_colla(mvsiz),coef,def_v,al,min_aspect,min_defv
72 min_aspect = dt%BRICK_CST_COL_MIN
73 min_defv = dt%BRICK_CST_DEFV_MIN
75 IF(min_aspect==zero.AND.min_defv==zero)
RETURN
76 IF(ismstr/=2.AND.ismstr/=12)
RETURN
78 IF (itet >0) coef = one/1.24/sqr3
80 IF (min_defv >zero)
THEN
82 IF (offg(i)>one.OR.offg(i)==zero) cycle
83 def_v = volg(i)/volg0(i)
84 IF (def_v < min_defv)
THEN
87 CALL ancmsg(msgid=267,anmode=aninfo,
95 IF (min_aspect>zero)
THEN
98 IF (offg(i)>one.OR.offg(i)==zero) cycle
101 tet_colla(i) = coef * sqrt(deltax(i)**3 / volg(i))
102 IF (tet_colla(i) < min_aspect)
THEN
114 WRITE(iout,
'(6X,I10,1PG20.13)')ngl(i),tet_colla(i)
115 WRITE(istdo,
'(6X,I10,1PG20.13)')ngl(i),tet_colla(i)
119#include "lockoff.inc"
125 .
'THE FOLLOWING ELEMENTS WILL BE SWITCHED TO SMALL STRAIN DUE TO BAD ASPECT RATIO' /)
subroutine smallgeo3(ngl, offg, volg, deltax, volg0, itet, nel, ismstr, dt)
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)