34 DOUBLE PRECISION ::
tv1,
tv2 52 DOUBLE PRECISION,
ALLOCATABLE ::
bc_x(:),
bc_y(:)
54 DOUBLE PRECISION,
ALLOCATABLE ::
bc_val(:)
57 INTEGER,
ALLOCATABLE ::
bc_corr(:)
77 & (imp_file,lt,at,fbor,nptfr,ndire,nf)
106 & x,y,nbor,lifbor,f1,raisf
113 INTEGER,
INTENT(IN) :: LT
114 DOUBLE PRECISION,
INTENT(IN) :: AT
115 INTEGER,
INTENT(IN) :: NPTFR,NDIRE,NF
116 DOUBLE PRECISION,
INTENT(INOUT):: FBOR(nptfr,ndire,nf)
120 INTEGER IPTFR, ISPE, IPOIN, IDIR, IFF,ITMP
121 INTEGER X_ORIG, Y_ORIG
122 DOUBLE PRECISION DIST_SPE,DIST
123 DOUBLE PRECISION COEFT
124 DOUBLE PRECISION FCL1,FCL2
125 INTEGER BC_NF,BC_NDIRE,ITRAV
126 DOUBLE PRECISION BC_F1,BC_F2,BC_RAISF
127 DOUBLE PRECISION F_TEMP
128 DOUBLE PRECISION,
PARAMETER :: EPS = 1.d-6
138 IF(lifbor(iptfr).EQ.
kent)
THEN 141 dist=sqrt((
xspe(ispe)-x(nbor(iptfr)))**2+
142 & (
yspe(ispe)-y(nbor(iptfr)))**2)
143 IF(dist.LE.dist_spe)
THEN 179 WRITE(
lu,*)
'*********************************************' 180 WRITE(
lu,*)
'THE FIRST RECORDING OF THE FILE' 181 WRITE(
lu,*)
' ',
tv1,
' IS OLDER THAN THE BEGINNING' 182 WRITE(
lu,*)
' OF THE COMPUTATION',at
183 WRITE(
lu,*)
'*********************************************' 197 WRITE(
lu,*)
'*****************************************' 199 WRITE(
lu,*)
'LA FIN DU FICHIER DE CONDITION LIMITE' 200 WRITE(
lu,*)
'EST ATTEINTE AU TEMPS : ',at
202 WRITE(
lu,*)
'THE END OF THE BOUNDARY CONDITION FILE' 203 WRITE(
lu,*)
'IS REACHED AT TIME: ',at
205 WRITE(
lu,*)
'*****************************************' 237 IF((abs(
bc_x(ipoin)).LE.eps).AND.(
bc_y(ipoin).GE.0.0))
THEN 240 IF(f_temp.LT.bc_f1)
THEN 243 ELSEIF(f_temp.LT.bc_f2)
THEN 250 IF(abs(bc_f1-f1).GT.1.d-6)
THEN 251 WRITE(
lu,*)
'*********************************************' 252 WRITE(
lu,*)
'THE MINIMAL FREQUENCY OF THE SPECTRA READ' 253 WRITE(
lu,*)
'IS NOT EQUAL TO THE FREQUENCY OF THE' 254 WRITE(
lu,*)
'SIMULATION.' 255 WRITE(
lu,*)
'- FREQUENCY OF THE SIMULATION:',f1
256 WRITE(
lu,*)
'- FREQUENCY READ:',bc_f1
257 WRITE(
lu,*)
'*********************************************' 261 IF(abs(bc_raisf-raisf).GT.1.d-6)
THEN 262 WRITE(
lu,*)
'*********************************************' 263 WRITE(
lu,*)
'THE FREQUENTIAL RATIO OF THE SPECTRA READ' 264 WRITE(
lu,*)
'IS NOT EQUAL TO THE RATIO OF THE SIMULATION.' 265 WRITE(
lu,*)
'- FREQUENTIAL RATIO OF THE SIMULATION:',raisf
266 WRITE(
lu,*)
'- FREQUENTIAL RATIO READ:',bc_raisf
267 WRITE(
lu,*)
'*********************************************' 272 WRITE(
lu,*)
'*********************************************' 273 WRITE(
lu,*)
'THE NUMBER OF FREQUENCY OF THE SPECTRA READ' 274 WRITE(
lu,*)
'IS NOT EQUAL TO THE NUMBER OF FREQUENCY OF THE' 275 WRITE(
lu,*)
'SIMULATION.' 276 WRITE(
lu,*)
'- NUMBER OF FREQUENCY OF THE SIMULATION:',nf
277 WRITE(
lu,*)
'- NUMBER OF FREQUENCY READ:',bc_nf
278 WRITE(
lu,*)
'*********************************************' 282 IF(bc_ndire.NE.ndire)
THEN 283 WRITE(
lu,*)
'*********************************************' 284 WRITE(
lu,*)
'THE NUMBER OF DIRECTIONS OF THE SPECTRA READ' 285 WRITE(
lu,*)
'IS NOT EQUAL TO THE NUMBER OF DIRECTIONS OF THE' 286 WRITE(
lu,*)
'SIMULATION.' 287 WRITE(
lu,*)
'- NUMBER OF DIRECTIONS OF THE SIMULATION:',ndire
288 WRITE(
lu,*)
'- NUMBER OF DIRECTIONS READ:',bc_ndire
289 WRITE(
lu,*)
'*********************************************' 297 IF(sin(
bc_teta(ipoin)).NE.0.d0)
THEN 307 IF(lifbor(iptfr).EQ.
kent)
THEN 363 WRITE(
lu,*)
'*****************************************' 365 WRITE(
lu,*)
'LA FIN DU FICHIER DE CONDITION LIMITE' 366 WRITE(
lu,*)
'EST ATTEINTE AU TEMPS : ',at
368 WRITE(
lu,*)
'THE END OF THE BOUNDARY CONDITION FILE' 369 WRITE(
lu,*)
'IS REACHED AT TIME: ',at
371 WRITE(
lu,*)
'*****************************************' 418 ipoin=(idir+ndire*(iff-1))
421 fbor(itmp,idir,iff)=fcl1+(fcl2-fcl1)*coeft
double precision, dimension(:), allocatable bc_y
character(len=80) bc_title
subroutine get_data_var_list(FFORMAT, FID, NVAR, VARLIST, UNITLIST, IERR)
double precision, dimension(:), allocatable yspe
character(len=16), dimension(:), allocatable bc_unitlist
double precision, dimension(:,:), allocatable bc_all2
double precision, dimension(:), allocatable bc_x
subroutine get_data_value(FFORMAT, FID, RECORD, VAR_NAME, RES_VALUE, N, IERR)
subroutine read_mesh_info(FFORMAT, NFIC, TITLE, NVAR, NPOIN, TYP_ELEM, NELEM, NPTFR, NPTIR, NDP, NPLAN, X_ORIG, Y_ORIG, TYP_BND_ELEM, NELEBD)
character(len=16), dimension(:), allocatable bc_varlist
integer, dimension(:), allocatable bc_corr
subroutine get_mesh_dimension(FFORMAT, FID, NDIM, IERR)
integer, dimension(:), allocatable ind_ptfr
double precision, dimension(:), allocatable xspe
subroutine, public impose_bnd_spectra(IMP_FILE, LT, AT, FBOR, NPTFR, NDIRE, NF)
subroutine get_mesh_coord(FFORMAT, FID, JDIM, NDIM, NPOIN, COORD, IERR)
double precision, dimension(:,:), allocatable bc_all1
subroutine get_data_time(FFORMAT, FID, RECORD, TIME, IERR)
double precision, dimension(:), allocatable bc_teta
double precision, dimension(:), allocatable bc_freq
subroutine get_data_ntimestep(FFORMAT, FID, NTIMESTEP, IERR)
double precision, dimension(:), allocatable bc_val