Commit 8a5e5aec authored by Uwe Schulzweida's avatar Uwe Schulzweida
Browse files

update cdilib

parent b07c8211
2007-01-?? Uwe Schulzweida <Uwe.Schulzweida@zmaw.de>
* using CDI library version 1.0.6
* New operator: read_e5ini (test version)
* gradsdes: process only the first 2GB of a GRIB file
* Version 1.0.7 released
......
......@@ -2,7 +2,7 @@
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
Copyright (C) 2003-2007 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
......@@ -40,7 +40,7 @@ void *Copy(void *argument)
int tsID1, tsID2, recID, varID, levelID;
int lcopy = FALSE;
int gridsize;
int vlistID1, vlistID2;
int vlistID1, vlistID2 = -1;
int nmiss;
int streamCnt, nfiles, indf;
int taxisID1, taxisID2 = CDI_UNDEFID;
......@@ -81,6 +81,12 @@ void *Copy(void *argument)
gridsize = vlistGridsizeMax(vlistID1);
array = (double *) malloc(gridsize*sizeof(double));
}
/*
else
{
vlistCompare(vlistID1, vlistID2, func_hrd);
}
*/
tsID1 = 0;
while ( (nrecs = streamInqTimestep(streamID1, tsID1)) )
......
......@@ -2,7 +2,7 @@
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
Copyright (C) 2003-2007 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
......@@ -42,6 +42,7 @@ typedef struct
}
RecInfo;
int cmpreccode(const void *s1, const void *s2)
{
int cmp = 0;
......@@ -56,6 +57,7 @@ int cmpreccode(const void *s1, const void *s2)
return (cmp);
}
int cmpreclevel(const void *s1, const void *s2)
{
int cmp = 0;
......@@ -70,6 +72,7 @@ int cmpreclevel(const void *s1, const void *s2)
return (cmp);
}
int cmprecname(const void *s1, const void *s2)
{
RecInfo *x = (RecInfo *) s1;
......@@ -78,6 +81,7 @@ int cmprecname(const void *s1, const void *s2)
return (strcmp(x->name, y->name));
}
int findrec(RecInfo *recInfo[], int nrecords, int varID, int levelID)
{
int index;
......@@ -92,6 +96,7 @@ int findrec(RecInfo *recInfo[], int nrecords, int varID, int levelID)
return (index);
}
void *Sort(void *argument)
{
static char func[] = "Sort";
......
......@@ -49,7 +49,7 @@ void vlistCompare(int vlistID1, int vlistID2, int function)
if ( zaxisInqSize(vlistInqVarZaxis(vlistID1, varID)) !=
zaxisInqSize(vlistInqVarZaxis(vlistID2, varID)) )
cdoAbort("Number of level of the input fields do not match!");
cdoAbort("Number of levels of the input fields do not match!");
}
else if ( function == func_sft )
for ( varID = 0; varID < nvars; varID++ )
......@@ -60,7 +60,7 @@ void vlistCompare(int vlistID1, int vlistID2, int function)
if ( zaxisInqSize(vlistInqVarZaxis(vlistID1, varID)) !=
zaxisInqSize(vlistInqVarZaxis(vlistID2, varID)) )
cdoAbort("Number of level of the input fields do not match!");
cdoAbort("Number of levels of the input fields do not match!");
}
else
cdoAbort("Internal problem! Invalid function %d", function);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment