41 . NRADIA,NUMRADIA,NIRADIA,LFACTHER)
54#include "implicit_f.inc"
64 INTEGER ,
INTENT(IN) :: NRADIA
65 INTEGER ,
INTENT(IN) :: NUMRADIA
66 INTEGER ,
INTENT(IN) :: NIRADIA
67 INTEGER ,
INTENT(IN) :: LFACTHER
68 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
69 INTEGER IB(NIRADIA,*), ITAB(*), IXS(NIXS,*)
72 TYPE (SURF_) ,
DIMENSION(NSURF) :: IGRSURF
77 INTEGER K, M, I1, I2, I3, I4, IFU, , ISENS,NPR0,NN,ISU,IS,
78 .
id,j,uid,iflagunit,ity
80 . fcx, fcy, fac_l, fac_t, fac_m, emi, sigma, tstart, tstop,
81 . emiss(numradia),fcx_dim,fcy_dim,tstop_dim
83 CHARACTER(LEN=NCHARTITLE) :: TITR
89 DATA mess/
'RADIATIVE FLUX DEFINITION '/
91 is_available = .false.
105 . option_titr = titr)
108 IF (unitab%UNIT_ID(j) == uid)
THEN
113 IF (uid /= 0.AND.iflagunit == 0)
THEN
114 CALL ancmsg(msgid=659,anmode=aninfo,msgtype=msgerror,
115 . i2=uid,i1=
id,c1=
'CONVECTION HEAT',
116 . c2=
'CONVECTION HEAT',
122 CALL hm_get_intv(
'entityid',isu,is_available,lsubmodel)
123 CALL hm_get_intv(
'curveid',ifu,is_available,lsubmodel)
124 CALL hm_get_intv(
'rad_sensor_id',isens,is_available,lsubmodel)
128 CALL hm_get_floatv(
'xscale',fcx,is_available,lsubmodel,unitab)
130 CALL hm_get_floatv(
'magnitude',fcy,is_available,lsubmodel,unitab)
132 CALL HM_GET_FLOATV('rad_tstart
',TSTART,IS_AVAILABLE,LSUBMODEL,UNITAB)
133 CALL HM_GET_FLOATV('rad_tstop
',TSTOP,IS_AVAILABLE,LSUBMODEL,UNITAB)
134 CALL HM_GET_FLOATV_DIM('rad_tstop
',TSTOP_DIM,IS_AVAILABLE,LSUBMODEL,UNITAB)
135 CALL HM_GET_FLOATV('flux
',EMI,IS_AVAILABLE,LSUBMODEL,UNITAB)
137 IF (FCX == ZERO) FCX = FCX_DIM
138 IF (FCY == ZERO) FCY = FCY_DIM
139 IF(TSTOP == ZERO) TSTOP= EP30 * TSTOP_DIM
141 FAC_M = UNITAB%FAC_M_WORK
142 FAC_T = UNITAB%FAC_T_WORK
143 SIGMA=STEFBOLTZ*(FAC_T*FAC_T*FAC_T)/FAC_M
147 IF (ISU == IGRSURF(J)%ID) IS=J
153 IB(1,K)=IGRSURF(IS)%NODES(J,1)
154 IB(2,K)=IGRSURF(IS)%NODES(J,2)
155 IB(3,K)=IGRSURF(IS)%NODES(J,3)
156 ITY =IGRSURF(IS)%ELTYP(J)
161 IB(4,K)=IGRSURF(IS)%NODES(J,4)
165 IB(7,K) = IGRSURF(IS)%ELTYP(J)
166 IB(8,K) = IGRSURF(IS)%ELEM(J)
168 IB(9,K) = IXS(11,IGRSURF(IS)%ELEM(J))
192 WRITE (IOUT,'(5(1x,i10),1x,1f10.3,2(1x,i10),1x,4g20.13)
') I,
193 . ITAB(IB(1,I)),ITAB(IB(2,I)),ITAB(IB(3,I)),ITAB(IB(4,I)),
194 . EMISS(I),IB(5,I),IB(6,I),FAC(4,I),FAC(5,I),ONE/FAC(2,I),
197 IF(I2 == NUMRADIA)GOTO 200
199 I2=MIN0(I2+50,NUMRADIA)
202 300 CALL ANCMSG(MSGID=157,
209 .' ----------------
')
211 .' segment node1 node2 node3 node4 emissivity
',
212 .' curve sensor t-start t-stop
', 8X,
subroutine hm_read_radiation(ib, fac, itab, ixs, igrsurf, unitab, lsubmodel, nradia, numradia, niradia, lfacther)
subroutine radiation(ibcr, fradia, npc, tf, x, temp, nsensor, sensor_tab, fthe, iad, fthesky, python, glob_therm)
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)