/[MITgcm]/MITgcm/pkg/atm_ocn_coupler/mds_byteswap.F
ViewVC logotype

Contents of /MITgcm/pkg/atm_ocn_coupler/mds_byteswap.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.3 - (show annotations) (download)
Thu Jun 15 23:29:18 2006 UTC (17 years, 11 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint58l_post, checkpoint58u_post, checkpoint58w_post, checkpoint60, checkpoint61, checkpoint62, checkpoint58r_post, checkpoint58n_post, checkpoint58x_post, checkpoint58t_post, checkpoint58q_post, checkpoint59q, checkpoint59p, checkpoint59r, checkpoint58j_post, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint59c, checkpoint59b, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint59j, checkpoint59, checkpoint58o_post, checkpoint62c, checkpoint62b, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62i, checkpoint62h, checkpoint58y_post, checkpoint58k_post, checkpoint58v_post, checkpoint58s_post, checkpoint61f, checkpoint61g, checkpoint61d, checkpoint61e, checkpoint61b, checkpoint61c, checkpoint58p_post, checkpoint61a, checkpoint61n, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint61q, checkpoint61z, checkpoint61x, checkpoint61y, checkpoint58m_post
Changes since 1.2: +1 -1 lines
check-in those files again (deleted accidentally)

1 C $Header: /u/gcmpack/MITgcm/pkg/aim_ocn_coupler/mds_byteswap.F,v 1.1 2003/12/15 02:28:01 jmc Exp $
2 C $Name: $
3
4 #include "CPP_OPTIONS.h"
5
6 SUBROUTINE MDS_BYTESWAPR4( n, arr )
7 C IN:
8 C n integer - Number of 4-byte words in arr
9 C IN/OUT:
10 C arr real*4 - Array declared as real*4(n)
11 C
12 C Created: 05/05/99 adcroft@mit.edu (This is an unfortunate hack!!)
13
14 IMPLICIT NONE
15 C Arguments
16 INTEGER n
17 CHARACTER*(*) arr
18
19 #ifdef _BYTESWAPIO
20
21 C Local
22 integer i
23 character*(1) cc
24 C ------------------------------------------------------------------
25 do i=1,4*n,4
26 cc=arr(i:i)
27 arr(i:i)=arr(i+3:i+3)
28 arr(i+3:i+3)=cc
29 cc=arr(i+1:i+1)
30 arr(i+1:i+1)=arr(i+2:i+2)
31 arr(i+2:i+2)=cc
32 enddo
33 C ------------------------------------------------------------------
34 #endif /* _BYTESWAPIO */
35 RETURN
36 END
37 C=======================================================================
38
39 C=======================================================================
40 SUBROUTINE MDS_BYTESWAPR8( n, arr )
41 C IN:
42 C n integer - Number of 8-byte words in arr
43 C IN/OUT:
44 C arr real*8 - Array declared as real*4(n)
45 C
46 C Created: 05/05/99 adcroft@mit.edu (This is an unfortunate hack!!)
47
48 IMPLICIT NONE
49 C Arguments
50 INTEGER n
51 CHARACTER*(*) arr
52
53 #ifdef _BYTESWAPIO
54
55 C Local
56 integer i
57 character*(1) cc
58 C ------------------------------------------------------------------
59 do i=1,8*n,8
60 cc=arr(i:i)
61 arr(i:i)=arr(i+7:i+7)
62 arr(i+7:i+7)=cc
63 cc=arr(i+1:i+1)
64 arr(i+1:i+1)=arr(i+6:i+6)
65 arr(i+6:i+6)=cc
66 cc=arr(i+2:i+2)
67 arr(i+2:i+2)=arr(i+5:i+5)
68 arr(i+5:i+5)=cc
69 cc=arr(i+3:i+3)
70 arr(i+3:i+3)=arr(i+4:i+4)
71 arr(i+4:i+4)=cc
72 enddo
73 C ------------------------------------------------------------------
74 #endif /* _BYTESWAPIO */
75 RETURN
76 END
77 C=======================================================================

  ViewVC Help
Powered by ViewVC 1.1.22