Changeset 3182 for palm/trunk/SOURCE/advec_ws.f90
- Timestamp:
- Jul 27, 2018 1:36:03 PM (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/advec_ws.f90
r3022 r3182 20 20 ! Current revisions: 21 21 ! ------------------ 22 ! 22 ! Rename variables for boundary-condition flags and for offline nesting mode 23 23 ! 24 24 ! Former revisions: … … 460 460 461 461 USE control_parameters, & 462 ONLY: force_bound_l, force_bound_n, force_bound_r, force_bound_s, & 463 inflow_l, inflow_n, inflow_r, inflow_s, momentum_advec, & 464 nest_bound_l, nest_bound_n, nest_bound_r, nest_bound_s, & 465 outflow_l, outflow_n, outflow_r, outflow_s, scalar_advec 462 ONLY: bc_dirichlet_l, bc_dirichlet_n, bc_dirichlet_r, & 463 bc_dirichlet_s, bc_radiation_l, bc_radiation_n, & 464 bc_radiation_r, bc_radiation_s, momentum_advec, scalar_advec 466 465 467 466 USE indices, & … … 501 500 .OR. .NOT. BTEST(wall_flags_0(k,j,i+2),0) & 502 501 .OR. .NOT. BTEST(wall_flags_0(k,j,i-1),0) ) & 503 .OR. ( ( inflow_l .OR. outflow_l .OR. nest_bound_l .OR.& 504 force_bound_l ) & 502 .OR. ( ( bc_dirichlet_l .OR. bc_radiation_l ) & 505 503 .AND. i == nxl ) & 506 .OR. ( ( inflow_r .OR. outflow_r .OR. nest_bound_r .OR.& 507 force_bound_r ) & 504 .OR. ( ( bc_dirichlet_r .OR. bc_radiation_r ) & 508 505 .AND. i == nxr ) ) & 509 506 THEN … … 520 517 ) & 521 518 .OR. & 522 ( ( inflow_r .OR. outflow_r .OR. nest_bound_r .OR.& 523 force_bound_r ) & 519 ( ( bc_dirichlet_r .OR. bc_radiation_r ) & 524 520 .AND. i == nxr-1 ) .OR. & 525 ( ( inflow_l .OR. outflow_l .OR. nest_bound_l .OR.& 526 force_bound_l ) & 521 ( ( bc_dirichlet_l .OR. bc_radiation_l ) & 527 522 .AND. i == nxlu ) ) & ! why not nxl+1 528 523 THEN … … 542 537 .OR. .NOT. BTEST(wall_flags_0(k,j+2,i),0) & 543 538 .OR. .NOT. BTEST(wall_flags_0(k,j-1,i),0)) & 544 .OR. ( ( inflow_s .OR. outflow_s .OR. nest_bound_s .OR.& 545 force_bound_s ) & 539 .OR. ( ( bc_dirichlet_s .OR. bc_radiation_s ) & 546 540 .AND. j == nys ) & 547 .OR. ( ( inflow_n .OR. outflow_n .OR. nest_bound_n .OR.& 548 force_bound_n ) & 541 .OR. ( ( bc_dirichlet_n .OR. bc_radiation_n ) & 549 542 .AND. j == nyn ) ) & 550 543 THEN … … 563 556 ) & 564 557 .OR. & 565 ( ( inflow_s .OR. outflow_s .OR. nest_bound_s .OR.& 566 force_bound_s ) & 558 ( ( bc_dirichlet_s .OR. bc_radiation_s ) & 567 559 .AND. j == nysv ) .OR. & ! why not nys+1 568 ( ( inflow_n .OR. outflow_n .OR. nest_bound_n .OR.& 569 force_bound_n ) & 560 ( ( bc_dirichlet_n .OR. bc_radiation_n ) & 570 561 .AND. j == nyn-1 ) ) & 571 562 THEN … … 655 646 !-- WS1 (9), WS3 (10), WS5 (11) 656 647 IF ( .NOT. BTEST(wall_flags_0(k,j,i+1),1) .OR. & 657 ( ( inflow_l .OR. outflow_l .OR. nest_bound_l .OR.& 658 force_bound_l ) & 648 ( ( bc_dirichlet_l .OR. bc_radiation_l ) & 659 649 .AND. i <= nxlu ) .OR. & 660 ( ( inflow_r .OR. outflow_r .OR. nest_bound_r .OR.& 661 force_bound_r ) & 650 ( ( bc_dirichlet_r .OR. bc_radiation_r ) & 662 651 .AND. i == nxr ) ) & 663 652 THEN … … 667 656 .NOT. BTEST(wall_flags_0(k,j,i-1),1) ) & 668 657 .OR. & 669 ( ( inflow_r .OR. outflow_r .OR. nest_bound_r .OR.& 670 force_bound_r ) & 658 ( ( bc_dirichlet_r .OR. bc_radiation_r ) & 671 659 .AND. i == nxr-1 ) .OR. & 672 ( ( inflow_l .OR. outflow_l .OR. nest_bound_l .OR.& 673 force_bound_l ) & 660 ( ( bc_dirichlet_l .OR. bc_radiation_l ) & 674 661 .AND. i == nxlu+1) ) & 675 662 THEN … … 691 678 !-- WS1 (12), WS3 (13), WS5 (14) 692 679 IF ( .NOT. BTEST(wall_flags_0(k,j+1,i),1) .OR. & 693 ( ( inflow_s .OR. outflow_s .OR. nest_bound_s .OR.& 694 force_bound_s ) & 680 ( ( bc_dirichlet_s .OR. bc_radiation_s ) & 695 681 .AND. j == nys ) .OR. & 696 ( ( inflow_n .OR. outflow_n .OR. nest_bound_n .OR.& 697 force_bound_n ) & 682 ( ( bc_dirichlet_n .OR. bc_radiation_n ) & 698 683 .AND. j == nyn ) ) & 699 684 THEN … … 703 688 .NOT. BTEST(wall_flags_0(k,j-1,i),1) ) & 704 689 .OR. & 705 ( ( inflow_s .OR. outflow_s .OR. nest_bound_s .OR.& 706 force_bound_s ) & 690 ( ( bc_dirichlet_s .OR. bc_radiation_s ) & 707 691 .AND. j == nysv ) .OR. & 708 ( ( inflow_n .OR. outflow_n .OR. nest_bound_n .OR.& 709 force_bound_n ) & 692 ( ( bc_dirichlet_n .OR. bc_radiation_n ) & 710 693 .AND. j == nyn-1 ) ) & 711 694 THEN … … 789 772 !-- WS1 (18), WS3 (19), WS5 (20) 790 773 IF ( .NOT. BTEST(wall_flags_0(k,j,i+1),2) .OR. & 791 ( ( inflow_l .OR. outflow_l .OR. nest_bound_l .OR.& 792 force_bound_l ) & 774 ( ( bc_dirichlet_l .OR. bc_radiation_l ) & 793 775 .AND. i == nxl ) .OR. & 794 ( ( inflow_r .OR. outflow_r .OR. nest_bound_r .OR.& 795 force_bound_r ) & 776 ( ( bc_dirichlet_r .OR. bc_radiation_r ) & 796 777 .AND. i == nxr ) ) & 797 778 THEN … … 803 784 .NOT. BTEST(wall_flags_0(k,j,i-1),2) & 804 785 .OR. & 805 ( ( inflow_r .OR. outflow_r .OR. nest_bound_r .OR.& 806 force_bound_r ) & 786 ( ( bc_dirichlet_r .OR. bc_radiation_r ) & 807 787 .AND. i == nxr-1 ) .OR. & 808 ( ( inflow_l .OR. outflow_l .OR. nest_bound_l .OR.& 809 force_bound_l ) & 788 ( ( bc_dirichlet_l .OR. bc_radiation_l ) & 810 789 .AND. i == nxlu ) ) & 811 790 THEN … … 827 806 !-- WS1 (21), WS3 (22), WS5 (23) 828 807 IF ( .NOT. BTEST(wall_flags_0(k,j+1,i),2) .OR. & 829 ( ( inflow_s .OR. outflow_s .OR. nest_bound_s .OR.& 830 force_bound_s ) & 808 ( ( bc_dirichlet_s .OR. bc_radiation_s ) & 831 809 .AND. j <= nysv ) .OR. & 832 ( ( inflow_n .OR. outflow_n .OR. nest_bound_n .OR.& 833 force_bound_n ) & 810 ( ( bc_dirichlet_n .OR. bc_radiation_n ) & 834 811 .AND. j == nyn ) ) & 835 812 THEN … … 839 816 .NOT. BTEST(wall_flags_0(k,j-1,i),2) ) & 840 817 .OR. & 841 ( ( inflow_s .OR. outflow_s .OR. nest_bound_s .OR.& 842 force_bound_s ) & 818 ( ( bc_dirichlet_s .OR. bc_radiation_s ) & 843 819 .AND. j == nysv+1) .OR. & 844 ( ( inflow_n .OR. outflow_n .OR. nest_bound_n .OR.& 845 force_bound_n ) & 820 ( ( bc_dirichlet_n .OR. bc_radiation_n ) & 846 821 .AND. j == nyn-1 ) ) & 847 822 THEN … … 924 899 !-- WS1 (27), WS3 (28), WS5 (29) 925 900 IF ( .NOT. BTEST(wall_flags_0(k,j,i+1),3) .OR. & 926 ( ( inflow_l .OR. outflow_l .OR. nest_bound_l .OR.& 927 force_bound_l ) & 901 ( ( bc_dirichlet_l .OR. bc_radiation_l ) & 928 902 .AND. i == nxl ) .OR. & 929 ( ( inflow_r .OR. outflow_r .OR. nest_bound_r .OR.& 930 force_bound_r ) & 903 ( ( bc_dirichlet_r .OR. bc_radiation_r ) & 931 904 .AND. i == nxr ) ) & 932 905 THEN … … 936 909 .NOT. BTEST(wall_flags_0(k,j,i-1),3) ) & 937 910 .OR. & 938 ( ( inflow_r .OR. outflow_r .OR. nest_bound_r .OR.& 939 force_bound_r ) & 911 ( ( bc_dirichlet_r .OR. bc_radiation_r ) & 940 912 .AND. i == nxr-1 ) .OR. & 941 ( ( inflow_l .OR. outflow_l .OR. nest_bound_l .OR.& 942 force_bound_l ) & 913 ( ( bc_dirichlet_l .OR. bc_radiation_l ) & 943 914 .AND. i == nxlu ) ) & 944 915 THEN … … 960 931 !-- WS1 (30), WS3 (31), WS5 (32) 961 932 IF ( .NOT. BTEST(wall_flags_0(k,j+1,i),3) .OR. & 962 ( ( inflow_s .OR. outflow_s .OR. nest_bound_s .OR.& 963 force_bound_s ) & 933 ( ( bc_dirichlet_s .OR. bc_radiation_s ) & 964 934 .AND. j == nys ) .OR. & 965 ( ( inflow_n .OR. outflow_n .OR. nest_bound_n .OR.& 966 force_bound_n ) & 935 ( ( bc_dirichlet_n .OR. bc_radiation_n ) & 967 936 .AND. j == nyn ) ) & 968 937 THEN … … 972 941 .NOT. BTEST(wall_flags_0(k,j-1,i),3) ) & 973 942 .OR. & 974 ( ( inflow_s .OR. outflow_s .OR. nest_bound_s .OR.& 975 force_bound_s ) & 943 ( ( bc_dirichlet_s .OR. bc_radiation_s ) & 976 944 .AND. j == nysv ) .OR. & 977 ( ( inflow_n .OR. outflow_n .OR. nest_bound_n .OR.& 978 force_bound_n ) & 945 ( ( bc_dirichlet_n .OR. bc_radiation_n ) & 979 946 .AND. j == nyn-1 ) ) & 980 947 THEN … … 1067 1034 !-- Set boundary flags at inflow and outflow boundary in case of 1068 1035 !-- non-cyclic boundary conditions. 1069 IF ( inflow_l .OR. outflow_l .OR. & 1070 nest_bound_l .OR. force_bound_l ) THEN 1036 IF ( bc_dirichlet_l .OR. bc_radiation_l ) THEN 1071 1037 advc_flags_1(:,:,nxl-1) = advc_flags_1(:,:,nxl) 1072 1038 advc_flags_2(:,:,nxl-1) = advc_flags_2(:,:,nxl) 1073 1039 ENDIF 1074 1040 1075 IF ( inflow_r .OR. outflow_r .OR. & 1076 nest_bound_r .OR. force_bound_r ) THEN 1041 IF ( bc_dirichlet_r .OR. bc_radiation_r ) THEN 1077 1042 advc_flags_1(:,:,nxr+1) = advc_flags_1(:,:,nxr) 1078 1043 advc_flags_2(:,:,nxr+1) = advc_flags_2(:,:,nxr) 1079 1044 ENDIF 1080 1045 1081 IF ( inflow_n .OR. outflow_n .OR. & 1082 nest_bound_n .OR. force_bound_n ) THEN 1046 IF ( bc_dirichlet_n .OR. bc_radiation_n ) THEN 1083 1047 advc_flags_1(:,nyn+1,:) = advc_flags_1(:,nyn,:) 1084 1048 advc_flags_2(:,nyn+1,:) = advc_flags_2(:,nyn,:) 1085 1049 ENDIF 1086 1050 1087 IF ( inflow_s .OR. outflow_s .OR. & 1088 nest_bound_s .OR. force_bound_s ) THEN 1051 IF ( bc_dirichlet_s .OR. bc_radiation_s ) THEN 1089 1052 advc_flags_1(:,nys-1,:) = advc_flags_1(:,nys,:) 1090 1053 advc_flags_2(:,nys-1,:) = advc_flags_2(:,nys,:)
Note: See TracChangeset
for help on using the changeset viewer.