New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
sla2fb.F90 in branches/dev_2802_OBStools/NEMOGCM/TOOLS/OBSTOOLS – NEMO

source: branches/dev_2802_OBStools/NEMOGCM/TOOLS/OBSTOOLS/sla2fb.F90 @ 2893

Last change on this file since 2893 was 2893, checked in by djlea, 13 years ago

Adding obs tools to branch

File size: 1.5 KB
Line 
1PROGRAM sla2fb
2   USE obs_fbm
3   USE obs_sla_io
4   USE convmerge
5   IMPLICIT NONE
6   !
7   ! Command line arguments for output file and input files
8   !
9#ifndef NOIARGCPROTO
10   INTEGER,EXTERNAL :: iargc
11#endif
12   INTEGER :: nargs
13   CHARACTER(len=256) :: cdoutfile
14   CHARACTER(len=256),ALLOCATABLE :: cdinfile(:)
15   !
16   ! Input data
17   !
18   TYPE(obfbdata), POINTER :: slaf(:)
19   INTEGER :: ninfiles,ntotobs
20   !
21   ! Output data
22   !
23   TYPE(obfbdata) :: fbdata
24   !
25   ! Loop variables
26   !
27   INTEGER :: ip,ia,ji,jk
28   !
29   ! Get number of command line arguments
30   !
31   nargs=IARGC()
32   IF (nargs < 1) THEN
33      WRITE(*,'(A)')'Usage:'
34      WRITE(*,'(A)')'sla2fb outputfile inputfile1 inputfile2 ...'
35      CALL abort()
36   ENDIF
37   CALL getarg(1,cdoutfile)
38   !
39   ! Get input data
40   !
41   ALLOCATE( slaf(MAX(nargs-1,1)) )
42   ALLOCATE( cdinfile(nargs-1) )
43   ntotobs = 0
44   ninfiles  = nargs - 1
45   DO ia=1,ninfiles
46      CALL getarg( ia + 1, cdinfile(ia) )
47      WRITE(*,'(2A)')'File = ',TRIM(cdinfile(ia))
48      CALL read_avisofile( TRIM(cdinfile(ia)), slaf(ia), 6, .TRUE., .FALSE. )
49      WRITE(*,'(A,I9,A)')'has',slaf(ia)%nobs,' observations'
50      ntotobs = ntotobs + slaf(ia)%nobs
51   ENDDO
52   IF (ninfiles==0) THEN
53      CALL init_obfbdata( slaf(1) )
54      CALL alloc_obfbdata( slaf(1), 1, 0, 1, 0, 0, .FALSE. )
55      slaf(1)%cname(1) = 'SLA'
56      slaf(1)%cdjuldref = '19500101000000'
57   ENDIF
58   WRITE(*,'(A,I8)') 'Total observations : ',ntotobs
59   !
60   ! Merge and output the data.
61   !
62   CALL conv_fbmerge( TRIM(cdoutfile), ninfiles, slaf )
63
64END PROGRAM sla2fb
Note: See TracBrowser for help on using the repository browser.