Changeset 617 for trunk/LMDZ.COMMON/libf/dyn3d
- Timestamp:
- Apr 12, 2012, 5:35:34 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.COMMON/libf/dyn3d/conf_gcm.F
r495 r617 34 34 #include "serre.h" 35 35 #include "comdissnew.h" 36 #include "iniprint.h" 36 37 #include "temps.h" 37 38 #include "comconst.h" … … 39 40 ! FH 2008/05/09 On elimine toutes les clefs physiques dans la dynamique 40 41 ! #include "clesphys.h" 41 #include "iniprint.h"42 42 c 43 43 c … … 410 410 CALL getin('ip_ebil_dyn',ip_ebil_dyn) 411 411 412 !Config Key = offline 413 !Config Desc = Nouvelle eau liquide 414 !Config Def = n 415 !Config Help = Permet de mettre en route la 416 !Config nouvelle parametrisation de l'eau liquide ! 417 offline = .FALSE. 418 CALL getin('offline',offline) 419 420 !Config Key = type_trac 421 !Config Desc = Choix de couplage avec model de chimie INCA ou REPROBUS 422 !Config Def = lmdz 423 !Config Help = 424 !Config 'lmdz' = pas de couplage, pur LMDZ 425 !Config 'inca' = model de chime INCA 426 !Config 'repr' = model de chime REPROBUS 427 type_trac = 'lmdz' 428 CALL getin('type_trac',type_trac) 429 430 !Config Key = config_inca 431 !Config Desc = Choix de configuration de INCA 432 !Config Def = none 433 !Config Help = Choix de configuration de INCA : 434 !Config 'none' = sans INCA 435 !Config 'chem' = INCA avec calcul de chemie 436 !Config 'aero' = INCA avec calcul des aerosols 437 config_inca = 'none' 438 CALL getin('config_inca',config_inca) 439 440 !Config Key = ok_dynzon 441 !Config Desc = calcul et sortie des transports 442 !Config Def = n 443 !Config Help = Permet de mettre en route le calcul des transports 444 !Config 445 ok_dynzon = .FALSE. 446 CALL getin('ok_dynzon',ok_dynzon) 447 448 !Config Key = ok_dyn_ins 449 !Config Desc = sorties instantanees dans la dynamique 450 !Config Def = n 451 !Config Help = 452 !Config 453 ok_dyn_ins = .FALSE. 454 CALL getin('ok_dyn_ins',ok_dyn_ins) 455 456 !Config Key = ok_dyn_ave 457 !Config Desc = sorties moyennes dans la dynamique 458 !Config Def = n 459 !Config Help = 460 !Config 461 ok_dyn_ave = .FALSE. 462 CALL getin('ok_dyn_ave',ok_dyn_ave) 463 464 !Config Key = use_filtre_fft 465 !Config Desc = flag d'activation des FFT pour le filtre 466 !Config Def = false 467 !Config Help = permet d'activer l'utilisation des FFT pour effectuer 468 !Config le filtrage aux poles. 469 ! Le filtre fft n'est pas implemente dans dyn3d 470 use_filtre_fft=.FALSE. 471 CALL getin('use_filtre_fft',use_filtre_fft) 472 473 IF (use_filtre_fft) THEN 474 write(lunout,*)'STOP !!!' 475 write(lunout,*)'use_filtre_fft n est pas implemente dans dyn3d' 476 STOP 477 ENDIF 478 479 !Config key = ok_strato 480 !Config Desc = activation de la version strato 481 !Config Def = .FALSE. 482 !Config Help = active la version stratosphérique de LMDZ de F. Lott 483 484 ok_strato=.TRUE. 485 CALL getin('ok_strato',ok_strato) 486 487 !Config Key = ok_gradsfile 488 !Config Desc = activation des sorties grads du guidage 489 !Config Def = n 490 !Config Help = active les sorties grads du guidage 491 492 ok_gradsfile = .FALSE. 493 CALL getin('ok_gradsfile',ok_gradsfile) 494 495 !Config Key = ok_limit 496 !Config Desc = creation des fichiers limit dans create_etat0_limit 497 !Config Def = y 498 !Config Help = production du fichier limit.nc requise 499 500 ok_limit = .TRUE. 501 CALL getin('ok_limit',ok_limit) 502 503 !Config Key = ok_etat0 504 !Config Desc = creation des fichiers etat0 dans create_etat0_limit 505 !Config Def = y 506 !Config Help = production des fichiers start.nc, startphy.nc requise 507 508 ok_etat0 = .TRUE. 509 CALL getin('ok_etat0',ok_etat0) 510 511 !Config Key = grilles_gcm_netcdf 512 !Config Desc = creation de fichier grilles_gcm.nc dans create_etat0_limit 513 !Config Def = n 514 grilles_gcm_netcdf = .FALSE. 515 CALL getin('grilles_gcm_netcdf',grilles_gcm_netcdf) 516 517 c---------------------------------------- 412 518 ccc .... P. Le Van , ajout le 7/03/95 .pour le zoom ... 413 519 c ......... ( modif le 17/04/96 ) ......... 414 520 c 415 IF( etatinit ) GO TO 100 521 C ZOOM PARAMETERS ... the ones read in start.nc prevail anyway ! (SL, 2012) 522 c 523 c---------------------------------------- 524 IF( etatinit ) then 525 526 !Config Key = clon 527 !Config Desc = centre du zoom, longitude 528 !Config Def = 0 529 !Config Help = longitude en degres du centre 530 !Config du zoom 531 clon = 0. 532 CALL getin('clon',clon) 533 534 !Config Key = clat 535 !Config Desc = centre du zoom, latitude 536 !Config Def = 0 537 !Config Help = latitude en degres du centre du zoom 538 !Config 539 clat = 0. 540 CALL getin('clat',clat) 541 542 !Config Key = grossismx 543 !Config Desc = zoom en longitude 544 !Config Def = 1.0 545 !Config Help = facteur de grossissement du zoom, 546 !Config selon la longitude 547 grossismx = 1.0 548 CALL getin('grossismx',grossismx) 549 550 !Config Key = grossismy 551 !Config Desc = zoom en latitude 552 !Config Def = 1.0 553 !Config Help = facteur de grossissement du zoom, 554 !Config selon la latitude 555 grossismy = 1.0 556 CALL getin('grossismy',grossismy) 557 558 IF( grossismx.LT.1. ) THEN 559 write(lunout,*) 560 & 'conf_gcm: *** ATTENTION !! grossismx < 1 . *** ' 561 STOP 562 ELSE 563 alphax = 1. - 1./ grossismx 564 ENDIF 565 566 567 IF( grossismy.LT.1. ) THEN 568 write(lunout,*) 569 & 'conf_gcm: *** ATTENTION !! grossismy < 1 . *** ' 570 STOP 571 ELSE 572 alphay = 1. - 1./ grossismy 573 ENDIF 574 575 write(lunout,*)'conf_gcm: alphax alphay ',alphax,alphay 576 c 577 c alphax et alphay sont les anciennes formulat. des grossissements 578 c 579 c 580 581 !Config Key = fxyhypb 582 !Config Desc = Fonction hyperbolique 583 !Config Def = y 584 !Config Help = Fonction f(y) hyperbolique si = .true. 585 !Config sinon sinusoidale 586 fxyhypb = .TRUE. 587 CALL getin('fxyhypb',fxyhypb) 588 589 !Config Key = dzoomx 590 !Config Desc = extension en longitude 591 !Config Def = 0 592 !Config Help = extension en longitude de la zone du zoom 593 !Config ( fraction de la zone totale) 594 dzoomx = 0.0 595 CALL getin('dzoomx',dzoomx) 596 597 !Config Key = dzoomy 598 !Config Desc = extension en latitude 599 !Config Def = 0 600 !Config Help = extension en latitude de la zone du zoom 601 !Config ( fraction de la zone totale) 602 dzoomy = 0.0 603 CALL getin('dzoomy',dzoomy) 604 605 !Config Key = taux 606 !Config Desc = raideur du zoom en X 607 !Config Def = 3 608 !Config Help = raideur du zoom en X 609 taux = 3.0 610 CALL getin('taux',taux) 611 612 !Config Key = tauy 613 !Config Desc = raideur du zoom en Y 614 !Config Def = 3 615 !Config Help = raideur du zoom en Y 616 tauy = 3.0 617 CALL getin('tauy',tauy) 618 619 !Config Key = ysinus 620 !Config IF = !fxyhypb 621 !Config Desc = Fonction en Sinus 622 !Config Def = y 623 !Config Help = Fonction f(y) avec y = Sin(latit.) si = .true. 624 !Config sinon y = latit. 625 ysinus = .TRUE. 626 CALL getin('ysinus',ysinus) 627 c 628 c---------------------------------------- 629 else ! etatinit=false 630 c---------------------------------------- 416 631 417 632 !Config Key = clon … … 605 820 ENDIF 606 821 ENDIF ! of IF( .NOT.fxyhypb ) 607 c 608 !Config Key = offline 609 !Config Desc = Nouvelle eau liquide 610 !Config Def = n 611 !Config Help = Permet de mettre en route la 612 !Config nouvelle parametrisation de l'eau liquide ! 613 offline = .FALSE. 614 CALL getin('offline',offline) 615 616 !Config Key = type_trac 617 !Config Desc = Choix de couplage avec model de chimie INCA ou REPROBUS 618 !Config Def = lmdz 619 !Config Help = 620 !Config 'lmdz' = pas de couplage, pur LMDZ 621 !Config 'inca' = model de chime INCA 622 !Config 'repr' = model de chime REPROBUS 623 type_trac = 'lmdz' 624 CALL getin('type_trac',type_trac) 625 626 !Config Key = config_inca 627 !Config Desc = Choix de configuration de INCA 628 !Config Def = none 629 !Config Help = Choix de configuration de INCA : 630 !Config 'none' = sans INCA 631 !Config 'chem' = INCA avec calcul de chemie 632 !Config 'aero' = INCA avec calcul des aerosols 633 config_inca = 'none' 634 CALL getin('config_inca',config_inca) 635 636 !Config Key = ok_dynzon 637 !Config Desc = calcul et sortie des transports 638 !Config Def = n 639 !Config Help = Permet de mettre en route le calcul des transports 640 !Config 641 ok_dynzon = .FALSE. 642 CALL getin('ok_dynzon',ok_dynzon) 643 644 !Config Key = ok_dyn_ins 645 !Config Desc = sorties instantanees dans la dynamique 646 !Config Def = n 647 !Config Help = 648 !Config 649 ok_dyn_ins = .FALSE. 650 CALL getin('ok_dyn_ins',ok_dyn_ins) 651 652 !Config Key = ok_dyn_ave 653 !Config Desc = sorties moyennes dans la dynamique 654 !Config Def = n 655 !Config Help = 656 !Config 657 ok_dyn_ave = .FALSE. 658 CALL getin('ok_dyn_ave',ok_dyn_ave) 822 823 endif ! etatinit 824 c---------------------------------------- 659 825 660 826 661 827 write(lunout,*)' #########################################' 662 write(lunout,*)' Configuration des parametres du gcm: ' 663 write(lunout,*)' planet_type = ', planet_type 664 write(lunout,*)' calend = ', calend 665 write(lunout,*)' dayref = ', dayref 666 write(lunout,*)' anneeref = ', anneeref 667 write(lunout,*)' nday = ', nday 668 if (less1day) then 669 write(lunout,*)' Run only for a fraction of day ! ' 670 write(lunout,*)' fractday = ', fractday 671 endif 672 write(lunout,*)' day_step = ', day_step 673 write(lunout,*)' iperiod = ', iperiod 674 write(lunout,*)' iconser = ', iconser 675 write(lunout,*)' iecri = ', iecri 676 write(lunout,*)' periodav = ', periodav 677 write(lunout,*)' output_grads_dyn = ', output_grads_dyn 678 write(lunout,*)' dissip_period = ', dissip_period 679 write(lunout,*)' lstardis = ', lstardis 680 write(lunout,*)' nitergdiv = ', nitergdiv 681 write(lunout,*)' nitergrot = ', nitergrot 682 write(lunout,*)' niterh = ', niterh 683 write(lunout,*)' tetagdiv = ', tetagdiv 684 write(lunout,*)' tetagrot = ', tetagrot 685 write(lunout,*)' tetatemp = ', tetatemp 686 write(lunout,*)' coefdis = ', coefdis 687 write(lunout,*)' purmats = ', purmats 688 write(lunout,*)' read_start = ', read_start 689 write(lunout,*)' iflag_phys = ', iflag_phys 690 write(lunout,*)' iphysiq = ', iphysiq 691 write(lunout,*)' iflag_trac = ', iflag_trac 692 write(lunout,*)' clonn = ', clonn 693 write(lunout,*)' clatt = ', clatt 694 write(lunout,*)' grossismx = ', grossismx 695 write(lunout,*)' grossismy = ', grossismy 696 write(lunout,*)' fxyhypbb = ', fxyhypbb 697 write(lunout,*)' dzoomxx = ', dzoomxx 698 write(lunout,*)' dzoomy = ', dzoomyy 699 write(lunout,*)' tauxx = ', tauxx 700 write(lunout,*)' tauyy = ', tauyy 701 write(lunout,*)' offline = ', offline 702 write(lunout,*)' type_trac = ', type_trac 703 write(lunout,*)' config_inca = ', config_inca 704 write(lunout,*)' ok_dynzon = ', ok_dynzon 705 write(lunout,*)' ok_dyn_ins = ', ok_dyn_ins 706 write(lunout,*)' ok_dyn_ave = ', ok_dyn_ave 707 708 RETURN 709 c ............................................... 710 c 711 100 CONTINUE 712 !Config Key = clon 713 !Config Desc = centre du zoom, longitude 714 !Config Def = 0 715 !Config Help = longitude en degres du centre 716 !Config du zoom 717 clon = 0. 718 CALL getin('clon',clon) 719 720 !Config Key = clat 721 !Config Desc = centre du zoom, latitude 722 !Config Def = 0 723 !Config Help = latitude en degres du centre du zoom 724 !Config 725 clat = 0. 726 CALL getin('clat',clat) 727 728 !Config Key = grossismx 729 !Config Desc = zoom en longitude 730 !Config Def = 1.0 731 !Config Help = facteur de grossissement du zoom, 732 !Config selon la longitude 733 grossismx = 1.0 734 CALL getin('grossismx',grossismx) 735 736 !Config Key = grossismy 737 !Config Desc = zoom en latitude 738 !Config Def = 1.0 739 !Config Help = facteur de grossissement du zoom, 740 !Config selon la latitude 741 grossismy = 1.0 742 CALL getin('grossismy',grossismy) 743 744 IF( grossismx.LT.1. ) THEN 745 write(lunout,*) 746 & 'conf_gcm: *** ATTENTION !! grossismx < 1 . *** ' 747 STOP 748 ELSE 749 alphax = 1. - 1./ grossismx 750 ENDIF 751 752 753 IF( grossismy.LT.1. ) THEN 754 write(lunout,*) 755 & 'conf_gcm: *** ATTENTION !! grossismy < 1 . *** ' 756 STOP 757 ELSE 758 alphay = 1. - 1./ grossismy 759 ENDIF 760 761 write(lunout,*)'conf_gcm: alphax alphay ',alphax,alphay 762 c 763 c alphax et alphay sont les anciennes formulat. des grossissements 764 c 765 c 766 767 !Config Key = fxyhypb 768 !Config Desc = Fonction hyperbolique 769 !Config Def = y 770 !Config Help = Fonction f(y) hyperbolique si = .true. 771 !Config sinon sinusoidale 772 fxyhypb = .TRUE. 773 CALL getin('fxyhypb',fxyhypb) 774 775 !Config Key = dzoomx 776 !Config Desc = extension en longitude 777 !Config Def = 0 778 !Config Help = extension en longitude de la zone du zoom 779 !Config ( fraction de la zone totale) 780 dzoomx = 0.0 781 CALL getin('dzoomx',dzoomx) 782 783 !Config Key = dzoomy 784 !Config Desc = extension en latitude 785 !Config Def = 0 786 !Config Help = extension en latitude de la zone du zoom 787 !Config ( fraction de la zone totale) 788 dzoomy = 0.0 789 CALL getin('dzoomy',dzoomy) 790 791 !Config Key = taux 792 !Config Desc = raideur du zoom en X 793 !Config Def = 3 794 !Config Help = raideur du zoom en X 795 taux = 3.0 796 CALL getin('taux',taux) 797 798 !Config Key = tauy 799 !Config Desc = raideur du zoom en Y 800 !Config Def = 3 801 !Config Help = raideur du zoom en Y 802 tauy = 3.0 803 CALL getin('tauy',tauy) 804 805 !Config Key = ysinus 806 !Config IF = !fxyhypb 807 !Config Desc = Fonction en Sinus 808 !Config Def = y 809 !Config Help = Fonction f(y) avec y = Sin(latit.) si = .true. 810 !Config sinon y = latit. 811 ysinus = .TRUE. 812 CALL getin('ysinus',ysinus) 813 c 814 !Config Key = offline 815 !Config Desc = Nouvelle eau liquide 816 !Config Def = n 817 !Config Help = Permet de mettre en route la 818 !Config nouvelle parametrisation de l'eau liquide ! 819 offline = .FALSE. 820 CALL getin('offline',offline) 821 822 !Config Key = type_trac 823 !Config Desc = Choix de couplage avec model de chimie INCA ou REPROBUS 824 !Config Def = lmdz 825 !Config Help = 826 !Config 'lmdz' = pas de couplage, pur LMDZ 827 !Config 'inca' = model de chime INCA 828 !Config 'repr' = model de chime REPROBUS 829 type_trac = 'lmdz' 830 CALL getin('type_trac',type_trac) 831 832 !Config Key = config_inca 833 !Config Desc = Choix de configuration de INCA 834 !Config Def = none 835 !Config Help = Choix de configuration de INCA : 836 !Config 'none' = sans INCA 837 !Config 'chem' = INCA avec calcul de chemie 838 !Config 'aero' = INCA avec calcul des aerosols 839 config_inca = 'none' 840 CALL getin('config_inca',config_inca) 841 842 !Config Key = ok_dynzon 843 !Config Desc = sortie des transports zonaux dans la dynamique 844 !Config Def = n 845 !Config Help = 846 !Config 847 ok_dynzon = .FALSE. 848 CALL getin('ok_dynzon',ok_dynzon) 849 850 !Config Key = ok_dyn_ins 851 !Config Desc = sorties instantanees dans la dynamique 852 !Config Def = n 853 !Config Help = 854 !Config 855 ok_dyn_ins = .FALSE. 856 CALL getin('ok_dyn_ins',ok_dyn_ins) 857 858 !Config Key = ok_dyn_ave 859 !Config Desc = sorties moyennes dans la dynamique 860 !Config Def = n 861 !Config Help = 862 !Config 863 ok_dyn_ave = .FALSE. 864 CALL getin('ok_dyn_ave',ok_dyn_ave) 865 866 !Config Key = use_filtre_fft 867 !Config Desc = flag d'activation des FFT pour le filtre 868 !Config Def = false 869 !Config Help = permet d'activer l'utilisation des FFT pour effectuer 870 !Config le filtrage aux poles. 871 ! Le filtre fft n'est pas implemente dans dyn3d 872 use_filtre_fft=.FALSE. 873 CALL getin('use_filtre_fft',use_filtre_fft) 874 875 IF (use_filtre_fft) THEN 876 write(lunout,*)'STOP !!!' 877 write(lunout,*)'use_filtre_fft n est pas implemente dans dyn3d' 878 STOP 879 ENDIF 880 881 !Config key = ok_strato 882 !Config Desc = activation de la version strato 883 !Config Def = .FALSE. 884 !Config Help = active la version stratosphérique de LMDZ de F. Lott 885 886 ok_strato=.TRUE. 887 CALL getin('ok_strato',ok_strato) 888 889 !Config Key = ok_gradsfile 890 !Config Desc = activation des sorties grads du guidage 891 !Config Def = n 892 !Config Help = active les sorties grads du guidage 893 894 ok_gradsfile = .FALSE. 895 CALL getin('ok_gradsfile',ok_gradsfile) 896 897 !Config Key = ok_limit 898 !Config Desc = creation des fichiers limit dans create_etat0_limit 899 !Config Def = y 900 !Config Help = production du fichier limit.nc requise 901 902 ok_limit = .TRUE. 903 CALL getin('ok_limit',ok_limit) 904 905 !Config Key = ok_etat0 906 !Config Desc = creation des fichiers etat0 dans create_etat0_limit 907 !Config Def = y 908 !Config Help = production des fichiers start.nc, startphy.nc requise 909 910 ok_etat0 = .TRUE. 911 CALL getin('ok_etat0',ok_etat0) 912 913 !Config Key = grilles_gcm_netcdf 914 !Config Desc = creation de fichier grilles_gcm.nc dans create_etat0_limit 915 !Config Def = n 916 grilles_gcm_netcdf = .FALSE. 917 CALL getin('grilles_gcm_netcdf',grilles_gcm_netcdf) 918 919 write(lunout,*)' #########################################' 920 write(lunout,*)' Configuration des parametres de cel0' 921 & //'_limit: ' 828 write(lunout,*)' Configuration des parametres lus via run.def ' 922 829 write(lunout,*)' planet_type = ', planet_type 923 830 write(lunout,*)' calend = ', calend
Note: See TracChangeset
for help on using the changeset viewer.