Recent Releases of cmor
cmor - CMOR 3.11.0
Update CMOR3 with CF CRS container variable; Numerous edge case fixes, license reformulation for CMIP7
Features
* Added the function cmor_set_crs used for creating a CF Coordinate Reference System (CRS) container variable. This is similar to the container variable created by cmor_set_grid_mapping but is named crs instead of the grid mapping name and supports text value attributes.
* The license attribute can now be generated from a template in the CV file. It requires the user to provide a license_id in their input JSON, which determines what license type and URL will be used when generating the license string. The attributes license_id, license_type, and license_url are not included in the global attributes of a file unless they are listed in the CV's required_global_attributes list.
Bugfixes
* Removed erroneous warning message that says zero time steps were written for a time axis if cmor_write was used to write all time steps without setting the ntimes_passed parameter.
* Invalid JSON in user input or tables will be caught and throw an error instead of silently causing segmentation faults.
* The minimum supported CMOR version in the header of tables will now be compared as separate major and minor integers against the current CMOR version instead of as a float.
Changes
* Time axis intervals will now be checked when passing time values with cmor_write.
* To use zstandard compression, the user must disable deflation with cmor_set_deflate and then provide a valid zstandard compression level within the range [-131072, 22] using cmor_set_zstandard. Performing only one of the two actions will result in no zstandard compression being applied.
* cmor_write will throw an error if variable or zfactor data contains NaN values.
* Calendars in the CF 1.12 release that are not supported by CMOR (i.e utc, tai, all_leap, and 366_day) will throw an error message asking users to use another, more common calendar.
* cmor_time_varying_grid_coordinate has been deprecated, and will be removed in a future release.
Closed Issues
* warning on timesteps written (#697)
* Adding/augmenting functions to write a CF Coordinate Reference System (CRS) "container variable" (#774)
* Time interval not checked when adding time steps with cmor_write (#791)
* CMOR 3.10 issue with CV structure (#795)
* Correct unexpected behavior of cmor.set_deflate(0,0,0) (#798)
* Correct unexpected behavior of cmor.variable accepting missing_value argument that doesn't match the data array provided (#802)
* Correct segfault due to poorly defined project_CV.json file (#803)
* Update license_id entry - CMOR 3.10 changes break test (#811)
* Update calendar support to match full CF 1.12 list (#813)
* Test that use cmor_time_varying_grid_coordinate incorrectly use it with cmor_write (#814)
* license_id warning truncation bug; and license CV behavior tweaks (#816)
* Catch poorly formatted table and user_input .json files - generate error pointing to errored file (#818)
- C
Published by mauzey1 9 months ago
cmor - CMOR 3.10.0
Updates for writing CMIP7 datasets.
Features
* The branding_suffix of variables will be tested against the branding_suffix template provided by the CV. Its components temporal_label, vertical_label, horizontal_label, and area_label will have their values validated by their corresponding sections in the CV.
* mip_era and data_specs_version will be set from the CV if they are single string values.
* frequency can be defined in the user input JSON or by calling cmor_set_cur_dataset_attribute prior to creating the time axis and variable that uses the axis.
* Interval values for the frequencies are acquired from the CV if the current dataset has a frequency. If the interval value used for the time axis doesn't match the interval values of the frequency used by the variable, then CMOR will throw an error.
* region can be defined in the user input JSON or by calling cmor_set_cur_dataset_attribute prior to calling cmor_write.
* Table attributes type, positive, valid_max, valid_min, ok_max_mean_abs, and ok_min_mean_abs can be acquired from the header of tables and used as the default for a table's variable entries. The are overwritten by a variable entry's own version of these attributes if present.
* variable_title and brand_description can now be variable attributes if defined in the variable entry.
* _cmip7_option should be set in the user input JSON to enable CMIP7 global attribute checking similar to CMIP6 but without subexperiment tests. parent_mip_era will be set to CMIP7 for all datasets that are written with _cmip7_option set.
Bugfixes * Resolved compiler warnings when building CMOR library source. * Resolved the issue where quantization was applied to axis, grid, and zfactor values rather than just the variable matrix. Quantization will now only be applied to the variable matrix.
Changes * Updated quantization feature to meet CF compliance. * If a global attribute is required and has a section in the CV that is an object with key and single string value pairs, then that attribute's value will be compared against the keys in that object.
Closed Issues * Numerous warnings when compiling CMOR (#602) * CMIP7 requirements: "branded variable" and new mip_table specification (#762) * CF quantization/bitgrooming variable attributes required (#765) * Handle variables that have a branding suffix (#779)
- C
Published by mauzey1 11 months ago
cmor - CMOR version 3.2.6
Main changes from last release (3.2.5 -> 3.2.6)
- CMOR log now are written to file immediately using fflush()
- Fix redundant message in history attribute
- Fix PrePARE to match timestamp in filename created by CMOR
- Add furtherinfourl template for obs4MIPs project
- Fix python wrapper to ensure that data shape is pass correctly to cmor.write()
- Add hierarchical attribute setting in CMIP6_CV and CMOR so that keys in a multiple entry dictionary are written to a file
Example
“source_id”: {
“TRMM”: {
“satellite”:“TRMM”,
“Attribute1”:“key1”,
“Attribute2”:”key2”
}
}
CMOR 3.2.6 documentation
http://cmor.llnl.gov or in pdf form at http://cmor.llnl.gov/pdf
DOI (source code)
https://doi.org/10.5281/zenodo.863751
Github (source code)
https://github.com/PCMDI/cmor/releases/tag/CMOR-3.2.6
Conda installation
To install cmor into your root anaconda environment
conda install -c conda-forge -c pcmdi cmor
Or to generate a dedicated anaconda environment
conda create -n cmor3.2.6 -c conda-forge -c pcmdi cmor
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.2.3
Main changes from last revision (3.2.2)
Update in license string template which follow this information: * https://github.com/WCRP-CMIP/CMIP6CVs/blob/master/CMIP6license.json#L3 * CMIP6CV.json combined “label”, “releaseyear” and “description” into the new key “source” in the source_id section.
CMOR updates
- When a specified log file already exist, CMOR send a warning message about renaming the log file.
- Fix setgridmapping in python when using ‘dictionary’.
- Add cmorsetdeflate() to documentations.
- Update CMIP6 tables to 01.00.06
- Fix subexperimentid and sub_experiment attribute from “None” to “none” as specified in the CMIP6 attribute documentation.
New attribute verification
- parentexperimentid – must be consistent with experiment_id
- If value specified for parentexperimentid is not “none”, then user must also supply CMOR with:
- branch_method – a character string
- branchtimein_child – a double precision number
- branchtimein_parent – a double precision number
- parentsourceid – must be found in CMIP6sourceid.json (restricted to a single entry)
* parenttimeunits – must be of the form “days since
[( )]” - The calendar should only be specified if different from the calendar in the child.
must be replaced by a string naming a valid CF calendar (e.g., “days since 1850-1-1 (noleap)”). - parentvariantlabel – must be of the form r
i p f , where j, k, l, and m are positive integers
- If value specified for parentexperimentid is not “none”, then user must also supply CMOR with:
CMOR will generate
- parentactivityid -- implied by parentexperimentid
- parentmipera – must be ‘CMIP6’
- parent_experiment is “none” the following global attributes are not required, but will be reset as follows by CMOR:
- branch_method – “no parent”
- branchtimein_child – a double precision number
- branchtimein_parent –0.0, stored as a double precision number
- parentactivityid – “no parent”
- parentexperimentid – “no parent”
- parentmipera – “no parent”
- parentsourceid – “no parent”
- parenttimeunits – “no parent”
- parentvariantlabel – “no parent”
Update PrePARE
Move PrePARE in LIbCV as a package and create an “entry_point” in python which will allow “import PrePARE” in Python especially for ESGF uses.
Update CMIP6_CV (Control Vocabulary file) with latest entries from WCRP
Add all new parent_xxx global attribute verifications.
Check if filename is consistent with CMIP6 template.
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.2.2
CMOR version 3.2.2
- Update CMIP6 tables to 01.00.03
- Add unique temp filename for embarrassingly parallel run
- Main table variable definition(CMIP6_AMON) now supersedes Formula Terms Variable definition.
- Allow user to set Chunking manually (See: test_chunking.py)
- Disable CMOR_CRITICAL on some variable attributes.
- Allow user to specify AXISENTRYFILE and _FORMULAENTRY_FILE for flexibility with obs4MIPs and Input4MIPs
- Add Continuous integration TravisCI
- Update all Tests to use new table names and new variables names.
Update PrePARE
- Fix
missing_values(extra s) in Control Vocabulary. - Move PrePARE in LIbCV as a package and create an “entry_point” in python which will allow
import PrePAREin Python especially for ESGF uses. - Update CMIP6_CV (Control Vocabulary file) with latest entries from WCRP
Note: The License Validation has not been added, although I learned that there seems to be a consensus
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.2.1
- CMIP6_Validator is now called PrePARE and can be found in the script directory
- usage: PrePARE [-h] [--variable VARIABLE] cmip6_table infile [outfile]
- Add tracking_id "hdl:21.14100/" validation
- Split tables into 3 separated files.
- CMIP6_coordinates.json (contains all axes)
- CMIP6formulaterms.json (contains all formula variables)
- CMIP6_
.json (contain header and variables)
- New CMIP6_Odec.json table
- Delete CMIP6_AmonAdj.json
- Add tables to revision 01.beta.45 from CMIP6 data request site
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.1.2
- Add new test suites and fix travis.yml
- Add polar stereographic examples
- Merge Emma Hogan exception signal branch (pythonerrrorhandling)
- Delete createoutputpath from pywraper.
- Add json-c include in Makefile.
- Fix zfactor variable not being written bug.
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.1.3
- Corrections in CMIP6 Tables for cellmethods and cellmeasure field (they were inverted).
- Fix old CMIP6_Omon formula variables took from the wrong CMIP5 files from CMOR2 (TestTables).
- I check the other tables and all formula variables are set correctly (using cmip5-cmor-tables repository).
- I check the other tables and all formula variables are set correctly (using cmip5-cmor-tables repository).
- Update CMIP6 Tables to 01.beta.38
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.1.1
- CMOR tables in sync with 01.beta.30 CMIP6 data request
- Add cmip6_cv python module for CMIP6 Validation.
- Add CMIP6Validator.py
- Update all experiments using Karkl Taylor's spreadsheet 062116.cvs
- fix traceback error color;
- fix email address and website in CV file.
- Fix wrong JSON error message when setup is not done properly.
- Create default directory automatically with warning instead of critical error.
- Fix dataset_json return value is now handled properly.
- change variantid to variantlabel in cmor.h
- Add unittest for creating directory without permission.
- Enhanced Control Vocabulary file.
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.2.5
Main changes from last revision (3.2.5)
Formula variables have been separated from
CMIP6variable to avoid conflict between them. For exampleorogexists as a formula variable and also exists as a time dependent variable which can be found inCMIP6_Emon.jsonfor realmland.IMPORTANT z_factors(formula) are now dependent of the time coordinate.
| formula var | use | meaning | ---------------|-----|------------------| | ps | time | average (must have bounds) | | ps1| time1 | instantaneous (no bounds) | | ps2 | time2 | climatology | | eta | time | average (must have bounds) | | eta2 | time2 | climatology
PrePARE now uses regular expression to verify each element in a strict manner.
- CMIP6 -> "^CMIP6$"
Source is Validated up to the
:character- PCMDI test (1989): [description]
Salinity Units were added per request:
psu, pss-78 and Practical Salinity Units 78- This will allow conversion to
0.001automatcally.
- This will allow conversion to
Missing Value for integer variable is now working. Default is -999 and can be changed or added in the tables.
- "missing_value": "1e20",
- "intmissingvalue": "-999",
Fix attributes
branch_time_validation in PrePARE.Trap SIGTERM signal in CMOR and PrePARE when
CRITICAL ERRORis issued to avoidcore dumponOpenSUSEsystems.Fix Chunking for
timecoordinate variable. The chunk size is set to1unless it is overwritten by the user.LatitudeandLongitudecoordinate variables are now set toCONTIGUOUS
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.2.7
Main changes from last release (3.2.6 -> 3.2.7)
- Update netcdf libraries in order to run UV-CDAT and CMOR in the same conda environment.
- Create a conda shared environment to facilitate installation
- https://github.com/PCMDI/cmor/blob/master/recipes/conda-envs/cmor.yml
- conda env create -f cmor.yml
- Fix HISTORY metadata for obs4MIPS
CMOR 3.2.7 documentation
http://cmor.llnl.gov or in pdf form at http://cmor.llnl.gov/pdf/
DOI (source code)
https://doi.org/10.5281/zenodo.893083
Github (source code)
https://github.com/PCMDI/cmor/releases/tag/CMOR-3.2.7
Conda installation
To install cmor into your root anaconda environment
conda install -c conda-forge -c pcmdi cmor
Or to generate a dedicated anaconda environment
conda create -n cmor3.2.7 -c conda-forge -c pcmdi cmor
Using this cmor meta yaml file.
conda env create -n cmor3.2.7 -f cmor-3.2.7.yml
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.2.8
Main changes from last release (3.2.7 -> 3.2.8)
- Fix source_id check.
- Fix filesuffix parameter in cmorwrite in order to append to netCDF files.
- Change Standard to CMIP 6.2 in Controlled Vocabulary
- Add type to setvariableattribute API in Python
- Add history template for obs4MIPs and other non-CMIP6 projects
- PrePARE fix FillValue and missingvalue validation in variable attribute
- PrePARE change regex to validate license
- PrePARE change “http://” to “https://” in furtherurlinfo
CMOR 3.2.8 documentation
http://cmor.llnl.gov or in pdf form at http://cmor.llnl.gov/pdf/
DOI (source code)
https://zenodo.org/record/1044063
Github (source code)
https://github.com/PCMDI/cmor/releases/tag/CMOR-3.2.8
Conda installation
To install cmor into your root anaconda environment
conda install -c conda-forge -c pcmdi cmor
Or to generate a dedicated anaconda environment
conda create -n cmor3.2.8 -c conda-forge -c pcmdi cmor
Using this cmor meta yaml file.
conda env create -n cmor3.2.8 -f cmor-3.2.8.yml
- C
Published by dnadeau4 11 months ago
cmor - CMOR version 3.3.0
Main changes from last release (3.2.8 -> 3.3.0)
This release is primarily aimed at performance and resource usage improvements. We have optimized the memory usage in CMOR and PrePARE. In addition, we changed the file IO library for PrePARE from CDMS2 to CDUNIF to achieve an order of magnitude speedup in file validation operations. These changes should achieve a considerable speedup in ESGF data publication, and a considerable reduction in memory usage enabling better parallelization and scaling of multiple concurrent write operations
A summarized list of the key changes in this release include:
- Accelerate file validation by PrePARE from 2s to 0.1s (IPSL request)
- Fix PrePARE/CMOR memory issue where table references were not dynamically assigned
(MOHC request)
- remove fixed double array to dynamic double due to the number of objects increasing
- Optimize PrePARE file validation speed to reduce validation operations
- Call
Cdunif.solibrary directly instead ofcdms2
- Call
- “long_name” variable attribute is no longer being validated by PrePARE (CERFACS request)
- Update “license” REGEX to allow “/” at the end of URL (GFDL request)
- Update “Conventions” REGEX to allow “CMIP-6.0” up to the current “CMIP-6.2” release
- Update grid tables
- remove standardname to verticeslatitude and vertices_longitude for CF-1 and CMIP-6.2 compliance
CMOR 3.3.0 documentation
http://cmor.llnl.gov or in pdf form at http://cmor.llnl.gov/pdf/
DOI (source code)
https://doi.org/10.5281/zenodo.1115862
Github (source code)
https://github.com/PCMDI/cmor/releases/tag/CMOR-3.3.0
Conda installation
To install cmor into your root anaconda environment
conda install -c conda-forge -c pcmdi cmor
Or to generate a dedicated anaconda environment
conda create -n cmor3.3.0 -c conda-forge -c pcmdi cmor
Using this cmor meta yaml file
conda env create -n cmor3.3.0 -f cmor-3.3.0.yml
- C
Published by durack1 11 months ago
cmor - CMOR version 3.1.0
CMOR has been updated to convert files to rewrite model output for the Climate Model Inter-comparison Project (CMIP6).
It can also be used to convert satellite data for the following projects: obs4MIPs, input4MIPs and CREATE.
CMOR 3.1.0 permits great flexibility of Global Attributes as well as Control Vocabulary using JSON files.
- C
Published by dnadeau4 11 months ago
cmor - CMOR 3.9.0
Features
* Added the functions cmor_set_quantize and cmor_set_zstandard for exposing the data quantization and Zstandard compression utilities of the netCDF library since version 4.9.0.
* MacOS arm64 builds for use on Apple silicon (M-series CPUs).
Bugfixes
* The attribute realm will not be written to files if it is not specified in the required_global_attributes of a controlled vocabulary.
Changes
* End of support for Python 3.8.
* Compatibility with the Numpy 2.0 C API.
* Use netCDF's default chunking rather than setting chunk size to 1 for coordinates/axis such as time to enhance performance of reading netCDF variables.
Closed Issues * Exposing latest netcdf 4.9.x library functionality: quantize, zstandard (#725) * arm64 build (#663) * default realm = "REALM" is always written although not required by CV (#736) * Numpy 2.0 compatibility issue (#742) * Performance issues with small chunks (#601)
- C
Published by mauzey1 over 1 year ago
cmor - CMOR 3.8.0
CMOR 3.8.0 is the first release built to work natively with the mip-cmor-tables, CMIP6Plus_CVs, input4MIPs_CVs and obs4MIPs_CVs. The software has been generalized to allow more broad usage following the new CVs templates noted above.
Changes
* CMOR will throw an error if it processes a JSON file that contains null values. Used to avoid segfaults.
* When processing attributes in variable entries, any JSON list values will be converted into a space-separated lists string. Used for the dimensions and modelingrealm variable attributes.
* Modeling realm strings were being split by spaces and only had the first word found stored in the realm attribute of the file. This has been fixed by storing the whole realm string.
* The `furtherinfourlattribute is no longer created automatically unless it is listed in the CV'srequiredglobal_attributes` list.
Closed Issues * updates for mip-cmor-tables (#709) * CMOR segfaults with mip cmor tables and CMIP6Plus CV.json (#718) * Remove unused attributes when processing CMIP6Plus datasets (#723)
- C
Published by mauzey1 almost 2 years ago
cmor - CMOR 3.7.3
Changes * CMOR now supports Python 3.12.
Bugfixes
* Fixed error caused when cmor_write writes arrays with more than 231-1 elements.
* Fixed segmentation fault casued when the value for further_info_url in the user input is an empty string or only whitespace.
* Fixed implicit declaration compilation error in cmor.c.
Closed Issues * #700 CMOR segfaults when furtherinfourl is specified as an empty or pure whitespace string * #706 CMOR failure when attempting to write large volume of data * #710 "call to undeclared function 'calculateleadtimecoord'" error in recent Xcode/Clang build for OSX * #711 Python 3.12 build
- C
Published by mauzey1 over 2 years ago
cmor - CMOR 3.7.2
Changes
* testsrunner is no longer being used for running CMIP6 CV tests, which are now a part of make test.
* CDMS2 is no longer supported.
Bugfixes
* Removed deprecated NumPy types numpy.float and numpy.int, which caused errors with NumPy >=1.24.
Closed Issues * Removing testsrunner from testing suite * CDSM2 is no longer compatible with the latest build of CMOR * Deprecated NumPy aliases for float and int causing errors in Python
- C
Published by mauzey1 almost 3 years ago
cmor - CMOR 3.7.1
Changes * End of support for Python 3.7. * CMOR now supports Python 3.11. * The Python 3.11 build of CMOR will not support CDMS2.
Bugfixes
* Fixed issue with Python 3.10 build of PrePARE where it was skipping files due to an issue with the check_filename function.
* CMOR failed when doing multiple writes to a dataset with seasonal forecast time coordinates ('reftime' and 'leadtime'). Fixed by checking if the 'leadtime' coordinate already exists.
Closed Issues * python 3.11 build * PrePARE skipping files in Python 3.10 builds * Multiple write bug
- C
Published by mauzey1 about 3 years ago
cmor - CMOR 3.7.0
Features
* CMOR automatically sets attributes in a dataset using the registered data listed in a project CV's sourceid entry (e.g. `Tables/CMIP6CVs.jsonorTables/input4MIPs.json), reducing the input requirements from a user. This feature can be overridden by setting the attributes in the user input file (e.g.user_input.json).
* Added ability to writereftimeandleadtime` coordinates to datasets for forecast data.
Changes * End of support for Python 3.6. * CMOR now supports Python 3.10. * The CCLRC license has been replaced with a BSD-3 license. * Updated warning and error messages from retired listserv email address cmor@listserv.llnl.gov to pcmdi-cmip@llnl.gov. * Updated CMOR and CF versions listed in the Fortran wrapper.
Bugfixes
* PrePARE would crash if the experiment_id attribute is not present in a dataset. It will now check for the presence of experiment_id before further processing the dataset.
* PrePARE was generating errors when processing cell_methods values that contained multiple comments, which are substrings in parentheses embeded in the values. PrePARE can now handle cell_methods values containg mulitple comments.
* Fixed error caused by an error message exceeding the maximum string size when an attribute value cannot be validated with a list of values from the CV.
* Corrected typo in udunits initialization message.
Closed Issues * Remove Python 3.6 build * Issue with json-c and Python 3.6 builds * implement lead time coordinate * Illegal instruction error when region attribute is not found in the CV * Python 3.10 support * PrePARE UnicodeDecodeError when scanning dummy NO_ATTRIBUTES.nc netCDF file * Typo correct in UDUNIT initialization * PrePARE is having issues handling handling cell_methods values containing multiple comments * License template update * Cleaning up CMOR input file vs registered content sources * Update CMOR mailing list email address * Add BSD-3 license to repo
- C
Published by mauzey1 over 3 years ago
cmor - CMOR 3.6.1
CMIP6_CVs-6.2.55.1/DREQ-01.00.33/CMOR-3.6.1
Changes * End of support for Python 2.7. * CMOR now supports Python 3.9.
Bugfixes
* Fixed handling of Unicode string values in cmor.axis for the Python API.
Closed Issues * Discontinue Python 2.7 support in the next version of CMOR * Python 3.9 support * cmor.axis is not handling unicode string values correctly in Python
- C
Published by mauzey1 about 5 years ago
cmor - CMOR 3.6.0
CMIP6_CVs-6.2.52.2/DREQ-01.00.31/CMOR-3.6.0
Features
* Added the option --hide-progress to PrePARE to remove the number of files completed while processing files.
* Added the option --no-text-color to PrePARE to remove the color code from the terminal output.
* Added the option --version to PrePARE to output the version of CMOR/PrePARE in use.
Changes
* CMOR now supports Python 3.8.
* Changed Control Vocabulary to Controlled Vocabulary.
* Improved error messages for supported data types in pywrapper.py.
* Removed gfortran 4.8.5 requirement for OSX.
* CMOR will now allow axis values to be within 1.e-6 fractional error for valid_min and valid_max.
* cmor_CV_checkSourceID will throw an error if source is not found in a source_id section of the CV.
* In the function cmor_CV_checkParentExpID, if parent_experiment_id is "" or not found in the variable file, then it will be set to "no parent" if that is the valid value for parent_experiment_id in the CV.
* When parent_experiment_id is a value other than "no parent" in the function cmor_CV_checkParentExpID, it will check the attributes parent_activity_id, branch_method, branch_time_in_child, branch_time_in_parent, parent_time_units, parent_variant_label, parent_source_id, and parent_mip_era, and only return an error after going through all of them.
Bugfixes
* Improved how comments in the cell_methods attribute are handled.
* Fixed error message for false_northing in cmor_set_grid_attribute
* Fixed issue with PrePARE not counting errors for attribute errors.
* Fixed errors when processing the nwdFracLut variable in the Emon table.
* PrePARE will now check if external_variables exists when values are present in cell_measures.
* PrePARE will now give an error if the activity_id is wrong.
Closed Issues
* Python 3.8 support
* Change "Control Vocabulary" to "Controlled Vocabulary"
* in PrePARE, logfile-friendly output format
* Handling comments in "cell_methods" in PrePARE
* Copy-&-paste error in error message on false_northing and projection_y_coordinate in cmor_grids.c
* Error message mis-match
* Recursive directory output issue / error vs warning
* Remove fortran compiler 4.8.5 requirement for OSX
* Error that doesn't cause failure when producing mrsos for Lmon
* nwdFracLut in Emon
* Unclear why Files SKIPPED
* Wrong activity_id warning (should be error?), etc..
* add --version command line argument to PrePARE
* Error handling in cmor_CV.c
- C
Published by mauzey1 almost 6 years ago
cmor - 3.5.0
CMIP6_CVs-6.2.35.3/DREQ-01.00.31/CMOR-3.5.0
Changes
* CMOR now supports Python 3.6 and 3.7.
* PrePARE will stop if CMIP6coordinate.json, CMIP6formulaterms.json, and CMIP6CV.json are missing from the table directory.
* Changed missing value replacement history message to include "corresponding data".
* The UUID library ossuuid has been replaced with libuuid
* CMOR will now use the json-c library installed from conda-forge instead of building its own library.
* In the Python API, CMOR will throw an error if the number of time steps being passed to cmor.write is less than ntimes_passed.
* If the number of timesteps written is less than the length of the time axis, CMOR will give a warning when closing.
* cdms2 has been replaced with Netcdf4 for use in PrePARE.
Bugfixes
* Fixed bug in PrePARE where it crashes when it does not find the _FillValue attribute in a file.
* Fixed error caused by variables having both a singleton dimension and a generic level.
* Fixed bugs in PrePARE where it was not processing the attribute cell_measures correctly.
* Fixed bug caused by cmor.write in the Python API when the number of time steps passed is less than the ntimes_passed argument.
* Fixed bug when handling the olevhalf dimension.
* Fixed error caused by variables having multiple singleton dimensions.
* Fixed bug when using CMOR in Append mode for instantaneous variables.
* Fixed bug caused by multiple instances of CMOR running a file permissions test by writing a test file. Each test file will now have the instance's PID in the file name.
* Fixed bug where the frequency of the variable used in the last call to cmor_write is applied to the output file name of all variables when calling cmor_close_variable or cmor_close.
Closed Issues * Update cmor3 for python3 * PrePARE missing _FillValue exit * cmor should stop if coordinates table is not present * singleton and generic level * PrePARE cell_measures changed in 3.4.0 * cmor.write segfault related to timesteps * Question about handling of missing values in cmor_variable.c * Bug in treating olevhalf * switch from ossuuid to libuuid * Two or more singleton dimensions (bs550aer) * vendorizing json-c * Append mode for instantaneous variables * not passing enough times as data passes * not writing enough times should issue a warning at exit * Builds breaking from cdms2 issue related to libnetcdf * Falsely alerting missing write permissions cmor.c#L1683 * CMOR using incorrect frequencies for variables when closing programs with multiple frequencies.
- C
Published by mauzey1 over 6 years ago
cmor - CMOR 3.4.0
CMIP6_CVs-6.2.15.0/DREQ-01.00.29/CMOR-3.4.0
- C
Published by mauzey1 about 7 years ago
cmor - CMOR version 3.3.1
Main changes from last release (3.3.0 -> 3.3.1)
A summarized list of the key changes in this release include: * Add multiprocessing and parallelization for PrePARE * Fix basin integer missing value * Move code around in PrePARE.py * Check in source section is defined in CV sourceid * Fix external variable issue * Fix climatology issue * Change georegion to sector * Change branchtime message * Fix timebnds issue and missing_value for Ofx test
CMOR 3.3.1 documentation
http://cmor.llnl.gov or in pdf form at http://cmor.llnl.gov/pdf/
DOI (source code)
https://doi.org/10.5281/zenodo.1173383
Github (source code)
https://github.com/PCMDI/cmor/releases/tag/CMOR-3.3.1
Conda installation
To install cmor into your root anaconda environment
conda install -c conda-forge -c pcmdi cmor
Or to generate a dedicated anaconda environment
conda create -n cmor3.3.1 -c conda-forge -c pcmdi cmor
Using this cmor meta yaml file
conda env create -n cmor3.3.1 -f cmor-3.3.1.yml
- C
Published by dnadeau4 about 7 years ago
cmor - CMOR Version 3.3.3
CMIP6_CVs-6.2.8.23/DREQ-01.00.24/CMOR-3.3.3
- C
Published by doutriaux1 over 7 years ago
cmor - CMOR version 3.3.2
Main changes from last release (3.3.1 -> 3.3.2)
A summarized list of the key changes in this release include:
CMOR
- Fix climatology filename issue that was introduced in 3.3.1 merging obs4MIPs code.
- Update table to 01.00.23
- Clean all tags in
cmor3andcmip6_cmor_table repo. - Change
geo_regiontosectorfor region labels.
PrePARE
- Add error code in
pythonfor cmor_CV functions.- cmorCVcheckFilename()
- cmorCVcheckSubExpID()
- cmorCVcheckParentExpID()
- cmorCVsetInstitution()
- cmorCVcheckSourceID()
- cmorCVcheckExperiment()
- cmorCVcheckGrids()
- cmorCVcheckFurtherInfoURL()
- cmorCVcheckGblAttributes()
- cmorCVcheckISOTime()
CMOR 3.3.2 documentation
http://cmor.llnl.gov or in pdf form at http://cmor.llnl.gov/pdf/
DOI (source code)
Github (source code)
https://github.com/PCMDI/cmor/releases/tag/3.3.2
Conda installation
To install cmor into your root anaconda environment
conda install -c conda-forge -c pcmdi cmor
Or to generate a dedicated anaconda environment
conda create -n cmor3.3.2 -c conda-forge -c pcmdi cmor
Using this cmor meta yaml file
conda env create -n cmor3.3.2 -f cmor-3.3.2.yml
- C
Published by dnadeau4 almost 8 years ago
cmor - Latest Release
This release updates support for mac/clang computers
- C
Published by doutriaux1 over 11 years ago