Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

upstream changes #3

Open
wants to merge 87 commits into
base: master
Choose a base branch
from
Open

upstream changes #3

wants to merge 87 commits into from

Conversation

ghost
Copy link

@ghost ghost commented Jun 2, 2021

merging upstream changes from NOAA-EMC/WW3/develop

ajhenrique and others added 30 commits April 2, 2019 16:57
HF ounfpart integrates hotfixes from the NCEP/NOAA-EMC auth repo and the trusted repos UKMO and ERDC. The following hotfixes are implemented with this pull request:

* Bugfix in ww3_ounf.ftn: NBIPART check against NOSWLL was not accouting for zeroth wind partition. See Issue #2.
* Updating link.wcoss_phase2 for grib compile, removing !$ lines in ww3_uprstr that broke compilation of codes with OMPH OMPG switch flags, added new global wave model switch.
* Added option for writing to fixed netcdf gridded output file when using NCO switch (the issue will be fixed more adequately in v7 following Issue NOAA-EMC#8).
* DB1 depth-breaking_bugfix: added proper scaling coefficients for radian freq. [radHz]. See issue NOAA-EMC#7 .

Hotfixes were tested using the full regression testing matrix at NCEP which resulted in differences only in regtests wher DB1 was employed, as expected.
The shared object, named libww3.so, has been added as a target at the makefile, it is created similar to the other executables and libraries of WW3 (./w3_make libww3.so); the "libww3.so" resides at the [...]/obj folder.
Branch esmf_makefile: Updating Makefile for NEMS build, adding codes needed for NCEP operational applications using NEMS.
* Modifications to support using intel option and generalized cmplr.env comp/link framework for building WW3 esmf for NEMS application
* Changes to make work on NCEP R&D machine
* Changing Makefile to ensure compilation of ww3_multi occurs in all platforms.
Pull request for HF to master featuring:
* bugfix for netcdf file id allocation
* remove extra line due to copy/paste error
* add WCOR to switch list
* add check on array index
* undo modification on ndates
* add feature for fixed filename with ndates=0 for ww3_ounf
…OAA-EMC#39) (NOAA-EMC#55)

running parallel make. Only an issue if compiler does not allow switch
to target a different directory to output mod files.
Branch slurm_regtests: timing option -T added to run_test, option to run batch queue [slurm] -b added to run_test, created new matrix_ncep with slurm directives for R&D testing, corrected bug in matrix.base ww3_ts4 [mpi tests were missing -p -n flags].
Thanks to reviewers @JessicaMeixner-NOAA and @aliabdolali for assessing changes. 

* Branch esmf_makefile: Creating branch to update Makefile for NEMS buil adding codes needed for NCEP operations.
* Pull request for compiling shared objects. (NOAA-EMC#47)
* Fixed bug on ad3 when listing mod files.
"This PR yields smaller memory usage for the PDLIB and is an unambiguous win.
* Port 2 hera (NOAA-EMC#101)

Includes NCEP development machine Hera to cmplr.env if blocks allowing compilation of WW3 executables under NEMS. A correction to run_test is made to allow empty values of the batchq parameter.
* Adding hera for NEMS coupled application builds
* regtests scripts matrix_ncep and run_test: adding feature to run on several NCEP compute systems, adding a conditional statement on run_test to check if batchq parameter is non-empty and avoid error when it is.
* Adding hera option for openmp runs in regtests: intel compiler on hera requires flag to be -qopenmp instead of -openmp
* Changing '=' to '==' in cpmlr.env for consistent usage when comparing strings.
…hings (NOAA-EMC#109)

* superscript to registered trademark in README

* Branch esmf_hybrid: Adding hybrid compile options for OMP threading in esmf build for NEMS app.

* Branch esmf_hybrid: fixing makefile bug for completing make process in esmf area.

* updating w3_make for esmf for hybrid compile option (NOAA-EMC#78)

updating esmf makefile for option to only build library
updating switch to remove FLD2 which is only used for 2way coupling

* spaces to tab in makefile for esmf

* updating comp/link for theia issue for hybrid compilation

* Adding to skip files in matrix.comp Github Issue NOAA-EMC#87

* Removing T400 until parameters can be confirmed and updated

* removing a temp manual file and adding to git ignore list

* Adding hera for NEMS coupled application builds

* more hera updates for NEMS

* adding wind restarts for esmf issues

* updates for proper indexing of tw* and bug fixes
plus debug statements to be removed after more testing

* adding implicit none to wmesmf

* removing w3tide computed gotos - update from Mickael

* remove computed goto

* bugfix for w3iors

* adding WXNwrst because WXN/WYN are not allocated yet

* removing debug write statements

* adding wrst to manual

* adding WRST to w3_new

* when WRST is allocated a second time it was zeroing out field
so a variable was added to make sure it was only allocated once
Merging Ifremer (umr-lops) trusted repo to the NOAA-EMC/WW3 auth repo.

* add WCOR to switch list
* add check on array index
* correct flag status to read time with new CF convention
when month and day are written on only one character : YYYY-M-D
* set log message into SCRIP comment to avoid misleading error
detection with gnu compiler
* correct bug due to misuse of NAME instead of UNIT for
reading data in input file
* remove linking inp file in conversion scripts
minor typing change in ww3_multi.nml and ww3_bounc.nml
* initialize pointer to avoid random value assignement
* remove exit statement to display full list
of output boundaries
* add check on NDSEN to avoid print on wrong IAPROC
* when creating new points file from input file,
add relative to points file instead of filename
* revert to version number to 7.00
* update matrix_datarmor
* Adding OMPG/OMPH switches for compilation of WW3 using hybrid MPI/OpenMP (NCEP use). 
* Adding options for NCEP wcoss Cray compilation that provides b4b consistency.
* Removed incorrectly placed commas.
* Added UNIT_AB variable to hold unit number for LOAD_ALPHABETA call. Changed unit number from 100 to 110 to avoid Cray reserved unit number range.
* Fixed instability in ww3_tp2.10 regtest by decreasing CFL timestep
* Added !/OMPG switches to OMP directives.
* Added RECL specifier to OPEN statement enabled by switch /O2c. This avoids record length overflow for large dimension grids in WRITE statment with non-advancing I/O.
* Changes for compilation and regtesting on UK Met Office Cray HPC:
  * Added cray_xc to the cmplr.env and w3_setup scripts.
  * Added cray_xc.CCE (Cray Compiler Envrionment) specific comp and link scripts.
  * Explicitly disable OMP in cray comp scripts for non-OMP compilation (Cray compiler enables by default). Note that is still enabled in link script as OMP library is always required by SCRIP code.
  * Updated matrix_ukmo_cray to run everything on a shared node using mpiexec - compilation is not efficient on compute nodes.
  * Add -eg switch (allows use of GOTO jumps into DO loops for SEC1 switch
  * Addition of GNU compilers on Cray architecture.
* Fixed typo in wminitmd.ftn as rasied in NOAA-EMC#94
* Removed extra brackets around variable list that were causing some
compilers to complain.
* Removed UKMO comp/link scripts and updated cmplr.env accordingly
FB_gefsv12: Adding changes to adjust to NCEP operations.

* Changed compile option for NCEP Dell Phase 3, 
* Expanded grib2 output parameters to include Tz, depth, mean direction on ww3_grib, 
* Enforced NOSW=3 on ww3_grid for NCEP operations (NCO switch).
* Added cmplr.env support to new NCEP Dell P3 comp/link
* Changed opt in cmplr.env, comp/link.wcoss_dell_p3 following suggestion to consolidate compiler flags eliminating redundancies and generalizing blocks for several compiler/machine configurations.
* Fixing indices nx/ny for exporting ESMF grid in module /model/ftn/wmesmfmd.ftn
* Correcting the ABX2/ABY2 computation in w3iogomd.ftn
* Moving profiling flag -p to optional block. Removing -p improves performance slightly, which can be welcome in operational applications.
Branch FB_InputInterp: preparing general arrays and loop blocks for generalized interpolation to curvilinear grids.
* Adding interpolation code and functions in wmupdtmd.ftn
* adding interpolation function and subroutine in wmupdtmd.ftn
* Adding Func & Subr to interp recti to curvi grids
* Making INTEGER, INTENT(INOUT) :: NCIDS(NOGRP,NGRPP,NOSWLL + 1) allows for NOSWLL different to the default =5, which can be the case when using the NCO switch (NOSWLL=3). Bugfix suggested by @CarstenHansen
Adding back S3 to define the number of characters in the date for the filename in SBR W3EXNC.
Correct variables and initialization which were affecting b4b reproducibility in WW3 regtests.

* correct typo in COMM_FRAC for ww3_multi.nml initialize variable for TYPE SGRD
update matrix_datarmor remove unexpected NOPA switch

* correct initialization to avoid b4b difference see regtests : mww3_test03/work_PR2_UQ_MPI_e
mww3_test_03/work_PR3_UQ_MPI_e_c
* Insertion of the PDLIB stuff.

  Mathieu

* Correct unset variable + segmentation fault.

  Mathieu

Co-authored-by: Mathieu Dutour Sikiric <[email protected]>
Co-authored-by: Ty Hesser <[email protected]>
Changes including new features and bugfixes for adding WW3 to the GEFSv12 and GFSv16 coupled systems at NCEP:

Added option to write single output (gridded and point) files at individual specified output time steps (NOAA-EMC#141 ), to allow inline post-processing;
Added option to write second stream of restart files (#1 ) with write stride different to first (default) restart file,
Updated ww3_grib for grib2 encoding following recent additions/changes in WMO tables,
Several bugfixes to new output and restart options, including alignment of MPI calls and resources, backwards compatibility with multiple output configurations specified in regtests,
Changes to compile options for WCOSS to allow b4b.
Please find results from the regtest matrix comparisons in the comment below.
)

Changes reflect NEMS update allowing using generalized build scripts cmplr.env + comp/link.tmpl instead of machine-specific comp/link files. 
* Updated wcoss entries in cmplr.env
* Deleted comp/link.wcoss files
Fix typo in optc for adding xHOST flag.
* Added sea-swell variants for uprstr, tidied code for consistency in option blocks
* Updates to .inp file and added UPD5 and UPD6 regtests
* Code and regtests revision to ww3_uprstr to read restart wind
Update modules and regtests to use WRST switch
* Updated uprstr logic to deal with SMC grids and X,Y wind restarts
* Updated ww3_uprstr comments and manual entry
* Correct handling of OMP flags when generating comp/link scripts using cmplr.env file.
* Added option to specify search pattern used to grep warnings/errors from compiler output
* Added ww3_ta* regtests to matrix.comp
* Fixed incorrect "myname" variable - as noted in review of PR132 by
@flampouris

Co-authored-by: Andy Saulter <[email protected]>
OpenMP bugfix package

* Including additional variables in PRIVATE OMP declaration in attempt to fix OMP b4b irreproducibility issue (Jim Abeles)
* Adding changes to several modules with OpenMP loops to declare properly PRIVATE variables and avoid suprious assignment of values that lead to b4b reproducibility issues. Expanded matrix_ncep to run hybrid MPI/OMP cases
* Modified w3adc.f to enable processing of multiple switches on a single line (to be continue as per NOAA-EMC#167 )
Co-authored-by: @JamesAbeles-NOAA and Chris Bunney <[email protected]> and @CarstenHansen
* Added change comment

* Updated w3adc to increase maximum input line length and limit
number of switches on line to 4

* Updated all_switches script to handle multiple switches on a line

* Update manual to document new multi switch feature of w3adc
aliabdolali and others added 25 commits January 13, 2021 11:11
* Added boundary checks to the SMC grid input files for ww3_grid,
to ensure they comply with the limits of the nameslist.

* Fb 360 calendar (NOAA-EMC#8)

Changes to add support to 360-day and 365-day (no leap year) calendar - see ticket NOAA-EMC#209
  * Additional CALTYPE namelist parameter in MISC section
  * New ww3_tc1 regtest.

* RTD support for ww3_boun[dc] (NOAA-EMC#10)

* Updated ww3_bound and ww3_bounc to handle model grids formulated on a rotated pole.
* Manual and nml/inp files to updated clarify that ww3_bound/ww3_bounc only accept input spectra formulated on a standard pole grid.

* Fb coupling time (NOAA-EMC#9)

Updates to allow a coupling time step that is different from the model time step. 
* Includes new regtest (in ww3_tp2.14) for non-default oasis time step.
* ww3_tp2.14 regtest added to matrix.base.

* bug fix for ukmet development

* Updating develop with a change to allow code build using non-standard NetCDF libraries using alphabetical characters in their version name.

Co-authored-by: lewis.sampson <[email protected]>
Co-authored-by: Juan Manuel Castillo Sanchez <[email protected]>
Co-authored-by: Chris Bunney <[email protected]>
Co-authored-by: Ali Abdolali <[email protected]>
* removing file that should not be in repository

* adding to .gitignore to avoid future .*.swp files

* remove unused files from aux directory

* removing comp.* link.* files as we now use the cmplr.env
* Added new peak period (TP) gridded output field derived from the
existing peak freq (FP0) internal field.

* Added alternative direction/magitude convenrion output for directional fields in ww3_ounf

* Update docs

* Added TP output and alternative dir/mag directional output to ww3_tnc1
regtest.

* Added TP output to ww3_outf. Also added to tp2.11 regtest.

* Update ww3_gint for new TP field

* Fixed circular dependency due to USEing w3odatmd and w3gdatmd in
w3servmd

* Removed VECTOR option from ww3_ounf.inp file - only user confiugurable
via namelist file ww3_ounf.nml.

* Fixed missing MPI communication setup for TP field

* Switched (incorrect) TM01 field for TP field in regtest ww3_tp2.11
* making TAUNUX, TAUNUY threadprivate
- update from @JamesAbeles-NOAA
* adding gaae and jet to WW3 cmplr, also adding '.intel' to NCEP
machines for future flexibility of having '*.gnu' options
* adding thread private for w3canomd since it's called from
W3SREF which is called in w3srce which is threaded
* added more saved variables to threadprivate
* fix cmpr.env for typo and add files to gitignore
* removing two files that should  have been removed in a previous PR
…-EMC#325)

can be used when reading the points.list file in nml mode. Suggestion
by @CarstenHansen.
* changing file type (removing execute option)

* adding in-line comments to document the usage of the WRST switch NOAA-EMC#110
* Create pull_request_template.md
* Update issues templates for enhancement, documentation, bug report and suggestion
* First set of changes intended to fix the bug (NOAA-EMC#19)

Fixes: NOAA-EMC#314
* Interpolation weights now correctly calculated on points next to land and BC locations.
* Changes to improve the code: the possibility of reading zero values from
the input is considered, and points that should not be taken into
account in the interpolation are identified by the netcdf fill value; a
subroutine is created to avoid code duplication

* Bug fix and small simplification/optimization change (NOAA-EMC#18)

* Fixes NOAA-EMC#290 (ww3_multi hanging when generating restart with IOSTYP >= 2)
* Also fixes out-of-bounds array access error.
* Includes some MPI optimizations

* Correction to the bug fix in branch bf_multi_hang
to take into account the coupled
    configurations, that are also affected

* Small correction to the multi_hang branch: revert changes to JSEA index
in w3iorsmd

Co-authored-by: Juan Manuel Castillo Sanchez <[email protected]>
Co-authored-by: ukmo-juan.castillo <[email protected]>
* Added boundary checks to the SMC grid input files for ww3_grid,
to ensure they comply with the limits of the nameslist.

* Fb 360 calendar (NOAA-EMC#8)

Changes to add support to 360-day and 365-day (no leap year) calendar - see ticket NOAA-EMC#209
  * Additional CALTYPE namelist parameter in MISC section
  * New ww3_tc1 regtest.

* RTD support for ww3_boun[dc] (NOAA-EMC#10)

* Updated ww3_bound and ww3_bounc to handle model grids formulated on a rotated pole.
* Manual and nml/inp files to updated clarify that ww3_bound/ww3_bounc only accept input spectra formulated on a standard pole grid.

* Fb coupling time (NOAA-EMC#9)

Updates to allow a coupling time step that is different from the model time step. 
* Includes new regtest (in ww3_tp2.14) for non-default oasis time step.
* ww3_tp2.14 regtest added to matrix.base.

* bug fix for ukmet development

* Periodicity fix for global unstructured grids

 - Corrects calculation of element areas and edge lengths across the
   dateline in w3triamd.ftn

 - Fixes calculation to determine whether a point is inside an element
   that spans the dateline in w3triamd.ftn

 - Corrects calculation of element centers and corners across dateline
   in wmscrpmd.ftn

 - Write out SCRIP file in netCDF format at the end of ww3_grid
   (for creating offline remaping files). This required adding netCDF support
   to ww3_grid

 - Also includes minor fix for the /O7a switch in w3iopomd.ftn

* modify the model/ftn/w3triamd.ftn and model/ftn/wmscrpmd.ftn and change from global grids from min(longitude)=-180, max(longitude)=180 to \delta(longitude)=360 degrees and added the regression test ww3_tp2.21

* bug fix for ww3_grid make without SCRIP switch

* Fix for corner node periodicity in wmscrpmd.ftn

* PDLIB/yowpdlibmain.ftn: fix to handle global meshes

* bug fix for SCRIPNC switch

* update info for ww3_tp2.21 for domain decomposition and PDLIB option

* fix for mww3_04 link with SCRIP and SCRIPNC switch

* add inputs to tar file, update model/bin/ww3_from_ftp.sh and remove inputs from ww3_tp2.21

* reduce the duration of ww3_tp2.21 for the sake of regtest time

* small editorial fixes

* fixes for SCRIPNC switch

* change date for ww3_ounf and ww3_ounp for ww3_tp2.21

* edit w3_make

Co-authored-by: lewis.sampson <[email protected]>
Co-authored-by: Juan Manuel Castillo Sanchez <[email protected]>
Co-authored-by: Chris Bunney <[email protected]>
Co-authored-by: Ali Abdolali <[email protected]>
Co-authored-by: Steven Brus <[email protected]>
Co-authored-by: Steven Brus <[email protected]>
Co-authored-by: Lorenzo Mentaschi <[email protected]>
* Added boundary checks to the SMC grid input files for ww3_grid,
to ensure they comply with the limits of the nameslist.

* Fb 360 calendar (NOAA-EMC#8)

Changes to add support to 360-day and 365-day (no leap year) calendar - see ticket NOAA-EMC#209
  * Additional CALTYPE namelist parameter in MISC section
  * New ww3_tc1 regtest.

* RTD support for ww3_boun[dc] (NOAA-EMC#10)

* Updated ww3_bound and ww3_bounc to handle model grids formulated on a rotated pole.
* Manual and nml/inp files to updated clarify that ww3_bound/ww3_bounc only accept input spectra formulated on a standard pole grid.

* Fb coupling time (NOAA-EMC#9)

Updates to allow a coupling time step that is different from the model time step. 
* Includes new regtest (in ww3_tp2.14) for non-default oasis time step.
* ww3_tp2.14 regtest added to matrix.base.

* bug fix for ukmet development

* add the matrix subsetter

* clean-up

* clean up

* add another script which separate serial and parallel jobs and divide them

* modify the script to remove ../model? after test completion.

* bug fixes and adding ww3_tp2.17 to list_heavy

* add if statement to remove matrix? and model?

* Update matrix_divider_p.sh

* Merge remote-tracking branch 'upstream/develop' into fb_matrix_divider

* Merge remote-tracking branch 'upstream/develop' into fb_matrix_divider

* put if check for ../model? inside matrix? loop

* fix the bug for sed for model?

* final fix for extra model? removal

* add 2.21 to the list_heavy

Co-authored-by: lewis.sampson <[email protected]>
Co-authored-by: Juan Manuel Castillo Sanchez <[email protected]>
Co-authored-by: Chris Bunney <[email protected]>
Co-authored-by: Ali Abdolali <[email protected]>
* updates for NetCDF comp/linking Issue NOAA-EMC#332

fixes from @aerorahul

* Updating matrix_ncep to use hpc-stack modules

* update path for orion hpc-stack and change np, nr, nth

* add module purge and revert 8->24

* update NetCDF in ww3_tp2.14 oasis test makefile
* 🐛 inconsistent check and deallocation

* ⭐ improved tidal output around equator

* 🐛 TIDECON_NAME and TIDE_FREQC are not deallocated/allocated as pairs

* ♻️ restored TIDECON_NAME allocation/deallocation

Co-authored-by: sanderh <[email protected]>
* Changes to fix issue NOAA-EMC#341

* Fix the bug in a different way, as with the previous solution the
information read from the restart file is wrongly overwritten
* Insertion of the PDLIB stuff.

  Mathieu

* bug in SIGN call when SCRIP is activated

* update SIGN issue

Co-authored-by: Mathieu Dutour Sikiric <[email protected]>
Co-authored-by: erdc-tyler.hesser <[email protected]>
* ⭐ add nearest interpolation to ww3_gint

* 📝 updated log messages

* 🐛 select the point with the most weight, not least

* ⭐ add nearest interpolation to ww3_gint

* 📝 updated log messages

* 🐛 select the point with the most weight, not least

* 📝 fixed format 917

* 📝 ww3_gint: explain linear and nearest options

* 📝 ww3_gint.inp: describe interpolation options

* 📝 ww3_grid.inp: added grid types

Co-authored-by: Ali <[email protected]>
Co-authored-by: sanderh <[email protected]>
* update w3_new for thread switches

* adding files to .gitignore

* fix formatting

* initialize GA0, GAN, GD0, GDN for moving grids

This appears to have been causing an issue in ww3_ts3 test cases
when using OMP or MPI_OMPH that have not appeared before.
This PR adds new fields that can be sent (mean wave number, mean wave period, total ocean wind stress) and received (air density, wind stress) to/from other models via OASIS coupling, which will also be available in the model output. The fields that can be received via coupling can also be read from an external file, and using a homogeneous ice fraction is now activated when using '.inp' input files, as it was already possible to do it using '.nml' input files. In order to add this functionality it was necessary to modify the format of the ww3_shel.inp and ww3_multi.inp files, so that new flags controlling if these fields are used can be read. Furthermore, the format of the ww3_outf.inp file must be modified to accommodate the new output fields available.

If no air density is read from file or via coupling, the default constant value is used. The infrastructure to read and use the wind stress is already in place, but the actual use of wind stress to drive the model is not implemented yet and it will be the aim of issue NOAA-EMC#337

* Fb oasis t+0 (NOAA-EMC#13)

In the original code a coupling lag had to be used, coupling took place at the last time step but not at the first, and the coupling fields had to be written in an oasis restart file. With this ticket, the program can run in a different way by not using a coupling lag, coupling taking place at the first time step but not the last, and the coupling fields are written in the wave restart file - no extra oasis restart file needed.

* Fb uprstr inp (NOAA-EMC#15)

Enhancement to improve the way in which input data is read in and logged by the ww3_uprstr program:
  * read in variables specific to the update process selected
  * output the values provided in the ww3_uprstr.out log file
  * update the .inp template file and regtests to improve clarity and work with the changes
  * add capability to read inputs from a namelist (ww3_uprstr.nml) file

* First set of changes, still testing

* Some fixes

* Further changes mainly fixing vector boundaries

* Main changes

* Most changes already present, only need to write in output and restart

* Further changes - activate coupling

* Bug fixes to make the code compile

* Further changes to run regtests

* Minor fixes for output, manual, and switches

* Small fix to comments in model input

* Remove some lines that had to be removed but were overlooked

* Substitute ATTX and ATXX switches by WNTX and WNXX; add comments
regarding last modification date

* Change in file missed in latest commit

* Minor changes fixing version change

* Small fixes after reviewer's comments and to fix regtest

* Changes to pass regtests

* Addition of a new regtest and small fixes to ww3_prnc

* Time-interpolate air density when read from file

* Ensure that units are consistent

* Restore long name in metadata for new fieds, and update code version for
input files needed in regtest

* Update last modification date; corrections for new output field: WNMEAN
has now index (2,19) instead of (2,18)

* Fixes from Jessica Meixner; update date of last change in restart file

* Small fix to the format of the example input file ww3_multi.inp

* Some fixes after merging with latest version of develop

* Correct one version number

* Fix the header of the table printed in log.ww3, should not cause changes
in the output

* Minor fix in the ww3_shel.inp file of one of the regtests

* Update ww3_shel.inp

* Some fixes and improvements that were proposed during the review process

* Added comment to the new regtests implemented in ww3_tp2.15

Co-authored-by: Andy Saulter <[email protected]>
Co-authored-by: ukmo-chris.bunney <[email protected]>
Co-authored-by: Ali.Abdolali <[email protected]>
Co-authored-by: aliabdolali <[email protected]>
Co-authored-by: Chris Bunney <[email protected]>
Adds extra netCDF meta-data configuration to `ww3_ounf`, in particular:

 - new “coordinate reference system” (default and user definable)

  - new optional forecast variables: `forecast_reference_time` and `forecast_period`

  - template values for partitioned parameters

  - alternative time variable encoding and variable type; encoding can be “seconds since” or “days since”, variable type can be `int64` or `double`.

  - new `w3ounfmeta` module with linked list implementation of attribute pairs; number of extra user attributes per variable is now unlimited.

  - new `vector` flag for controlling u/v or dir/magnitude for directional fields [currently this is only implemented for “CUR” and “WND” outputs.

  - Handling of SMC grids in output IFI,IFJ loop has been factored out into a single subroutine call.

Note: some new features are only available when using the namelist input file.
* Rename ww3_grid.ftn -> w3gridmd.ftn

* Make body of ww3_grid into module

* Substitute w3gridmd for ww3_grid in w3_new
* add wcoss2 to the list of machines
fast-forward `develop` branch from `NOAA-EMC/WW3/develop`
@ghost ghost self-assigned this Jun 2, 2021
@ghost ghost requested review from pvelissariou1 and saeed-moghimi-noaa June 2, 2021 17:58
Copy link

@saeed-moghimi-noaa saeed-moghimi-noaa left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi Zach
Regarding WW3
I suggest the we simply edit the sub-module file to reference to the one I have used in v53
Andre is working to upgrade ww3 and we need to pull that one in any case.
Or we can just leave it as it is now.
All I want to say is that in might nor worth your time now. We may keep the issue in back burner for now (based on my meeting with andre today).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.