source: trunk/WRF.COMMON/WRFV3/external/fftpack/fftpack5/r1f3kb.F

Last change on this file was 2759, checked in by aslmd, 2 years ago

adding unmodified code from WRFV3.0.1.1, expurged from useless data +1M size

File size: 3.7 KB
Line 
1!CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
2!                                                                       
3!   FFTPACK 5.0                                                         
4!   Copyright (C) 1995-2004, Scientific Computing Division,             
5!   University Corporation for Atmospheric Research                     
6!   Licensed under the GNU General Public License (GPL)                 
7!                                                                       
8!   Authors:  Paul N. Swarztrauber and Richard A. Valent               
9!                                                                       
10!   $Id: r1f3kb.f,v 1.2 2004/06/15 21:29:20 rodney Exp $               
11!                                                                       
12!CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
13                                                                       
14      SUBROUTINE R1F3KB (IDO,L1,CC,IN1,CH,IN2,WA1,WA2)
15      REAL       CC(IN1,IDO,3,L1)    ,CH(IN2,IDO,L1,3),                 &
16     &           WA1(IDO)   ,WA2(IDO)                                   
17!                                                                       
18      ARG=2.*4.*ATAN(1.0)/3.
19      TAUR=COS(ARG)
20      TAUI=SIN(ARG)
21      DO 101 K=1,L1
22         CH(1,1,K,1) = CC(1,1,1,K)+2.*CC(1,IDO,2,K)
23         CH(1,1,K,2) = CC(1,1,1,K)+(2.*TAUR)*CC(1,IDO,2,K)              &
24     &   -(2.*TAUI)*CC(1,1,3,K)                                         
25         CH(1,1,K,3) = CC(1,1,1,K)+(2.*TAUR)*CC(1,IDO,2,K)              &
26     &   +2.*TAUI*CC(1,1,3,K)                                           
27  101 END DO
28      IF (IDO .EQ. 1) RETURN
29      IDP2 = IDO+2
30      DO 103 K=1,L1
31         DO 102 I=3,IDO,2
32            IC = IDP2-I
33        CH(1,I-1,K,1) = CC(1,I-1,1,K)+(CC(1,I-1,3,K)+CC(1,IC-1,2,K))
34        CH(1,I,K,1) = CC(1,I,1,K)+(CC(1,I,3,K)-CC(1,IC,2,K))
35        CH(1,I-1,K,2) = WA1(I-2)*                                       &
36     & ((CC(1,I-1,1,K)+TAUR*(CC(1,I-1,3,K)+CC(1,IC-1,2,K)))-            &
37     & (TAUI*(CC(1,I,3,K)+CC(1,IC,2,K))))                               &
38     &                   -WA1(I-1)*                                     &
39     & ((CC(1,I,1,K)+TAUR*(CC(1,I,3,K)-CC(1,IC,2,K)))+                  &
40     & (TAUI*(CC(1,I-1,3,K)-CC(1,IC-1,2,K))))                           
41            CH(1,I,K,2) = WA1(I-2)*                                     &
42     & ((CC(1,I,1,K)+TAUR*(CC(1,I,3,K)-CC(1,IC,2,K)))+                  &
43     & (TAUI*(CC(1,I-1,3,K)-CC(1,IC-1,2,K))))                           &
44     &                  +WA1(I-1)*                                      &
45     & ((CC(1,I-1,1,K)+TAUR*(CC(1,I-1,3,K)+CC(1,IC-1,2,K)))-            &
46     & (TAUI*(CC(1,I,3,K)+CC(1,IC,2,K))))                               
47              CH(1,I-1,K,3) = WA2(I-2)*                                 &
48     & ((CC(1,I-1,1,K)+TAUR*(CC(1,I-1,3,K)+CC(1,IC-1,2,K)))+            &
49     & (TAUI*(CC(1,I,3,K)+CC(1,IC,2,K))))                               &
50     &   -WA2(I-1)*                                                     &
51     & ((CC(1,I,1,K)+TAUR*(CC(1,I,3,K)-CC(1,IC,2,K)))-                  &
52     & (TAUI*(CC(1,I-1,3,K)-CC(1,IC-1,2,K))))                           
53            CH(1,I,K,3) = WA2(I-2)*                                     &
54     & ((CC(1,I,1,K)+TAUR*(CC(1,I,3,K)-CC(1,IC,2,K)))-                  &
55     & (TAUI*(CC(1,I-1,3,K)-CC(1,IC-1,2,K))))                           &
56     &                 +WA2(I-1)*                                       &
57     & ((CC(1,I-1,1,K)+TAUR*(CC(1,I-1,3,K)+CC(1,IC-1,2,K)))+            &
58     & (TAUI*(CC(1,I,3,K)+CC(1,IC,2,K))))                               
59  102    CONTINUE
60  103 END DO
61      RETURN
62      END                                           
Note: See TracBrowser for help on using the repository browser.