OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
h3d_strn_tenscor3.F
Go to the documentation of this file.
1Copyright> OpenRadioss
2Copyright> Copyright (C) 1986-2025 Altair Engineering Inc.
3Copyright>
4Copyright> This program is free software: you can redistribute it and/or modify
5Copyright> it under the terms of the GNU Affero General Public License as published by
6Copyright> the Free Software Foundation, either version 3 of the License, or
7Copyright> (at your option) any later version.
8Copyright>
9Copyright> This program is distributed in the hope that it will be useful,
10Copyright> but WITHOUT ANY WARRANTY; without even the implied warranty of
11Copyright> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12Copyright> GNU Affero General Public License for more details.
13Copyright>
14Copyright> You should have received a copy of the GNU Affero General Public License
15Copyright> along with this program. If not, see <https://www.gnu.org/licenses/>.
16Copyright>
17Copyright>
18Copyright> Commercial Alternative: Altair Radioss Software
19Copyright>
20Copyright> As an alternative to this open-source version, Altair also offers Altair Radioss
21Copyright> software under a commercial license. Contact Altair to discuss further if the
22Copyright> commercial version may interest you: https://www.altair.com/radioss/.
23!||====================================================================
24!|| strn_tenscor3 ../engine/source/output/h3d/h3d_results/h3d_strn_tenscor3.F
25!||--- called by ------------------------------------------------------
26!|| h3d_solid_tensor_1 ../engine/source/output/h3d/h3d_results/h3d_solid_tensor_1.F
27!||--- calls -----------------------------------------------------
28!|| srota6 ../engine/source/output/anim/generate/srota6.F
29!|| szstraingps ../engine/source/elements/solid/solidez/szstraingps.F
30!||--- uses -----------------------------------------------------
31!|| elbufdef_mod ../common_source/modules/mat_elem/elbufdef_mod.F90
32!|| element_mod ../common_source/modules/elements/element_mod.F90
33!|| initbuf_mod ../engine/share/resol/initbuf.F
34!||====================================================================
35 SUBROUTINE strn_tenscor3(ELBUF_TAB,IPARG ,IXS ,IXS10 ,X ,
36 . PM ,KCVT ,NEL ,EVAR )
37C-----------------------------------------------
38C M o d u l e s
39C-----------------------------------------------
40 USE initbuf_mod
41 USE elbufdef_mod
42 use element_mod , only : nixs
43C-----------------------------------------------
44C I m p l i c i t T y p e s
45C-----------------------------------------------
46#include "implicit_f.inc"
47C-----------------------------------------------
48C C o m m o n B l o c k s
49C-----------------------------------------------
50#include "vect01_c.inc"
51#include "mvsiz_p.inc"
52#include "com04_c.inc"
53#include "param_c.inc"
54C-----------------------------------------------
55C D u m m y A r g u m e n t s
56C-----------------------------------------------
57C REAL
59 . evar(6,20,mvsiz),x(3,*),pm(npropm,*)
60 INTEGER IPARG(NPARG),IXS(NIXS,*),IXS10(6,*),KCVT ,NEL
61 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_TAB
62C-----------------------------------------------
63C L o c a l V a r i a b l e s
64C-----------------------------------------------
65C REAL
67 . gama(6),
68 .
69 . a_gauss_r,a_gauss_s,a_gauss_t,n1,
70 . a_gauss_r1,a_gauss_s1,a_gauss_t1,
71 . a_gauss_p_r,a_gauss_p_s,a_gauss_p_t
72 INTEGER I,II,
73 . n, j,
74 .
75 . nn1,k,
76 . isolnod, nptr, npts, nptt,
77 . is, ir, it,nc(10,mvsiz),nnod,ilay,
78 . ivisc,jj(6),ip
79 INTEGER NLAY
80 TYPE(g_bufel_) ,POINTER :: GBUF
81 TYPE(l_bufel_) ,POINTER :: LBUF
83 . a_gauss(9,9),evar_tmp(6),alpha,beta,alpha_1,beta_1,
84 . str_is24(mvsiz,6,8),evar_t10(6,10)
85 INTEGER
86 . sol_node(3,8), iperm1(10),iperm2(10),nn2
87 DATA iperm1/0,0,0,0,1,2,3,1,2,3/
88 DATA iperm2/0,0,0,0,2,3,1,4,4,4/
89C=======================================================================
90 DATA a_gauss /
91 1 0. ,0. ,0. ,
92 1 0. ,0. ,0. ,
93 1 0. ,0. ,0. ,
94 2 -.577350269189626,0.577350269189626,0. ,
95 2 0. ,0. ,0. ,
96 2 0. ,0. ,0. ,
97 3 -.774596669241483,0. ,0.774596669241483,
98 3 0. ,0. ,0. ,
99 3 0. ,0. ,0. ,
100 4 -.861136311594053,-.339981043584856,0.339981043584856,
101 4 0.861136311594053,0. ,0. ,
102 4 0. ,0. ,0. ,
103 5 -.906179845938664,-.538469310105683,0. ,
104 5 0.538469310105683,0.906179845938664,0. ,
105 5 0. ,0. ,0. ,
106 6 -.932469514203152,-.661209386466265,-.238619186083197,
107 6 0.238619186083197,0.661209386466265,0.932469514203152,
108 6 0. ,0. ,0. ,
109 7 -.949107912342759,-.741531185599394,-.405845151377397,
110 7 0. ,0.405845151377397,0.741531185599394,
111 7 0.949107912342759,0. ,0. ,
112 8 -.960289856497536,-.796666477413627,-.525532409916329,
113 8 -.183434642495650,0.183434642495650,0.525532409916329,
114 8 0.796666477413627,0.960289856497536,0. ,
115 9 -.968160239507626,-.836031107326636,-.613371432700590,
116 9 -.324253423403809,0. ,0.324253423403809,
117 9 0.613371432700590,0.836031107326636,0.968160239507626/
118 DATA sol_node /
119 1 -1 ,-1 ,-1 ,
120 2 -1 ,-1 , 1 ,
121 3 1 ,-1 , 1 ,
122 4 1 ,-1 ,-1 ,
123 5 -1 , 1 ,-1 ,
124 6 -1 , 1 , 1 ,
125 7 1 , 1 , 1 ,
126 8 1 , 1 ,-1 /
127C=======================================================================
128 alpha = zep1381966
129 beta = zep5854102
130 evar = zero
131 ivisc = iparg(61)
132 gbuf => elbuf_tab%GBUF
133 isolnod = iparg(28)
134 lft=1
135 llt=nel
136 nnod = 0
137!
138 DO i=1,6
139 jj(i) = nel*(i-1)
140 ENDDO
141!
142C-----------------------------------------------
143C SOLID 8N
144C-----------------------------------------------
145 IF (kcvt==1.AND.isorth/=0) kcvt=2
146 nnod = isolnod
147 DO i=lft,llt
148 n = i + nft
149 IF(isolnod == 8)THEN
150 DO j = 1,isolnod
151 nc(j,i) = ixs(j+1,n)
152 ENDDO
153 ELSEIF(isolnod == 4)THEN
154 nc(1,i)=ixs(2,n)
155 nc(2,i)=ixs(4,n)
156 nc(3,i)=ixs(7,n)
157 nc(4,i)=ixs(6,n)
158 ELSEIF(isolnod == 6)THEN
159 nc(1,i)=ixs(2,n)
160 nc(2,i)=ixs(3,n)
161 nc(3,i)=ixs(4,n)
162 nc(4,i)=ixs(6,n)
163 nc(5,i)=ixs(7,n)
164 nc(6,i)=ixs(8,n)
165 ELSEIF(isolnod == 10)THEN
166 nc(1,i)=ixs(2,n)
167 nc(2,i)=ixs(4,n)
168 nc(3,i)=ixs(7,n)
169 nc(4,i)=ixs(6,n)
170 nn1 = n - numels8
171 DO j=1,6
172 nc(j+4,i) = ixs10(j,nn1)
173 ENDDO
174 ENDIF
175 ENDDO
176C
177 nptr = elbuf_tab%NPTR
178 npts = elbuf_tab%NPTS
179 nptt = elbuf_tab%NPTT
180 nlay = elbuf_tab%NLAY
181 npt = nptr*npts*nptt
182 IF (jhbe == 24) THEN
183 lbuf => elbuf_tab%BUFLY(1)%LBUF(1,1,1)
184 nptr = 2
185 npts = 2
186 nptt = 2
187 CALL szstraingps(
188 1 lbuf%STRA, str_is24, gbuf%STRHG,nel)
189 ENDIF
190C----------
191 IF(isolnod == 6 .OR. isolnod == 8 .OR.
192 . isolnod == 16 .OR. isolnod == 20)THEN
193c
194c T_SHELL ( JHBE = 15/16 )
195 IF(nlay > 1 .AND. jhbe /= 14) THEN
196 DO i=lft,llt
197 ii = 6*(i-1)
198 n = i + nft
199 IF (kcvt /= 0) THEN
200 IF(kcvt==2)THEN
201 gama(1:6) = gbuf%GAMA(jj(1:6) + i)
202 ELSE
203 gama(1)=one
204 gama(2)=zero
205 gama(3)=zero
206 gama(4)=zero
207 gama(5)=one
208 gama(6)=zero
209 END IF
210 END IF
211 npts = nlay
212C
213 DO j=1,8
214 DO k=1,8
215 IF(sol_node(2,k) == sol_node(2,j)) THEN
216c
217 IF (sol_node(1,k) == -1 .AND. sol_node(1,j) == -1)
218 . ir = 1
219 IF (sol_node(1,k) == -1 .AND. sol_node(1,j) == 1)
220 . ir = max(1,nptr-1)
221 IF (sol_node(1,k) == 1 .AND. sol_node(1,j) == 1)
222 . ir = nptr
223 IF (sol_node(1,k) == 1 .AND. sol_node(1,j) == -1)
224 . ir = min(nptr,2)
225 IF (sol_node(2,k) == -1 .AND. sol_node(2,j) == -1)
226 . is = 1
227 IF (sol_node(2,k) == -1 .AND. sol_node(2,j) == 1)
228 . is = max(1,npts-1)
229 IF (sol_node(2,k) == 1 .AND. sol_node(2,j) == 1)
230 . is = npts
231 IF (sol_node(2,k) == 1 .AND. sol_node(2,j) == -1)
232 . is = min(npts,2)
233 IF (sol_node(3,k) == -1 .AND. sol_node(3,j) == -1)
234 . it = 1
235 IF (sol_node(3,k) == -1 .AND. sol_node(3,j) == 1)
236 . it = max(1,nptt-1)
237 IF (sol_node(3,k) == 1 .AND. sol_node(3,j) == 1)
238 . it = nptt
239 IF (sol_node(3,k) == 1 .AND. sol_node(3,j) == -1)
240 . it = min(nptt,2)
241c
242 a_gauss_p_r = zero
243 a_gauss_p_s = zero
244 a_gauss_p_t = zero
245c
246 IF (nptr == 1)THEN
247 a_gauss_p_r = zero
248 ELSEIF (sol_node(1,j) == -1 )THEN
249 a_gauss_r = a_gauss(1,nptr)
250 a_gauss_r1 = a_gauss(2,nptr)
251 a_gauss_p_r =
252 . (-one-half*(a_gauss_r1+a_gauss_r))/
253 . (half*(a_gauss_r1-a_gauss_r))
254 ELSEIF(sol_node(1,j) == 1 )THEN
255 a_gauss_r = a_gauss(nptr-1,nptr)
256 a_gauss_r1 = a_gauss(nptr,nptr)
257 a_gauss_p_r =
258 . (one+half*(a_gauss_r1+a_gauss_r))/
259 . (half*(a_gauss_r1-a_gauss_r))
260 ENDIF
261c
262 IF (npts == 1)THEN
263 a_gauss_p_s = zero
264 ELSEIF (sol_node(2,j) == -1 )THEN
265 a_gauss_s = a_gauss(1,npts)
266 a_gauss_s1 = a_gauss(2,npts)
267 a_gauss_p_s =
268 . (-one-half*(a_gauss_s1+a_gauss_s))/
269 . (half*(a_gauss_s1-a_gauss_s))
270 ELSEIF(sol_node(2,j) == 1 )THEN
271 a_gauss_s = a_gauss(npts-1,npts)
272 a_gauss_s1 = a_gauss(npts,npts)
273 a_gauss_p_s =
274 . (one+half*(a_gauss_s1+a_gauss_s))/
275 . (half*(a_gauss_s1-a_gauss_s))
276 ENDIF
277c
278 IF (nptt == 1)THEN
279 a_gauss_p_t = zero
280 ELSEIF (sol_node(3,j) == -1 )THEN
281 a_gauss_t = a_gauss(1,nptt)
282 a_gauss_t1 = a_gauss(2,nptt)
283 a_gauss_p_t =
284 . (-one-half*(a_gauss_t1+a_gauss_t))/
285 . (half*(a_gauss_t1-a_gauss_t))
286 ELSEIF(sol_node(3,j) == 1 )THEN
287 a_gauss_t = a_gauss(nptt-1,nptt)
288 a_gauss_t1 = a_gauss(nptt,nptt)
289 a_gauss_p_t =
290 . (one+half*(a_gauss_t1+a_gauss_t))/
291 . (half*(a_gauss_t1-a_gauss_t))
292 ENDIF
293c
294 IF (jhbe == 15 .OR. jhbe == 16) THEN
295 ilay = is
296 is = 1
297 n1 = fourth*(
298 . (one+sol_node(1,k) * a_gauss_p_r) *
299 . (one+sol_node(3,k) * a_gauss_p_t) )
300 ENDIF
301c STRHG(NEL,6,8)
302 lbuf => elbuf_tab%BUFLY(ilay)%LBUF(ir,is,it)
303 ip = ir + ( (is-1) + (it-1)*2 )*2
304 evar_tmp(1) = lbuf%STRA(jj(1) + i)
305 evar_tmp(2) = lbuf%STRA(jj(2) + i)
306 evar_tmp(3) = lbuf%STRA(jj(3) + i)
307 evar_tmp(4) = lbuf%STRA(jj(4) + i)*half
308 evar_tmp(5) = lbuf%STRA(jj(5) + i)*half
309 evar_tmp(6) = lbuf%STRA(jj(6) + i)*half
310 IF (kcvt /= 0)
311 . CALL srota6(
312 1 x, ixs(1,n),kcvt, evar_tmp,
313 2 gama, jhbe, igtyp, isorth)
314 evar(1:6,j,i) = evar(1:6,j,i) + n1 * evar_tmp(1:6)
315 ENDIF
316 ENDDO
317 ENDDO
318 ENDDO
319 ELSE
320 DO i=lft,llt
321 ii = 6*(i-1)
322 n = i + nft
323 IF (kcvt /= 0) THEN
324 IF(kcvt==2)THEN
325 gama(1:6) = gbuf%GAMA(jj(1:6) + i)
326 ELSE
327 gama(1)=one
328 gama(2)=zero
329 gama(3)=zero
330 gama(4)=zero
331 gama(5)=one
332 gama(6)=zero
333 END IF
334 END IF
335 IF(igtyp == 20 .OR. igtyp ==21 .OR. igtyp == 22) THEN
336 nptt = nlay
337 ENDIF
338 DO j=1,8
339 DO k=1,8
340 IF (sol_node(1,k) == -1 .AND. sol_node(1,j) == -1)
341 . is = 1
342 IF (sol_node(1,k) == -1 .AND. sol_node(1,j) == 1)
343 . is = max(1,npts-1)
344 IF (sol_node(1,k) == 1 .AND. sol_node(1,j) == 1)
345 . is = npts
346 IF (sol_node(1,k) == 1 .AND. sol_node(1,j) == -1)
347 . is = min(npts,2)
348 IF (sol_node(2,k) == -1 .AND. sol_node(2,j) == -1)
349 . it = 1
350 IF (sol_node(2,k) == -1 .AND. sol_node(2,j) == 1)
351 . it = max(1,nptt-1)
352 IF (sol_node(2,k) == 1 .AND. sol_node(2,j) == 1)
353 . it = nptt
354 IF (sol_node(2,k) == 1 .AND. sol_node(2,j) == -1)
355 . it = min(nptt,2)
356 IF (sol_node(3,k) == -1 .AND. sol_node(3,j) == -1)
357 . ir = 1
358 IF (sol_node(3,k) == -1 .AND. sol_node(3,j) == 1)
359 . ir = max(1,nptr-1)
360 IF (sol_node(3,k) == 1 .AND. sol_node(3,j) == 1)
361 . ir = nptr
362 IF (sol_node(3,k) == 1 .AND. sol_node(3,j) == -1)
363 . ir = min(nptr,2)
364c
365 a_gauss_p_r = zero
366 a_gauss_p_s = zero
367 a_gauss_p_t = zero
368c
369 IF (nptr == 1)THEN
370 a_gauss_p_r = zero
371 ELSEIF (sol_node(1,j) == -1 )THEN
372 a_gauss_r = a_gauss(1,nptr)
373 a_gauss_r1 = a_gauss(2,nptr)
374 a_gauss_p_r =
375 . (-one-half*(a_gauss_r1+a_gauss_r))/
376 . (half*(a_gauss_r1-a_gauss_r))
377 ELSEIF(sol_node(1,j) == 1 )THEN
378 a_gauss_r = a_gauss(nptr-1,nptr)
379 a_gauss_r1 = a_gauss(nptr,nptr)
380 a_gauss_p_r =
381 . (one+half*(a_gauss_r1+a_gauss_r))/
382 . (half*(a_gauss_r1-a_gauss_r))
383 ENDIF
384c
385 IF (npts == 1)THEN
386 a_gauss_p_s = zero
387 ELSEIF (sol_node(2,j) == -1 )THEN
388 a_gauss_s = a_gauss(1,npts)
389 a_gauss_s1 = a_gauss(2,npts)
390 a_gauss_p_s =
391 . (-one-half*(a_gauss_s1+a_gauss_s))/
392 . (half*(a_gauss_s1-a_gauss_s))
393 ELSEIF(sol_node(2,j) == 1 )THEN
394 a_gauss_s = a_gauss(npts-1,npts)
395 a_gauss_s1 = a_gauss(npts,npts)
396 a_gauss_p_s =
397 . (one+half*(a_gauss_s1+a_gauss_s))/
398 . (half*(a_gauss_s1-a_gauss_s))
399 ENDIF
400c
401 IF (nptt == 1)THEN
402 a_gauss_p_t = zero
403 ELSEIF (sol_node(3,j) == -1 )THEN
404 a_gauss_t = a_gauss(1,nptt)
405 a_gauss_t1 = a_gauss(2,nptt)
406 a_gauss_p_t =
407 . (-one-half*(a_gauss_t1+a_gauss_t))/
408 . (half*(a_gauss_t1-a_gauss_t))
409 ELSEIF(sol_node(3,j) == 1 )THEN
410 a_gauss_t = a_gauss(nptt-1,nptt)
411 a_gauss_t1 = a_gauss(nptt,nptt)
412 a_gauss_p_t =
413 . (one+half*(a_gauss_t1+a_gauss_t))/
414 . (half*(a_gauss_t1-a_gauss_t))
415 ENDIF
416c
417 n1 = one_over_8*(
418 . (one+sol_node(1,k) * a_gauss_p_r) *
419 . (one+sol_node(2,k) * a_gauss_p_s) *
420 . (one+sol_node(3,k) * a_gauss_p_t) )
421c
422 IF (igtyp == 20 .OR. igtyp ==21 .OR. igtyp == 22) THEN
423 ilay = it
424 it = 1
425 ELSE
426 ilay = 1
427 ENDIF
428
429 IF (jhbe == 24 .AND. gbuf%G_STRHG > 0) THEN
430 ip = ir + ( (is-1) + (it-1)*2 )*2
431 evar_tmp(1) = str_is24(i,1,ip)
432 evar_tmp(2) = str_is24(i,2,ip)
433 evar_tmp(3) = str_is24(i,3,ip)
434 evar_tmp(4) = str_is24(i,4,ip)*half
435 evar_tmp(5) = str_is24(i,5,ip)*half
436 evar_tmp(6) = str_is24(i,6,ip)*half
437 ELSE
438 lbuf => elbuf_tab%BUFLY(ilay)%LBUF(ir,is,it)
439 evar_tmp(1) = lbuf%STRA(jj(1) + i)
440 evar_tmp(2) = lbuf%STRA(jj(2) + i)
441 evar_tmp(3) = lbuf%STRA(jj(3) + i)
442 evar_tmp(4) = lbuf%STRA(jj(4) + i)*half
443 evar_tmp(5) = lbuf%STRA(jj(5) + i)*half
444 evar_tmp(6) = lbuf%STRA(jj(6) + i)*half
445 ENDIF
446 IF (kcvt /= 0)
447 . CALL srota6(
448 1 x, ixs(1,n),kcvt, evar_tmp,
449 2 gama, jhbe, igtyp, isorth)
450 evar(1:6,j,i) = evar(1:6,j,i) + n1 * evar_tmp(1:6)
451 ENDDO
452 ENDDO
453 ENDDO
454 ENDIF
455c
456 ELSEIF(isolnod == 4 )THEN
457c
458 DO i=lft,llt
459 n = i + nft
460 IF (kcvt /= 0) THEN
461 IF(kcvt==2)THEN
462 gama(1) = gbuf%GAMA(jj(1) + i)
463 gama(2) = gbuf%GAMA(jj(2) + i)
464 gama(3) = gbuf%GAMA(jj(3) + i)
465 gama(4) = gbuf%GAMA(jj(4) + i)
466 gama(5) = gbuf%GAMA(jj(5) + i)
467 gama(6) = gbuf%GAMA(jj(6) + i)
468 ELSE
469 gama(1)=one
470 gama(2)=zero
471 gama(3)=zero
472 gama(4)=zero
473 gama(5)=one
474 gama(6)=zero
475 END IF
476 END IF
477 n1 = fourth
478 ilay = 1
479 lbuf => elbuf_tab%BUFLY(ilay)%LBUF(1,1,1)
480 evar_tmp(1) = lbuf%STRA(jj(1) + i)
481 evar_tmp(2) = lbuf%STRA(jj(2) + i)
482 evar_tmp(3) = lbuf%STRA(jj(3) + i)
483 evar_tmp(4) = lbuf%STRA(jj(4) + i)*half
484 evar_tmp(5) = lbuf%STRA(jj(5) + i)*half
485 evar_tmp(6) = lbuf%STRA(jj(6) + i)*half
486 IF (kcvt /= 0)
487 . CALL srota6(
488 1 x, ixs(1,n),kcvt, evar_tmp,
489 2 gama, jhbe, igtyp, isorth)
490 DO j=1,4
491 evar(1:6,j,i) = evar(1:6,j,i) + n1 * evar_tmp(1:6)
492 ENDDO
493 ENDDO
494 ELSEIF(isolnod == 10)THEN
495c
496 alpha_1 = -alpha/(beta-alpha)
497 beta_1 = (one-alpha)/(beta-alpha)
498 DO i=lft,llt
499 n = i + nft
500 IF (kcvt /= 0) THEN
501 IF(kcvt==2)THEN
502 gama(1) = gbuf%GAMA(jj(1) + i)
503 gama(2) = gbuf%GAMA(jj(2) + i)
504 gama(3) = gbuf%GAMA(jj(3) + i)
505 gama(4) = gbuf%GAMA(jj(4) + i)
506 gama(5) = gbuf%GAMA(jj(5) + i)
507 gama(6) = gbuf%GAMA(jj(6) + i)
508 ELSE
509 gama(1)=one
510 gama(2)=zero
511 gama(3)=zero
512 gama(4)=zero
513 gama(5)=one
514 gama(6)=zero
515 END IF
516 END IF
517 DO j=1,4
518 evar_t10(1:6,j)=zero
519 DO k=1,4
520 ir = k
521 is = 1
522 it = 1
523C
524 IF (j==k) THEN
525 n1 = beta_1
526 ELSE
527 n1 = alpha_1
528 ENDIF
529 ilay = 1
530 lbuf => elbuf_tab%BUFLY(ilay)%LBUF(ir,is,it)
531 evar_t10(1,j) = evar_t10(1,j)+ n1 *lbuf%STRA(jj(1) + i)
532 evar_t10(2,j) = evar_t10(2,j)+ n1 *lbuf%STRA(jj(2) + i)
533 evar_t10(3,j) = evar_t10(3,j)+ n1 *lbuf%STRA(jj(3) + i)
534 evar_t10(4,j) = evar_t10(4,j)+ n1 *lbuf%STRA(jj(4) + i)*half
535 evar_t10(5,j) = evar_t10(5,j)+ n1 *lbuf%STRA(jj(5) + i)*half
536 evar_t10(6,j) = evar_t10(6,j)+ n1 *lbuf%STRA(jj(6) + i)*half
537 ENDDO
538 IF (kcvt /= 0)
539 . CALL srota6(
540 1 x, ixs(1,n), kcvt, evar_t10(1,j),
541 2 gama, jhbe, igtyp, isorth)
542 ENDDO
543 DO j=5,10
544 nn1=iperm1(j)
545 nn2=iperm2(j)
546 evar_t10(1:6,j) = half*(evar_t10(1:6,nn1)+evar_t10(1:6,nn2))
547 END DO
548 DO j=1,10
549 evar(1:6,j,i) = evar_t10(1:6,j)
550 ENDDO
551 ENDDO
552 ENDIF
553C-----------------------------------------------
554 RETURN
555 END SUBROUTINE strn_tenscor3
#define my_real
Definition cppsort.cpp:32
#define alpha
Definition eval.h:35
subroutine strn_tenscor3(elbuf_tab, iparg, ixs, ixs10, x, pm, kcvt, nel, evar)
#define min(a, b)
Definition macros.h:20
#define max(a, b)
Definition macros.h:21
subroutine srota6(x, ixs, kcvt, tens, gama)
Definition srota6.F:33
subroutine szstraingps(strain, str_pi, strhg, nel)
Definition szstraingps.F:32