My Project
swmod1.f90
Go to the documentation of this file.
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 ! COMMON VARIABLES RELATED MODULES, file 1 of 3
13 !
14 ! Contents of this file
15 !
16 ! OCPCOMM1 contains common variables for Ocean Pack
17 ! OCPCOMM2 contains common variables for Ocean Pack
18 ! OCPCOMM3 contains common variables for Ocean Pack
19 ! OCPCOMM4 contains common variables for Ocean Pack
20 ! SWCOMM1 contains common variables for SWAN
21 ! SWCOMM2 contains common variables for SWAN
22 ! SWCOMM3 contains common variables for SWAN
23 ! SWCOMM4 contains common variables for SWAN
24 ! TIMECOMM contains common variables for SWAN
25 !
26  MODULE ocpcomm1
27 !
28 !
29 ! --|-----------------------------------------------------------|--
30 ! | Delft University of Technology |
31 ! | Faculty of Civil Engineering |
32 ! | Environmental Fluid Mechanics Section |
33 ! | P.O. Box 5048, 2600 GA Delft, The Netherlands |
34 ! | |
35 ! | Programmers: R.C. Ris, N. Booij, |
36 ! | IJ.G. Haagsma, A.T.M.M. Kieftenburg, |
37 ! | M. Zijlema, E.E. Kriezi, |
38 ! | R. Padilla-Hernandez, L.H. Holthuijsen |
39 ! --|-----------------------------------------------------------|--
40 !
41 !
42 ! SWAN (Simulating WAves Nearshore); a third generation wave model
43 ! Copyright (C) 2004-2005 Delft University of Technology
44 !
45 ! This program is free software; you can redistribute it and/or
46 ! modify it under the terms of the GNU General Public License as
47 ! published by the Free Software Foundation; either version 2 of
48 ! the License, or (at your option) any later version.
49 !
50 ! This program is distributed in the hope that it will be useful,
51 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
52 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
53 ! GNU General Public License for more details.
54 !
55 ! A copy of the GNU General Public License is available at
56 ! http://www.gnu.org/copyleft/gpl.html#SEC3
57 ! or by writing to the Free Software Foundation, Inc.,
58 ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
59 !
60 !
61 ! 0. Authors
62 !
63 ! 40.41: Marcel Zijlema
64 !
65 ! 1. Updates
66 !
67 ! 40.41, Oct. 04: taken from the include file OCPCOMM1.INC
68 !
69 ! 2. Purpose
70 !
71 ! Common variables used by the Ocean Pack Service Routines and in SWAN
72 !
73 ! 3. Method
74 !
75 ! MODULE construct
76 !
77 ! 4. Modules used
78 !
79 ! ---
80 !
81  IMPLICIT NONE
82 !
83 ! 5. Argument variables
84 !
85 ! ---
86 !
87 ! 6. Parameter variables
88 !
89 ! LINELN [ 120] max length of input lines (in command file)
90 !
91  INTEGER lineln
92  parameter(lineln=120)
93 !
94 ! 7. Local variables
95 !
96 ! *** character data used by the command reading system ***
97 !
98 ! BLANK [' '] blank string
99 ! COMID [ '$'] character which distinguishes comments in the command input
100 ! ELTEXT [ ] contents of the last string read by reading system
101 ! ELTYPE [ ] type of the element last read by reading system
102 ! ='CHAR'; last read data element is the string in ELTEXT
103 ! ='EMPT; empty data field
104 ! ='EOF'; end of file has been reached
105 ! ='EOR'; end of repeat has been reached
106 ! ='ERR'; incorrect data field was encountered
107 ! ='INT'; last read data element is the integer in ELINT
108 ! ='KEY'; last read data element is the keyword in KEYWRD
109 ! ='OTHR'; other
110 ! ='REAL'; last read data element is the real in ELREAL
111 ! ='USED'; last read data element is processed, new can be read
112 ! KAART [ ] contents of the input line last read by reading system
113 ! KAR [ ] character last read by reading system
114 ! =COMID; begin or end of comment
115 ! =TABC; data element separation mark
116 ! =' '; data element separation mark
117 ! ='&'; continuation mark
118 ! ='('; begin of data group
119 ! ='*'; repetition mark
120 ! =','; data element seperation mark (only for numbers)
121 ! ='/'; end of repetition mark
122 ! =':'; assignment mark
123 ! =';'; end of record or input line
124 ! ='='; assignment mark
125 ! ='@'; end of file mark
126 ! ='_'; continuation mark
127 ! other: letter or digit to be processed by reading system
128 ! KEYWRD [ ] contents of the last keyword read by reading system
129 ! TABC [CALCUL] =CHAR(9); tabular character
130 !
131  CHARACTER*4 blank
132  CHARACTER comid
133  CHARACTER*(LINELN) eltext
134  CHARACTER*4 eltype
135  CHARACTER*(LINELN) kaart
136  CHARACTER kar
137  CHARACTER*8 keywrd
138  CHARACTER tabc
139 !
140 ! *** numerical data used by the command reading system ***
141 !
142 ! CHGVAL [ ] whether last read value is different from a given value for
143 ! subroutines INREAL, ININTG, INCSTR, INCTIM
144 ! ELINT [ ] last element read from user command, when integer
145 ! KARNR [ ] position on the input line of character last processed
146 ! by the reading system,
147 ! =0; no characters read yet
148 ! =81; next input line has to be read to the common KAART first
149 ! LENCST [ ] length of the string stored in ELTEXT
150 ! ELREAL [ ] last element read from user command, when real or double
151 !
152  INTEGER elint, karnr, lencst
153  DOUBLE PRECISION elreal
154  LOGICAL chgval
155 !
156 ! *** origin for day and time ***
157 !
158 ! REFDAY [ ] Day number of the reference day. The first day entered is used
159 ! as reference day, the reference time is 0:00 of the reference day.
160 !
161  INTEGER refday
162 !
163 ! 8. Subroutines and functions used
164 !
165 ! ---
166 !
167 ! 9. Subroutines and functions calling
168 !
169 ! ---
170 !
171 ! 10. Error messages
172 !
173 ! ---
174 !
175 ! 11. Remarks
176 !
177 ! ---
178 !
179 ! 12. Structure
180 !
181 ! ---
182 !
183 ! 13. Source text
184 !
185  END MODULE ocpcomm1
186 
187  MODULE ocpcomm2
188 !
189 !
190 ! --|-----------------------------------------------------------|--
191 ! | Delft University of Technology |
192 ! | Faculty of Civil Engineering |
193 ! | Environmental Fluid Mechanics Section |
194 ! | P.O. Box 5048, 2600 GA Delft, The Netherlands |
195 ! | |
196 ! | Programmers: R.C. Ris, N. Booij, |
197 ! | IJ.G. Haagsma, A.T.M.M. Kieftenburg, |
198 ! | M. Zijlema, E.E. Kriezi, |
199 ! | R. Padilla-Hernandez, L.H. Holthuijsen |
200 ! --|-----------------------------------------------------------|--
201 !
202 !
203 ! SWAN (Simulating WAves Nearshore); a third generation wave model
204 ! Copyright (C) 2004-2005 Delft University of Technology
205 !
206 ! This program is free software; you can redistribute it and/or
207 ! modify it under the terms of the GNU General Public License as
208 ! published by the Free Software Foundation; either version 2 of
209 ! the License, or (at your option) any later version.
210 !
211 ! This program is distributed in the hope that it will be useful,
212 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
213 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
214 ! GNU General Public License for more details.
215 !
216 ! A copy of the GNU General Public License is available at
217 ! http://www.gnu.org/copyleft/gpl.html#SEC3
218 ! or by writing to the Free Software Foundation, Inc.,
219 ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
220 !
221 !
222 ! 0. Authors
223 !
224 ! 40.41: Marcel Zijlema
225 !
226 ! 1. Updates
227 !
228 ! 40.41, Oct. 04: taken from the include file OCPCOMM2.INC
229 !
230 ! 2. Purpose
231 !
232 ! Common variables used by the Ocean Pack Service Routines and in SWAN
233 !
234 ! 3. Method
235 !
236 ! MODULE construct
237 !
238 ! 4. Modules used
239 !
240 ! ---
241 !
242  IMPLICIT NONE
243 !
244 ! 5. Argument variables
245 !
246 ! ---
247 !
248 ! 6. Parameter variables
249 !
250 ! LENFNM [ 80] length of file names
251 !
252  INTEGER lenfnm
253  parameter(lenfnm=80)
254 !
255 ! 7. Local variables
256 !
257 ! *** names and other character strings ***
258 !
259 ! DIRCH1 [\ ] directory separation character as appears in input file
260 ! DIRCH2 [\ ] directory separation character replacing DIRCH1
261 ! FILEA [ ] not used
262 ! FILEB [ ] not used
263 ! FILENM [ ] file name of the file currently used for I/O
264 ! INST ['Delft University of Technology'] name of the institute
265 ! Can be changed in the file SWANINIT
266 ! PROJID ['SWAN'] acronym of the project for which the computation is taking place
267 ! ='NAME'; set by command PROJ 'NAME' ...
268 ! PROJNR [CALCUL] =BLANK; run number for the computation
269 ! ='NR'; set by command PROJ ... 'NR' ...
270 ! PROJT1 [CALCUL] =BLANK; 1st line of the project title
271 ! ='title1'; set by command PROJ ... 'title1' ...
272 ! PROJT2 [CALCUL] =BLANK; 2nd line of the project title
273 ! ='title2'; set by command PROJ ... 'title2' ...
274 ! PROJT3 [CALCUL] =BLANK; 3rd line of the project title
275 ! ='title3'; set by command PROJ ... 'title3'
276 ! PTITLE [ ] not used
277 ! VERTXT [calcul] program version, character representation
278 !
279  CHARACTER (LEN=1) :: dirch1, dirch2
280  CHARACTER (LEN=LENFNM) :: filea , fileb , filenm
281  CHARACTER (LEN=40) :: inst
282  CHARACTER (LEN=16) :: projid
283  CHARACTER (LEN=4) :: projnr
284  CHARACTER (LEN=72) :: projt1, projt2, projt3
285  CHARACTER (LEN=36) :: ptitle
286  CHARACTER (LEN=20) :: vertxt
287 !
288 ! 8. Subroutines and functions used
289 !
290 ! ---
291 !
292 ! 9. Subroutines and functions calling
293 !
294 ! ---
295 !
296 ! 10. Error messages
297 !
298 ! ---
299 !
300 ! 11. Remarks
301 !
302 ! ---
303 !
304 ! 12. Structure
305 !
306 ! ---
307 !
308 ! 13. Source text
309 !
310  END MODULE ocpcomm2
311 
312  MODULE ocpcomm3
313 !
314 !
315 ! --|-----------------------------------------------------------|--
316 ! | Delft University of Technology |
317 ! | Faculty of Civil Engineering |
318 ! | Environmental Fluid Mechanics Section |
319 ! | P.O. Box 5048, 2600 GA Delft, The Netherlands |
320 ! | |
321 ! | Programmers: R.C. Ris, N. Booij, |
322 ! | IJ.G. Haagsma, A.T.M.M. Kieftenburg, |
323 ! | M. Zijlema, E.E. Kriezi, |
324 ! | R. Padilla-Hernandez, L.H. Holthuijsen |
325 ! --|-----------------------------------------------------------|--
326 !
327 !
328 ! SWAN (Simulating WAves Nearshore); a third generation wave model
329 ! Copyright (C) 2004-2005 Delft University of Technology
330 !
331 ! This program is free software; you can redistribute it and/or
332 ! modify it under the terms of the GNU General Public License as
333 ! published by the Free Software Foundation; either version 2 of
334 ! the License, or (at your option) any later version.
335 !
336 ! This program is distributed in the hope that it will be useful,
337 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
338 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
339 ! GNU General Public License for more details.
340 !
341 ! A copy of the GNU General Public License is available at
342 ! http://www.gnu.org/copyleft/gpl.html#SEC3
343 ! or by writing to the Free Software Foundation, Inc.,
344 ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
345 !
346 !
347 ! 0. Authors
348 !
349 ! 40.41: Marcel Zijlema
350 !
351 ! 1. Updates
352 !
353 ! 40.41, Oct. 04: taken from the include file OCPCOMM3.INC
354 !
355 ! 2. Purpose
356 !
357 ! Common variables used by the Ocean Pack Service Routines and in SWAN
358 !
359 ! 3. Method
360 !
361 ! MODULE construct
362 !
363 ! 4. Modules used
364 !
365 ! ---
366 !
367  IMPLICIT NONE
368 !
369 ! 5. Argument variables
370 !
371 ! ---
372 !
373 ! 6. Parameter variables
374 !
375 ! ---
376 !
377 ! 7. Local variables
378 !
379 ! *** data for output, mainly plotting ***
380 !
381 ! DXQ [ ] mesh size of the output frame in X-direction
382 ! =0.01; if MXQ=1
383 ! =XQLEN/(MXQ-1); if MXQ>1
384 ! DYQ [ ] mesh size of the output frame in Y-direction
385 ! =0.01; if MYQ=1
386 ! =YQLEN/(MYQ-1); if MYQ>1
387 ! MXQ [CALCUL] number of grid points of the output frame in X-direction
388 ! MYQ [CALCUL] number of grid points of the output frame in Y-direction
389 ! VERNUM [ 40.41] version number of SWAN
390 !
391  INTEGER mxq, myq
392  REAL dxq, dyq, vernum
393 !
394 ! 8. Subroutines and functions used
395 !
396 ! ---
397 !
398 ! 9. Subroutines and functions calling
399 !
400 ! ---
401 !
402 ! 10. Error messages
403 !
404 ! ---
405 !
406 ! 11. Remarks
407 !
408 ! ---
409 !
410 ! 12. Structure
411 !
412 ! ---
413 !
414 ! 13. Source text
415 !
416  END MODULE ocpcomm3
417 
418  MODULE ocpcomm4
419 !
420 !
421 ! --|-----------------------------------------------------------|--
422 ! | Delft University of Technology |
423 ! | Faculty of Civil Engineering |
424 ! | Environmental Fluid Mechanics Section |
425 ! | P.O. Box 5048, 2600 GA Delft, The Netherlands |
426 ! | |
427 ! | Programmers: R.C. Ris, N. Booij, |
428 ! | IJ.G. Haagsma, A.T.M.M. Kieftenburg, |
429 ! | M. Zijlema, E.E. Kriezi, |
430 ! | R. Padilla-Hernandez, L.H. Holthuijsen |
431 ! --|-----------------------------------------------------------|--
432 !
433 !
434 ! SWAN (Simulating WAves Nearshore); a third generation wave model
435 ! Copyright (C) 2004-2005 Delft University of Technology
436 !
437 ! This program is free software; you can redistribute it and/or
438 ! modify it under the terms of the GNU General Public License as
439 ! published by the Free Software Foundation; either version 2 of
440 ! the License, or (at your option) any later version.
441 !
442 ! This program is distributed in the hope that it will be useful,
443 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
444 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
445 ! GNU General Public License for more details.
446 !
447 ! A copy of the GNU General Public License is available at
448 ! http://www.gnu.org/copyleft/gpl.html#SEC3
449 ! or by writing to the Free Software Foundation, Inc.,
450 ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
451 !
452 !
453 ! 0. Authors
454 !
455 ! 40.41: Marcel Zijlema
456 !
457 ! 1. Updates
458 !
459 ! 40.41, Oct. 04: taken from the include file OCPCOMM4.INC
460 !
461 ! 2. Purpose
462 !
463 ! Common variables used by the Ocean Pack Service Routines and in SWAN
464 !
465 ! 3. Method
466 !
467 ! MODULE construct
468 !
469 ! 4. Modules used
470 !
471 ! ---
472 !
473  IMPLICIT NONE
474 !
475 ! 5. Argument variables
476 !
477 ! ---
478 !
479 ! 6. Parameter variables
480 !
481 ! INAN [ 1] integer representing not a number
482 ! RNAN [ 1] real representing not a number
483 !
484  INTEGER inan
485  REAL rnan
486  parameter(inan=-1073750760, rnan=-1.07374515e+09)
487 !
488 ! 7. Local variables
489 !
490 ! *** file unit reference numbers ***
491 !
492 ! EXPORT [ ] not used
493 ! FUNHI [CAL] highest free unit number
494 ! =IUNMAX
495 ! FUNLO [ 21] lowest free unit number
496 ! HIOPEN [ ] highest unit number of an open file
497 ! IMPORT [ ] not used
498 ! INPUTF [ 3] unit number for the file with command input ('INPUT')
499 ! set by file SWANINIT
500 ! ITMOPT [ 1] time coding option
501 ! =1; ????
502 ! =3; ????
503 ! set by file SWANINIT
504 ! IUNMIN [ 0] minimum unit number
505 ! IUNMAX [ 99] maximum unit number
506 ! set by file SWANINIT
507 ! PRINTF [ 4] unit number for the file with standard output ('PRINT')
508 ! set by file SWANINIT
509 ! PRTEST [CAL] unit number for the print file containing test output
510 ! =PRINTF
511 ! set by file SWANINIT
512 ! SCREEN [ 6] unit number for the screen
513 ! (is for batch-oriented systems equal to PRINTF)
514 !
515  INTEGER export, funhi , funlo , hiopen
518 
519 ! *** test parameters ***
520 !
521 ! ITEST [ 0] indicates the amount of test output requested
522 ! =30; for command TEST
523 ! =itest; set by command TEST [itest] [itrace]
524 ! ITRACE [ 0] a message is printed up to ITRACE times
525 ! =itrace; set by command TEST [itest] [itrace]
526 ! LEVERR [ 0] severity of the errors encountered.
527 ! LTRACE [.F.] indicates whether to call STRACE
528 ! =.T.; when ITRACE>0
529 ! MAXERR [ 1] maximum severity of errors allowed, if larger no computation
530 ! =1; warnings
531 ! =2; errors
532 ! =3; severe errors
533 ! =4; terminating errors
534 ! =maxerr; set by command SET ... [maxerr] ...
535 !
537  LOGICAL ltrace
538 !
539 ! 8. Subroutines and functions used
540 !
541 ! ---
542 !
543 ! 9. Subroutines and functions calling
544 !
545 ! ---
546 !
547 ! 10. Error messages
548 !
549 ! ---
550 !
551 ! 11. Remarks
552 !
553 ! ---
554 !
555 ! 12. Structure
556 !
557 ! ---
558 !
559 ! 13. Source text
560 !
561  END MODULE ocpcomm4
562 
563  MODULE swcomm1
564 !
565 !
566 ! --|-----------------------------------------------------------|--
567 ! | Delft University of Technology |
568 ! | Faculty of Civil Engineering |
569 ! | Environmental Fluid Mechanics Section |
570 ! | P.O. Box 5048, 2600 GA Delft, The Netherlands |
571 ! | |
572 ! | Programmers: R.C. Ris, N. Booij, |
573 ! | IJ.G. Haagsma, A.T.M.M. Kieftenburg, |
574 ! | M. Zijlema, E.E. Kriezi, |
575 ! | R. Padilla-Hernandez, L.H. Holthuijsen |
576 ! --|-----------------------------------------------------------|--
577 !
578 !
579 ! SWAN (Simulating WAves Nearshore); a third generation wave model
580 ! Copyright (C) 2004-2005 Delft University of Technology
581 !
582 ! This program is free software; you can redistribute it and/or
583 ! modify it under the terms of the GNU General Public License as
584 ! published by the Free Software Foundation; either version 2 of
585 ! the License, or (at your option) any later version.
586 !
587 ! This program is distributed in the hope that it will be useful,
588 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
589 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
590 ! GNU General Public License for more details.
591 !
592 ! A copy of the GNU General Public License is available at
593 ! http://www.gnu.org/copyleft/gpl.html#SEC3
594 ! or by writing to the Free Software Foundation, Inc.,
595 ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
596 !
597 !
598 ! 0. Authors
599 !
600 ! 40.41: Marcel Zijlema
601 ! 40.51: Marcel Zijlema
602 !
603 ! 1. Updates
604 !
605 ! 40.41, Oct. 04: taken from the include file SWCOMM1.INC
606 ! 40.21, Apr. 04: NMOVAR increased by 1
607 ! (reserved for diffraction)
608 ! 40.41, Sep. 04: NMOVAR increased by 2 (quantities TMM10
609 ! and RTMM10 added)
610 ! 40.51, Feb. 05: NMOVAR increased by 1 (quantity TMBOT added)
611 ! 40.51, Sep. 05: NMOVAR increased by 2 (quantities WATLEV
612 ! and BOTLEV added)
613 ! 40.51, Feb. 06: NMOVAR increased by 1 (quantity TPS added)
614 !
615 ! 2. Purpose
616 !
617 ! Common variables used by the subroutines in SWAN
618 !
619 ! 3. Method
620 !
621 ! MODULE construct
622 !
623 ! 4. Modules used
624 !
625 ! ---
626 !
627  IMPLICIT NONE
628 !
629 ! 5. Argument variables
630 !
631 ! ---
632 !
633 ! 6. Parameter variables
634 !
635 ! NMOVAR [ 71] maximum number of output variables
636 ! MOUTPA [ 50] number of output parameters
637 !
638  INTEGER nmovar, moutpa
639  parameter(nmovar = 71, moutpa=50)
640 !
641 ! 7. Local variables
642 !
643 ! *** names and other character data ***
644 !
645 ! CHTIME [ ' '] character string representation of date-time of computation
646 ! FNEST [CALCULAT] BCF (=BLANK), name of nest file
647 ! OVKEYW(NMOVAR) keyword identifying output quantity in a SWAN command
648 ! ( 1) [ 'XP']
649 ! ( 2) [ 'YP']
650 ! ( 3) [ 'DIST']
651 ! ( 4) [ 'DEP']
652 ! ( 5) [ 'VEL']
653 ! ( 6) [ 'UBOT']
654 ! ( 7) [ 'DISS']
655 ! ( 8) [ 'QB']
656 ! ( 9) [ 'LEA']
657 ! (10) [ 'HS']
658 ! (11) [ 'TM01']
659 ! (12) [ 'RTP']
660 ! (13) [ 'DIR']
661 ! (14) [ 'PDI']
662 ! (15) [ 'TDI']
663 ! (16) [ 'DSPR']
664 ! (17) [ 'WLEN']
665 ! (18) [ 'STEE']
666 ! (19) [ 'TRA']
667 ! (20) [ 'FOR']
668 ! (21) [' ']
669 ! (22) [' ']
670 ! (23) [' ']
671 ! (24) [ 'XC']
672 ! (25) [ 'YC']
673 ! (26) [ 'WIND']
674 ! (27) [ 'FRC']
675 ! (28) [ 'RTM01']
676 ! (29) [' ']
677 ! (30) [ 'DHS']
678 ! (31) ['DRTM01']
679 ! (32) [ 'TM02']
680 ! (33) [ 'FSPR']
681 ! (34) [ 'URMS']
682 ! (35) [ 'UFRI']
683 ! (36) [ 'ZLEN']
684 ! (37) [ 'TAUW']
685 ! (38) [ 'CDRAG']
686 ! (39) [ 'SETUP']
687 ! (40) [ 'TIME']
688 ! (41) [ 'TSEC']
689 ! (47) [ 'TMM10']
690 ! (48) ['RTMM10']
691 ! (49) ['DIFPAR')
692 ! (50) [ 'TMBOT']
693 ! (51) [ 'WATL']
694 ! (52) [ 'BOTL']
695 ! (53) [ 'TPS']
696 ! OVSNAM(NMOVAR) short name of output quantity
697 ! ( 1) [ 'Xp']
698 ! ( 2) [ 'Yp']
699 ! ( 3) [ 'Dist']
700 ! ( 4) [ 'Depth']
701 ! ( 5) [ 'Vel']
702 ! ( 6) [ 'Ubot']
703 ! ( 7) ['Dissip']
704 ! ( 8) [ 'Qb']
705 ! ( 9) [ 'Leak']
706 ! (10) [ 'Hs']
707 ! (11) [ 'Tm01']
708 ! (12) [ 'Tpeak']
709 ! (13) [ 'Dir']
710 ! (14) [ 'PkDir']
711 ! (15) [ 'TDir']
712 ! (16) [ 'Dspr']
713 ! (17) [ 'Wlen']
714 ! (18) ['Steepn']
715 ! (19) ['Transp']
716 ! (20) ['WForce']
717 ! (21) ['AcDens']
718 ! (22) ['EnDens']
719 ! (23) [ 'Aux']
720 ! (24) [ 'Xc']
721 ! (25) [ 'Yc']
722 ! (26) [ 'Windv']
723 ! (27) ['FrCoef']
724 ! (28) [ 'RTm01']
725 ! (29) ['EnDens']
726 ! (30) [ 'dHs']
727 ! (31) [ 'dTm']
728 ! (32) [ 'Tm02']
729 ! (33) [ 'FSpr']
730 ! (34) [ 'Urms']
731 ! (35) [ 'Ufric']
732 ! (36) [ 'Zlen']
733 ! (37) [ 'TauW']
734 ! (38) [ 'Cdrag']
735 ! (39) [ 'Setup']
736 ! (40) [ 'Time']
737 ! (41) [ 'Tsec']
738 ! (47) [ 'Tm_10']
739 ! (48) ['RTm_10']
740 ! (49) ['DifPar']
741 ! (50) [ 'TmBot']
742 ! (51) ['Watlev']
743 ! (52) ['Botlev']
744 ! (53) ['TPsmoo']
745 ! OVLNAM(NMOVAR) long name of output quantity
746 ! ( 1) [ 'X user coordinate']
747 ! ( 2) [ 'Y user coordinate']
748 ! ( 3) [ 'distance along output curve']
749 ! ( 4) [ 'Depth']
750 ! ( 5) [ 'Current velocity']
751 ! ( 6) [ 'Orbital velocity at the bottom']
752 ! ( 7) [ 'Energy dissipation']
753 ! ( 8) [ 'Fraction breaking waves']
754 ! ( 9) [ 'Energy leak over spectral boundaries']
755 ! (10) [ 'Significant wave height']
756 ! (11) [ 'Average absolute wave period']
757 ! (12) [ 'Peak period']
758 ! (13) [ 'Average wave direction']
759 ! (14) [ 'direction of the peak of the spectrum']
760 ! (15) [ 'direction of the energy transport']
761 ! (16) [ 'directional spreading']
762 ! (17) [ 'Average wave length']
763 ! (18) [ 'Wave steepness']
764 ! (19) [ 'Wave energy transport']
765 ! (20) [ 'Wave driven force per unit surface']
766 ! (21) [ 'spectral action density']
767 ! (22) [ 'spectral energy density']
768 ! (23) [ 'auxiliary variable']
769 ! (24) [ 'X computational grid coordinate']
770 ! (25) [ 'Y computational grid coordinate']
771 ! (26) [ 'Wind velocity at 10 m above sea level']
772 ! (27) [ 'Bottom friction coefficient']
773 ! (28) [ 'Average relative wave period']
774 ! (29) [ 'energy density integrated over direction']
775 ! (30) [ 'difference in Hs between iterations']
776 ! (31) [ 'difference in Tm between iterations']
777 ! (32) [ 'Zero-crossing period']
778 ! (33) [ 'Frequency spectral width (Kappa)']
779 ! (34) [ 'RMS of orbital velocity at the bottom']
780 ! (35) [ 'Friction velocity']
781 ! (40) [ 'Date-time']
782 ! (41) [ 'Time in seconds from reference time']
783 ! (36) ['Zero velocity thickness of boundary layer']
784 ! (37) [ ' ']
785 ! (38) [ 'Drag coefficient']
786 ! (39) [ 'Setup due to waves']
787 ! (47) [ 'Average absolute wave period']
788 ! (48) [ 'Average relative wave period']
789 ! (49) [ 'Diffraction parameter']
790 ! (50) [ 'Bottom wave period']
791 ! (51) [ 'Water level']
792 ! (52) [ 'Bottom level']
793 ! (53) [ 'Relative peak period (smooth)']
794 ! OVUNIT(NMOVAR) unit of of output quantity
795 ! ( 1) [CALCULAT] =UL
796 ! ( 2) [CALCULAT] =UL
797 ! ( 3) [CALCULAT] =UL
798 ! ( 4) [CALCULAT] =UH
799 ! ( 5) [CALCULAT] =UV
800 ! ( 6) [CALCULAT] =UV
801 ! ( 7) [ 'm2/s'] change to UDL ???, changed to 'W/m2', if INRHOG=1
802 ! ( 8) [ ' ']
803 ! ( 9) [ 'm2/s'] change to UDL ???, changed to 'W/m2', if INRHOG=1
804 ! (10) [CALCULAT] =UH
805 ! (11) [CALCULAT] =UT
806 ! (12) [CALCULAT] =UT
807 ! (13) [CALCULAT] =UDI
808 ! (14) [CALCULAT] =UDI
809 ! (15) [CALCULAT] =UDI
810 ! (16) [CALCULAT] =UDI
811 ! (17) [CALCULAT] =UL
812 ! (18) [ ' ']
813 ! (19) [ 'm2s'] changed to 'W/m' (=UP), if INRHOG=1
814 ! (20) [CALCULAT] =UF
815 ! (21) [ 'm2s'] changed to 'Js/m2', if INRHOG=1
816 ! (22) [ 'm2'] changed to 'J/m2', if INRHOG=1
817 ! (23) [ ' ']
818 ! (24) [ ' ']
819 ! (25) [ ' ']
820 ! (26) [CALCULAT] =UV
821 ! (27) [ ' ']
822 ! (28) [CALCULAT] =UT
823 ! (29) [ 'm2'] changed to 'J/m2', if INRHOG=1
824 ! (30) [CALCULAT] =UH
825 ! (31) [CALCULAT] =UT
826 ! (32) [CALCULAT] =UT
827 ! (33) [ ' ']
828 ! (34) [CALCULAT] =UV
829 ! (35) [CALCULAT] =UV
830 ! (36) [CALCULAT] =UL
831 ! (37) [ ' ']
832 ! (38) [ ' ']
833 ! (39) [ 'm']
834 ! (40) [ ' ']
835 ! (41) [ 's']
836 ! (47) [CALCULAT] =UT
837 ! (48) [CALCULAT] =UT
838 ! (49) [ ' ']
839 ! (50) [CALCULAT] =UT
840 ! (51) [CALCULAT] =UH
841 ! (52) [CALCULAT] =UH
842 ! (53) [CALCULAT] =UT
843 ! SNAME [ ] name of output point set
844 ! UAP [ 'W/m2'] unit of dissipation
845 ! UD [ ] not used
846 ! UDI [ 'degr'] unit of direction
847 ! UDL [ 'm2/s'] unit of dissipation
848 ! UET [ 'm3/s'] unit of energy transport, and wave force
849 ! UF [ 'N/m2'] unit of pressure or shear stress (force per area)
850 ! UH [ 'm'] unit of vertical length
851 ! UL [ 'm'] unit of horizontal length
852 ! UP [ 'W/m'] unit of energy flux density
853 ! UST [ 'm2/s2'] not used
854 ! UT [ 'sec'] unit of time (change to s ???)
855 ! UV [ 'm/s'] unit of velocity
856 !
857  CHARACTER*20 chtime
858  CHARACTER*36 fbcl, fbcr, fnest
859  CHARACTER*8 ovkeyw(nmovar)
860  CHARACTER*40 ovlnam(nmovar)
861  CHARACTER*6 ovsnam(nmovar)
862  CHARACTER*16 ovunit(nmovar)
863  CHARACTER*8 sname
864  CHARACTER*6 uap, ud, udi, udl
865  CHARACTER*6 uet, uf, uh, ul
866  CHARACTER*6 up, ust, ut, uv
867 
868 ! *** information for output ***
869 !
870 ! AKPOWR [ ] power in expression for computation of average wave number
871 ! =kpower; set by command SET ... [kpower] ... (not documented)
872 ! ALCQ [ ] angle between x-axes of computational grid and output frame
873 ! ALPQ [ ] angle between x-axes of user coord. system and output frame
874 ! COSCQ [ ] cos of ALCQ
875 ! COSPQ [ ] cos of ALPQ
876 ! DXK [ ] mesh size of output frame
877 ! DYK [ ] mesh size of output frame
878 ! ERRPTS [ ] unit ref. number of file containing coord. of "problem points"
879 ! =16, unit reference number of the file
880 ! INRHOG [ 0] indicates the choice for output based on "variance" or "true energy"
881 ! =0, output based on variance
882 ! =1, output based on true energy
883 ! IUBOTR [ 0] set to 1, when IVTYPE=6 or 18
884 ! OVSVTY(NMOVAR) type of the output variable
885 ! =1, scalar
886 ! =2, angle
887 ! =3, vector
888 ! =4, tensor
889 ! =5, fully spectral quantity
890 ! =6, directional spectral quantity
891 ! ( 1) [ 1] Xp
892 ! ( 2) [ 1] Yp
893 ! ( 3) [ 1] Dist
894 ! ( 4) [ 1] Depth
895 ! ( 5) [ 3] Vel
896 ! ( 6) [ 1] Ubot
897 ! ( 7) [ 1] Dissip
898 ! ( 8) [ 1] Qb
899 ! ( 9) [ 1] Leak
900 ! (10) [ 1] Hs
901 ! (11) [ 1] Tm01
902 ! (12) [ 1] Tpeak
903 ! (13) [ 2] Dir
904 ! (14) [ 2] PkDir
905 ! (15) [ 2] TDir
906 ! (16) [ 1] Dspr
907 ! (17) [ 1] Wlen
908 ! (18) [ 1] Steepn
909 ! (19) [ 3] Transp
910 ! (20) [ 3] WForce
911 ! (21) [ 5] AcDens
912 ! (22) [ 5] EnDens
913 ! (23) [ 1] Aux
914 ! (24) [ 1] Xc
915 ! (25) [ 1] Yc
916 ! (26) [ 3] Windv
917 ! (27) [ 1] FrCoef
918 ! (28) [ 1] RTm01
919 ! (29) [ 5] EnDens
920 ! (30) [ 1] dHs
921 ! (31) [ 1] dTm
922 ! (32) [ 1] Tm02
923 ! (33) [ 1] FSpr
924 ! (34) [ 1] Urms
925 ! (35) [ 1] Ufric
926 ! (36) [ 1] Zlen
927 ! (37) [ 1] TauW
928 ! (38) [ 1] Cdrag
929 ! (39) [ 1] Setup
930 ! (47) [ 1] Tm_10
931 ! (48) [ 1] RTm_10
932 ! (49) [ 1] DifPar
933 ! (50) [ 1] TmBot
934 ! (51) [ 1] Watlev
935 ! (52) [ 1] Botlev
936 ! (53) [ 1] TPSmoo
937 ! OVEXCV(NMOVAR) exception value for output quantity
938 ! ( 1) [ -1.E10] Xp
939 ! ( 2) [ -1.E10] Yp
940 ! ( 3) [ -999.] Dist
941 ! ( 4) [ -99.] Depth
942 ! ( 5) [ 0.] Vel
943 ! ( 6) [ -10.] Ubot
944 ! ( 7) [ -10.] Dissip
945 ! ( 8) [ -1.] Qb
946 ! ( 9) [ -10.] Leak
947 ! (10) [ -10.] Hs
948 ! (11) [ -10.] Tm01
949 ! (12) [ -10.] Tpeak
950 ! (13) [ -999.] Dir
951 ! (14) [ -999.] PkDir
952 ! (15) [ -999.] TDir
953 ! (16) [ -10.] Dspr
954 ! (17) [ -10.] Wlen
955 ! (18) [ -1.] Steepn
956 ! (19) [ 0.] Transp
957 ! (20) [ 0.] WForce
958 ! (21) [ -100.] AcDens
959 ! (22) [ -100.] EnDens
960 ! (23) [ -1.E10] Aux
961 ! (24) [ -1.E10] Xc
962 ! (25) [ -1.E10] Yc
963 ! (26) [ 0.] Windv
964 ! (27) [ -1.] FrCoef
965 ! (28) [ -10.] RTm01
966 ! (29) [ -100.] EnDens
967 ! (30) [ -10.] dHs
968 ! (31) [ -10.] dTm
969 ! (32) [ -10.] Tm02
970 ! (33) [ -1.] FSpr
971 ! (34) [ -10.] Urms
972 ! (35) [ -10.] Ufric
973 ! (36) [ -1.] Zlen
974 ! (37) [ -10.] TauW
975 ! (38) [ -1.] Cdrag
976 ! (39) [ -9.] Setup
977 ! (47) [ -9.] Tm_10
978 ! (48) [ -9.] RTm_10
979 ! (49) [ -99.] DifPar
980 ! (50) [ -9.] TmBot
981 ! (51) [ -99.] Watlev
982 ! (52) [ -99.] Botlev
983 ! (53) [ -10.] TPSmoo
984 ! OVLEXP(NMOVAR) lower expected limit of output quantity
985 ! ( 1) [ -1.E10] Xp
986 ! ( 2) [ -1.E10] Yp
987 ! ( 3) [ 0.] Dist
988 ! ( 4) [ -100.] Depth
989 ! ( 5) [ -2.] Vel
990 ! ( 6) [ 0.] Ubot
991 ! ( 7) [ 0.] Dissip
992 ! ( 8) [ 0.] Qb
993 ! ( 9) [ 0.] Leak
994 ! (10) [ 0.] Hs
995 ! (11) [ 0.] Tm01
996 ! (12) [ 0.] Tpeak
997 ! (13) [ 0.] Dir
998 ! (14) [ 0.] PkDir
999 ! (15) [ 0.] TDir
1000 ! (16) [ 0.] Dspr
1001 ! (17) [ 0.] Wlen
1002 ! (18) [ 0.] Steepn
1003 ! (19) [ -10.] Transp
1004 ! (20) [ -10.] WForce
1005 ! (21) [ 0.] AcDens
1006 ! (22) [ 0.] EnDens
1007 ! (23) [ -1.E10] Aux
1008 ! (24) [ -100.] Xc
1009 ! (25) [ -100.] Yc
1010 ! (26) [ -50.] Windv
1011 ! (27) [ 0.] FrCoef
1012 ! (28) [ 0.] RTm01
1013 ! (29) [ 0.] EnDens
1014 ! (30) [ 0.] dHs
1015 ! (31) [ 0.] dTm
1016 ! (32) [ 0.] Tm02
1017 ! (33) [ 0.] FSpr
1018 ! (34) [ 0.] Urms
1019 ! (35) [ 0.] Ufric
1020 ! (36) [ 0.] Zlen
1021 ! (37) [ 0.] TauW
1022 ! (38) [ 0.] Cdrag
1023 ! (39) [ -1.] Setup
1024 ! (47) [ 0.] Tm_10
1025 ! (48) [ 0.] RTm_10
1026 ! (49) [ -10.] DifPar
1027 ! (50) [ 0.] TmBot
1028 ! (51) [ -100.] Watlev
1029 ! (52) [ -100.] Botlev
1030 ! (53) [ 0.] TPSmoo
1031 ! OVLLIM(NMOVAR) lower limit of validity of output quantity
1032 ! ( 1) [ -1.E10] Xp
1033 ! ( 2) [ -1.E10] Yp
1034 ! ( 3) [ 0.] Dist
1035 ! ( 4) [ -1.E4] Depth
1036 ! ( 5) [ -100.] Vel
1037 ! ( 6) [ 0.] Ubot
1038 ! ( 7) [ 0.] Dissip
1039 ! ( 8) [ 0.] Qb
1040 ! ( 9) [ 0.] Leak
1041 ! (10) [ 0.] Hs
1042 ! (11) [ 0.] Tm01
1043 ! (12) [ 0.] Tpeak
1044 ! (13) [ 0.] Dir
1045 ! (14) [ 0.] PkDir
1046 ! (15) [ 0.] TDir
1047 ! (16) [ 0.] Dspr
1048 ! (17) [ 0.] Wlen
1049 ! (18) [ 0.] Steepn
1050 ! (19) [ -100.] Transp
1051 ! (20) [ -1.E5] WForce
1052 ! (21) [ 0.] AcDens
1053 ! (22) [ 0.] EnDens
1054 ! (23) [ -1.E10] Aux
1055 ! (24) [ -1000.] Xc
1056 ! (25) [ -1000.] Yc
1057 ! (26) [ -100.] Windv
1058 ! (27) [ 0.] FrCoef
1059 ! (28) [ 0.] RTm01
1060 ! (29) [ 0.] EnDens
1061 ! (30) [ 0.] dHs
1062 ! (31) [ 0.] dTm
1063 ! (32) [ 0.] Tm02
1064 ! (33) [ 0.] FSpr
1065 ! (34) [ 0.] Urms
1066 ! (35) [ 0.] Ufric
1067 ! (36) [ 0.] Zlen
1068 ! (37) [ 0.] TauW
1069 ! (38) [ 0.] Cdrag
1070 ! (39) [ -1.] Setup
1071 ! (47) [ 0.] Tm_10
1072 ! (48) [ 0.] RTm_10
1073 ! (49) [ -50.] DifPar
1074 ! (50) [ 0.] TmBot
1075 ! (51) [ -1.E4] Watlev
1076 ! (52) [ -1.E4] Botlev
1077 ! (53) [ 0.] TPSmoo
1078 ! OVHEXP(NMOVAR) upper expected limit of output quantity
1079 ! ( 1) [ 1.E10] Xp
1080 ! ( 2) [ 1.E10] Yp
1081 ! ( 3) [ 1.E10] Dist
1082 ! ( 4) [ 100.] Depth
1083 ! ( 5) [ 2.] Vel
1084 ! ( 6) [ 1.] Ubot
1085 ! ( 7) [ 100.] Dissip
1086 ! ( 8) [ 100.] Qb
1087 ! ( 9) [ 100.] Leak
1088 ! (10) [ 10.] Hs
1089 ! (11) [ 100.] Tm01
1090 ! (12) [ 100.] Tpeak
1091 ! (13) [ 360.] Dir
1092 ! (14) [ 360.] PkDir
1093 ! (15) [ 360.] TDir
1094 ! (16) [ 60.] Dspr
1095 ! (17) [ 200.] Wlen
1096 ! (18) [ 0.1] Steepn
1097 ! (19) [ 10.] Transp
1098 ! (20) [ 10.] WForce
1099 ! (21) [ 100.] AcDens
1100 ! (22) [ 100.] EnDens
1101 ! (23) [ 1.E10] Aux
1102 ! (24) [ 100.] Xc
1103 ! (25) [ 100.] Yc
1104 ! (26) [ 50.] Windv
1105 ! (27) [ 1.] FrCoef
1106 ! (28) [ 100.] RTm01
1107 ! (29) [ 100.] EnDens
1108 ! (30) [ 1.] dHs
1109 ! (31) [ 2.] dTm
1110 ! (32) [ 100.] Tm02
1111 ! (33) [ 1.] FSpr
1112 ! (34) [ 1.] Urms
1113 ! (35) [ 1.] Ufric
1114 ! (36) [ 1.] Zlen
1115 ! (37) [ 1.] TauW
1116 ! (38) [ 1.] Cdrag
1117 ! (39) [ 1.] Setup
1118 ! (47) [ 100.] Tm_10
1119 ! (48) [ 100.] RTm_10
1120 ! (49) [ 10.] DifPar
1121 ! (50) [ 100.] TmBot
1122 ! (51) [ 100.] Watlev
1123 ! (52) [ 100.] Botlev
1124 ! (53) [ 100.] TPSmoo
1125 ! OVULIM(NMOVAR) upper limit of validity
1126 ! ( 1) [ 1.E10] Xp
1127 ! ( 2) [ 1.E10] Yp
1128 ! ( 3) [ 1.E10] Dist
1129 ! ( 4) [ 1.E4] Depth
1130 ! ( 5) [ 100.] Vel
1131 ! ( 6) [ 10.] Ubot
1132 ! ( 7) [ 1000.] Dissip
1133 ! ( 8) [ 1.] Qb
1134 ! ( 9) [ 1000.] Leak
1135 ! (10) [ 100.] Hs
1136 ! (11) [ 1000.] Tm01
1137 ! (12) [ 1000.] Tpeak
1138 ! (13) [ 360.] Dir
1139 ! (14) [ 360.] PkDir
1140 ! (15) [ 360.] TDir
1141 ! (16) [ 360.] Dspr
1142 ! (17) [ 1000.] Wlen
1143 ! (18) [ 1.] Steepn
1144 ! (19) [ 100.] Transp
1145 ! (20) [ 1.E5] WForce
1146 ! (21) [ 1000.] AcDens
1147 ! (22) [ 1000.] EnDens
1148 ! (23) [ 1.E10] Aux
1149 ! (24) [ 1000.] Xc
1150 ! (25) [ 1000.] Yc
1151 ! (26) [ 100.] Windv
1152 ! (27) [ 1.] FrCoef
1153 ! (28) [ 1000.] RTm01
1154 ! (29) [ 1000.] EnDens
1155 ! (30) [ 100.] dHs
1156 ! (31) [ 100.] dTm
1157 ! (32) [ 1000.] Tm02
1158 ! (33) [ 1.] FSpr
1159 ! (34) [ 10.] Urms
1160 ! (35) [ 10.] Ufric
1161 ! (36) [ 1.] Zlen
1162 ! (37) [ 10.] TauW
1163 ! (38) [ 1.] Cdrag
1164 ! (39) [ 1.] Setup
1165 ! (47) [ 1000.] Tm_10
1166 ! (48) [ 1000.] RTm_10
1167 ! (49) [ 50.] DifPar
1168 ! (50) [ 1000.] TmBot
1169 ! (51) [ 1.E4] Watlev
1170 ! (52) [ 1.E4] Botlev
1171 ! (53) [ 1000.] TPSmoo
1172 ! SINCQ [ ] sin of ALCQ
1173 ! SINPQ [ ] sin of ALPQ
1174 ! SPCPOW [ 1] power in expression for computation of average frequency
1175 ! =power; set by command SET ... [power] ... (not documented)
1176 ! XQLEN [ ] length of x-side of output frame
1177 ! XQP [ ] x-coordinate (user coord.) of origin of output frame
1178 ! YQLEN [ ] length of y-side of output frame
1179 ! YQP [ ] y-coordinate (user coord.) of origin of output frame
1180 !
1181  INTEGER errpts
1182  INTEGER inrhog, iubotr
1185  REAL cospq, dxk, dyk
1189  REAL xpq, xqlen, xqp, ypq
1191 !
1192 ! 8. Subroutines and functions used
1193 !
1194 ! ---
1195 !
1196 ! 9. Subroutines and functions calling
1197 !
1198 ! ---
1199 !
1200 ! 10. Error messages
1201 !
1202 ! ---
1203 !
1204 ! 11. Remarks
1205 !
1206 ! ---
1207 !
1208 ! 12. Structure
1209 !
1210 ! ---
1211 !
1212 ! 13. Source text
1213 !
1214  END MODULE swcomm1
1215 
1216  MODULE swcomm2
1217  USE mod_prec
1218 !
1219 !
1220 ! --|-----------------------------------------------------------|--
1221 ! | Delft University of Technology |
1222 ! | Faculty of Civil Engineering |
1223 ! | Environmental Fluid Mechanics Section |
1224 ! | P.O. Box 5048, 2600 GA Delft, The Netherlands |
1225 ! | |
1226 ! | Programmers: R.C. Ris, N. Booij, |
1227 ! | IJ.G. Haagsma, A.T.M.M. Kieftenburg, |
1228 ! | M. Zijlema, E.E. Kriezi, |
1229 ! | R. Padilla-Hernandez, L.H. Holthuijsen |
1230 ! --|-----------------------------------------------------------|--
1231 !
1232 !
1233 ! SWAN (Simulating WAves Nearshore); a third generation wave model
1234 ! Copyright (C) 2004-2005 Delft University of Technology
1235 !
1236 ! This program is free software; you can redistribute it and/or
1237 ! modify it under the terms of the GNU General Public License as
1238 ! published by the Free Software Foundation; either version 2 of
1239 ! the License, or (at your option) any later version.
1240 !
1241 ! This program is distributed in the hope that it will be useful,
1242 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
1243 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1244 ! GNU General Public License for more details.
1245 !
1246 ! A copy of the GNU General Public License is available at
1247 ! http://www.gnu.org/copyleft/gpl.html#SEC3
1248 ! or by writing to the Free Software Foundation, Inc.,
1249 ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1250 !
1251 !
1252 ! 0. Authors
1253 !
1254 ! 40.41: Marcel Zijlema
1255 !
1256 ! 1. Updates
1257 !
1258 ! 40.41, Oct. 04: taken from the include file SWCOMM2.INC
1259 !
1260 ! 2. Purpose
1261 !
1262 ! Common variables used by the subroutines in SWAN
1263 !
1264 ! 3. Method
1265 !
1266 ! MODULE construct
1267 !
1268 ! 4. Modules used
1269 !
1270 ! ---
1271 !
1272  IMPLICIT NONE
1273 !
1274 ! 5. Argument variables
1275 !
1276 ! ---
1277 !
1278 ! 6. Parameter variables
1279 !
1280 ! NUMGRD [ 10] maximum number of grids
1281 !
1282  INTEGER numgrd
1283  parameter(numgrd = 10)
1284 !
1285 ! 7. Local variables
1286 !
1287 ! *** location and dimensions of input grids ***
1288 !
1289 ! The following input grids are known in SWAN:
1290 ! grid(1): depth
1291 ! grid(2): current velocity x-component
1292 ! grid(3): current velocity y-component
1293 ! grid(4): friction coefficient
1294 ! grid(5): wind velocity x-component
1295 ! grid(6): wind velocity y-component
1296 ! grid(7): water level
1297 ! grid(8): y-coordinate
1298 ! grid(9): x-coordinate
1299 ! grid(10): air-sea temperature difference
1300 !
1301 ! ALPG(NUMGRD) [ 0.] direction of the x-axis w.r.t. user coordinates
1302 ! COSPG(NUMGRD) [ 1.] cos of ALPG
1303 ! COSVC [CALCUL] =COS(-ALPG(2)),
1304 ! cos of angle of current input grid w.r.t. user coordinates
1305 ! COSWC [CALCUL] =COS(-ALPG(5)),
1306 ! cos of angle of wind input grid w.r.t. user coordinates
1307 ! CVLEFT [ ] the (curv.lin.) comput. grid is left/right-oriented
1308 
1309 ! DXG(NUMGRD) [ 0.] mesh size of input grid in x-direction
1310 ! DYG(NUMGRD) [ 0.] mesh size of input grid in y-direction
1311 ! DYNDEP [ FAL] is True if depth varies with time
1312 ! EXCFLD(NUMGRD)[-1.E20] exception values for input grids
1313 ! ICOND [ 0] initial conditions
1314 ! =0 when mode stationary, or no initial conditions needed
1315 ! =1 when mode non-stationary and initial conditions should
1316 ! be calculated
1317 ! IGTYPE(NUMGRD)[ ] =0 when grid has constant values
1318 ! =1 when grid is regular
1319 ! =2 when grid is curvilinear
1320 ! LEDS(NUMGRD) [ 0] =0 when values have not been read
1321 ! =1 if values were read
1322 ! LXOFFS [ FAL] offset values were/were not initialized already
1323 ! MXG(NUMGRD) [ 0] number of meshes in x-direction
1324 ! MYG(NUMGRD) [ 0] number of meshes in y-direction
1325 ! NWAMN [ 0] indicator (=1) for a WAM-nested run
1326 ! OPTG [ 1] type of the computational grid
1327 ! =1 when regular
1328 ! =2 when irregular, but rectangular (not used)
1329 ! =3 when curvilinear
1330 ! NBFILS [ 0] number of boundary condition files
1331 ! NBSPEC [ 0] number of boundary spectra
1332 ! NBGRPT [ 0] number of comp. grid points for which boundary
1333 ! condition holds
1334 ! RDTIM [ ] =0 when in stationary mode
1335 ! =1/DT when in non-stationary mode
1336 ! SINPG(NUMGRD) [ 0.] sin of ALPG
1337 ! SINVC [CALCUL] =SIN(-ALPG(2)),
1338 ! sin of angle of current input grid w.r.t. comp. grid
1339 ! SINWC [CALCUL] =SIN(-ALPG(5)),
1340 ! sin of angle of wind input grid w.r.t. comp. grid
1341 ! STAGX(NUMGRD) [ 0.] staggering of curv.lin. inp. grid w.r.t. comp. grid in X
1342 ! STAGY(NUMGRD) [ 0.] staggering of curv.lin. inp. grid w.r.t. comp. grid in Y
1343 ! VARAST [ FAL] air-sea temp. diff. is/is not variable over space
1344 ! VARFR [ FAL] friction coefficient is/is not variable over space
1345 ! VARWI [ FAL] wind velocity is/is not variable over space
1346 ! VARWLV [ FAL] water level is/is not variable over space
1347 ! XPG(NUMGRD) [ 0.] x of origin
1348 ! XOFFS [ 0.] offset value in x
1349 ! (from user coord. system to internal coord. system)
1350 ! YPG(NUMGRD) [ 0.] y of origin
1351 ! YOFFS [ 0.] offset value in y
1352 ! (from user coord. system to internal coord. system)
1353 !
1354  INTEGER icond
1356  INTEGER mxg(numgrd), myg(numgrd), nwamn
1365  LOGICAL cvleft, lxoffs, varfr
1367  LOGICAL varast
1368 !
1369 ! *** variables for input files ***
1370 !
1371 ! IFLBEG begin time of data on file
1372 ! IFLDYN if =0: data is stationary, if =1: nonstationary
1373 ! IFLEND end time of data on file
1374 ! IFLFAC multiplication factor
1375 ! IFLFRM format string
1376 ! IFLIDL lay-out in input file
1377 ! IFLIFM format identifier
1378 ! IFLINT time interval of data on file
1379 ! IFLNDF unit ref number of namelist file
1380 ! IFLNDS unit ref number of data file
1381 ! IFLNHD number of heading lines per input field
1382 ! IFLNHF number of heading lines per file
1383 ! IFLTIM time of last reading
1384 !
1385  INTEGER ifldyn(numgrd)
1389  ifltim(numgrd)
1391  CHARACTER*40 iflfrm(numgrd)
1392 !
1393 ! 8. Subroutines and functions used
1394 !
1395 ! ---
1396 !
1397 ! 9. Subroutines and functions calling
1398 !
1399 ! ---
1400 !
1401 ! 10. Error messages
1402 !
1403 ! ---
1404 !
1405 ! 11. Remarks
1406 !
1407 ! ---
1408 !
1409 ! 12. Structure
1410 !
1411 ! ---
1412 !
1413 ! 13. Source text
1414 !
1415  END MODULE swcomm2
1416 
1417  MODULE swcomm3
1418 !
1419 !
1420 ! --|-----------------------------------------------------------|--
1421 ! | Delft University of Technology |
1422 ! | Faculty of Civil Engineering |
1423 ! | Environmental Fluid Mechanics Section |
1424 ! | P.O. Box 5048, 2600 GA Delft, The Netherlands |
1425 ! | |
1426 ! | Programmers: R.C. Ris, N. Booij, |
1427 ! | IJ.G. Haagsma, A.T.M.M. Kieftenburg, |
1428 ! | M. Zijlema, E.E. Kriezi, |
1429 ! | R. Padilla-Hernandez, L.H. Holthuijsen |
1430 ! --|-----------------------------------------------------------|--
1431 !
1432 !
1433 ! SWAN (Simulating WAves Nearshore); a third generation wave model
1434 ! Copyright (C) 2004-2005 Delft University of Technology
1435 !
1436 ! This program is free software; you can redistribute it and/or
1437 ! modify it under the terms of the GNU General Public License as
1438 ! published by the Free Software Foundation; either version 2 of
1439 ! the License, or (at your option) any later version.
1440 !
1441 ! This program is distributed in the hope that it will be useful,
1442 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
1443 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1444 ! GNU General Public License for more details.
1445 !
1446 ! A copy of the GNU General Public License is available at
1447 ! http://www.gnu.org/copyleft/gpl.html#SEC3
1448 ! or by writing to the Free Software Foundation, Inc.,
1449 ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
1450 !
1451 !
1452 ! 0. Authors
1453 !
1454 ! 40.41: Marcel Zijlema
1455 !
1456 ! 1. Updates
1457 !
1458 ! 40.41, Oct. 04: taken from the include file SWCOMM3.INC
1459 !
1460 ! 2. Purpose
1461 !
1462 ! Common variables used by the subroutines in SWAN
1463 !
1464 ! 3. Method
1465 !
1466 ! MODULE construct
1467 !
1468 ! 4. Modules used
1469 !
1470 ! ---
1471 !
1472  IMPLICIT NONE
1473 !
1474 ! 5. Argument variables
1475 !
1476 ! ---
1477 !
1478 ! 6. Parameter variables
1479 !
1480 ! MBOT [ 10] dimension of array PBOT
1481 ! MDIFFR [ 10] dimension of array PDIFFR 40.21
1482 ! MICMAX [ 10] max. number of points in comput. stencil
1483 ! MNUMS [ 30] dimension of array PNUMS
1484 ! MQUAD [ 10] dimension of array PQUAD
1485 ! MSETUP [ 2] dimension of array PSETUP
1486 ! MSHAPE [ 5] dimension of array PSHAPE
1487 ! MSPPAR [ 5] dimension of array SPPARM
1488 ! MSURF [ 10] dimension of array PSURF
1489 ! MTRIAD [ 10] dimension of array PTRIAD
1490 ! MWCAP [ 15] dimension of array PWCAP
1491 ! MWIND [ 40] dimension of array PWIND
1492 !
1493  INTEGER mbot, mnums, mquad
1495  INTEGER mtriad, mwcap, mwind
1496  INTEGER micmax
1497  INTEGER mdiffr
1498 !
1499  parameter(mbot = 10)
1500  parameter(mdiffr = 10)
1501  parameter(micmax = 10)
1502  parameter(mnums = 30)
1503  parameter(mquad = 10)
1504  parameter(msetup = 2)
1505  parameter(mshape = 5)
1506  parameter(msppar = 5)
1507  parameter(msurf = 10)
1508  parameter(mtriad = 10)
1509  parameter(mwcap = 15)
1510  parameter(mwind = 40)
1511 !
1512 ! 7. Local variables
1513 !
1514 ! *** pointers for data arrays on computational grid ***
1515 !
1516 ! JABIN [ 7] within array SWMATR
1517 ! JABLK [ 8] within array SWMATR
1518 ! JAOLD [ 12] within array SWMATR
1519 ! JASTD2 [ ] new air-sea temp. diff. within array COMPDA
1520 ! JASTD3 [ ] last read air-sea temp. diff. within array COMPDA
1521 ! JBTIME [ ] ??
1522 ! JCDRAG [ 1] drag coefficient within array COMPDA,
1523 ! set by command WCAP JANS ...
1524 ! JDHS [ 6] wave height correction within array COMPDA
1525 ! (difference in Hs between last two iterations)
1526 ! JDIS0 [ 7] within array SWMATR
1527 ! JDIS1 [ 8] within array SWMATR
1528 ! JDISS [ 2] dissipation within array COMPDA
1529 ! JDPSAV [ 1] saved depth (for setup) within array COMPDA
1530 ! JDP1 [ 7] old depth within array COMPDA
1531 ! JDP2 [ 8] new depth within array COMPDA
1532 ! JDP3 [ 15] last read depth within array COMPDA
1533 ! JDTM [ 20] wave period correction within array COMPDA
1534 ! (difference in average wave period between last two iterations)
1535 ! JFRC2 [ ] friction coefficient within array COMPDA
1536 ! set by command READ FR ...
1537 ! JFRC3 [ ] friction coefficient within array COMPDA
1538 ! set by command READ FR ...
1539 ! JHS [ 1] significant wave height Hs within array COMPDA
1540 ! JHSIBC [ 25] significant wave height from boundary condition in array COMPDA
1541 ! JLEAK [ 21] "leak" within array COMPDA
1542 ! (refractive energy tranport over sector boundaries)
1543 ! JLEK1 [ 9] within array SWMATR
1544 ! JMAT5 [ 5] within array SWMATR
1545 ! JMAT6 [ 6] within array SWMATR
1546 ! JMATD [ 1] within array SWMATR
1547 ! JMATL [ 3] within array SWMATR
1548 ! JMATR [ 2] within array SWMATR
1549 ! JMATU [ 4] within array SWMATR
1550 ! JP4D [ 7] within array SWTSDA, quadruplet interactions
1551 ! JP4S [ 6] within array SWTSDA, quadruplet interactions
1552 ! JPBOT [ 28] bottom wave period within array COMPDA
1553 ! JPBTFR [ 4] within array SWTSDA, bottom friction
1554 ! JPTRI [ 8] within array SWTSDA, triad interactions
1555 ! JPWBRK [ 5] within array SWTSDA, surf breaking
1556 ! JPWCAP [ 3] within array SWTSDA, white capping
1557 ! JPWNDA [ 1] within array SWTSDA, wind source term part A
1558 ! JPWNDB [ 2] within array SWTSDA, wind source term part B
1559 ! JQB [ 4] fraction of breaking waves within array COMPDA
1560 ! JSETUP [ 1] setup values within array COMPDA
1561 ! JSTP [ 5] steepness within array COMPDA
1562 ! JTAUW [ 1] TauW within array COMPDA,
1563 ! set by command WCAP JANS ...
1564 ! JUBOT [ 3] bottom orbital velocity within array COMPDA
1565 ! JURSEL [ 27] Ursell number as used in Triad computation
1566 ! JUSTAR [ 1] friction velocity within array COMPDA,
1567 ! set by command WCAP JANS ...
1568 ! JVX1 [ 9] x of old current velocity within array COMPDA
1569 ! JVX2 [ 11] x of new current velocity within array COMPDA
1570 ! JVX3 [ 13] x of last read current velocity within array COMPDA
1571 ! JVY1 [ 10] y of old current velocity within array COMPDA
1572 ! JVY2 [ 12] y of new current velocity within array COMPDA
1573 ! JVY3 [ 14] y of last read current velocity within array COMPDA
1574 ! JWLV1 [ 22] old water level within array COMPDA
1575 ! JWLV2 [ 24] new water level within array COMPDA
1576 ! JWLV3 [ 23] last read water level within array COMPDA
1577 ! JWX2 [ 16] x of new wind velocity within array COMPDA
1578 ! JWX3 [ 18] x of last read wind velocity within array COMPDA
1579 ! JWY2 [ 17] y of new wind velocity within array COMPDA
1580 ! JWY3 [ 19] y of last read wind velocity within array COMPDA
1581 ! JZEL [ 1] roughness within array COMPDA,
1582 ! set by command WCAP JANS ...
1583 ! MCMVAR [ 28] within array COMPDA,
1584 ! =MCMVAR+1, for command READ BOT ... (add JDP2) (obsolete)
1585 ! =MCMVAR+2, for command READ FR ... (add JFRC2, JFRC3)
1586 ! =MCMVAR+1, for command READ WL ... (add JWLV2) (obsolete)
1587 ! =MCMVAR+2, for command WIND ... (add JWX2, JWY2) (obsolete)
1588 ! =MCMVAR+2, for command READ WI ... (add JWX2, JWY2) (obsolete)
1589 ! =MCMVAR+2, for command READ CUR ... (add JVX2, JVY2) (obsolete)
1590 ! =MCMVAR+2, for command READ COOR ... (add JCOOX, JCOOY)
1591 ! =MCMVAR+4, for command WCAP JANS ... (add JCDRAG, JTAUW,
1592 ! JUSTAR, JZEL)
1593 ! =MCMVAR+1, for command TRIAD .......(add Ursell)
1594 ! MSWMAT [ 12] within array SWMATR
1595 ! MTSVAR [ 8] within array TESTDA
1596 !
1597  INTEGER jabin, jablk, jaold
1598  INTEGER jastd2, jastd3
1600  INTEGER jdis1, jdiss, jdpsav, jdp1
1601  INTEGER jdp2
1602  INTEGER jdp3, jdtm, jfrc2, jfrc3
1603  INTEGER jhs, jhsibc, jleak
1604  INTEGER jlek1, jmat5, jmat6, jmatd
1605  INTEGER jmatl, jmatr, jmatu
1606  INTEGER jp4d, jp4s, jpbtfr, jptri
1608  INTEGER jqb, jsetup, jstp, jtauw
1609  INTEGER jubot, justar, jvx1, jvx2
1610  INTEGER jvx3, jvy1, jvy2, jvy3
1611  INTEGER jwlv1, jwlv2, jwlv3
1612  INTEGER jwx2, jwx3
1613  INTEGER jwy2, jwy3, jzel , jpbot
1615  INTEGER mswmatr
1616 !
1617 ! *** location and dimensions of computational grid ***
1618 !
1619 ! ALCP [CALCUL] =-ALPC;
1620 ! direction of user coordinates w.r.t. computational coordinates
1621 ! ALPC [ 0.] direction of x-axis of computational grid w.r.t. user coordinates
1622 ! COSPC [CALCUL] =COS(ALPC)
1623 ! DX [CALCUL] unused =XCLEN/MXS; mesh size in x-direction of computational grid
1624 ! DY [CALCUL] unused =YCLEN/MYS; mesh size in y-direction of computational grid
1625 ! DDIR [CALCUL] =(SPDIR2-SPDIR1)/MDC;
1626 ! mesh size in theta-direction of computational grid
1627 ! DXRP [ ] unused
1628 ! DYRP [ ] unused
1629 ! FRINTF [CALCUL] =ALOG(SHIG/SLOW)/(MSC-1); frequency integration factor (df/f)
1630 ! (integral over frequency of G(f) = SUM_j (sigma_j*Gj*FRINTF) )
1631 ! FRINTH [CALCUL] =SQRT(SFAC); frequency mesh boundary factor
1632 ! (mesh in frequency space runs from sigma/FRINTH to sigma*FRINTH)
1633 ! FULCIR [ TRUE] spectral directions cover the full/part of circle
1634 ! ICOMP [ 1] unused
1635 ! IXCGRD [ ] IX of points of computational stencil
1636 ! IYCGRD [ ] IY of points of computational stencil
1637 ! KCGRD [ ] grid address of points of computational stencil
1638 ! MCGRD [ 1] number of wet grid points of the computational grid
1639 ! MDC [ 0] grid points in theta-direction of computational grid
1640 ! MDC4MA [CALCUL] =IDHGH; some counter for quadruplet interactions. Stored in WWINT(18)
1641 ! MDC4MI [CALCUL] =IDLOW; some counter for quadruplet interactions. Stored in WWINT(17)
1642 ! MMCGR [CALCUL] =MXC*MYC; grid points in computational grid
1643 ! MSC [ 0] grid points in sigma-direction of computational grid
1644 ! MSC4MA [CALCUL] =ISHGH; some counter for quadruplet interactions. Stored in WWINT(16)
1645 ! MSC4MI [CALCUL] =ISLOW; some counter for quadruplet interactions. Stored in WWINT(15)
1646 ! MTC [ 1] computational time steps
1647 ! MXC [ 0] unused ! grid points in x-direction of computational grid
1648 ! MYC [ 0] unused !grid points in y-direction of computational grid
1649 ! NGRBND [CALCUL] number of grid points on computational grid boundary
1650 ! NX [CALCUL] unused !=MXC-1; only used locally. Equal to MXS
1651 ! NY [CALCUL] unused !=MYC-1; only used locally. Equal to MYS
1652 ! SHIG [CALCUL] =2*PI*FRHIG; highest spectral value of sigma
1653 ! SINPC [CALCUL] =SIN(ALPC)
1654 ! SLOW [CALCUL] =2*PI*FRLOW; lowest spectral value of sigma
1655 ! SPDIR1 [ 0.] represents first spectral direction (if FULCIR=.FALSE.)
1656 ! SPDIR2 [ ] represents second spectral direction (if FULCIR=.FALSE.)
1657 ! XCGMAX [CALCUL] maximum x-coordinate of computational grid points
1658 ! XCGMIN [CALCUL] minimum x-coordinate of computational grid points
1659 ! XCLEN [ ] length of computational grid in x-direction
1660 ! XCP [CALCUL] =-XPC*COSPC-YPC*SINPC;
1661 ! origin of user coordinates w.r.t. computational coordinates
1662 ! XPC [ 0.] x coordinate of origin of computational grid
1663 ! YCGMAX [CALCUL] maximum y-coordinate of computational grid points
1664 ! YCGMIN [CALCUL] minimum y-coordinate of computational grid points
1665 ! YCLEN [ ] length of computational grid in y-direction
1666 ! YCP [CALCUL] =XPC*SINPC-YPC*COSPC;
1667 ! origin of user coordinates w.r.t. computational coordinates
1668 ! YPC [ 0.] y coordinate of origin of computational grid
1669 !
1671  INTEGER icomp, mcgrd
1672  INTEGER mdc, mdc4ma, mdc4mi, mmcgr
1673  INTEGER msc, msc4ma, msc4mi, mtc
1674  INTEGER mxc, myc, nx, ny
1675  INTEGER ngrbnd
1677  REAL dx, dxrp, dy, dyrp
1680  REAL xcp, xpc, yclen, ycp
1681  REAL ypc
1683  LOGICAL fulcir
1684 !$OMP THREADPRIVATE(IXCGRD,IYCGRD,KCGRD)
1685 !
1686 ! *** physical parameters ***
1687 !
1688 ! CASTD [ 0.] (constant) air-sea temperature difference
1689 ! DEGRAD [CALCUL] =PI/180; constant to transform degrees to radians
1690 ! DNORTH [ 90.] direction of the North w.r.t. x-axis of user coordinates
1691 ! =nor; set by command SET ... [nor] ...
1692 ! GRAV [ 9.81] acceleration due to gravity
1693 ! =grav; set by command SET ... [grav] ...
1694 ! PI [3.1415] circular constant
1695 ! PI2 [CALCUL] =2*PI;
1696 ! PWTAIL(10) coefficients to calculate tail of the spectrum
1697 ! (1) [ 4.] tail power of energy density spectrum as function of freq.
1698 ! =5.; for command GEN3 JANS ...
1699 ! =5.; for command WCAP JANS ...,
1700 ! not documented in manual
1701 ! =5.; for command GROWTH G3 JANS ...,
1702 ! not documented in manual
1703 ! =pwtail; set by command SET ... [pwtail]
1704 ! (2) [ 2.5] energy spectrum w.r.t. wave number, not used
1705 ! (3) [CALCUL] =PWTAIL(1)+1; action density spectrum w.r.t. frequency
1706 ! (4) [ 3.] action density spectrum w.r.t. wave number, not used
1707 ! (5) [CALCUL] =1./(PWTAIL(1)*(1.+PWTAIL(1)*(FRINTH-1.)));
1708 ! tail factor for the action integral
1709 ! (6) [CALCUL] =1./((PWTAIL(1)-1.)*(1.+(PWTAIL(1)-1.)*(FRINTH-1.)));
1710 ! tail factor for the energy integral
1711 ! (7) [CALCUL] =1./((PWTAIL(1)-2.)*(1.+(PWTAIL(1)-2.)*(FRINTH-1.)));
1712 ! tail factor for the first moment of energy
1713 ! (8) [CALCUL] =1./((PWTAIL(1)-3.)*(1.+(PWTAIL(1)-3.)*(FRINTH-1.)));
1714 ! tail factor for the second moment of energy
1715 ! RHO [ 1025.] density of the water
1716 ! =rho; set by command SET ... [rho] ...
1717 ! WLEV [ 0.] water level
1718 ! =level; set by command SET [level] ...
1719 !
1720  REAL castd
1722  REAL pi2_w, pwtail(10), rho_w, wlev
1723 !
1724 ! *** information related to the numerical scheme ***
1725 !
1726 ! ACUPDA [ true] indicates whether or not action densities are to be updated
1727 ! during computation
1728 ! BNAUT [ false] indicates whether nautical or cartesian directions are used
1729 ! BNDCHK [ true] indicates whether computed Hs on boundary must be compared
1730 ! with value entered as boundary condition
1731 ! BRESCL [ true] rescaling on/off
1732 ! CSETUP [ true] indicates whether solver for setup has converged
1733 ! DEPMIN [ 0.05] threshold depth (to prevent zero divisions)
1734 ! =depmin; set by command SET ... [depmin] ...
1735 ! DSHAPE [ 2] indicates option for computation of directional distribution
1736 ! in the spectrum (boundary spectra etc.)
1737 ! =1: directional spread in degrees is given
1738 ! =2: power of COS is given
1739 ! FSHAPE [ 2] indicates option for computation of frequency distribution
1740 ! in the spectrum (boundary spectra etc.)
1741 ! =2: Jonswap(default set by subr SWINIT),
1742 ! =1: Pierson-Moskowitz, =3: bin, =4: Gaussian (set by command
1743 ! BOUNshape ..)
1744 ! HSRERR [ 0.1] The error margin allowed between pre-scribed and calculated Hs
1745 ! at the up-wave boundary. If exceeded a warning is produced
1746 ! IBOT [ 0] indicator bottom friction:
1747 ! =0; no bottom friction dissipation
1748 ! =1; set by command FRIC JON ..., Jonswap bottom friction model
1749 ! =2; for command FRIC COLL ..., Collins bottom friction model
1750 ! =3; for command FRIC MAD ..., Madsen bottom friction model
1751 ! ICMAX [ 3] number of points in computational stencil
1752 ! ICOR [ ] not used
1753 ! ICUR [ 0] indicates presence of currents:
1754 ! =0; no currents
1755 ! =1; for command READ CUR ..., currents are present
1756 ! IDBR [ 1] not used
1757 ! IDIF [ 0] not used
1758 ! IDIFFR [ 0] diffraction method 40.21
1759 ! 0= no diffraction 40.21
1760 ! 1= diffraction 40.21
1761 ! IGEN [ 3] indicates the generation mode
1762 ! =1; for command GEN1 ...,
1763 ! =2; for command GEN2 ...,
1764 ! =3; for command GEN3 ...,
1765 ! IINC [ 0] not used
1766 ! IPRE [ ] not used
1767 ! IQUAD [ 2] indicates quadruplet interaction term:
1768 ! =0; for command OFF QUAD
1769 ! =0; for command GEN1 ...,
1770 ! =0; for command GEN2 ...,
1771 ! =0; for command GROWTH G1 ... (not documented in manual),
1772 ! =0; for command GROWTH G2 ... (not documented in manual),
1773 ! quadruplets are inactive
1774 ! =1; quadruplets are calculated semi implicit per sweep direction
1775 ! =2; for command GEN3 ...,
1776 ! =2; for command QUAD, not documented in the manual
1777 ! =2; set when IWIND=3 or 4 and ICUR=0 in SUBR ERRCHK,
1778 ! quadruplets are calculated fully explicit per sweep direction
1779 ! =3; set when IWIND=3 or 4 and ICUR=1 in SUBR ERRCHK,
1780 ! quadruplets are calculated fully explicit per iteration
1781 ! =8; quadruplets are calculated fully explicit per iteration and
1782 ! interactions are interpolated in piecewise constant manner
1783 ! =iquad; set by command GEN3 ... QUAD [iquad] ...,
1784 ! IREFR [ 1] indicates refraction effect:
1785 ! =0; for command OFF REF, refraction is inactive
1786 ! =1; refraction is active
1787 ! ISURF [ 1] indicates surf breaking (shallow water) term:
1788 ! =0; for command OFF BRE, surf breaking is inactive
1789 ! =1; for command BRE CON ..., surf breaking with constant parameter
1790 ! =2; for command BRE VAR ..., surf breaking according to Nelson
1791 ! ITERMX [ ] maximum number of iterations:
1792 ! is set equal to MXITST in case of stationary computations
1793 ! is set equal to MXITNS in case of nonstationary computations
1794 ! ITFRE [ 1] indicator for transport of action in frequency space
1795 ! =0; for command OFF FSH, frequency shifting inactive
1796 ! =1; frequency shifting active
1797 ! ITRIAD [ 0] indicates triad interaction term:
1798 ! =0; triads are inactive
1799 ! =1; for command TRI DTA IMP ..., not documented in manual
1800 ! =2; for command TRI DTA EXP ..., not documented in manual
1801 ! =3; for command TRI [trfac] [cutfr], as in manual
1802 ! =3; for command TRI LTA IMP ..., not documented in manual
1803 ! =4; for command TRI LTA EXP ..., not documented in manual
1804 ! IWCAP [ 1] indicates whitecapping:
1805 ! =0; for command GEN1 ...,
1806 ! =0; for command GEN2 ...,
1807 ! =0; for command OFF WCAP, no whitecapping
1808 ! =1; for command GEN3 KOM ...,
1809 ! =1; for command WCAP KOM ..., not documented in manual,
1810 ! standard WAM formulation (Komen et al.; 1984)
1811 ! =2; for command GEN3 JANS ...,
1812 ! =2; for command WCAP JANS ..., not documented in manual,
1813 ! according to Janssen (1989, 1991)
1814 ! =3; for command WCAP LHIG ..., not documented in manual,
1815 ! according to Longuet-Higgins (1967), Yuan et al. (1986)
1816 ! =4; for command WCAP BJ ..., not documented in manual,
1817 ! according to Battjes & Janssen (1978)
1818 ! =5; for command WCAP KBJ ..., not documented in manual,
1819 ! combined formulation of Komen (1) and Battjes & Janssen (4)
1820 ! IWIND [ 0] indicates presence of wind, and type of source term used:
1821 ! =0; no wind
1822 ! =1; for command GEN1 ..., if wind is made active,
1823 ! =1; for command GROWTH G1 ..., not documented in manual,
1824 ! 1st generation source term
1825 ! =2; for command GEN2 ..., if wind is made active,
1826 ! =2; for command GROWTH G2 ..., not documented in manual,
1827 ! 2nd generation source term (as in Dolphin)
1828 ! =3; for command WIND ..., if IWIND still was 0, else unchanged,
1829 ! =3; for command GEN3 KOM ..., if wind is made active,
1830 ! =3; for command GROWTH G3 KOM ..., not documented in manual,
1831 ! 3rd generation source term (Snyder)
1832 ! =4; for command GEN3 JANS ..., if wind is made active,
1833 ! =4; for command GROWTH G3 JANS ..., not documented in manual,
1834 ! source term by P. Janssen (1989, 1991)
1835 ! =5; for command GEN3 YAN ..., if wind is made active,
1836 ! =5; for command GROWTH G3 YAN ..., not documented in manual,
1837 ! not documented in manual
1838 ! LSETUP [ 0] =0; setup is not calculated
1839 ! =1; setup is calculated
1840 ! =2; setup is calculated with the boundary conditions from
1841 ! a nest file
1842 ! MXITST [ 15] max. number of iterations in stationary computations
1843 ! MXITNS [ 1] max. number of iterations in nonstationary computations
1844 ! NCOR [ 1] not used
1845 ! NSTATC [ 1] indicates stationarity of computation:
1846 ! =0; stationary computation
1847 ! =1; nonstationary computation
1848 ! NSTATM [ -1] 0: stationary mode, 1: nonstationary mode, -1: unknown
1849 ! NUMOBS [ ] number of obstacles
1850 ! NCOMPT [ ] number of COMPUTE commands
1851 ! ONED [.FALS.] Indicates whether the calculation should be performed in 1D-mode
1852 ! PDIFFR(MDIFFR) coefficients for diffraction 40.21
1853 ! ( 1) smoothing parameter 40.21
1854 ! ( 2) number of smoothing steps 40.21
1855 ! ( 3) if (Cx,Cy)-velocities are modified or not 40.21
1856 ! PBOT(MBOT) coefficients for the bottom friction models
1857 ! ( 1) [ 0.] =cfc; set by command FRIC COL [cfw] [cfc], (Collins equation),
1858 ! not documented in the manual
1859 ! ( 2) [ 0.015] =cfw; set by command FRIC COL [cfw], (Collins equation),
1860 ! also used as CFW in the source code
1861 ! ( 3) [ 0.067] =cfjon; set by command FRIC JON [cfjon], (Jonswap equation)
1862 ! ( 4) [ -0.08] =mf; value cannot be changed, (Madsen equation)
1863 ! ( 5) [ 0.05] bottom roughness length scale, (Madsen equation),
1864 ! =kn; set by command FRIC JON [kn],
1865 ! also used as AKN in the source code
1866 ! PNUMS(MNUMS) numerical coefficients
1867 ! accuracy criterion:
1868 ! ( 1) [ 0.02] relative error in Hs and Tm01
1869 ! =drel; set by command NUM ACCUR [drel] ...
1870 ! ( 2) [ 0.03] absolute error in Hs (m)
1871 ! =dhabs; set by command NUM ACCUR ... [dhabs] ...
1872 ! ( 3) [ 0.3] absolute error in Tm01 (s)
1873 ! =dtabs; set by command NUM ACCUR ... [dtabs] ...
1874 ! ( 4) [ 98.00] percentage of wet grid points were absolute and relative
1875 ! accuracy has been reached
1876 ! =npnts; set by command NUM ACCUR ... [npnts] ...
1877 ! ( 5) [ 0.] not used
1878 ! diffusion schemes:
1879 ! ( 6) [ 0.5] numerical diffusion over theta,
1880 ! =cdd; set by command NUM DIR [cdd]
1881 ! ( 7) [ 0.5] numerical diffusion over sigma,
1882 ! =css; set by command NUM SIGIM [css] ...
1883 ! ( 8) [ 1.] numerical scheme in frequency space
1884 ! =1.; for command NUM SIGIM, implicit scheme
1885 ! =2.; for command NUM SIGEX, explicit scheme,
1886 ! with CFL criterion
1887 ! =3.; for command NUM FIL, explicit scheme,
1888 ! without CFL criterion, not documented in the manual
1889 ! ( 9) [ 0.01] diffusion coefficient for explicit scheme,
1890 ! =diffc; set by command NUM FIL [diffc],
1891 ! not documented in the manual
1892 ! iterative solver (SIP):
1893 ! (12) [ 1.E-4] termination criterion for iterative solver
1894 ! =eps2; set by command NUM SIGIM ... [eps2] ...
1895 ! (||Ax-b|| < eps2 * ||b||)
1896 ! (13) [ 0.] output for SIP solver
1897 ! =outp; set by command NUM SIGIM ... [outp] ...
1898 ! <0. no output
1899 ! =0. only fatal errors are printed
1900 ! =1. additional information about the iteration is printed
1901 ! =2. maximal output regarding the iteration process
1902 ! (14) [ 20.] maximum number of iterations in the solver
1903 ! =niter; set by command NUM SIGIM ... [niter]
1904 ! (15) [ 0.02] global error in Hs
1905 ! (16) [ 0.02] global error in Tm01
1906 ! (17) [ -1.] coefficient for limitation of Ctheta (not used currently)
1907 ! (18) [ 0.8] limitation on Froude number (current velocity is reduced if
1908 ! larger than CGMAX=PNUMS(18)*SQRT(GRAV*DEPW)),
1909 ! =froudmax; set by command SET ... [froudmax] ...,
1910 ! not documented in the manual
1911 ! (19) [CALCUL] =0.5*SQRT(2.); CFL criterion for explicit scheme in
1912 ! frequency space, manual mentions default = 0.7,
1913 ! =cfl; set by command NUM SIGEX [cfl]
1914 ! (20) [ 0.1] maximum growth in spectral bin,
1915 ! =0.1; for command WIND ..., if IWIND=3 or 4
1916 ! =0.1; for command GEN3
1917 ! =0.1; for command TRI
1918 ! =0.1; for command QUAD,
1919 ! not documented in the manual
1920 ! =1.E20; for command OFF QUAD
1921 ! =limiter; set by command GEN3 ... QUAD ... [limiter]
1922 ! =limiter; set by command NUM ACCUR ... [itermax] [limiter],
1923 ! not documented in the manual
1924 ! =limiter; set by command QUAD [iquad] [limiter],
1925 ! not documented in the manual
1926 ! (21) [ 0.] =coefficient for type stopping criterion
1927 ! (23) termination criterion for iterative solver in set-up calculation
1928 ! =eps2, set by command NUM SETUP ... [eps2] ...
1929 ! (24) output for iterative solver in set-up calculation
1930 ! =outp, set by command NUM SETUP ... [outp] ...
1931 ! <0. no output
1932 ! =0. only fatal errors are printed
1933 ! =1. additional information about the iteration is printed
1934 ! =2. maximal output regarding the iteration process
1935 ! (25) maximum number of iterations for solver in set-up calculation
1936 ! =niter, set by command NUM SETUP ... [niter] ...
1937 ! (28) [ 1.] Qb-value at which the limiter is not active in case lowering AC2
1938 ! (30) [ 0.] =under-relaxation factor
1939 ! PQUAD(MQUAD) coefficients for quadruplet interaction
1940 ! ( 1) [ 0.25] lambda in eq. B29 of user manual
1941 ! ( 2) [ 3.E7] coefficient of interactions
1942 ! ( 3) [ 5.5] coefficient for shallow water interactions
1943 ! ( 4) [ 0.833] coefficient for shallow water interactions
1944 ! ( 5) [ -1.25] coefficient for shallow water interactions
1945 ! PSETUP(MSETUP)
1946 ! ( 1) [ 0.0] not used
1947 ! ( 2) [ 0.0] user defined level for correction of the setup
1948 ! PSHAPE(MSHAPE) coefficients for calculation of spectrum from integral
1949 ! parameters
1950 ! ( 1) [ 3.3] peak enhancement factor of Jonswap spectrum
1951 ! =gamma; set by command BOUN SHAPE .. JON [gamma]
1952 ! ( 2) [ 0.1] width of Gaussian spectrum (in Hz)
1953 ! =sigfr; set by command BOUN SHAPE .. GAU [sigfr]
1954 ! after reading the value is converted to radians/second
1955 ! by a 2 pi multiplication
1956 ! PSURF(MSURF) surf breaking coefficients
1957 ! ( 1) [ 1.0] coef. for determining rate of dissipation, (Battjes Janssen),
1958 ! =1.5; for command BRE VAR
1959 ! =alpha, set by command BRE CON [alpha] ...
1960 ! =alpha, set by command BRE VAR [alpha] ...
1961 ! ( 2) [ 0.73] breaker parameter
1962 ! =gamma, set by command BRE CON ... [gamma]
1963 ! ( 4) [ ] the min. value of the breaker parameter of Nelson
1964 ! =0.55; set by command BRE VAR
1965 ! =gammin; set by command BRE VAR ... [gammin] ...
1966 ! ( 5) [ ] the max. value of the breaker parameter of Nelson
1967 ! =0.81; set by command BRE VAR
1968 ! =gammax; set by command BRE VAR ... [gammax] ...
1969 ! ( 6) [ ] breaker parameter for negative bottom slopes
1970 ! =0.73; set by command BRE VAR
1971 ! =gamneg; set by command BRE VAR ... [gamneg] ...
1972 ! ( 7) [ ] proportionality coefficient in expression of Nelson
1973 ! =0.88; set by command BRE VAR
1974 ! =coeff1; set by command BRE VAR ... [coeff1] ...
1975 ! ( 8) [ ] coefficient in the exp in the expression of Nelson
1976 ! =0.012; set by command BRE VAR
1977 ! =coeff2; set by command BRE VAR ... [coeff2]
1978 ! PTRIAD(MTRIAD)
1979 ! ( 1) [ 0.5] controls the proportionality coefficient,
1980 ! =0.25; for command TRIAD LTA
1981 ! =0.5; for command TRIAD DTA
1982 ! =trfac; set by command TRIAD ... [trfac] ...
1983 ! ( 2) [ ] controls the maximum frequency considered in the comp.,
1984 ! =2.5; for command TRIAD ...
1985 ! =cutfr; set by command TRIAD ... [cutfr]
1986 ! ( 3) [ 0.1] controls above which Ursell number the quadruplets (and
1987 ! thus the limiter) are switched off
1988 ! =ursell; set by command LIM [ursell]
1989 ! =urcrit; set by command TRIAD ... [urcrit]
1990 ! ( 4) [ 0.2] controls above which Ursell number the triads are
1991 ! calculated
1992 ! =urslim; set by command TRIAD ... [urslim]
1993 ! PWCAP(MWCAP) whitecapping coefficients
1994 ! ( 1) [2.36E-5] coefficient for Komen et al. (1984),
1995 ! ALFAWC (Emperical coefficient)
1996 ! =cds2; set by command GEN3 KOM [cds2] ...,
1997 ! =cds2; set by command WCAP KOM [cds2] ...,
1998 ! not documented in the user manual
1999 ! ( 2) [3.02E-3] coefficient for Komen et al. (1984),
2000 ! ALFAPM (Alpha of Pierson Moskowitz frequency)
2001 ! =stpm; set by command GEN3 KOM ... [stpm],
2002 ! =stpm; set by command WCAP KOM ... [stpm],
2003 ! not documented in the user manual
2004 ! ( 3) [ 4.5] coeff. for Janssen (1989,1991), acc. to Komen et al. (1994),
2005 ! CFJANS (cds coefficient)
2006 ! =cds1; set by command GEN3 JANS [cds1] ...,
2007 ! =cds1; set by command WCAP JANS [cds1] ...,
2008 ! not documented in the user manual
2009 ! ( 4) [ 0.5] (=DELTA)
2010 ! =delta; set by command GEN3 JANS ... [delta],
2011 ! =delta; set by command WCAP JANS ... [delta],
2012 ! not documented in the user manual
2013 ! ( 5) [ 1.] coefficient of Longuet Higgins,
2014 ! =cflhig; set by command WCAP LHIG [cflhig],
2015 ! not documented in the user manual
2016 ! ( 6) [ 0.88] GAMBTJ (Steepness limited wave breaking)
2017 ! =bjstp; set by command WCAP BJ [bjstp] ...
2018 ! =bjstp; set by command WCAP KBJ [bjstp] ...
2019 ! ( 7) [ 1.] Alpha in Battjes/Janssen,
2020 ! =bjalf; set by command WCAP BJ ... [bjalf]
2021 ! =bjalf; set by command WCAP KBJ ... [bjalf] ...
2022 ! ( 8) [ 0.75] numerical diffusion over sigma
2023 ! =kconv; set by command WCAP KBJ ... [kconv]
2024 ! PWIND(MWIND) wind growth term coefficients
2025 ! ( 1) [ 188.] controls linear wave growth,
2026 ! =cf10; set by command GEN1 [cf10] ...
2027 ! =cf10; set by command GEN2 [cf10] ...
2028 ! =cf10; set by command GROWTH G1 [cf10] ...,
2029 ! not documented in the user manual
2030 ! =cf10; set by command GROWTH G2 [cf10] ...,
2031 ! not documented in the user manual
2032 ! ( 2) [ 0.59] controls the exponential wave growth,
2033 ! =cf20; set by command GEN1 ... [cf20] ...
2034 ! =cf20; set by command GEN2 ... [cf20] ...
2035 ! =cf20; set by command GROWTH G1 ... [cf20] ...,
2036 ! not documented in the user manual
2037 ! =cf20; set by command GROWTH G2 ... [cf20] ...,
2038 ! not documented in the user manual
2039 ! ( 3) [ 0.12] controls the exponential wave growth,
2040 ! =cf30; set by command GEN1 ... [cf30] ...
2041 ! =cf30; set by command GEN2 ... [cf30] ...
2042 ! =cf30; set by command GROWTH G1 ... [cf30] ...,
2043 ! not documented in the user manual
2044 ! =cf30; set by command GROWTH G2 ... [cf30] ...,
2045 ! not documented in the user manual
2046 ! ( 4) [ 250.] controls the dissipation rate,
2047 ! =cf40; set by command GEN1 ... [cf40] ...
2048 ! =cf40; set by command GEN2 ... [cf40] ...
2049 ! =cf40; set by command GROWTH G1 ... [cf40] ...,
2050 ! not documented in the user manual
2051 ! =cf40; set by command GROWTH G2 ... [cf40] ...,
2052 ! not documented in the user manual
2053 ! ( 5) [0.0023] controls the spectral energy of the limit spectrum
2054 ! =cf50; set by command GEN2 ... [cf50] ...
2055 ! =cf50; set by command GROWTH G2 ... [cf50] ...,
2056 ! not documented in the user manual
2057 ! ( 6) [-0.223] controls the spectral energy of the limit spectrum
2058 ! =cf60; set by command GEN2 ... [cf60] ...
2059 ! =cf60; set by command GROWTH G2 ... [cf60] ...,
2060 ! not documented in the user manual
2061 ! ( 7) [ 0.] cf70, not used
2062 ! ( 8) [ -0.56] cf80, not used
2063 ! ( 9) [CALCUL] density air / density water (=RHOAW),
2064 ! =PWIND(16)/RHO
2065 ! =rhoaw; set by command GROWTH G1 ... [rhoaw] ...,
2066 ! not documented in the user manual
2067 ! =rhoaw; set by command GROWTH G2 ... [rhoaw] ...,
2068 ! not documented in the user manual
2069 ! (10) [0.0036] limit energy Pierson Moskowitz spectrum
2070 ! =edmlpm; set by command GEN1 ... [edmlpm] ...
2071 ! =edmlpm; set by command GEN2 ... [edmlpm] ...
2072 ! =edmlpm; set by command GROWTH G1 ... [edmlpm] ...,
2073 ! not documented in the user manual
2074 ! =edmlpm; set by command GROWTH G2 ... [edmlpm] ...,
2075 ! not documented in the user manual
2076 ! (11) [0.00123] drag coefficient
2077 ! =cdrag; set by command GEN1 ... [cdrag] ...
2078 ! =cdrag; set by command GEN2 ... [cdrag] ...
2079 ! =cdrag; set by command GROWTH G1 ... [cdrag] ...,
2080 ! not documented in the user manual
2081 ! =cdrag; set by command GROWTH G2 ... [cdrag] ...,
2082 ! not documented in the user manual
2083 ! (12) [ 1.0] minimum wind velocity, relative to current at 10 m above msl
2084 ! =umin; set by command GEN1 ... [umin] ...
2085 ! =umin; set by command GEN2 ... [umin] ...
2086 ! =umin; set by command GROWTH G1 ... [umin] ...,
2087 ! not documented in the user manual
2088 ! =umin; set by command GROWTH G2 ... [umin] ...,
2089 ! not documented in the user manual
2090 ! (13) [ 0.13] coefficient that determines the Pierson Moskowitz spectrum
2091 ! =cfpm; set by command GEN1 ... [cfpm]
2092 ! =cfpm; set by command GEN2 ... [cfpm]
2093 ! =cfpm; set by command GROWTH G1 ... [cfpm],
2094 ! not documented in the user manual
2095 ! =cfpm; set by command GROWTH G2 ... [cfpm],
2096 ! not documented in the user manual
2097 ! (14) [ 0.01] (=ALPHA) Alpha, according to Janssen (1991) wave growth model
2098 ! (15) [ 0.41] (=XKAPPA)carnock: Kappa
2099 ! (16) [ 1.28] density of the air (=RHOA)
2100 ! (17) [CALCUL] =RHO, density of the water (=RHOW)
2101 ! (31) [ 0.] proportionality coefficient in the wave growth term of
2102 ! Caveleri and Malanotte,
2103 ! =0.0015; for command GEN3 ... AGROW
2104 ! =a; set by command GEN3 ... AGROW [a]
2105 ! SIGMAG [ 0.1] width of the Gaussian frequency spectrum in Hz
2106 ! =0.01; for command BOU STAT ... GAU
2107 ! =sigfr; set by command BOU STAT ... GAU [sigfr]
2108 ! after reading the value is converted to radians/second
2109 ! by a 2 pi multiplication
2110 ! SPPARM integral parameters used for computation of incident spectrum
2111 ! ( 1) [ ---] significant wave height
2112 ! ( 2) [ ---] wave period (peak or mean)
2113 ! ( 3) [ ---] average wave direction
2114 ! ( 4) [ ---] directional distribution coefficient
2115 ! SY0 [ 3.3] peak enhancement parameter of the JONSWAP spectrum,
2116 ! =gamma; set by command BOU STAT ... JON [gamma]
2117 ! U10 [ 0.] wind velocity
2118 ! =vel; set by command WIND [vel] ...
2119 ! WDIC [CALCUL] =PI2*((WDIP/PI2-NINT(WDIP/PI2)),
2120 ! WDIP [ 0.] wind direction with respect to problem coordinates
2121 ! =dir; set by command WIND ... [dir]
2122 !
2123  INTEGER dshape, fshape
2124  INTEGER icmax
2125  INTEGER ibot, icor, icur
2126  INTEGER idbr, idif, igen, iinc
2127  INTEGER ipre, iquad, irefr, isurf
2128  INTEGER itermx, itfre, itriad
2129  INTEGER iwcap, iwind, lsetup
2130  INTEGER mxitst, mxitns, ncor
2132  INTEGER idiffr
2137  REAL sigmag
2140  REAL pquad(mquad)
2141  REAL rcompt(50,5)
2143  LOGICAL acupda
2145  LOGICAL csetup
2146 !$OMP THREADPRIVATE(ICMAX,CSETUP)
2147 !
2148 ! 8. Subroutines and functions used
2149 !
2150 ! ---
2151 !
2152 ! 9. Subroutines and functions calling
2153 !
2154 ! ---
2155 !
2156 ! 10. Error messages
2157 !
2158 ! ---
2159 !
2160 ! 11. Remarks
2161 !
2162 ! ---
2163 !
2164 ! 12. Structure
2165 !
2166 ! ---
2167 !
2168 ! 13. Source text
2169 !
2170  END MODULE swcomm3
2171 
2172  MODULE swcomm4
2173 !
2174 !
2175 ! --|-----------------------------------------------------------|--
2176 ! | Delft University of Technology |
2177 ! | Faculty of Civil Engineering |
2178 ! | Environmental Fluid Mechanics Section |
2179 ! | P.O. Box 5048, 2600 GA Delft, The Netherlands |
2180 ! | |
2181 ! | Programmers: R.C. Ris, N. Booij, |
2182 ! | IJ.G. Haagsma, A.T.M.M. Kieftenburg, |
2183 ! | M. Zijlema, E.E. Kriezi, |
2184 ! | R. Padilla-Hernandez, L.H. Holthuijsen |
2185 ! --|-----------------------------------------------------------|--
2186 !
2187 !
2188 ! SWAN (Simulating WAves Nearshore); a third generation wave model
2189 ! Copyright (C) 2004-2005 Delft University of Technology
2190 !
2191 ! This program is free software; you can redistribute it and/or
2192 ! modify it under the terms of the GNU General Public License as
2193 ! published by the Free Software Foundation; either version 2 of
2194 ! the License, or (at your option) any later version.
2195 !
2196 ! This program is distributed in the hope that it will be useful,
2197 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
2198 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2199 ! GNU General Public License for more details.
2200 !
2201 ! A copy of the GNU General Public License is available at
2202 ! http://www.gnu.org/copyleft/gpl.html#SEC3
2203 ! or by writing to the Free Software Foundation, Inc.,
2204 ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
2205 !
2206 !
2207 ! 0. Authors
2208 !
2209 ! 40.41: Marcel Zijlema
2210 !
2211 ! 1. Updates
2212 !
2213 ! 40.41, Oct. 04: taken from the include file SWCOMM4.INC
2214 !
2215 ! 2. Purpose
2216 !
2217 ! Common variables used by the subroutines in SWAN
2218 !
2219 ! 3. Method
2220 !
2221 ! MODULE construct
2222 !
2223 ! 4. Modules used
2224 !
2225 ! ---
2226 !
2227  IMPLICIT NONE
2228 !
2229 ! 5. Argument variables
2230 !
2231 ! ---
2232 !
2233 ! 6. Parameter variables
2234 !
2235 ! ---
2236 !
2237 ! 7. Local variables
2238 !
2239 ! *** information for test output ***
2240 !
2241 ! ICOTES [ 0] minimum value for ITEST,
2242 ! =30; for command COTES, not documented in the manual
2243 ! =cotes; for command COTES [cotes], not documented
2244 ! INTES [ 0] testing parameter,
2245 ! =30; for command INTE, not documented in the manual
2246 ! =intes; for command INTE [intes], not documented
2247 ! IOUTES [ 0] minimum value for ITEST,
2248 ! =30; for command OUTE, not documented in the manual
2249 ! =itest; for command OUTE [itest], not documented
2250 ! IPTST [ ] sequence number of a test point
2251 ! IFPAR [ 0] unit ref. number for output of parameters in test points
2252 ! IFS1D [ 0] unit ref. number for output of 1D spectra of source terms
2253 ! if used, value is made non-zero by subr FOR
2254 ! IFS2D [ 0] unit ref. number for output of 2D spectra of source terms
2255 ! if used, value is made non-zero by subr FOR
2256 ! LXDMP [ -1] grid counter for a test point in the x-direction,
2257 ! =ix; set by command TEST ... POI <[ix] [iy]>
2258 ! LYDMP [ 0] grid counter for a test point in the y-direction,
2259 ! =iy; set by command TEST ... POI <[ix] [iy]>
2260 ! MAXMES [ 200] not used
2261 ! =maxmes; set by command SET [maxmes]
2262 ! NEGMES [ 0] not used
2263 ! NPTST [ 0] number of test points; set by command TEST
2264 ! NPTSTA [ 1] number of test points, equal to MAX(1,NPTST)
2265 ! TESTFL [ FAL] test output must/must not be made, mainly for testpoints
2266 ! UNDFLW [1.E-15] small number to prevent underflows
2267 !
2268  INTEGER icotes, intes, ioutes
2269  INTEGER iptst
2270  INTEGER ifpar, ifs1d, ifs2d
2272  INTEGER nptst, nptsta
2273  REAL undflw
2274  LOGICAL testfl
2275 !$OMP THREADPRIVATE(IPTST,TESTFL)
2276 !
2277 ! *** higher order propagation and spherical coordinates ***
2278 !
2279 ! COSLAT [ 10] cos of latitude; =1 for Cartesian coordinates
2280 ! KREPTX [ 0] if >0, the domain repeats itself in x-direction (primarily intended for
2281 ! propagation around the globe)
2282 ! KSPHER [ 0] indicates whether spherical coordinates are used, and which projection method
2283 ! 0=Cartesian coordinates, >0=spherical coordinates
2284 ! LENDEG [ 1E5] length of a degree NS
2285 ! PROJ_METHOD[ 0] projection method; 0=(quasi-)Cartesian,
2286 ! 1=uniform Mercator (only spherical coordinates)
2287 ! PROPFL [CALCUL] indicates whether flux-limiting in spectral space is used
2288 ! PROPSC [CALCUL] indicates which numerical scheme is to be used for spatial propagation.
2289 ! 1=first order (BSBT), 2=SORDUP, 3=3rd order (S&L)
2290 ! PROPSS [ 2] indicates which numerical scheme is to be used in stationary computations
2291 ! 1=first order (BSBT), 2=SORDUP
2292 ! PROPSN [ 3] indicates which numerical scheme is to be used in nonstationary computations
2293 ! 1=first order (BSBT), 3=3rd order (S&L)
2294 ! PROPSL [CALCUL] indicates which numerical scheme is used locally
2295 ! REARTH2[ 6E6] radius of the earth
2296 ! WAVAGE [ 0.] indicates "wave age" parameter (used in countering Garden Sprinkler Effect
2297 ! in subroutine SANDL)
2298 !
2300  INTEGER propsl
2302  INTEGER propfl
2303  REAL wavage, rearth2, lendeg !Jianzhong Ge
2304 ! REAL WAVAGE, LENDEG
2305  REAL coslat(10)
2306 !$OMP THREADPRIVATE(COSLAT,PROPSL)
2307 !
2308 ! 8. Subroutines and functions used
2309 !
2310 ! ---
2311 !
2312 ! 9. Subroutines and functions calling
2313 !
2314 ! ---
2315 !
2316 ! 10. Error messages
2317 !
2318 ! ---
2319 !
2320 ! 11. Remarks
2321 !
2322 ! ---
2323 !
2324 ! 12. Structure
2325 !
2326 ! ---
2327 !
2328 ! 13. Source text
2329 !
2330  END MODULE swcomm4
2331 
2332  MODULE timecomm
2333  USE mod_prec
2334 !
2335 !
2336 ! --|-----------------------------------------------------------|--
2337 ! | Delft University of Technology |
2338 ! | Faculty of Civil Engineering |
2339 ! | Environmental Fluid Mechanics Section |
2340 ! | P.O. Box 5048, 2600 GA Delft, The Netherlands |
2341 ! | |
2342 ! | Programmers: R.C. Ris, N. Booij, |
2343 ! | IJ.G. Haagsma, A.T.M.M. Kieftenburg, |
2344 ! | M. Zijlema, E.E. Kriezi, |
2345 ! | R. Padilla-Hernandez, L.H. Holthuijsen |
2346 ! --|-----------------------------------------------------------|--
2347 !
2348 !
2349 ! SWAN (Simulating WAves Nearshore); a third generation wave model
2350 ! Copyright (C) 2004-2005 Delft University of Technology
2351 !
2352 ! This program is free software; you can redistribute it and/or
2353 ! modify it under the terms of the GNU General Public License as
2354 ! published by the Free Software Foundation; either version 2 of
2355 ! the License, or (at your option) any later version.
2356 !
2357 ! This program is distributed in the hope that it will be useful,
2358 ! but WITHOUT ANY WARRANTY; without even the implied warranty of
2359 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2360 ! GNU General Public License for more details.
2361 !
2362 ! A copy of the GNU General Public License is available at
2363 ! http://www.gnu.org/copyleft/gpl.html#SEC3
2364 ! or by writing to the Free Software Foundation, Inc.,
2365 ! 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
2366 !
2367 !
2368 ! 0. Authors
2369 !
2370 ! 40.41: Marcel Zijlema
2371 !
2372 ! 1. Updates
2373 !
2374 ! 40.41, Oct. 04: taken from the include file TIMECOMM.INC
2375 !
2376 ! 2. Purpose
2377 !
2378 ! Common variables used by the subroutines in SWAN
2379 !
2380 ! 3. Method
2381 !
2382 ! MODULE construct
2383 !
2384 ! 4. Modules used
2385 !
2386 ! ---
2387 !
2388  IMPLICIT NONE
2389 !
2390 ! 5. Argument variables
2391 !
2392 ! ---
2393 !
2394 ! 6. Parameter variables
2395 !TIMG!
2396 !TIMG! MXTIMR [ 10] maximum number of simultaneous timings, dimension of
2397 !TIMG! work-arrays LISTTM, TIMERS
2398 !TIMG! NSECTM [ 300] number of sections that may be defined for an application
2399 !TIMG!
2400 !TIMG INTEGER NSECTM, MXTIMR
2401 !TIMG PARAMETER (NSECTM=300, MXTIMR=10)
2402 !
2403 ! 7. Local variables
2404 !
2405 ! *** Time related variables for the computation ***
2406 !
2407 ! TINIC [ ] Start time and date of the computation (in seconds since
2408 ! the reference day (REFDAY))
2409 ! =tbegc; set by command COMP [tbegc] ...
2410 ! DT [ ] Time step of the computation (in seconds)
2411 ! =deltc; set by command COMP ... [deltc] ...
2412 ! =deltc*60; set by command COMP ... [deltc] MI ...
2413 ! =deltc*60*60; set by command COMP ... [deltc] HR ...
2414 ! =deltc*60*60*24; set by command COMP ... [deltc] DA ...
2415 ! TFINC [ ] End time and date of the computation (in seconds since
2416 ! the reference day (REFDAY))
2417 ! TIMCO [ ] Time and date of the computation during the simulation (in
2418 ! seconds since the reference day (REFDAY))
2419 !
2420  REAL tinic, dtw, tfinc
2421  REAL(dp) timco
2422 !
2423 ! *** Time related variables for nested runs ***
2424 !
2425 ! BEGBOU [ ] Start time for the non-stationary boundary conditions
2426 ! (in seconds since the reference day (REFDAY)) in the case
2427 ! of nested runs. Read from the nest file
2428 ! IFACMX [ 1] set by command BOU (STAT) NE ... [ifacmx] ...
2429 ! (NOT documented)
2430 ! IFACMY [ 1] set by command BOU (STAT) NE ... [ifacmy]
2431 ! (NOT documented)
2432 ! TIMERB [ ] Last time that non-stationary boundary conditions has been read
2433 ! (in seconds since the reference day (REFDAY))) in the case
2434 ! of nested runs. Read from the nest file
2435 ! TINTBO [ ] Time step between non-stationary boundary conditions (in seconds)
2436 ! in the case of nested runs. Read from the nest file
2437 !
2438  INTEGER ifacmx, ifacmy
2440 !TIMG!
2441 !TIMG! *** contains the cpu and wall-clock times ***
2442 !TIMG!
2443 !TIMG! DCUMTM [ 600] cumulative time; columns 1,2: cpu-time, wall-clock time
2444 !TIMG! LASTTM [ 1] last occupied position in LISTTM, 0 if all positions in
2445 !TIMG! LISTTM are free
2446 !TIMG! LISTTM [ 10] list of section numbers for all running/active timers
2447 !TIMG! in array TIMERS. A value of -1 signals that the
2448 !TIMG! corresponding timer is not running
2449 !TIMG! NCUMTM [ 300] for each section of the application the number of timings
2450 !TIMG! that contributed to time in DCPUTM
2451 !TIMG! TIMERS [ 600] start-time of active timers; columns 1,2: cpu-time,
2452 !TIMG! wall-clock time
2453 !TIMG!
2454 !TIMG INTEGER, SAVE :: NCUMTM(NSECTM), LISTTM(MXTIMR), LASTTM
2455 !TIMG DOUBLE PRECISION, SAVE :: DCUMTM(NSECTM,2), TIMERS(MXTIMR,2)
2456 !TIMG!$OMP THREADPRIVATE(DCUMTM,TIMERS,NCUMTM,LISTTM,LASTTM)
2457 !
2458 ! 8. Subroutines and functions used
2459 !
2460 ! ---
2461 !
2462 ! 9. Subroutines and functions calling
2463 !
2464 ! ---
2465 !
2466 ! 10. Error messages
2467 !
2468 ! ---
2469 !
2470 ! 11. Remarks
2471 !
2472 ! ---
2473 !
2474 ! 12. Structure
2475 !
2476 ! ---
2477 !
2478 ! 13. Source text
2479 !
2480  END MODULE timecomm
real dyq
Definition: swmod1.f90:392
real hsrerr
Definition: swmod1.f90:2139
real xqlen
Definition: swmod1.f90:1189
real dxk
Definition: swmod1.f90:1185
real sinwc
Definition: swmod1.f90:1362
integer jdpsav
Definition: swmod1.f90:1600
integer funhi
Definition: swmod1.f90:515
real, dimension(mdiffr) pdiffr
Definition: swmod1.f90:2142
integer jdis1
Definition: swmod1.f90:1600
real, dimension(msurf) psurf
Definition: swmod1.f90:2135
real sinpc
Definition: swmod1.f90:1678
real, dimension(mnums) pnums
Definition: swmod1.f90:2133
integer optg
Definition: swmod1.f90:1357
character *16, dimension(nmovar) ovunit
Definition: swmod1.f90:862
integer jcdrag
Definition: swmod1.f90:1599
real rho_w
Definition: swmod1.f90:1722
real coswc
Definition: swmod1.f90:1359
logical testfl
Definition: swmod1.f90:2274
integer msppar
Definition: swmod1.f90:1494
integer itfre
Definition: swmod1.f90:2128
integer jwx3
Definition: swmod1.f90:1612
character(len=lenfnm) filenm
Definition: swmod1.f90:280
real shig
Definition: swmod1.f90:1678
integer nptst
Definition: swmod1.f90:2272
real, dimension(mwcap) pwcap
Definition: swmod1.f90:2136
real xqp
Definition: swmod1.f90:1189
integer moutpa
Definition: swmod1.f90:638
integer jdp1
Definition: swmod1.f90:1600
real spdir1
Definition: swmod1.f90:1679
real, dimension(nmovar) ovulim
Definition: swmod1.f90:1188
integer, dimension(numgrd) mxg
Definition: swmod1.f90:1356
real, dimension(nmovar) ovhexp
Definition: swmod1.f90:1187
integer mxitns
Definition: swmod1.f90:2130
real ycp
Definition: swmod1.f90:1680
integer jpwcap
Definition: swmod1.f90:1607
integer mcmvar
Definition: swmod1.f90:1614
real rearth2
Definition: swmod1.f90:2303
real dy
Definition: swmod1.f90:1677
real, dimension(nmovar) ovexcv
Definition: swmod1.f90:1186
integer hiopen
Definition: swmod1.f90:515
character *36 fnest
Definition: swmod1.f90:858
logical bnaut
Definition: swmod1.f90:2144
integer ifs2d
Definition: swmod1.f90:2270
character *8 keywrd
Definition: swmod1.f90:137
real wdip
Definition: swmod1.f90:2139
logical ltrace
Definition: swmod1.f90:537
integer mxc
Definition: swmod1.f90:1674
integer nx
Definition: swmod1.f90:1674
integer intes
Definition: swmod1.f90:2268
integer jwx2
Definition: swmod1.f90:1612
integer mdc4mi
Definition: swmod1.f90:1672
integer maxerr
Definition: swmod1.f90:536
integer, dimension(numgrd) iflndf
Definition: swmod1.f90:1386
character *4 eltype
Definition: swmod1.f90:134
character *6 up
Definition: swmod1.f90:866
integer icur
Definition: swmod1.f90:2125
integer spcpow
Definition: swmod1.f90:1183
character *4 blank
Definition: swmod1.f90:131
character(len=16) projid
Definition: swmod1.f90:282
real depmin
Definition: swmod1.f90:2133
character *6 uet
Definition: swmod1.f90:865
integer jvx1
Definition: swmod1.f90:1609
integer, dimension(numgrd) iflnhf
Definition: swmod1.f90:1386
integer dshape
Definition: swmod1.f90:2123
integer jdis0
Definition: swmod1.f90:1599
integer mdiffr
Definition: swmod1.f90:1497
integer iquad
Definition: swmod1.f90:2127
character *6 uf
Definition: swmod1.f90:865
real dx
Definition: swmod1.f90:1677
logical bndchk
Definition: swmod1.f90:2144
integer icor
Definition: swmod1.f90:2125
integer jwy3
Definition: swmod1.f90:1613
integer inrhog
Definition: swmod1.f90:1182
integer msurf
Definition: swmod1.f90:1494
character(len=20) vertxt
Definition: swmod1.f90:286
real(dp), dimension(numgrd) iflint
Definition: swmod1.f90:1388
integer, dimension(numgrd) iflnds
Definition: swmod1.f90:1386
integer jdiss
Definition: swmod1.f90:1600
integer msetup
Definition: swmod1.f90:1494
real, dimension(numgrd) excfld
Definition: swmod1.f90:1360
character *6 ul
Definition: swmod1.f90:865
integer prtest
Definition: swmod1.f90:517
real timerb
Definition: swmod1.f90:2439
integer mtsvar
Definition: swmod1.f90:1614
integer mmcgr
Definition: swmod1.f90:1672
integer jhs
Definition: swmod1.f90:1603
real grav_w
Definition: swmod1.f90:1721
integer iwind
Definition: swmod1.f90:2129
integer fshape
Definition: swmod1.f90:2123
character *6 udi
Definition: swmod1.f90:864
character(len=lenfnm) filea
Definition: swmod1.f90:280
integer jdtm
Definition: swmod1.f90:1602
logical cvleft
Definition: swmod1.f90:1365
real sinvc
Definition: swmod1.f90:1362
integer jptri
Definition: swmod1.f90:1606
integer refday
Definition: swmod1.f90:161
integer jmatr
Definition: swmod1.f90:1605
integer jubot
Definition: swmod1.f90:1609
logical varwlv
Definition: swmod1.f90:1366
character *36 fbcl
Definition: swmod1.f90:858
real, dimension(numgrd) sinpg
Definition: swmod1.f90:1361
character(len=36) ptitle
Definition: swmod1.f90:285
character *6 uh
Definition: swmod1.f90:865
integer lxdmp
Definition: swmod1.f90:2271
real, dimension(numgrd) xpg
Definition: swmod1.f90:1364
integer jpbtfr
Definition: swmod1.f90:1606
real, dimension(numgrd) stagx
Definition: swmod1.f90:1362
integer errpts
Definition: swmod1.f90:1181
real akpowr
Definition: swmod1.f90:1184
integer mxq
Definition: swmod1.f90:391
real, dimension(mshape) pshape
Definition: swmod1.f90:2134
integer kreptx
Definition: swmod1.f90:2299
real rnan
Definition: swmod1.f90:485
integer isurf
Definition: swmod1.f90:2127
integer msc4mi
Definition: swmod1.f90:1673
integer funlo
Definition: swmod1.f90:515
integer, dimension(numgrd) iflidl
Definition: swmod1.f90:1386
real, dimension(numgrd) cospg
Definition: swmod1.f90:1358
real, dimension(50, 5) rcompt
Definition: swmod1.f90:2141
integer justar
Definition: swmod1.f90:1609
real, dimension(mquad) pquad
Definition: swmod1.f90:2140
integer lencst
Definition: swmod1.f90:152
integer ibot
Definition: swmod1.f90:2125
integer jsetup
Definition: swmod1.f90:1608
integer import
Definition: swmod1.f90:516
real cospq
Definition: swmod1.f90:1185
real, dimension(msppar) spparm
Definition: swmod1.f90:2138
character *6 ud
Definition: swmod1.f90:864
integer, dimension(numgrd) myg
Definition: swmod1.f90:1356
integer mdc
Definition: swmod1.f90:1672
real pi2_w
Definition: swmod1.f90:1722
real slow
Definition: swmod1.f90:1679
real dnorth
Definition: swmod1.f90:1721
character *6 ust
Definition: swmod1.f90:866
integer ipre
Definition: swmod1.f90:2127
integer jwlv1
Definition: swmod1.f90:1611
integer itmopt
Definition: swmod1.f90:516
logical fulcir
Definition: swmod1.f90:1683
integer nstatm
Definition: swmod1.f90:2131
integer itriad
Definition: swmod1.f90:2128
logical varfr
Definition: swmod1.f90:1365
integer icotes
Definition: swmod1.f90:2268
real xcgmin
Definition: swmod1.f90:1682
integer jpbot
Definition: swmod1.f90:1613
real sinpq
Definition: swmod1.f90:1188
real cospc
Definition: swmod1.f90:1676
integer jvx2
Definition: swmod1.f90:1609
integer jwlv3
Definition: swmod1.f90:1611
character *6 udl
Definition: swmod1.f90:864
integer jmatd
Definition: swmod1.f90:1604
integer jtauw
Definition: swmod1.f90:1608
real, dimension(nmovar) ovlexp
Definition: swmod1.f90:1186
real rdtim
Definition: swmod1.f90:1361
real undflw
Definition: swmod1.f90:2273
real pi_w
Definition: swmod1.f90:1721
integer propsl
Definition: swmod1.f90:2300
integer jbtime
Definition: swmod1.f90:1599
integer nbfils
Definition: swmod1.f90:1357
integer ncor
Definition: swmod1.f90:2130
real wlev
Definition: swmod1.f90:1722
integer jvy3
Definition: swmod1.f90:1610
real dxrp
Definition: swmod1.f90:1677
integer jmatu
Definition: swmod1.f90:1605
integer screen
Definition: swmod1.f90:517
real wdic
Definition: swmod1.f90:2139
real sincq
Definition: swmod1.f90:1188
integer jpwbrk
Definition: swmod1.f90:1607
integer elint
Definition: swmod1.f90:152
real tinic
Definition: swmod1.f90:2420
integer jqb
Definition: swmod1.f90:1608
integer inputf
Definition: swmod1.f90:516
integer jfrc3
Definition: swmod1.f90:1602
real(dp), dimension(numgrd) ifltim
Definition: swmod1.f90:1388
character *6, dimension(nmovar) ovsnam
Definition: swmod1.f90:861
real wavage
Definition: swmod1.f90:2303
real ypc
Definition: swmod1.f90:1681
integer lydmp
Definition: swmod1.f90:2271
real, dimension(numgrd) stagy
Definition: swmod1.f90:1363
integer printf
Definition: swmod1.f90:517
logical csetup
Definition: swmod1.f90:2145
character *6 uap
Definition: swmod1.f90:864
character(len=72) projt3
Definition: swmod1.f90:284
integer jlek1
Definition: swmod1.f90:1604
integer jvx3
Definition: swmod1.f90:1610
real, dimension(numgrd) ypg
Definition: swmod1.f90:1364
real frintf
Definition: swmod1.f90:1678
real yoffs
Definition: swmod1.f90:1364
real ypq
Definition: swmod1.f90:1189
integer itest
Definition: swmod1.f90:536
integer jp4d
Definition: swmod1.f90:1606
integer ioutes
Definition: swmod1.f90:2268
integer jstp
Definition: swmod1.f90:1608
integer mdc4ma
Definition: swmod1.f90:1672
real dyk
Definition: swmod1.f90:1185
integer propss
Definition: swmod1.f90:2301
logical varast
Definition: swmod1.f90:1367
integer jwlv2
Definition: swmod1.f90:1611
integer nbgrpt
Definition: swmod1.f90:1357
integer nstatc
Definition: swmod1.f90:2131
integer idbr
Definition: swmod1.f90:2126
integer mtriad
Definition: swmod1.f90:1495
character(len=lenfnm) fileb
Definition: swmod1.f90:280
integer ngrbnd
Definition: swmod1.f90:1675
real sy0
Definition: swmod1.f90:2138
real yclen
Definition: swmod1.f90:1680
real begbou
Definition: swmod1.f90:2439
integer, dimension(numgrd) ifldyn
Definition: swmod1.f90:1385
character *6 uv
Definition: swmod1.f90:866
integer jablk
Definition: swmod1.f90:1597
character *(lineln) eltext
Definition: swmod1.f90:133
integer propsc
Definition: swmod1.f90:2299
integer jaold
Definition: swmod1.f90:1597
character kar
Definition: swmod1.f90:136
integer, dimension(micmax) iycgrd
Definition: swmod1.f90:1670
real, dimension(mtriad) ptriad
Definition: swmod1.f90:2135
logical lxoffs
Definition: swmod1.f90:1365
real alcq
Definition: swmod1.f90:1184
real frinth
Definition: swmod1.f90:1678
character(len=4) projnr
Definition: swmod1.f90:283
integer jdp2
Definition: swmod1.f90:1601
real(dp) timco
Definition: swmod1.f90:2421
integer, dimension(numgrd) igtype
Definition: swmod1.f90:1355
real ycgmin
Definition: swmod1.f90:1682
integer mxitst
Definition: swmod1.f90:2130
integer jmat6
Definition: swmod1.f90:1604
integer propfl
Definition: swmod1.f90:2302
logical dyndep
Definition: swmod1.f90:1366
real sigmag
Definition: swmod1.f90:2137
real xpc
Definition: swmod1.f90:1680
integer mnums
Definition: swmod1.f90:1493
real(dp), dimension(numgrd) iflend
Definition: swmod1.f90:1388
character *6 ut
Definition: swmod1.f90:866
real, dimension(10) pwtail
Definition: swmod1.f90:1722
real tfinc
Definition: swmod1.f90:2420
integer icomp
Definition: swmod1.f90:1671
integer jmat5
Definition: swmod1.f90:1604
real tintbo
Definition: swmod1.f90:2439
integer iubotr
Definition: swmod1.f90:1182
integer irefr
Definition: swmod1.f90:2127
character *8, dimension(nmovar) ovkeyw
Definition: swmod1.f90:859
integer inan
Definition: swmod1.f90:484
integer nbspec
Definition: swmod1.f90:1357
logical chgval
Definition: swmod1.f90:154
integer iunmin
Definition: swmod1.f90:517
double precision elreal
Definition: swmod1.f90:153
integer jzel
Definition: swmod1.f90:1613
integer, dimension(micmax) kcgrd
Definition: swmod1.f90:1670
integer numgrd
Definition: swmod1.f90:1282
real vernum
Definition: swmod1.f90:392
character(len=72) projt2
Definition: swmod1.f90:284
integer ifacmx
Definition: swmod1.f90:2438
integer itrace
Definition: swmod1.f90:536
integer jpwndb
Definition: swmod1.f90:1607
real coscq
Definition: swmod1.f90:1184
real, dimension(mwind) pwind
Definition: swmod1.f90:2136
integer karnr
Definition: swmod1.f90:152
real lendeg
Definition: swmod1.f90:2303
integer, dimension(nmovar) ovsvty
Definition: swmod1.f90:1183
real, dimension(numgrd) dyg
Definition: swmod1.f90:1360
real xclen
Definition: swmod1.f90:1679
integer, parameter dp
Definition: mod_prec.f90:52
logical brescl
Definition: swmod1.f90:2144
integer jvy1
Definition: swmod1.f90:1610
integer, dimension(numgrd) iflnhd
Definition: swmod1.f90:1386
real spdir2
Definition: swmod1.f90:1679
integer negmes
Definition: swmod1.f90:2271
integer lsetup
Definition: swmod1.f90:2129
real alpc
Definition: swmod1.f90:1676
integer mquad
Definition: swmod1.f90:1493
integer jabin
Definition: swmod1.f90:1597
integer msc
Definition: swmod1.f90:1673
character tabc
Definition: swmod1.f90:138
integer jastd3
Definition: swmod1.f90:1598
integer mtc
Definition: swmod1.f90:1673
integer igen
Definition: swmod1.f90:2126
real xoffs
Definition: swmod1.f90:1363
real dyrp
Definition: swmod1.f90:1677
real xcgmax
Definition: swmod1.f90:1682
integer iwcap
Definition: swmod1.f90:2129
integer leverr
Definition: swmod1.f90:536
real cosvc
Definition: swmod1.f90:1359
character(len=72) projt1
Definition: swmod1.f90:284
real, dimension(moutpa) outpar
Definition: swmod1.f90:1190
integer mwind
Definition: swmod1.f90:1495
real xcp
Definition: swmod1.f90:1680
real, dimension(10) coslat
Definition: swmod1.f90:2305
character *(lineln) kaart
Definition: swmod1.f90:135
real, dimension(numgrd) alpg
Definition: swmod1.f90:1358
integer iinc
Definition: swmod1.f90:2126
integer mwcap
Definition: swmod1.f90:1495
integer iunmax
Definition: swmod1.f90:516
real, dimension(mbot) pbot
Definition: swmod1.f90:2133
integer ncompt
Definition: swmod1.f90:2131
integer, dimension(micmax) ixcgrd
Definition: swmod1.f90:1670
real yqlen
Definition: swmod1.f90:1190
real yqp
Definition: swmod1.f90:1190
integer icmax
Definition: swmod1.f90:2124
integer jdhs
Definition: swmod1.f90:1599
character *8 sname
Definition: swmod1.f90:863
real alpq
Definition: swmod1.f90:1184
integer myq
Definition: swmod1.f90:391
real, dimension(nmovar) ovllim
Definition: swmod1.f90:1187
integer numobs
Definition: swmod1.f90:2131
integer nptsta
Definition: swmod1.f90:2272
integer nmovar
Definition: swmod1.f90:638
integer jleak
Definition: swmod1.f90:1603
integer ifpar
Definition: swmod1.f90:2270
real, dimension(numgrd) iflfac
Definition: swmod1.f90:1390
integer micmax
Definition: swmod1.f90:1496
integer mswmatr
Definition: swmod1.f90:1615
logical varwi1
Definition: swmod1.f90:1366
character *40, dimension(nmovar) ovlnam
Definition: swmod1.f90:860
integer jhsibc
Definition: swmod1.f90:1603
character(len=40) inst
Definition: swmod1.f90:281
integer iptst
Definition: swmod1.f90:2269
character(len=1) dirch1
Definition: swmod1.f90:279
character *20 chtime
Definition: swmod1.f90:857
character(len=1) dirch2
Definition: swmod1.f90:279
real(dp), dimension(numgrd) iflbeg
Definition: swmod1.f90:1388
real alcp
Definition: swmod1.f90:1676
integer ifacmy
Definition: swmod1.f90:2438
integer itermx
Definition: swmod1.f90:2128
real u10
Definition: swmod1.f90:2138
integer jursel
Definition: swmod1.f90:1614
real castd
Definition: swmod1.f90:1720
integer, dimension(numgrd) iflifm
Definition: swmod1.f90:1386
real, dimension(numgrd) dxg
Definition: swmod1.f90:1359
integer idif
Definition: swmod1.f90:2126
integer mbot
Definition: swmod1.f90:1493
integer proj_method
Definition: swmod1.f90:2301
integer lineln
Definition: swmod1.f90:91
real dxq
Definition: swmod1.f90:392
integer mshape
Definition: swmod1.f90:1494
integer maxmes
Definition: swmod1.f90:2271
integer idiffr
Definition: swmod1.f90:2132
integer msc4ma
Definition: swmod1.f90:1673
character *36 fbcr
Definition: swmod1.f90:858
real degrad
Definition: swmod1.f90:1721
integer export
Definition: swmod1.f90:515
character comid
Definition: swmod1.f90:132
integer ifs1d
Definition: swmod1.f90:2270
integer mcgrd
Definition: swmod1.f90:1671
integer jvy2
Definition: swmod1.f90:1610
integer lenfnm
Definition: swmod1.f90:252
logical oned
Definition: swmod1.f90:2144
real ddir
Definition: swmod1.f90:1676
integer ny
Definition: swmod1.f90:1674
integer jfrc2
Definition: swmod1.f90:1602
integer nwamn
Definition: swmod1.f90:1356
integer myc
Definition: swmod1.f90:1674
real xpq
Definition: swmod1.f90:1189
character *40, dimension(numgrd) iflfrm
Definition: swmod1.f90:1391
integer icond
Definition: swmod1.f90:1354
real ycgmax
Definition: swmod1.f90:1682
integer jwy2
Definition: swmod1.f90:1613
integer jpwnda
Definition: swmod1.f90:1607
integer jdp3
Definition: swmod1.f90:1602
integer, dimension(numgrd) leds
Definition: swmod1.f90:1355
real dtw
Definition: swmod1.f90:2420
integer propsn
Definition: swmod1.f90:2301
real, dimension(msetup) psetup
Definition: swmod1.f90:2134
integer jastd2
Definition: swmod1.f90:1598
integer kspher
Definition: swmod1.f90:2299
integer jmatl
Definition: swmod1.f90:1605
logical acupda
Definition: swmod1.f90:2143
logical varwi
Definition: swmod1.f90:1366
integer jp4s
Definition: swmod1.f90:1606