38 . ITABM1 ,UNITAB ,LSUBMODEL )
50#include "implicit_f.inc"
54#include "analyse_name.inc"
63 INTEGER ,
INTENT(IN) ::
64INTEGER ,
DIMENSION(NUMNOD) ,
INTENT(IN) :: ITABM1
66 TYPE (SUBMODEL_DATA) ,
DIMENSION(NSUBMOD) :: LSUBMODEL
67 TYPE (UNIT_TYPE_) ,
INTENT(IN) ::UNITAB
71 INTEGER :: NOD_ID,ID_N1,ID_N2,ID_N3,NS1,NS2,NS3,NS4,SENS_TYPE
73 CHARACTER(len=40) :: MESS
74 LOGICAL :: IS_AVAILABLE
75 DATA mess/
'SENSOR DEFINITION '/
83 is_available = .false.
87 CALL hm_get_floatv(
'Tdelay' ,tdel ,is_available,lsubmodel,unitab)
89 CALL hm_get_intv (
'NODE1' ,nod_id ,is_available,lsubmodel)
90 CALL hm_get_intv (
'NODE2' ,id_n1 ,is_available,lsubmodel)
92 CALL hm_get_intv (
'NODE4' ,id_n3 ,is_available,lsubmodel)
94 CALL hm_get_floatv(
'Dmin' ,dmin ,is_available,lsubmodel,unitab)
95 CALL hm_get_floatv(
'Dmax' ,dmax ,is_available,lsubmodel,unitab)
96 CALL hm_get_floatv(
'Tmin' ,tmin ,is_available,lsubmodel,unitab)
98 IF (dmax == zero) dmax = infinity
103 ALLOCATE (sensor_ptr%IPARAM(nparis))
104 ALLOCATE (sensor_ptr%RPARAM(nparrs))
105 ALLOCATE (sensor_ptr%VAR(nvar))
106 sensor_ptr%VAR(:) = zero
110 sensor_ptr%IPARAM(1) = usr2sys(nod_id,itabm1,mess,ns1)
111 CALL anodset(sensor_ptr%IPARAM(1), check_used)
112 sensor_ptr%IPARAM(3) = usr2sys(id_n1,itabm1,mess,ns2)
113 CALL anodset(sensor_ptr%IPARAM(3), check_used)
114 sensor_ptr%IPARAM(4) = usr2sys(id_n2,itabm1,mess,ns3)
115 CALL anodset(sensor_ptr%IPARAM(4), check_used)
116 sensor_ptr%IPARAM(5) = usr2sys(id_n3,itabm1,mess,ns4)
117 CALL anodset(sensor_ptr%IPARAM(5), check_used)
119 sensor_ptr%NPARI = nparis
120 sensor_ptr%NPARR = nparrs
121 sensor_ptr%NVAR = nvar
123 sensor_ptr%TYPE = sens_type
124 sensor_ptr%SENS_ID = sens_id
125 sensor_ptr%STATUS = 0
126 sensor_ptr%TSTART = infinity
127 sensor_ptr%TCRIT = infinity
128 sensor_ptr%TMIN = tmin
129 sensor_ptr%TDELAY = tdel
130 sensor_ptr%VALUE = infinity
132 sensor_ptr%IPARAM(2) = 0
133 sensor_ptr%RPARAM(1) = dmin
134 sensor_ptr%RPARAM(2) = dmax
136 WRITE(iout, 1000) sens_id,tdel
137 WRITE (iout,2000) nod_id,id_n1,id_n2,id_n3,dmin,dmax,tmin
140 . 5x,
' SENSOR TYPE 15: DISTANCE NODE TO SURFACE '/,
141 . 5x,
' ---------------------------------------- '/,
142 . 5x,
'SENSOR ID. . . . . . . . . . . . . . . . .='
143 . 5x,
'TIME DELAY BEFORE ACTIVATION . . . . . . .=',e12.4)
145 . 5x,
'NODE ID . . . . . . . . . . . . . . . . .=',i10/
146 . 5x,
'SURFACE NODE 1 ID . . . . . . . . . . . .=',i10/
147 . 5x,
'SURFACE NODE 2 ID . . . . . . . . . . . .=',i10/
148 . 5x,
'SURFACE NODE 3 ID . . . . . . . . . . . .=',i10/
149 . 5x,
'MINIMAL DISTANCE . . . . . . . . . . . . .=',e12.4/
150 . 5x,
'MAXIMAL DISTANCE . . . . . . . . . . . . .=',e12.4/
151 . 5x,
'MIN DURATION . . . . . . . . . . . . . . .=',e12.4/)