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

Go to the source code of this file.

Functions/Subroutines

subroutine mdama24 (elbuf_str, jft, jlt, pm, mat, dama_g)

Function/Subroutine Documentation

◆ mdama24()

subroutine mdama24 ( type (elbuf_struct_), target elbuf_str,
integer jft,
integer jlt,
pm,
integer, dimension(*) mat,
dama_g )

Definition at line 36 of file mdama24.F.

38C-----------------------------------------------
39C M o d u l e s
40C-----------------------------------------------
41 USE elbufdef_mod
42C-----------------------------------------------
43C I m p l i c i t T y p e s
44C-----------------------------------------------
45#include "implicit_f.inc"
46C-----------------------------------------------
47C G l o b a l P a r a m e t e r s
48C-----------------------------------------------
49#include "mvsiz_p.inc"
50C-----------------------------------------------
51C C o m m o n B l o c k s
52C-----------------------------------------------
53#include "param_c.inc"
54C-----------------------------------------------
55C D u m m y A r g u m e n t s
56C-----------------------------------------------
57 INTEGER JFT, JLT
58 INTEGER MAT(*)
59C REAL
61 . pm(npropm,*),dama_g(mvsiz,3)
62 TYPE (ELBUF_STRUCT_), TARGET :: ELBUF_STR
63C-----------------------------------------------
64C L o c a l V a r i a b l e s
65C-----------------------------------------------
66 INTEGER I,MX,J,NBDAMA,ISYM
67C REAL
69 . cc(mvsiz,3,3),b(mvsiz,3,3)
71 . qc(mvsiz,9),qcg(mvsiz,9),qg(mvsiz,9),
72 . qgc(mvsiz,9),g3(mvsiz,3),dam
74 . c3(mvsiz,3),damang(mvsiz,6)
75 TYPE(L_BUFEL_) ,POINTER :: LBUF
76C-----------------------------------------------
77 lbuf => elbuf_str%BUFLY(1)%LBUF(1,1,1)
78 mx = mat(1)
79C-------get concrete part (CC,G3) and ANG in damage system
80 CALL mmodul24c(jlt ,pm(1,mx),lbuf%DAM,lbuf%CRAK ,
81 . cc ,g3 ,lbuf%ANG,damang ,nbdama)
82 IF (nbdama==0) THEN
83 dama_g(jft:jlt,1:3)= zero
84 ELSE
85 c3(jft:jlt,1:3)=pm(24,mx)
86C-----
87 CALL gettransv(jft,jlt,damang ,qc,qcg,qgc,qg)
88 b(jft:jlt,1:3,1:3)=zero
89C
90 DO j= 1,3
91 DO i=jft,jlt
92 b(i,j,j)=g3(i,j)
93 ENDDO
94 ENDDO
95 isym = 1
96 CALL cbatran3v(jft ,jlt ,qc ,cc ,qc ,isym)
97 CALL cbatran3v(jft ,jlt ,qgc ,b ,qgc,isym)
98C
99 DO j= 1,3
100 DO i=jft,jlt
101 cc(i,j,j)=cc(i,j,j)+four*b(i,j,j)
102 ENDDO
103 ENDDO
104C
105 DO j= 1,3
106 DO i=jft,jlt
107 dam = one-cc(i,j,j)/c3(i,j)
108 dama_g(i,j)=max(zero,dam)
109 ENDDO
110 ENDDO
111 END IF !(NBDAMA==0) THEN
112C
113 RETURN
subroutine cbatran3v(jft, jlt, vqi, kk, vqj, isym)
Definition cbatran3v.F:31
#define my_real
Definition cppsort.cpp:32
subroutine gettransv(jft, jlt, gama, qc, qcg, qgc, qg)
Definition gettransv.F:31
#define max(a, b)
Definition macros.h:21
subroutine mmodul24c(nel, pm, dam, crak, cdam, g3, ang, damang, nbdama)
Definition mmodul24c.F:30