Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
mpim-sw
cdo
Commits
e41c3417
Commit
e41c3417
authored
Jun 16, 2006
by
Uwe Schulzweida
Browse files
New module: Arithlat (mulcoslat, divcoslat)
parent
18def92e
Changes
7
Hide whitespace changes
Inline
Side-by-side
.gitattributes
View file @
e41c3417
...
...
@@ -146,6 +146,7 @@ doc/tex/usage.tex -text
src/Arith.c -text
src/Arithc.c -text
src/Arithdays.c -text
src/Arithlat.c -text
src/Cat.c -text
src/Change.c -text
src/Comp.c -text
...
...
ChangeLog
View file @
e41c3417
...
...
@@ -2,6 +2,7 @@
* using CDI library version 1.0.0
* New operator: dv2ps (Wind) [request: Luis Kornblueh]
* New module: Arithlat (mulcoslat, divcoslat) <- docu missing
* setreftime: use taxisDuplicate to copy bounds [report: Ivonne Anders]
* Seasstat: bug fix for datasets with only 1 season [report: Simon Blessing]
* Vertint: remove special treatment for geopoth
...
...
src/Arithdays.c
View file @
e41c3417
...
...
@@ -33,7 +33,7 @@
void
*
Arithdays
(
void
*
argument
)
{
static
char
func
[]
=
"Arithd
pm
"
;
static
char
func
[]
=
"Arithd
ays
"
;
int
operatorID
;
int
operfunc
,
operfunc2
;
int
streamID1
,
streamID2
;
...
...
@@ -102,7 +102,7 @@ void *Arithdays(void *argument)
rconst
=
days_per_year
(
calendar
,
year
);
if
(
cdoVerbose
)
cdoPrint
(
"calendar %d
,
year %d
,
month %d result %g"
,
cdoPrint
(
"calendar %d year %d
month %d
result %g"
,
calendar
,
year
,
month
,
rconst
);
for
(
recID
=
0
;
recID
<
nrecs
;
recID
++
)
...
...
src/Arithlat.c
0 → 100644
View file @
e41c3417
/*
This file is part of CDO. CDO is a collection of Operators to
manipulate and analyse Climate model Data.
Copyright (C) 2003-2006 Uwe Schulzweida, schulzweida@dkrz.de
See COPYING file for copying and redistribution conditions.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
*/
/*
This module contains the following operators:
Arithlat mulcoslat Multiply with cos(lat)
Arithlat divcoslat Divide by cos(lat)
*/
#include
"cdi.h"
#include
"cdo.h"
#include
"cdo_int.h"
#include
"pstream.h"
#include
<math.h>
#ifndef M_PI
#define M_PI 3.14159265358979323846
/* pi */
#endif
#ifndef DEG2RAD
#define DEG2RAD (M_PI/180.)
/* conversion for deg to rad */
#endif
void
*
Arithlat
(
void
*
argument
)
{
static
char
func
[]
=
"Arithlat"
;
int
operatorID
;
int
operfunc
;
int
streamID1
,
streamID2
;
int
gridsize
,
gridtype
;
int
gridID
,
gridID0
=
-
1
;
int
nlon
=
0
,
nlat
=
0
,
i
,
j
;
int
nrecs
,
recID
;
int
tsID
;
int
varID
,
levelID
;
int
vlistID1
,
vlistID2
;
int
taxisID1
,
taxisID2
;
int
nmiss
;
double
*
scale
=
NULL
;
double
*
array
=
NULL
;
cdoInitialize
(
argument
);
cdoOperatorAdd
(
"mulcoslat"
,
func_mul
,
0
,
NULL
);
cdoOperatorAdd
(
"divcoslat"
,
func_div
,
0
,
NULL
);
operatorID
=
cdoOperatorID
();
operfunc
=
cdoOperatorFunc
(
operatorID
);
streamID1
=
streamOpenRead
(
cdoStreamName
(
0
));
if
(
streamID1
<
0
)
cdiError
(
streamID1
,
"Open failed on %s"
,
cdoStreamName
(
0
));
vlistID1
=
streamInqVlist
(
streamID1
);
vlistID2
=
vlistDuplicate
(
vlistID1
);
taxisID1
=
vlistInqTaxis
(
vlistID1
);
taxisID2
=
taxisDuplicate
(
taxisID1
);
vlistDefTaxis
(
vlistID2
,
taxisID2
);
if
(
operfunc
==
func_mul
||
operfunc
==
func_div
)
nospec
(
vlistID1
);
streamID2
=
streamOpenWrite
(
cdoStreamName
(
1
),
cdoFiletype
());
if
(
streamID2
<
0
)
cdiError
(
streamID2
,
"Open failed on %s"
,
cdoStreamName
(
1
));
streamDefVlist
(
streamID2
,
vlistID2
);
gridsize
=
vlistGridsizeMax
(
vlistID1
);
array
=
(
double
*
)
malloc
(
gridsize
*
sizeof
(
double
));
tsID
=
0
;
while
(
(
nrecs
=
streamInqTimestep
(
streamID1
,
tsID
))
)
{
taxisCopyTimestep
(
taxisID2
,
taxisID1
);
streamDefTimestep
(
streamID2
,
tsID
);
for
(
recID
=
0
;
recID
<
nrecs
;
recID
++
)
{
streamInqRecord
(
streamID1
,
&
varID
,
&
levelID
);
streamReadRecord
(
streamID1
,
array
,
&
nmiss
);
gridID
=
vlistInqVarGrid
(
vlistID1
,
varID
);
if
(
gridID
!=
gridID0
)
{
gridtype
=
gridInqType
(
gridID
);
if
(
gridtype
!=
GRID_LONLAT
&&
gridtype
!=
GRID_GAUSSIAN
)
{
if
(
gridInqType
(
gridID
)
==
GRID_GAUSSIAN_REDUCED
)
cdoAbort
(
"Gaussian reduced grid found. Use option -R to convert it to a regular grid!"
);
else
cdoAbort
(
"LONLAT or GAUSSIAN grid not found!"
);
}
gridsize
=
gridInqSize
(
gridID
);
nlon
=
gridInqXsize
(
gridID
);
nlat
=
gridInqYsize
(
gridID
);
scale
=
(
double
*
)
realloc
(
scale
,
nlat
*
sizeof
(
double
));
gridInqYvals
(
gridID
,
scale
);
if
(
operfunc
==
func_mul
)
for
(
j
=
0
;
j
<
nlat
;
j
++
)
scale
[
j
]
=
cos
(
scale
[
j
]
*
DEG2RAD
);
else
for
(
j
=
0
;
j
<
nlat
;
j
++
)
scale
[
j
]
=
1
.
/
cos
(
scale
[
j
]
*
DEG2RAD
);
if
(
cdoVerbose
)
for
(
j
=
0
;
j
<
nlat
;
j
++
)
cdoPrint
(
"coslat %3d %g"
,
j
+
1
,
scale
[
j
]);
gridID0
=
gridID
;
}
for
(
j
=
0
;
j
<
nlat
;
j
++
)
for
(
i
=
0
;
i
<
nlon
;
i
++
)
array
[
i
+
j
*
nlon
]
*=
scale
[
j
];
streamDefRecord
(
streamID2
,
varID
,
levelID
);
streamWriteRecord
(
streamID2
,
array
,
nmiss
);
}
tsID
++
;
}
streamClose
(
streamID2
);
streamClose
(
streamID1
);
if
(
array
)
free
(
array
);
if
(
scale
)
free
(
scale
);
cdoFinish
();
return
(
0
);
}
src/Makefile.am
View file @
e41c3417
...
...
@@ -5,6 +5,7 @@ bin_PROGRAMS = cdo
cdo_SOURCES
=
Arith.c
\
Arithc.c
\
Arithdays.c
\
Arithlat.c
\
Cat.c
\
Change.c
\
Comp.c
\
...
...
src/Makefile.in
View file @
e41c3417
...
...
@@ -85,6 +85,7 @@ bin_PROGRAMS = cdo
cdo_SOURCES
=
Arith.c
\
Arithc.c
\
Arithdays.c
\
Arithlat.c
\
Cat.c
\
Change.c
\
Comp.c
\
...
...
@@ -248,47 +249,48 @@ bin_PROGRAMS = cdo$(EXEEXT)
PROGRAMS
=
$(bin_PROGRAMS)
am_cdo_OBJECTS
=
Arith.
$(OBJEXT)
Arithc.
$(OBJEXT)
Arithdays.
$(OBJEXT)
\
Cat.
$(OBJEXT)
Change.
$(OBJEXT)
Comp.
$(OBJEXT)
Compc.
$(OBJEXT)
\
Cond.
$(OBJEXT)
Cond2.
$(OBJEXT)
Condc.
$(OBJEXT)
Copy.
$(OBJEXT)
\
Detrend.
$(OBJEXT)
Diff.
$(OBJEXT)
Enlarge.
$(OBJEXT)
\
Enlargegrid.
$(OBJEXT)
Ensstat.
$(OBJEXT)
Exprf.
$(OBJEXT)
\
Filedes.
$(OBJEXT)
Fillmiss.
$(OBJEXT)
Fldrms.
$(OBJEXT)
\
Fldstat.
$(OBJEXT)
Gradsdes.
$(OBJEXT)
Histogram.
$(OBJEXT)
\
Info.
$(OBJEXT)
Input.
$(OBJEXT)
Intgrid.
$(OBJEXT)
\
Intgridtraj.
$(OBJEXT)
Inttime.
$(OBJEXT)
Intyear.
$(OBJEXT)
\
Invert.
$(OBJEXT)
Maskbox.
$(OBJEXT)
Mastrfu.
$(OBJEXT)
\
Math.
$(OBJEXT)
Merge.
$(OBJEXT)
Mergegrid.
$(OBJEXT)
\
Mergetime.
$(OBJEXT)
Merstat.
$(OBJEXT)
Ninfo.
$(OBJEXT)
\
Nmltest.
$(OBJEXT)
Output.
$(OBJEXT)
Outputgmt.
$(OBJEXT)
\
Pinfo.
$(OBJEXT)
Remap.
$(OBJEXT)
Replace.
$(OBJEXT)
\
Rotuv.
$(OBJEXT)
Runstat.
$(OBJEXT)
Seasstat.
$(OBJEXT)
\
Selbox.
$(OBJEXT)
Select.
$(OBJEXT)
Selrec.
$(OBJEXT)
\
Selstat.
$(OBJEXT)
Seltime.
$(OBJEXT)
Set.
$(OBJEXT)
\
Setgatt.
$(OBJEXT)
Setgrid.
$(OBJEXT)
Sethalo.
$(OBJEXT)
\
Setmiss.
$(OBJEXT)
Settime.
$(OBJEXT)
Setzaxis.
$(OBJEXT)
\
Showinfo.
$(OBJEXT)
Sinfo.
$(OBJEXT)
Sort.
$(OBJEXT)
\
Specinfo.
$(OBJEXT)
Spectral.
$(OBJEXT)
Split.
$(OBJEXT)
\
Splitrec.
$(OBJEXT)
Splittime.
$(OBJEXT)
Splityear.
$(OBJEXT)
\
Subtrend.
$(OBJEXT)
Templates.
$(OBJEXT)
Test.
$(OBJEXT)
\
Timsort.
$(OBJEXT)
Timstat.
$(OBJEXT)
Trend.
$(OBJEXT)
\
Trms.
$(OBJEXT)
Vardup.
$(OBJEXT)
Vargen.
$(OBJEXT)
\
Varrms.
$(OBJEXT)
Vertint.
$(OBJEXT)
Vertstat.
$(OBJEXT)
\
Wind.
$(OBJEXT)
Writegrid.
$(OBJEXT)
Writerandom.
$(OBJEXT)
\
Ydaystat.
$(OBJEXT)
Ymonarith.
$(OBJEXT)
Ymonstat.
$(OBJEXT)
\
Yseasstat.
$(OBJEXT)
Zonstat.
$(OBJEXT)
cdilib.
$(OBJEXT)
\
commandline.
$(OBJEXT)
exception.
$(OBJEXT)
expr_yacc.
$(OBJEXT)
\
expr_lex.
$(OBJEXT)
expr.
$(OBJEXT)
cdo.
$(OBJEXT)
\
cdo_pthread.
$(OBJEXT)
cdo_vlist.
$(OBJEXT)
field.
$(OBJEXT)
\
fieldc.
$(OBJEXT)
field2.
$(OBJEXT)
fieldmer.
$(OBJEXT)
\
fieldzon.
$(OBJEXT)
grid.
$(OBJEXT)
history.
$(OBJEXT)
\
institution.
$(OBJEXT)
interpol.
$(OBJEXT)
modules.
$(OBJEXT)
\
namelist.
$(OBJEXT)
normal.
$(OBJEXT)
pipe.
$(OBJEXT)
\
process.
$(OBJEXT)
remaplib.
$(OBJEXT)
timer.
$(OBJEXT)
\
realtime.
$(OBJEXT)
pstream.
$(OBJEXT)
table.
$(OBJEXT)
\
userlog.
$(OBJEXT)
util.
$(OBJEXT)
legendre.
$(OBJEXT)
\
fourier.
$(OBJEXT)
specspace.
$(OBJEXT)
readline.
$(OBJEXT)
\
julian.
$(OBJEXT)
vinterp.
$(OBJEXT)
zaxis.
$(OBJEXT)
\
pthread_debug.
$(OBJEXT)
color.
$(OBJEXT)
list.
$(OBJEXT)
Arithlat.
$(OBJEXT)
Cat.
$(OBJEXT)
Change.
$(OBJEXT)
\
Comp.
$(OBJEXT)
Compc.
$(OBJEXT)
Cond.
$(OBJEXT)
Cond2.
$(OBJEXT)
\
Condc.
$(OBJEXT)
Copy.
$(OBJEXT)
Detrend.
$(OBJEXT)
Diff.
$(OBJEXT)
\
Enlarge.
$(OBJEXT)
Enlargegrid.
$(OBJEXT)
Ensstat.
$(OBJEXT)
\
Exprf.
$(OBJEXT)
Filedes.
$(OBJEXT)
Fillmiss.
$(OBJEXT)
\
Fldrms.
$(OBJEXT)
Fldstat.
$(OBJEXT)
Gradsdes.
$(OBJEXT)
\
Histogram.
$(OBJEXT)
Info.
$(OBJEXT)
Input.
$(OBJEXT)
\
Intgrid.
$(OBJEXT)
Intgridtraj.
$(OBJEXT)
Inttime.
$(OBJEXT)
\
Intyear.
$(OBJEXT)
Invert.
$(OBJEXT)
Maskbox.
$(OBJEXT)
\
Mastrfu.
$(OBJEXT)
Math.
$(OBJEXT)
Merge.
$(OBJEXT)
\
Mergegrid.
$(OBJEXT)
Mergetime.
$(OBJEXT)
Merstat.
$(OBJEXT)
\
Ninfo.
$(OBJEXT)
Nmltest.
$(OBJEXT)
Output.
$(OBJEXT)
\
Outputgmt.
$(OBJEXT)
Pinfo.
$(OBJEXT)
Remap.
$(OBJEXT)
\
Replace.
$(OBJEXT)
Rotuv.
$(OBJEXT)
Runstat.
$(OBJEXT)
\
Seasstat.
$(OBJEXT)
Selbox.
$(OBJEXT)
Select.
$(OBJEXT)
\
Selrec.
$(OBJEXT)
Selstat.
$(OBJEXT)
Seltime.
$(OBJEXT)
\
Set.
$(OBJEXT)
Setgatt.
$(OBJEXT)
Setgrid.
$(OBJEXT)
\
Sethalo.
$(OBJEXT)
Setmiss.
$(OBJEXT)
Settime.
$(OBJEXT)
\
Setzaxis.
$(OBJEXT)
Showinfo.
$(OBJEXT)
Sinfo.
$(OBJEXT)
\
Sort.
$(OBJEXT)
Specinfo.
$(OBJEXT)
Spectral.
$(OBJEXT)
\
Split.
$(OBJEXT)
Splitrec.
$(OBJEXT)
Splittime.
$(OBJEXT)
\
Splityear.
$(OBJEXT)
Subtrend.
$(OBJEXT)
Templates.
$(OBJEXT)
\
Test.
$(OBJEXT)
Timsort.
$(OBJEXT)
Timstat.
$(OBJEXT)
\
Trend.
$(OBJEXT)
Trms.
$(OBJEXT)
Vardup.
$(OBJEXT)
\
Vargen.
$(OBJEXT)
Varrms.
$(OBJEXT)
Vertint.
$(OBJEXT)
\
Vertstat.
$(OBJEXT)
Wind.
$(OBJEXT)
Writegrid.
$(OBJEXT)
\
Writerandom.
$(OBJEXT)
Ydaystat.
$(OBJEXT)
Ymonarith.
$(OBJEXT)
\
Ymonstat.
$(OBJEXT)
Yseasstat.
$(OBJEXT)
Zonstat.
$(OBJEXT)
\
cdilib.
$(OBJEXT)
commandline.
$(OBJEXT)
exception.
$(OBJEXT)
\
expr_yacc.
$(OBJEXT)
expr_lex.
$(OBJEXT)
expr.
$(OBJEXT)
\
cdo.
$(OBJEXT)
cdo_pthread.
$(OBJEXT)
cdo_vlist.
$(OBJEXT)
\
field.
$(OBJEXT)
fieldc.
$(OBJEXT)
field2.
$(OBJEXT)
\
fieldmer.
$(OBJEXT)
fieldzon.
$(OBJEXT)
grid.
$(OBJEXT)
\
history.
$(OBJEXT)
institution.
$(OBJEXT)
interpol.
$(OBJEXT)
\
modules.
$(OBJEXT)
namelist.
$(OBJEXT)
normal.
$(OBJEXT)
\
pipe.
$(OBJEXT)
process.
$(OBJEXT)
remaplib.
$(OBJEXT)
\
timer.
$(OBJEXT)
realtime.
$(OBJEXT)
pstream.
$(OBJEXT)
\
table.
$(OBJEXT)
userlog.
$(OBJEXT)
util.
$(OBJEXT)
\
legendre.
$(OBJEXT)
fourier.
$(OBJEXT)
specspace.
$(OBJEXT)
\
readline.
$(OBJEXT)
julian.
$(OBJEXT)
vinterp.
$(OBJEXT)
\
zaxis.
$(OBJEXT)
pthread_debug.
$(OBJEXT)
color.
$(OBJEXT)
\
list.
$(OBJEXT)
cdo_OBJECTS
=
$(am_cdo_OBJECTS)
cdo_DEPENDENCIES
=
cdo_LDFLAGS
=
...
...
@@ -300,64 +302,65 @@ LIBS = @LIBS@
depcomp
=
$(SHELL)
$(top_srcdir)
/config/depcomp
am__depfiles_maybe
=
depfiles
@AMDEP_TRUE@
DEP_FILES
=
./
$(DEPDIR)
/Arith.Po ./
$(DEPDIR)
/Arithc.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Arithdays.Po ./
$(DEPDIR)
/Cat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Change.Po ./
$(DEPDIR)
/Comp.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Compc.Po ./
$(DEPDIR)
/Cond.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Cond2.Po ./
$(DEPDIR)
/Condc.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Copy.Po ./
$(DEPDIR)
/Detrend.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Diff.Po ./
$(DEPDIR)
/Enlarge.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Enlargegrid.Po ./
$(DEPDIR)
/Ensstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Exprf.Po ./
$(DEPDIR)
/Filedes.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Fillmiss.Po ./
$(DEPDIR)
/Fldrms.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Fldstat.Po ./
$(DEPDIR)
/Gradsdes.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Histogram.Po ./
$(DEPDIR)
/Info.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Input.Po ./
$(DEPDIR)
/Intgrid.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Intgridtraj.Po ./
$(DEPDIR)
/Inttime.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Intyear.Po ./
$(DEPDIR)
/Invert.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Maskbox.Po ./
$(DEPDIR)
/Mastrfu.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Math.Po ./
$(DEPDIR)
/Merge.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Mergegrid.Po ./
$(DEPDIR)
/Mergetime.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Merstat.Po ./
$(DEPDIR)
/Ninfo.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Nmltest.Po ./
$(DEPDIR)
/Output.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Outputgmt.Po ./
$(DEPDIR)
/Pinfo.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Remap.Po ./
$(DEPDIR)
/Replace.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Rotuv.Po ./
$(DEPDIR)
/Runstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Seasstat.Po ./
$(DEPDIR)
/Selbox.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Select.Po ./
$(DEPDIR)
/Selrec.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Selstat.Po ./
$(DEPDIR)
/Seltime.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Set.Po ./
$(DEPDIR)
/Setgatt.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Setgrid.Po ./
$(DEPDIR)
/Sethalo.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Setmiss.Po ./
$(DEPDIR)
/Settime.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Setzaxis.Po ./
$(DEPDIR)
/Showinfo.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Sinfo.Po ./
$(DEPDIR)
/Sort.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Specinfo.Po ./
$(DEPDIR)
/Spectral.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Split.Po ./
$(DEPDIR)
/Splitrec.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Splittime.Po ./
$(DEPDIR)
/Splityear.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Subtrend.Po ./
$(DEPDIR)
/Templates.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Test.Po ./
$(DEPDIR)
/Timsort.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Timstat.Po ./
$(DEPDIR)
/Trend.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Trms.Po ./
$(DEPDIR)
/Vardup.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Vargen.Po ./
$(DEPDIR)
/Varrms.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Vertint.Po ./
$(DEPDIR)
/Vertstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Wind.Po ./
$(DEPDIR)
/Writegrid.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Writerandom.Po ./
$(DEPDIR)
/Ydaystat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Ymonarith.Po ./
$(DEPDIR)
/Ymonstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Yseasstat.Po ./
$(DEPDIR)
/Zonstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/cdilib.Po ./
$(DEPDIR)
/cdo.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/cdo_pthread.Po ./
$(DEPDIR)
/cdo_vlist.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/color.Po ./
$(DEPDIR)
/commandline.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/exception.Po ./
$(DEPDIR)
/expr.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/expr_lex.Po ./
$(DEPDIR)
/expr_yacc.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/field.Po ./
$(DEPDIR)
/field2.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/fieldc.Po ./
$(DEPDIR)
/fieldmer.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/fieldzon.Po ./
$(DEPDIR)
/fourier.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/grid.Po ./
$(DEPDIR)
/history.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/institution.Po ./
$(DEPDIR)
/interpol.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/julian.Po ./
$(DEPDIR)
/legendre.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/list.Po ./
$(DEPDIR)
/modules.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/namelist.Po ./
$(DEPDIR)
/normal.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/pipe.Po ./
$(DEPDIR)
/process.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/pstream.Po ./
$(DEPDIR)
/pthread_debug.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Arithdays.Po ./
$(DEPDIR)
/Arithlat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Cat.Po ./
$(DEPDIR)
/Change.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Comp.Po ./
$(DEPDIR)
/Compc.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Cond.Po ./
$(DEPDIR)
/Cond2.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Condc.Po ./
$(DEPDIR)
/Copy.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Detrend.Po ./
$(DEPDIR)
/Diff.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Enlarge.Po ./
$(DEPDIR)
/Enlargegrid.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Ensstat.Po ./
$(DEPDIR)
/Exprf.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Filedes.Po ./
$(DEPDIR)
/Fillmiss.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Fldrms.Po ./
$(DEPDIR)
/Fldstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Gradsdes.Po ./
$(DEPDIR)
/Histogram.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Info.Po ./
$(DEPDIR)
/Input.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Intgrid.Po ./
$(DEPDIR)
/Intgridtraj.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Inttime.Po ./
$(DEPDIR)
/Intyear.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Invert.Po ./
$(DEPDIR)
/Maskbox.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Mastrfu.Po ./
$(DEPDIR)
/Math.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Merge.Po ./
$(DEPDIR)
/Mergegrid.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Mergetime.Po ./
$(DEPDIR)
/Merstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Ninfo.Po ./
$(DEPDIR)
/Nmltest.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Output.Po ./
$(DEPDIR)
/Outputgmt.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Pinfo.Po ./
$(DEPDIR)
/Remap.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Replace.Po ./
$(DEPDIR)
/Rotuv.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Runstat.Po ./
$(DEPDIR)
/Seasstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Selbox.Po ./
$(DEPDIR)
/Select.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Selrec.Po ./
$(DEPDIR)
/Selstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Seltime.Po ./
$(DEPDIR)
/Set.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Setgatt.Po ./
$(DEPDIR)
/Setgrid.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Sethalo.Po ./
$(DEPDIR)
/Setmiss.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Settime.Po ./
$(DEPDIR)
/Setzaxis.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Showinfo.Po ./
$(DEPDIR)
/Sinfo.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Sort.Po ./
$(DEPDIR)
/Specinfo.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Spectral.Po ./
$(DEPDIR)
/Split.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Splitrec.Po ./
$(DEPDIR)
/Splittime.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Splityear.Po ./
$(DEPDIR)
/Subtrend.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Templates.Po ./
$(DEPDIR)
/Test.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Timsort.Po ./
$(DEPDIR)
/Timstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Trend.Po ./
$(DEPDIR)
/Trms.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Vardup.Po ./
$(DEPDIR)
/Vargen.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Varrms.Po ./
$(DEPDIR)
/Vertint.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Vertstat.Po ./
$(DEPDIR)
/Wind.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Writegrid.Po ./
$(DEPDIR)
/Writerandom.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Ydaystat.Po ./
$(DEPDIR)
/Ymonarith.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Ymonstat.Po ./
$(DEPDIR)
/Yseasstat.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/Zonstat.Po ./
$(DEPDIR)
/cdilib.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/cdo.Po ./
$(DEPDIR)
/cdo_pthread.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/cdo_vlist.Po ./
$(DEPDIR)
/color.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/commandline.Po ./
$(DEPDIR)
/exception.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/expr.Po ./
$(DEPDIR)
/expr_lex.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/expr_yacc.Po ./
$(DEPDIR)
/field.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/field2.Po ./
$(DEPDIR)
/fieldc.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/fieldmer.Po ./
$(DEPDIR)
/fieldzon.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/fourier.Po ./
$(DEPDIR)
/grid.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/history.Po ./
$(DEPDIR)
/institution.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/interpol.Po ./
$(DEPDIR)
/julian.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/legendre.Po ./
$(DEPDIR)
/list.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/modules.Po ./
$(DEPDIR)
/namelist.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/normal.Po ./
$(DEPDIR)
/pipe.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/process.Po ./
$(DEPDIR)
/pstream.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/pthread_debug.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/readline.Po ./
$(DEPDIR)
/realtime.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/remaplib.Po ./
$(DEPDIR)
/specspace.Po
\
@AMDEP_TRUE@ ./
$(DEPDIR)
/table.Po ./
$(DEPDIR)
/timer.Po
\
...
...
@@ -436,6 +439,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@
@am__quote@./$(DEPDIR)/Arith.Po@am__quote@
@AMDEP_TRUE@@am__include@
@am__quote@./$(DEPDIR)/Arithc.Po@am__quote@
@AMDEP_TRUE@@am__include@
@am__quote@./$(DEPDIR)/Arithdays.Po@am__quote@
@AMDEP_TRUE@@am__include@
@am__quote@./$(DEPDIR)/Arithlat.Po@am__quote@
@AMDEP_TRUE@@am__include@
@am__quote@./$(DEPDIR)/Cat.Po@am__quote@
@AMDEP_TRUE@@am__include@
@am__quote@./$(DEPDIR)/Change.Po@am__quote@
@AMDEP_TRUE@@am__include@
@am__quote@./$(DEPDIR)/Comp.Po@am__quote@
...
...
src/modules.c
View file @
e41c3417
...
...
@@ -39,6 +39,7 @@ MODULES;
void
*
Arith
(
void
*
argument
);
void
*
Arithc
(
void
*
argument
);
void
*
Arithdays
(
void
*
argument
);
void
*
Arithlat
(
void
*
argument
);
void
*
Cat
(
void
*
argument
);
void
*
Change
(
void
*
argument
);
void
*
Comp
(
void
*
argument
);
...
...
@@ -131,6 +132,7 @@ void *Zonstat(void *argument);
#define ArithOperators {"add", "sub", "mul", "div", "min", "max", "atan2"}
#define ArithcOperators {"addc", "subc", "mulc", "divc"}
#define ArithdaysOperators {"muldpm", "divdpm", "muldpy", "divdpy"}
#define ArithlatOperators {"mulcoslat", "divcoslat"}
#define CatOperators {"cat"}
#define ChangeOperators {"chcode", "chvar", "chlevel", "chlevelc", "chlevelv"}
#define CompOperators {"eq", "ne", "le", "lt", "ge", "gt"}
...
...
@@ -238,6 +240,7 @@ static MODULES Modules[] =
{
Arith
,
ArithHelp
,
ArithOperators
,
2
,
1
},
{
Arithc
,
ArithcHelp
,
ArithcOperators
,
1
,
1
},
{
Arithdays
,
ArithdaysHelp
,
ArithdaysOperators
,
1
,
1
},
{
Arithlat
,
NULL
,
ArithlatOperators
,
1
,
1
},
{
Cat
,
CopyHelp
,
CatOperators
,
-
1
,
1
},
{
Change
,
ChangeHelp
,
ChangeOperators
,
1
,
1
},
{
Comp
,
CompHelp
,
CompOperators
,
2
,
1
},
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment