41 . ID,PROP_TAG,TITR,LSUBMODEL,IUNIT)
51#include "implicit_f.inc"
55#include "tablen_c.inc"
70 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
71 INTEGER IOUT,NUVAR,IGTYP,IUNIT
74 TYPE(
prop_tag_) ,
DIMENSION(0:MAXPROP) :: PROP_TAG
75 CHARACTER(LEN=NCHARTITLE) :: TITR
80 INTEGER SENSOR,ZEROI,IERROR,JTYP
82 my_real xtyp,fac_m,fac_l,fac_t,fac_mm,fac_ff,fac_kt
85 my_real crxx,cryy,crzz,crrx,crry,crrz
86 my_real sdxmi,sdxma,sdymi,sdyma,sdzmi,sdzma
87 my_real saxmi,saxma,saymi,sayma,sazmi,sazma
88 my_real kfx,kfy,kfz,kfrx,kfry,kfrz
89 my_real fmx,fmy,fmz,fmrx,fmry,fmrz,xidsk1,xidsk2
90 my_real fcombx,fcomby,fcombz,fcombrx,fcombry,fcombrz,sumt,sumr,alpha_plus,alpha_moin
91 INTEGER IFUN_XX,IFUN_YY,IFUN_ZZ,IFUN_RX,IFUN_RY,
92 INTEGER IFUN_CXX,IFUN_CYY,IFUN_CZZ,IFUN_CRX,IFUN_CRY,IFUN_CRZ
93 INTEGER IFUN_FMX,IFUN_FMY,IFUN_FMZ,IFUN_FMRX,IFUN_FMRY,IFUN_FMRZ
94 INTEGER RED,IDSK1,IDSK2,COMB_ERROR
96 LOGICAL , IS_ENCRYPTED
100 INTEGER SET_U_PNU,SET_U_GEO,KFUNC
104 is_encrypted = .false.
105 is_available = .false.
114 CALL hm_get_intv(
'type',jtyp,is_available,lsubmodel)
115 CALL hm_get_intv(
'ISENSOR',sensor,is_available,lsubmodel)
116 CALL hm_get_intv(
'SKEW1',idsk1,is_available,lsubmodel)
117 CALL hm_get_intv(
'SKEW2',idsk2,is_available,lsubmodel)
122 CALL hm_get_floatv(
'SCALE',scf,is_available,lsubmodel,unitab)
126 IF(.NOT. is_encrypted)
THEN
137 fac_l = unitab%FAC_L(iunit)
138 fac_t = unitab%FAC_T(iunit)
140 fac_ff = fac_m * fac_l / fac_t
141 fac_mm = fac_m * fac_l**2 / fac_t**2
142 fac_kt = fac_m / fac_t**2
148 IF (cr<zero.OR.cr>1.)
THEN
151 . anmode=aninfo_blind_1,
155 IF (cr==zero) cr = fiveem2
159 . anmode=aninfo_blind_1,
249 IF(.NOT. is_encrypted)
THEN
251 IF ((idsk1==0).AND.(idsk2==0))
THEN
253 WRITE(iout,1100) scf,cr,sensor
255 WRITE(iout,1000) knn,scf,cr,sensor
259 WRITE(iout,1300) scf,cr,sensor,idsk1,idsk2
261 WRITE(iout,1200) knn,scf,cr,sensor,idsk1,idsk2
267 CALL lec_dof_jnt(iout,is_encrypted,unitab,krx,crx,saxmi,
268 . saxma,fcombrx,kfrx,fmrx,ifun_crx,ifun_rx,4,
269 . fac_mm,ifun_fmrx,red,id,titr,
271 CALL lec_dof_jnt(iout,is_encrypted,unitab,kry,cry,saymi,
272 . sayma,fcombry,kfry,fmry,ifun_cry,ifun_ry,5,
273 . fac_mm,ifun_fmry,red,id,titr,
275 CALL lec_dof_jnt(iout,is_encrypted,unitab,krz,crz,sazmi,
276 . sazma,fcombrz,kfrz,fmrz,ifun_crz,ifun_rz,6,
277 . fac_mm,ifun_fmrz,red,id,titr,
280 IF ((red/=0).AND.(red/=3))
THEN
283 . anmode=aninfo_blind_2,
330 ELSEIF (jtyp==2)
THEN
334 IF(.NOT. is_encrypted)
THEN
336 IF ((idsk1==0).AND.(idsk2==0))
THEN
338 WRITE(iout,1100) scf,cr,sensor
340 WRITE(iout,1000) knn,scf,cr,sensor
344 WRITE(iout,1300) scf,cr,sensor,idsk1,idsk2
346 WRITE(iout,1200) knn,scf,cr,sensor,idsk1,idsk2
351 CALL lec_dof_jnt(iout,is_encrypted,unitab,krx,crx,saxmi,
352 . saxma,fcombrx,kfrx,fmrx,ifun_crx,ifun_rx,4,
353 . fac_mm,ifun_fmrx,red,id,titr,
415 ELSEIF (jtyp==3)
THEN
419 IF(.NOT. is_encrypted)
THEN
421 IF ((idsk1==0).AND.(idsk2==0))
THEN
423 WRITE(iout,1100) scf,cr,sensor
425 WRITE(iout,1000) knn,scf,cr,sensor
429 WRITE(iout,1300) scf,cr,sensor,idsk1,idsk2
431 WRITE(iout,1200) knn,scf,cr,sensor,idsk1,idsk2
437 CALL lec_dof_jnt(iout,is_encrypted,unitab,kxx,cxx,sdxmi,
438 . sdxma,fcombx,kfx,fmx,ifun_cxx,ifun_xx,1,
439 . fac_ff,ifun_fmx,red,id,titr,
441 CALL lec_dof_jnt(iout,is_encrypted,unitab,krx,crx,saxmi,
442 . saxma,fcombrx,kfrx,fmrx,ifun_crx,ifun_rx,4,
443 . fac_mm,ifun_fmrx,red,id,titr,
446 IF ((red/=0).AND.(red/=2))
THEN
449 . anmode=aninfo_blind_2,
506 ELSEIF (jtyp==4)
THEN
510 IF(.NOT. is_encrypted)
THEN
512 IF ((idsk1==0).AND.(idsk2==0))
THEN
514 WRITE(iout,1100) scf,cr,sensor
516 WRITE(iout,1000) knn,scf,cr,sensor
520 WRITE(iout,1300) scf,cr,sensor,idsk1,idsk2
522 WRITE(iout,1200) knn,scf,cr,sensor,idsk1,idsk2
528 CALL lec_dof_jnt(iout,is_encrypted,unitab,kyy,cyy,sdymi,
529 . sdyma,fcomby,kfy,fmy,ifun_cyy,ifun_yy,2,
530 . fac_ff,ifun_fmy,red,id,titr,
532 CALL lec_dof_jnt(iout,is_encrypted,unitab,kzz,czz,sdzmi,
533 . sdzma,fcombz,kfz,fmz,ifun_czz,ifun_zz,3,
534 . fac_ff,ifun_fmz,red,id,titr,
537 . saxma,fcombrx,kfrx,fmrx,ifun_crx,ifun_rx,4,
538 . fac_mm,ifun_fmrx,red,id,titr,
544 . anmode=aninfo_blind_2,
592 ELSEIF (jtyp==5)
THEN
596 IF(.NOT. is_encrypted)
THEN
598 IF ((idsk1==0).AND.(idsk2==0))
THEN
600 WRITE(iout,1100) scf,cr,sensor
602 WRITE(iout,1000) knn,scf,cr,sensor
606 WRITE(iout,1300) scf,cr,sensor,idsk1,idsk2
608 WRITE(iout,1200) knn,scf,cr,sensor,idsk1,idsk2
614 CALL lec_dof_jnt(iout,is_encrypted,unitab,kry,cry,saymi,
615 . sayma,fcombry,kfry,fmry,ifun_cry,ifun_ry,5,
616 . fac_mm,ifun_fmry,red,id,titr,
618 CALL lec_dof_jnt(iout,is_encrypted,unitab,krz,crz,sazmi,
619 . sazma,fcombrz,kfrz,fmrz,ifun_crz,ifun_rz,6,
620 . fac_mm,ifun_fmrz,red,id,titr,
623 IF ((red/=0).AND.(red/=2))
THEN
626 . anmode=aninfo_blind_2,
683 ELSEIF (jtyp==6)
THEN
687 IF(.NOT. is_encrypted)
THEN
689 IF ((idsk1==0).AND.(idsk2==0))
THEN
691 WRITE(iout,1100) scf,cr,sensor
693 WRITE(iout,1000) knn,scf,cr,sensor
697 WRITE(iout,1300) scf,cr,sensor,idsk1,idsk2
699 WRITE(iout,1200) knn,scf,cr,sensor,idsk1,idsk2
704 CALL lec_dof_jnt(iout,is_encrypted,unitab,kxx,cxx,sdxmi,
705 . sdxma,fcombx,kfx,fmx,ifun_cxx,ifun_xx,1,
706 . fac_ff,ifun_fmx,red,id,titr,
768 ELSEIF (jtyp==7)
THEN
772 IF(.NOT. is_encrypted)
THEN
774 IF ((idsk1==0).AND.(idsk2==0))
THEN
776 WRITE(iout,1100) scf,cr,sensor
778 WRITE(iout,1000) knn,scf,cr,sensor
782 WRITE(iout,1300) scf,cr,sensor,idsk1,idsk2
784 WRITE(iout,1200) knn,scf,cr,sensor,idsk1,idsk2
790 CALL lec_dof_jnt(iout,is_encrypted,unitab,kyy,cyy,sdymi,
791 . sdyma,fcomby,kfy,fmy,ifun_cyy,ifun_yy,2,
792 . fac_ff,ifun_fmy,red,id,titr,
794 CALL lec_dof_jnt(iout,is_encrypted,unitab,kzz,czz,sdzmi,
795 . sdzma,fcombz,kfz,fmz,ifun_czz,ifun_zz
796 . fac_ff,ifun_fmz,red,id,titr,
799 IF ((red/=0).AND.(red/=2))
THEN
802 . anmode=aninfo_blind_2,
859 ELSEIF (jtyp==8)
THEN
863 IF(.NOT. is_encrypted)
THEN
865 IF ((idsk1==0).AND.(idsk2==0))
THEN
867 WRITE(iout,1100) scf,cr,sensor
869 WRITE(iout,1000) knn,scf,cr,sensor
873 WRITE(iout,1300) scf,cr,sensor,idsk1,idsk2
875 WRITE(iout,1200) knn,scf,cr,sensor,idsk1,idsk2
949 ELSEIF (jtyp==9)
THEN
953 IF(.NOT. is_encrypted)
THEN
955 IF ((idsk1==0).AND.(idsk2==0))
THEN
957 WRITE(iout,1100) scf,cr,sensor
959 WRITE(iout,1000) knn,scf,cr,sensor
963 WRITE(iout,1300) scf,cr,sensor,idsk1,idsk2
965 WRITE(iout,1200) knn,scf,cr,sensor,idsk1,idsk2
971 CALL lec_dof_jnt(iout,is_encrypted,unitab,kxx,cxx,sdxmi,
972 . sdxma,fcombx,kfx,fmx,ifun_cxx,ifun_xx,1,
973 . fac_ff,ifun_fmx,red,id,titr,
975 CALL lec_dof_jnt(iout,is_encrypted,unitab,kyy,cyy,sdymi,
976 . sdyma,fcomby,kfy,fmy,ifun_cyy,ifun_yy,2,
977 . fac_ff,ifun_fmy,red,id,titr,
979 CALL lec_dof_jnt(iout,is_encrypted,unitab,kzz,czz,sdzmi,
980 . sdzma,fcombz,kfz,fmz,ifun_czz,ifun_zz,3,
981 . fac_ff,ifun_fmz,red,id,titr,
983 CALL lec_dof_jnt(iout,is_encrypted,unitab,krx,crx,saxmi,
984 . saxma,fcombrx,kfrx,fmrx,ifun_crx,ifun_rx,4,
985 . fac_mm,ifun_fmrx,red,id,titr,
987 CALL lec_dof_jnt(iout,is_encrypted,unitab,kry,cry,saymi,
988 . sayma,fcombry,kfry,fmry,ifun_cry,ifun_ry,5,
989 . fac_mm,ifun_fmry,red,id,titr,
991 CALL lec_dof_jnt(iout,is_encrypted,unitab,krz,crz,sazmi,
992 . sazma,fcombrz,kfrz,fmrz,ifun_crz,ifun_rz,6,
993 . fac_mm,ifun_fmrz,red,id,titr,
996 IF ((red/=0).AND.(red/=6))
THEN
999 . anmode=aninfo_blind_2,
1010 . anmode=aninfo_blind_2,
1021 sumt = fcombx+fcomby+fcombz
1022 sumr = fcombrx+fcombry+fcombrz
1026 IF (sumt == one)
THEN
1029 . anmode=aninfo_blind_2,
1032 ELSEIF (sumt > one)
THEN
1033 alpha_plus = (fcombx*sdxma+fcomby*sdyma+fcombz*sdzma)/sumt
1034 alpha_moin = (fcombx*sdxmi+fcomby*sdymi+fcombz*sdzmi)/sumt
1035 IF ((fcombx>em20).AND.(abs(alpha_plus - sdxma)/
max(em20,abs(alpha_plus))>em10)) comb_error = 1
1036 IF ((fcomby>em20).AND.(abs(alpha_plus - sdyma)/
max(em20,abs(alpha_plus))>em10)) comb_error = 1
1037 IF ((fcombz>em20).AND.(abs(alpha_plus - sdzma)/
max(em20,abs(alpha_plus))>em10)) comb_error = 1
1038 IF ((fcombx>em20).AND.(abs(alpha_moin - sdxmi)/
max(em20,abs(alpha_moin))>em10)) comb_error = 1
1039 IF ((fcomby>em20).AND.(abs(alpha_moin - sdymi)/
max(em20,abs(alpha_moin))>em10)) comb_error = 1
1040 IF ((fcombz>em20).AND.(abs(alpha_moin - sdzmi)/
max(em20,abs(alpha_moin))>em10)) comb_error = 1
1045 IF (sumr == one)
THEN
1048 . anmode=aninfo_blind_2,
1051 ELSEIF (sumr > one)
THEN
1052 alpha_plus = (fcombrx*saxma+fcombry*sayma+fcombrz*sazma)/sumr
1053 alpha_moin = (fcombrx*saxmi+fcombry*saymi+fcombrz*sazmi)/sumr
1055 IF ((fcombry>em20).AND.(abs(alpha_plus - sayma)/
max(em20,abs(alpha_plus))>em10)) comb_error = 1
1056 IF ((fcombrz>em20).AND.(abs(alpha_plus - sazma)/
max(em20,abs(alpha_plus))>em10)) comb_error = 1
1057 IF ((fcombrx>em20).AND.(abs(alpha_moin - saxmi)/
max(em20,abs(alpha_moin))>em10)) comb_error = 1
1058 IF ((fcombry>em20).AND.(abs(alpha_moin - saymi)/
max(em20,abs(alpha_moin))>em10)) comb_error = 1
1059 IF ((fcombrz>em20).AND.(abs(alpha_moin - sazmi)/
max(em20,abs(alpha_moin))>em10)) comb_error = 1
1062 IF (comb_error==1)
THEN
1065 . anmode=aninfo_blind_2,
1078 ierror = set_u_geo(1,xtyp)
1079 ierror = set_u_geo(2,sensr)
1080 ierror = set_u_geo(3,skewr)
1081 ierror = set_u_geo(4,kxx)
1082 ierror = set_u_geo(5,kyy)
1083 ierror = set_u_geo(6,kzz)
1084 ierror = set_u_geo(7,krx)
1085 ierror = set_u_geo(8,kry)
1086 ierror = set_u_geo(9,krz)
1087 ierror = set_u_geo(10,knn)
1088 ierror = set_u_geo(11,scf)
1090 ierror = set_u_geo(12,cr)
1091 ierror = set_u_geo(13,zero)
1092 ierror = set_u_geo(14,zero)
1093 ierror = set_u_geo(15,crxx)
1094 ierror = set_u_geo(16,cryy)
1095 ierror = set_u_geo(17,crzz)
1096 ierror = set_u_geo(18,crrx)
1097 ierror = set_u_geo(19,crry)
1098 ierror = set_u_geo(20,crrz)
1099 ierror = set_u_geo(21,cxx)
1100 ierror = set_u_geo(22,cyy)
1101 ierror = set_u_geo(23,czz)
1102 ierror = set_u_geo(24,crx)
1103 ierror = set_u_geo(25,cry)
1104 ierror = set_u_geo(26,crz)
1107 ierror = set_u_geo(27,fac_l)
1108 ierror = set_u_geo(28,fac_t)
1110 ierror = set_u_geo(29,sdxmi)
1111 ierror = set_u_geo(30,sdxma)
1112 ierror = set_u_geo(31,sdymi)
1113 ierror = set_u_geo(32,sdyma)
1114 ierror = set_u_geo(33,sdzmi)
1115 ierror = set_u_geo(34,sdzma)
1116 ierror = set_u_geo(35,saxmi)
1117 ierror = set_u_geo(36,saxma)
1118 ierror = set_u_geo(37,saymi)
1119 ierror = set_u_geo(38,sayma)
1120 ierror = set_u_geo(39,sazmi)
1121 ierror = set_u_geo(40,sazma)
1123 ierror = set_u_geo(41,kfx)
1124 ierror = set_u_geo(42,kfy)
1125 ierror = set_u_geo(43,kfz)
1126 ierror = set_u_geo(44,kfrx)
1127 ierror = set_u_geo(45,kfry)
1128 ierror = set_u_geo(46,kfrz)
1129 ierror = set_u_geo(47,fmx)
1130 ierror = set_u_geo(48,fmy)
1131 ierror = set_u_geo(49,fmz)
1132 ierror = set_u_geo(50,fmrx)
1133 ierror = set_u_geo(51,fmry)
1134 ierror = set_u_geo(52,fmrz)
1136 ierror = set_u_geo(53,xidsk1)
1137 ierror = set_u_geo(54,xidsk2)
1139 ierror = set_u_geo(55,fcombx)
1140 ierror = set_u_geo(56,fcomby)
1141 ierror = set_u_geo(57,fcombz)
1142 ierror = set_u_geo(58,fcombrx)
1143 ierror = set_u_geo(59,fcombry)
1144 ierror = set_u_geo(60,fcombrz)
1146 ierror = set_u_pnu(1,ifun_xx,kfunc)
1147 ierror = set_u_pnu(2,ifun_yy,kfunc)
1148 ierror = set_u_pnu(3,ifun_zz,kfunc)
1149 ierror = set_u_pnu(4,ifun_rx,kfunc)
1150 ierror = set_u_pnu(5,ifun_ry,kfunc)
1151 ierror = set_u_pnu(6,ifun_rz,kfunc)
1152 ierror = set_u_pnu(7,ifun_cxx,kfunc)
1153 ierror = set_u_pnu(8,ifun_cyy,kfunc)
1154 ierror = set_u_pnu(9,ifun_czz,kfunc)
1155 ierror = set_u_pnu(10,ifun_crx,kfunc)
1156 ierror = set_u_pnu(11,ifun_cry,kfunc)
1157 ierror = set_u_pnu(12,ifun_crz,kfunc)
1158 ierror = set_u_pnu(13,ifun_fmx,kfunc)
1159 ierror = set_u_pnu(14,ifun_fmy,kfunc)
1160 ierror = set_u_pnu(15,ifun_fmz,kfunc)
1161 ierror = set_u_pnu(16,ifun_fmrx,kfunc)
1162 ierror = set_u_pnu(17,ifun_fmry,kfunc)
1163 ierror = set_u_pnu(18,ifun_fmrz,kfunc)
1169 prop_tag(igtyp)%G_FOR = 3
1170 prop_tag(igtyp)%G_MOM = 3
1171 prop_tag(igtyp)%G_TOTDEPL = 3
1172 prop_tag(igtyp)%G_TOTROT = 3
1173 prop_tag(igtyp)%G_SKEW = 3
1174 prop_tag(igtyp)%G_MASS = 1
1175 prop_tag(igtyp)%G_NUVAR = nuvar
1176 prop_tag(igtyp)%G_LENGTH_ERR = 3
1180 & 5x,
'JOINT TYPE . . . . . . . . SPHERICAL JOINT'/)
1182 & 5x,
'JOINT TYPE . . . . . . . . REVOLUTE JOINT'/)
1184 & 5x,
'JOINT TYPE . . . . . . . . CYLINDRICAL JOINT'
1186 & 5x,
'JOINT TYPE . . . . . . . . PLANAR JOINT'/)
1188 & 5x,
'JOINT TYPE . . . . . . . . UNIVERSAL JOINT'/)
1190 & 5x,
'JOINT TYPE . . . . . . . . TRANSLATIONAL JOINT'
1192 & 5x,
'JOINT TYPE . . . . . . . . OLDHAM JOINT'/)
1194 & 5x,
'JOINT TYPE . . . . . . . . RIGID JOINT'/)
1196 & 5x,
'JOINT TYPE . . . . . . . . FREE JOINT'/)
1199 & 5x,
'BLOCKING STIFFNESS KNN . . . . . . . . . . =',1pg20.13/,
1200 & 5x,
'SCAL. FACTOR FOR ROT. BLOCKING STIFFNESS . .=',1pg20.13/,
1201 & 5x,
'CRITICAL DAMPING COEFFICIENT . . . . . . . =',1pg20.13/,
1202 & 5x,
'SENSOR ID . . . . . . . . . . . . . . . . . =',i10/)
1205 & 5x,
'BLOCKING STIFFNESS KNN . . . . . . . . . . =',
' AUTO'/,
1206 & 5x,
'SCALING FACTOR FOR AUTOMATIC STIFFNESS . =',1pg20.13/,
1207 & 5x,
'CRITICAL DAMPING COEFFICIENT . . . . . . . =',1pg20.13/,
1208 & 5x,
'SENSOR ID . . . . . . . . . . . . . . . . =',i10/)
1211 & 5x,
'BLOCKING STIFFNESS KNN . . . . . . . . . . =',1pg20.13/,
1212 & 5x,
'SCALING FACTOR FOR AUTOMATIC STIFFNESS . =',1pg20
1213 & 5x,
'CRITICAL DAMPING COEFFICIENT . . . . . . . =',1pg20.13/,
1214 & 5x,
'SENSOR ID . . . . . . . . . . . . . . . . =',i10/,
1215 & 5x,
'SKEW ID 1 . . . . . . . . . . . . . . . . =',i10/,
1216 & 5x,
'SKEW ID 2 . . . . . . . . . . . . . . . . =',i10
1219 & 5x,
'BLOCKING STIFFNESS KNN . . . . . . . . . . =',
' AUTO'/,
1220 & 5x,
'SCALING FACTOR FOR AUTOMATIC STIFFNESS . =',1pg20.13/,
1221 & 5x,
'CRITICAL DAMPING COEFFICIENT . . . . . . . =',1pg20.13/,
1222 & 5x,
'SENSOR ID . . . . . . . . . . . . . . . . =',i10/,
1223 & 5x,
'SKEW ID 1 . . . . . . . . . . . . . . . . =',i10/,
1224 & 5x,
'SKEW ID 2 . . . . . . . . . . . . . . . . =',i10/)
1227 & 5x,
'USER PROPERTY SET'/,
1228 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10)
1231 & 5x,
'USER PROPERTY SET'/,
1232 & 5x,
'PROPERTY SET NUMBER . . . . . . . . . .=',i10,
1233 & 5x,
'CONFIDENTIAL DATA'//)
1253 . SAMA,FCOMB,KFR,FM,IFUN_CRX,IFUN_RX,IDOF,
1254 . FAC3,IFUN_FM,RED,ID,TITR,LSUBMODEL)
1263#include "implicit_f.inc"
1280 TYPE (UNIT_TYPE_),
INTENT(IN) ::UNITAB
1281 INTEGER IOUT,IFUN_CRX,IFUN_RX,IDOF,RED,IFUN_FM
1282 my_real KRX,CRX,SAMI,SAMA,KFR,FM,FAC3,FCOMB
1284 CHARACTER(LEN=NCHARTITLE) :: TITR
1285 LOGICAL IS_ENCRYPTED
1290 INTEGER SET_U_PNU,SET_U_GEO,ICOMB,READ_BLOCK,I
1291 EXTERNAL SET_U_PNU,SET_U_GEO
1292 LOGICAL IS_AVAILABLE(10)
1301 CALL hm_get_intv(
'Xt_fun',ifun_rx,is_available(1),lsubmodel)
1302 CALL hm_get_intv(
'Ctx_Fun',ifun_crx,is_available(2),lsubmodel)
1303 CALL hm_get_intv(
'FUN_A1',ifun_fm,is_available(3),lsubmodel)
1304 CALL hm_get_intv(
'Icomb_tx',icomb,is_available(4),lsubmodel)
1308 CALL hm_get_floatv(
'Ktx',krx,is_available(5),lsubmodel,unitab)
1309 CALL hm_get_floatv(
'type12_XN',sami,is_available(6),lsubmodel,unitab)
1310 CALL hm_get_floatv(
'type12_Xc',sama,is_available(7),lsubmodel,unitab)
1312 CALL hm_get_floatv(
'Vx',kfr,is_available(9),lsubmodel,unitab)
1313 CALL hm_get_floatv(
'Prop_X_F',fm,is_available(10),lsubmodel,unitab)
1315 ELSEIF (idof == 2)
THEN
1319 CALL hm_get_intv(
'Yt_fun',ifun_rx,is_available(1),lsubmodel)
1320 CALL hm_get_intv(
'Cty_Fun',ifun_crx,is_available(2),lsubmodel)
1321 CALL hm_get_intv(
'FUN_A2',ifun_fm,is_available(3),lsubmodel)
1322 CALL hm_get_intv(
'Icomb_ty',icomb,is_available(4),lsubmodel)
1326 CALL hm_get_floatv(
'Kty',krx,is_available(5),lsubmodel,unitab)
1327 CALL hm_get_floatv(
'type12_YN',sami,is_available(6),lsubmodel,unitab)
1328 CALL hm_get_floatv(
'type12_Yc',sama,is_available(7),lsubmodel,unitab)
1329 CALL hm_get_floatv(
'Cty',crx,is_available(8),lsubmodel,unitab)
1330 CALL hm_get_floatv(
'Vy',kfr,is_available(9),lsubmodel,unitab)
1331 CALL hm_get_floatv(
'Prop_Y_F',fm,is_available(10),lsubmodel,unitab)
1333 ELSEIF (idof == 3)
THEN
1337 CALL hm_get_intv(
'Zt_fun',ifun_rx,is_available(1),lsubmodel)
1339 CALL hm_get_intv(
'FUN_A3',ifun_fm,is_available(3),lsubmodel)
1340 CALL hm_get_intv(
'Icomb_tz',icomb,is_available(4),lsubmodel)
1344 CALL hm_get_floatv(
'Ktz',krx,is_available(5),lsubmodel,unitab)
1345 CALL hm_get_floatv(
'type12_ZN',sami,is_available(6),lsubmodel,unitab)
1346 CALL hm_get_floatv(
'type12_Zc',sama,is_available(7),lsubmodel,unitab)
1347 CALL hm_get_floatv(
'Ctz',crx,is_available(8),lsubmodel,unitab)
1348 CALL hm_get_floatv(
'Vz',kfr,is_available(9),lsubmodel,unitab)
1349 CALL hm_get_floatv(
'Prop_Z_F',fm,is_available(10),lsubmodel,unitab)
1351 ELSEIF (idof == 4)
THEN
1355 CALL hm_get_intv(
'Xr_fun',ifun_rx,is_available(1),lsubmodel)
1356 CALL hm_get_intv(
'Crx_Fun',ifun_crx,is_available(2),lsubmodel)
1357 CALL hm_get_intv(
'FUN_B1',ifun_fm,is_available(3),lsubmodel)
1358 CALL hm_get_intv(
'Icomb_rx',icomb,is_available(4),lsubmodel)
1363 CALL hm_get_floatv(
'X_A',sami,is_available(6),lsubmodel,unitab)
1364 CALL hm_get_floatv(
'X_B',sama,is_available(7),lsubmodel,unitab)
1365 CALL hm_get_floatv(
'Crx',crx,is_available(8),lsubmodel,unitab)
1366 CALL hm_get_floatv(
'VX1',kfr,is_available(9),lsubmodel,unitab)
1367 CALL hm_get_floatv(
'N_x',fm,is_available(10),lsubmodel,unitab)
1369 ELSEIF (idof == 5)
THEN
1373 CALL hm_get_intv(
'Yr_fun',ifun_rx,is_available(1),lsubmodel)
1374 CALL hm_get_intv(
'Cry_Fun',ifun_crx,is_available(2),lsubmodel)
1375 CALL hm_get_intv(
'FUN_B2',ifun_fm,is_available(3),lsubmodel)
1376 CALL hm_get_intv(
'Icomb_ry',icomb,is_available(4),lsubmodel)
1380 CALL hm_get_floatv(
'Kry',krx,is_available(5),lsubmodel,unitab)
1381 CALL hm_get_floatv(
'Y_A',sami,is_available(6),lsubmodel,unitab)
1382 CALL hm_get_floatv(
'Y_B',sama,is_available(7),lsubmodel,unitab)
1383 CALL hm_get_floatv(
'Cry',crx,is_available(8),lsubmodel,unitab)
1384 CALL hm_get_floatv(
'VY1',kfr,is_available(9),lsubmodel,unitab)
1385 CALL hm_get_floatv(
'N_y',fm,is_available(10),lsubmodel,unitab)
1387 ELSEIF (idof == 6)
THEN
1391 CALL hm_get_intv(
'Zr_fun',ifun_rx,is_available(1),lsubmodel)
1392 CALL hm_get_intv(
'Crz_Fun',ifun_crx,is_available(2),lsubmodel)
1393 CALL hm_get_intv(
'FUN_B3',ifun_fm,is_available(3),lsubmodel)
1394 CALL hm_get_intv(
'Icomb_rz',icomb,is_available(4),lsubmodel)
1398 CALL hm_get_floatv(
'Krz',krx,is_available(5),lsubmodel,unitab)
1399 CALL hm_get_floatv(
'Z_A',sami,is_available(6),lsubmodel,unitab)
1400 CALL hm_get_floatv(
'Z_B',sama,is_available(7),lsubmodel,unitab)
1401 CALL hm_get_floatv(
'Crz',crx,is_available(8),lsubmodel,unitab)
1402 CALL hm_get_floatv(
'VZ1',kfr,is_available(9),lsubmodel,unitab)
1403 CALL hm_get_floatv(
'N_z',fm,is_available(10),lsubmodel,unitab)
1409 IF (is_available(i)) read_block = read_block + 1
1412 IF (read_block > 0)
THEN
1419 IF(crx==zero.AND.ifun_crx/=0) crx = one * fac3
1420 IF(krx==zero.AND.ifun_rx/=0) krx = one * fac3
1421 IF(fm==zero.AND.ifun_fm/=0) fm = one * fac3
1424 IF(.NOT. is_encrypted)
THEN
1427 ELSEIF (idof==2)
THEN
1429 ELSEIF (idof==2)
THEN
1431 ELSEIF (idof==4)
THEN
1433 ELSEIF (idof==5)
THEN
1443 . anmode=aninfo_blind_2,
1446 ELSEIF (sama<zero)
THEN
1449 . anmode=aninfo_blind_2,
1454 IF(.NOT. is_encrypted)
THEN
1456 IF (ifun_fm==0)
THEN
1457 WRITE(iout,1000) krx,ifun_rx,crx,ifun_crx,sami,sama,icomb,kfr,fm
1459 WRITE(iout,3000) krx,ifun_rx,crx,ifun_crx,sami,sama,icomb,kfr,ifun_fm
1462 IF (ifun_fm==0)
THEN
1463 WRITE(iout,2000) krx,ifun_rx,crx,ifun_crx,sami,sama,icomb,kfr,fm
1465 WRITE(iout,4000) krx,ifun_rx,crx,ifun_crx,sami,sama,icomb,kfr,ifun_fm
1475 & 5x,
'PARAMETERS FOR FREE TRANSLATION ALONG X AXIS'/)
1477 & 5x,
'PARAMETERS FOR FREE TRANSLATION ALONG Y AXIS'/)
1479 & 5x,
'PARAMETERS FOR FREE TRANSLATION ALONG Z AXIS'/)
1481 & 5x,
'PARAMETERS FOR FREE ROTATION AROUND X AXIS'/)
1483 & 5x,
'PARAMETERS FOR FREE ROTATION AROUND Y AXIS'/)
1485 & 5x,
'PARAMETERS FOR FREE ROTATION AROUND Z AXIS'/)
1487 & 5x,
'TRANSLATIONAL LINEAR STIFFNESS . . . . =',1pg20.13/,
1488 & 5x,
'TRANSLATIONAL FUNCTION ID . . . . . . .=',i10/,
1489 & 5x,
'LINEAR DAMPING . . . . . . . . . . . . ='
1490 & 5x,
'USER DAMPING FUNCTION. . . . . . . . . =',i10/,
1491 & 5x,
'NEGATIVE STOP DISPLACEMENT . . . . . . =',1pg20.13/,
1492 & 5x,
'POSITIVE STOP DISPLACEMENT . . . . . . =',1pg20.13/,
1493 & 5x,
'COMBINED STOP DISPLACEMENT . . . . . . =',i10/,
1494 & 5x,
'STIFF. FOR FRICTION AND STOP DISPL. . .=',1pg20.13/,
1495 & 5x,
'FRICTIONAL FORCE. . . . . . . . . . . .=',1pg20.13//)
1497 & 5x,
'LINEAR ROTATIONAL STIFFNESS . . . . . .=',1pg20.13/,
1498 & 5x,
'ROTATIONAL FUNCTION ID . . . . . . . =',i10/,
1499 & 5x,
'LINEAR DAMPING . . . . . . . . . . . . =',1pg20.13/,
1500 & 5x,
'USER DAMPING FUNCTION. . . . . . . . . =',i10/,
1501 & 5x,
'NEGATIVE STOP ANGLE . . . . . .. . . . =',1pg20.13/,
1502 & 5x,
'POSITIVE STOP ANGLE . . . . . .. . . . =',1pg20.13/,
1503 & 5x,
'COMBINED STOP ANGLE . . . . . .. . . . =',i10/,
1504 & 5x,
'STIFF. FOR FRICTION AND STOP ANGLES. . =',1pg20.13/,
1505 & 5x,
'FRICTIONAL MOMENT. . . . . . . . . . . =',1pg20.13//)
1507 & 5x,
'TRANSLATIONAL LINEAR STIFFNESS . . . . =',1pg20.13/,
1508 & 5x,
'TRANSLATIONAL FUNCTION ID . . . . . . .=',i10/,
1509 & 5x
'LINEAR DAMPING . . . . . . . . . . . . =',1pg20.13/,
1510 & 5x,
'USER DAMPING FUNCTION. . . . . . . . . =',i10/,
1511 & 5x,
'NEGATIVE STOP DISPLACEMENT . . . . . . =',1pg20.13/,
1512 & 5x,
'POSITIVE STOP DISPLACEMENT . . . . . . =',1pg20.13/,
1513 & 5x,
'COMBINED STOP DISPLACEMENT . . . . . . =',i10/,
1514 & 5x,
'STIFF. FOR FRICTION AND STOP DISPL. . .=',1pg20.13/,
1515 & 5x,
'FRICTIONAL FORCE FUNCTION. . .. . . . .=',i10//)
1517 & 5x,
'LINEAR ROTATIONAL STIFFNESS . . . . . .=',1pg20.13/,
1518 & 5x,
'ROTATIONAL FUNCTION ID . . . . . . . =',i10/,
1519 & 5x,
'LINEAR DAMPING . . . . . . . . . . . . =',1pg20.13/,
1520 & 5x,
'USER DAMPING FUNCTION. . . . . . . . . =',i10/,
1521 & 5x,
'NEGATIVE STOP ANGLE . . . . . .. . . . =',1pg20.13/,
1522 & 5x,
'POSITIVE STOP ANGLE . . . . . .. . . . =',1pg20.13/,
1523 & 5x,
'COMBINED STOP ANGLE . . . . . .. . . . =',i10/,
1524 & 5x,
'STIFF. FOR FRICTION AND STOP ANGLES. . =',1pg20.13/,
1525 & 5x,
'FRICTIONAL MOMENT FUNCTION. . .. . . . =',i10//)