Merge remote-tracking branch 'origin/release-v4.6.1'
[WRF.git] / var / convertor / kma_wave2grid / RADB2M.inc
blob52af1703407a3b0d14d84588b3551fee93ca0245
1 C***********************************************************************
2       SUBROUTINE RADB2M (INC,LOT,IDO,L1,CC,CH,WA1)
3       DIMENSION       CC(INC,IDO,2,L1)  ,CH(INC,IDO,L1,2)  ,WA1(*)
5       DO 101 K=1,L1
6         DO 101 L=1,LOT
7           CH(L,1,K,1) = CC(L,1,1,K)+CC(L,IDO,2,K)
8           CH(L,1,K,2) = CC(L,1,1,K)-CC(L,IDO,2,K)
9   101   CONTINUE
10       IF (MOD(IDO,2) .EQ. 0) THEN
11         DO 102 K=1,L1
12           DO 102 L=1,LOT
13             CH(L,IDO,K,1) =   CC(L,IDO,1,K)+CC(L,IDO,1,K)
14             CH(L,IDO,K,2) = -(CC(L,  1,2,K)+CC(L,  1,2,K))
15   102     CONTINUE
16       END IF
17       IF (IDO .GT. 2) THEN
18           IDP2 = IDO+2
19         DO 104 K=1,L1
20 *VOPTION NOFVAL
21         DO 104 I=3,IDO,2
22             IC = IDP2-I
23 *VOPTION NOFVAL
24           DO 103 L=1,LOT
25             CH(L,I-1,K,1) = CC(L,I-1,1,K)+CC(L,IC-1,2,K)
26             CH(L,I  ,K,1) = CC(L,I  ,1,K)-CC(L,IC  ,2,K)
27             TR2           = CC(L,I-1,1,K)-CC(L,IC-1,2,K)
28             TI2           = CC(L,I  ,1,K)+CC(L,IC  ,2,K)
29             CH(L,I-1,K,2) = WA1(I-2)*TR2 -WA1(I-1)*TI2
30             CH(L,I  ,K,2) = WA1(I-2)*TI2 +WA1(I-1)*TR2
31   103     CONTINUE
32   104   CONTINUE
33       END IF
34       RETURN
35       END SUBROUTINE RADB2M