Skip to content

Map channels to Var Channels - #181

Merged
Michael Cooke (mikecooke77) merged 58 commits into
developfrom
feature/map_chans
Dec 7, 2023
Merged

Map channels to Var Channels#181
Michael Cooke (mikecooke77) merged 58 commits into
developfrom
feature/map_chans

Conversation

@orlewis

@orlewis Owen Lewis (orlewis) commented Sep 25, 2023

Copy link
Copy Markdown
Contributor

This PR adds the functionality to map channels defined in JOPA to channels in Var for the varobs writer.

As part of this change the offset channels option has been removed as this can nw be covered using the varChannels mapping option.
use_actual_channels has been replaced by a compress_var_channels. This determines whether to compress channel numbers together i.e 3, 5, 100 in just three indices or if do not compress this would have an array of size 100.

This will require changes to radiance yamls in Sith.

Requires this change to be coordinated.
https://github.com/MetOffice/sith/pull/262

Owen Lewis (orlewis) and others added 29 commits July 18, 2023 13:58
… ChannelIndices might have been in the wrong place.
…151 in opsinputs_varobswriter_mod.F90 when going to the opsinputs_varobswriter_fillchannumandandnumchans function.
…dd it as an explicit entry in opsinputs_varobswriter type instead of being inside the channel_offset type (which was removed)
…names. Not really what we want but want to save a copy.
@orlewis

Copy link
Copy Markdown
Contributor Author

The latest KGO output is here http://fcm1/cylc-review/view/olewis?&suite=sith_map_chans_kgo_231023&no_fuzzy_time=0&path=log/job/20210701T1200Z/glu_jopa_compare_output/09/job.out all passing apart from GPSRO which is currently failing the main nightly KGO.
Using the current nightly GPSRO varobs and cx output all comparisons match as seen in http://fcm1/cylc-review/view/olewis?&suite=sith_map_chans_kgo_231023&no_fuzzy_time=0&path=log/job/20210701T1200Z/glu_jopa_compare_output/11/job.out

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Hi Owen, some comments and questions

Comment thread src/opsinputs/VarObsWriterParameters.h Outdated
Comment thread src/opsinputs/opsinputs_fill_mod.F90 Outdated
Comment thread src/opsinputs/opsinputs_utils_mod.F90 Outdated
Comment thread src/opsinputs/opsinputs_fill_mod.F90 Outdated
Comment thread test/testinput/010_VarField_britemp.yaml
Comment thread src/opsinputs/opsinputs_fill_mod.F90

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Hi Owen, coming back to this

Comment thread test/testinput/010_VarField_britemp.yaml
compress_var_channels: false
size_of_varobs_array: 4
varChannels: 2, 4 #[5,7]
increase_chan_array: true

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This option doesn't seem to have an impact (output is the same as the previous test). Does this option need a different test?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Hi Owen, I am generally happy that the current behaviour is replicated as expected, but as noted there is room to improve the way this works in future.

@ctgh Chris Thomas (ctgh) left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

The routines opsinputs_fill_fillreal2d_norecords and opsinputs_varobswriter_fillchannumandnumchans now both contain long nested if blocks. What do you think about creating two helper functions to move some of that functionality outside of those functions? That might make the logic of the code a bit easier to follow and maintain. Just an idea - no problem if you think it won't be useful.

@orlewis

Copy link
Copy Markdown
Contributor Author

The routines opsinputs_fill_fillreal2d_norecords and opsinputs_varobswriter_fillchannumandnumchans now both contain long nested if blocks. What do you think about creating two helper functions to move some of that functionality outside of those functions? That might make the logic of the code a bit easier to follow and maintain. Just an idea - no problem if you think it won't be useful.

I think this would be useful but also at this point I think we should get this code in and ready to use for the Geostationary radiances so they can be finished for the global.

@ctgh Chris Thomas (ctgh) left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Sure, fine for me.

@mikecooke77

Copy link
Copy Markdown
Collaborator

Owen Lewis (@orlewis) there is some pressure to get the geos done before xmas. Is this ready to go. Has the latest code been re-run with the sith-kgo. If not could this be set to run asap?

@orlewis

Copy link
Copy Markdown
Contributor Author

There is KGO from 31/10/23 but there has been one change since then which was adding IMDI. http://fcm1/cylc-review/taskjobs?per_page=15&user=olewis&no_fuzzy_time=0&suite=sith_map_chans_kgo_231031&task_status=runahead&task_status=waiting&task_status=held&task_status=queued&task_status=expired&task_status=ready&task_status=submit-failed&task_status=submit-retrying&task_status=submitted&task_status=retrying&task_status=running&task_status=failed&task_status=succeeded&page=2 there are failures related to GPSRO KGO but these were consistent with the nightly tests at the time.

Because it has been a month I''l rebuild and run them again today.

@chawnharlow

Copy link
Copy Markdown

Hi guys, I just need to let you know that David Simonin has requested that the GEOs get treated as priority which means that this PR should be seen as high priority. I've not been following the action here, but if you can wrap it up that would be greatly appreciated. Thanks.

@ctgh

Copy link
Copy Markdown
Collaborator

Chawn Harlow (@chawnharlow) We have two approvals so this can be merged if the KGO tests are passing. I can do the merge this afternoon if everything is OK.

@orlewis

Copy link
Copy Markdown
Contributor Author

http://fcm1/cylc-review/view/olewis?&suite=sith_kgo_mapchans_231204&no_fuzzy_time=0&path=log/job/20210701T1200Z/glu_jopa_process_background_ssmis/01/job.out Getting this error across several obs on the JOPA run. Haven't been able to find where it is coming from this morning.

@ctgh

Copy link
Copy Markdown
Collaborator

varno number with the same dimension was recently added to ioda. Therefore I suspect you need to update all of the repositories in your local mo-bundle, rebuild, and rerun the KGO tests.

@orlewis Owen Lewis (orlewis) added coordinate merge Pull requests that require coordination with pull requests in other repos and removed help wanted Extra attention is needed labels Dec 6, 2023
@orlewis

Copy link
Copy Markdown
Contributor Author

KGO results are in http://fcm1/cylc-review/view/olewis?&suite=sith_kgo_mapchans_231204&no_fuzzy_time=0&path=log/job/20210701T1200Z/glu_jopa_compare_output/02/job.out

All passed.

@ctgh
Chris Thomas (ctgh) marked this pull request as ready for review December 6, 2023 13:42
@ctgh

Copy link
Copy Markdown
Collaborator

Good news. Michael Cooke (@mikecooke77) I have added the 'ready to merge' label if you would like to take one more look.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

coordinate merge Pull requests that require coordination with pull requests in other repos

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants