[cdftools] 145/228: JMM : fix type of missing value to fit type of associated variable
Alastair McKinstry
mckinstry at moszumanska.debian.org
Fri Jun 12 08:21:41 UTC 2015
This is an automated email from the git hooks/post-receive script.
mckinstry pushed a commit to branch master
in repository cdftools.
commit 2d3c29a7c819fecc9505e1a9da7f7fcbe92b684b
Author: molines <molines at 1055176f-818a-41d9-83e1-73fbe5b947c5>
Date: Wed Apr 18 07:58:08 2012 +0000
JMM : fix type of missing value to fit type of associated variable
git-svn-id: http://servforge.legi.grenoble-inp.fr/svn/CDFTOOLS/trunk@593 1055176f-818a-41d9-83e1-73fbe5b947c5
---
cdfio.f90 | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/cdfio.f90 b/cdfio.f90
index c03df21..49647a4 100644
--- a/cdfio.f90
+++ b/cdfio.f90
@@ -443,8 +443,17 @@ CONTAINS
!!----------------------------------------------------------------------
putatt=NF90_PUT_ATT(kout,kid,'units',sdtyvar%cunits)
IF (putatt /= NF90_NOERR ) THEN ;PRINT *, NF90_STRERROR(putatt) ; STOP 'putatt units'; ENDIF
- putatt=NF90_PUT_ATT(kout,kid,cn_missing_value,sdtyvar%rmissing_value)
+
+ ! With netcdf4, missing value must have the same precision than the variable. Need to convert
+ ! to sdtyvar%cprecision previous PUT_ATT
+ SELECT CASE (sdtyvar%cprecision )
+ CASE ( 'r8' ) ; putatt=NF90_PUT_ATT(kout,kid,cn_missing_value,REAL(sdtyvar%rmissing_value,8) )
+ CASE ( 'i2' ) ; putatt=NF90_PUT_ATT(kout,kid,cn_missing_value, INT(sdtyvar%rmissing_value,2) )
+ CASE ( 'by' ) ; putatt=NF90_PUT_ATT(kout,kid,cn_missing_value, INT(sdtyvar%rmissing_value,1) )
+ CASE DEFAULT ; putatt=NF90_PUT_ATT(kout,kid,cn_missing_value,REAL(sdtyvar%rmissing_value,4) )
+ END SELECT
IF (putatt /= NF90_NOERR ) THEN ;PRINT *, NF90_STRERROR(putatt) ; STOP 'putatt missing value'; ENDIF
+
putatt=NF90_PUT_ATT(kout,kid,'valid_min',sdtyvar%valid_min)
IF (putatt /= NF90_NOERR ) THEN ;PRINT *, NF90_STRERROR(putatt) ; STOP 'putatt valid_min'; ENDIF
putatt=NF90_PUT_ATT(kout,kid,'valid_max',sdtyvar%valid_max)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/cdftools.git
More information about the debian-science-commits
mailing list