-
Notifications
You must be signed in to change notification settings - Fork 568
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
Fb wind stress #483
Fb wind stress #483
Conversation
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.
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
regarding last modification date
input files needed in regtest
…into fb_coupling_fields
has now index (2,19) instead of (2,18)
@aliabdolali, @JessicaMeixner-NOAA, @ukmo-juan-castillo - Do you have any strong opinions on the comment I made above regarding adding FLX5 switches to the changes in this PR to avoid passing RHOAIR, TAUA and TUADIR to the source term subroutines all the time? It would also avoid writing out the interpolated values in w3iopomd unless FLX5 is used. I think it makes sense, but it does make some of the SRC subroutine calls a bit messier, e.g. in w3srcemd.ftn this:
becomes this (with a funky double switch!):
I've prepared a branch with this change on, so if you agree, we can merge it directly into @ukmo-nievesvaliente's branch. |
The double switch is definitely messy in the source term call, but if these are not allocating, writing out, computing, etc variables which are only needed for FLX5, then your ukmo-waves/WW3@1669d94 commit seems like it should go in because that is keeping inline with only defining and making calculations if they are needed. |
I agree with the double switch. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, @ukmo-nievesvaliente for doing this development. Here are some additional comments:
- Could you update model/inp/ww3_shel.inp, model/inp/ww3_multi.inp, model/inp/ww3_ounf.inp and model/inp/ww3_outf.inp and include RHO, TAU and DIR as field outputs.
- the test ww3_tp2.15/input_flx5 is equivalent to ww3_tp2.15/input_rho? if yes, are the model outputs identical? In other words, is the friction velocity calculated internally by WW3 is equal to the one taken directly from the atmospheric stress? If the inputs for this added test are consistent with input_rho, we can use regtests/test.comp (how to use it) to make sure development in the future in either way for calculating the friction velocity will not affect the other one.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The following test failed on noaa hpc:
./bin/run_test -b slurm -c hera.intel -S -T -s MPI -s PDLIB -w work_pdlib -g pdlib -f -p srun -n 24 -o all ../model ww3_tp2.6
The reason is "The type of the actual argument differs from the type of the dummy argument." for multiple variables.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have the following errors for ww3_tp2.15
./bin/run_test -b slurm -c hera.intel -S -T -s ST4 -i input_rho -w work_ST4FLX5 -o netcdf ../model ww3_tp2.15
w3iopomd.F90(434): error #6580: Name in only-list does not exist or is not accessible. [RHOAIR]
USE W3ADATMD, ONLY: RHOAIR
--------------------------^
w3iopomd.F90(534): error #6404: This name does not have a type, and must have an explicit type. [RHOAIR]
DAIRO(I) = RD(1)*RHOAIR(IS(1)) + RD(2)*RHOAIR(IS(2)) + &
-------------------------^
compilation aborted for w3iopomd.F90 (code 1)
Hi @aliabdolali - I cannot reproduce this error on our system with the intel compiler. Can you tell which subroutine call is causing the error? |
I think the fix you made yesterday for w3src4md fixed it. Our main RDHPC is down today for maintenance but I will check it on another machine and tomorrow the entire tests will be performed again. |
@ukmo-ccbunney @ukmo-nievesvaliente The test ran fine on our hpc and aside from pre-known cases, the out_pnt* files are different (as indicated in the PR). ********************* non-identical cases **************************** mww3_test_01/./work_PR3_UQ_MPI (1 files differ) |
@aliabdolali will this change results on the ufs-weather-model regression tests? Have you run those to test -- particularly in light of the out_pnt files being different? If they are different can you please comment in the Expanse PR about this (because it changed since what I said yesterday) and we should probably then also consider a PR to the ufs-weather-model? |
It changes the following ufs-weather-model: |
Pull Request Summary
New switch to drive the wave model with atmospheric wind stress. Enable direct use of atmospheric model wind stress by source terms.
Description
This modification of the code includes a new switch called FLX5. This new switch allows to compute the friction velocity directly from the atmospheric stress (and atmospheric density for consistency) both read from an input file or via coupling. The new switch is compatible with ST4 and ST6 source terms.
Regtest ww3_tp2.15 input_rho is going to be updated to test the new functionality. Expected changes in out_pnt.* files due to the addition of the TAUAO, TAUDO and DAIRO variables to the point output file (out_pnt.ww3; w3iopomd.ftn). No other changes in the regtests are expected.
Issue(s) addressed
Check list
Is your feature branch up to date with the authoritative repository (NOAA/develop)? Yes
Make sure you have checked the checklist for a developer submitting to develop and updating version number done
Please list appropriate labels code managers should add for this PR:
documentation, new feature.
Reviewers: @ukmo-ccbunney @ukmo-juan-castillo
Commit Message
Testing
Please indicate the expected changes in the outputs ([excluding the known list of non-identical tests]
(https://github.com/NOAA-EMC/WW3/wiki/How-to-use-matrix.comp-to-compare-regtests-with-master#4-look-at-results)).
Expected changes in those regtest including out_pnt.*
matrixCompFull.txt
matrixCompSummary.txt
_enhancement , out_pnt change.