OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
szetfac.F File Reference
#include "implicit_f.inc"
#include "mvsiz_p.inc"

Go to the source code of this file.

Functions/Subroutines

subroutine szetfac (lft, llt, ikt, mtn, et, g)

Function/Subroutine Documentation

◆ szetfac()

subroutine szetfac ( integer lft,
integer llt,
integer ikt,
integer mtn,
et,
g )

Definition at line 30 of file szetfac.F.

31C-----------------------------------------------
32C I m p l i c i t T y p e s
33C-----------------------------------------------
34#include "implicit_f.inc"
35C-----------------------------------------------
36C G l o b a l P a r a m e t e r s
37C-----------------------------------------------
38#include "mvsiz_p.inc"
39C-----------------------------------------------
40C C o m m o n B l o c k s
41C-----------------------------------------------
42C
43C-----------------------------------------------
44C D u m m y A r g u m e n t s
45C-----------------------------------------------
46 INTEGER LFT,LLT,IKT,MTN
48 . et(*),g(*)
49C-----------------------------------------------
50C L o c a l V a r i a b l e s
51C-----------------------------------------------
52 INTEGER I, J,K
54 . fac_l,fac_u,fac(mvsiz),ete,fac_min,fac_max
55C-------IKT=2 for the moment----------
56 fac_l=fiveem2
57 DO i=lft,llt
58 fac(i) = one
59 END DO
60
61 IF (ikt == 2 ) THEN
62 SELECT CASE (mtn)
63 CASE (2,36)
64
65 CASE (42,62,69,82,88,92,94,95,111)
66c FAC_MIN=EP10
67c FAC_MAX=ZERO
68 DO i=lft,llt
69 IF (et(i)<=one) THEN
70 fac(i)=max(fac_l,et(i))
71 ELSE
72C
73 fac(i)= zep2+et(i)
74 END IF
75c IF (FAC_MIN>FAC(I)) FAC_MIN=FAC(I)
76c IF (FAC_MAX<FAC(I)) FAC_MAX=FAC(I)
77 END DO
78 CASE(38,70,90)
79 fac_l=em02
80c FAC_MIN=EP10
81c FAC_MAX=ZERO
82 DO i=lft,llt
83 IF (et(i) <= one) THEN
84 fac(i)=max(fac_l,et(i))
85 ELSE
86C----- -G(i) is already calculated with EMAX
87 fac(i)=one
88 END IF
89c IF (FAC_MIN>FAC(I)) FAC_MIN=FAC(I)
90c IF (FAC_MAX<FAC(I)) FAC_MAX=FAC(I)
91 END DO
92c write(iout,*),'FAC_L,FAC(1),ET(1)=',FAC_L,FAC(1),ET(1)
93 CASE (71)
94 fac_l=em02
95 DO i=lft,llt
96 IF (et(i)<=one) THEN
97 fac(i)=max(fac_l,et(i))
98 END IF
99 END DO
100 END SELECT
101C-------IKT>2 hide option :limited by IKT ----------
102 ELSE
103C---------
104 fac_u=one*ikt
105 SELECT CASE (mtn)
106 CASE (2,36)
107
108 CASE (42,62,69,82,88,92,94,111)
109 DO i=lft,llt
110 IF (et(i)<=one) THEN
111 fac(i)=max(fac_l,et(i))
112 ELSE
113 fac(i)=min(fac_u,et(i))
114 END IF
115 ENDDO
116 CASE(38,70,90)
117 fac_l=fac_l/ikt
118 DO i=lft,llt
119 IF (et(i)<=one) THEN
120 fac(i)=max(fac_l,et(i))
121 ELSE
122 fac(i)=min(fac_u,et(i))
123 END IF
124 ENDDO
125 END SELECT
126 END IF !(IKT ==2 THEN
127C
128 DO i=lft,llt
129 g(i)=fac(i)*g(i)
130 ENDDO
131C
132 RETURN
#define my_real
Definition cppsort.cpp:32
#define min(a, b)
Definition macros.h:20
#define max(a, b)
Definition macros.h:21