Skip to content

revised diagnostics entries to match prognostics#220

Open
JhanSrbinovsky wants to merge 2 commits intoResolvePPFCcode-2from
PushRecordChanges2dignostics-2
Open

revised diagnostics entries to match prognostics#220
JhanSrbinovsky wants to merge 2 commits intoResolvePPFCcode-2from
PushRecordChanges2dignostics-2

Conversation

@JhanSrbinovsky
Copy link

@JhanSrbinovsky JhanSrbinovsky commented Sep 25, 2025

Here we add the diagnostic records (section=3) to match the prognostic records (section=0)

Note: STASH records 907:915 in section. 3 diagnostics don’t have a counterpart in prognostics - section 0

From UM docs: PPFC number

#|Model |Sectn | Item |Name |
#|Space |Point | Time | Grid |LevelT|LevelF|LevelL|PseudT|PseudF|PseudL|LevCom|
#| Option Codes | Version Mask | Halo |
#|DataT |DumpP | PC1 PC2 PC3 PC4 PC5 PC6 PC7 PC8 PC9 PCA |
#|Rotate| PPFC | USER | LBVC | BLEV | TLEV |RBLEVV| CFLL | CFFF |

The “Space” code in section 0 variables (=3) is appropriate for prognostics. (See belo) exert from UM doc paper). These were edited =0 for diagnostics appropriate for prognostics.

Space Code

The space code. Specifies the space requirements of a STASH item. If a diagnostic is calculated only
when required by STASH (i.e. under a STASH flag), or is only copied to STASHwork under a STASH flag,
then the space code is 0. The possible values of space code are:
0 Diagnostic field for which space is required only when the diagnostic is requested.
2 Section 0, 33, 34 or 54 items only: primary field available to STASH.
3 Section 0, 33 or 34 items only: primary field unavailable to STASH which is addressed in the dump
and D1. etc etc

Otherwise, the records match the prognostic side records.

@JhanSrbinovsky JhanSrbinovsky self-assigned this Sep 25, 2025
@JhanSrbinovsky JhanSrbinovsky marked this pull request as draft September 25, 2025 04:16
@JhanSrbinovsky
Copy link
Author

Attached are two files for your convenience. They are both subsets cut out of the STASHmaster file. prognostics/diagnostics

diag-220.txt
prog-220.txt

@JhanSrbinovsky
Copy link
Author

There is something amiss here. The nccmp of data does not entirely check out. Investigating now

@JhanSrbinovsky
Copy link
Author

JhanSrbinovsky commented Sep 26, 2025

Each record has 5 lines.

#|Model |Sectn | Item |Name |
#|Space |Point | Time | Grid |LevelT|LevelF|LevelL|PseudT|PseudF|PseudL|LevCom|
#| Option Codes | Version Mask | Halo |
#|DataT |DumpP | PC1 PC2 PC3 PC4 PC5 PC6 PC7 PC8 PC9 PCA |
#|Rotate| PPFC | USER | LBVC | BLEV | TLEV |RBLEVV| CFLL | CFFF |

The 1st line containing the name change is fine.

The 2nd line we have replaced grid=2 with grid=21. This results in differences exposed by nccmp. This was not expected given the description of grid=2and21. I'll investigate this further AFTER submitting a revised file that does pass nccmp testing.

The 3rd line - unexpectedly the version Code seems to be causing a problem. It was always expected that diagnostics (section=3) records would expose different treatment of the record's values in general BUT this causing no difference in the prognostic records I didn't think the version code would be a problem here. nonetheless it is and has been reverted to its previous value

The 4th line change is fine.

The 5th line change is fine.

In summary, lines 2 and 3 which had no effect on the prognostics were reverted when those same changes were imposed on the diagnostics in order to maintain bitwise reproducibility.

It may be neater then to revert these same lines in the prognostics such that the records are the same? OTOH this does represent a point of difference between/n the two - although it isn't a point of difference that has any impact on the prognostics section anyway.

OK - so that answers that question. Testing shows it won't work with either lines 2 or 3 from the diagnostics applied to section 0. see committed version

#
1| 1 | 0 | 883 |SOIL ORDER (VALUE FROM 1 TO 12) |
2| 2 | 0 | 1 | 21 | 5 | -1 | -1 | 0 | 0 | 0 | 0 |
2| 3 | 0 | 1 | 21 | 5 | -1 | -1 | 0 | 0 | 0 | 0 |
Copy link
Author

Choose a reason for hiding this comment

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

These changes here , space=3 seems a more appropriate code than =2 which all the others are

#
1| 1 | 3 | 801 |SOIL LAYER 1 TEMPERATURE ON TILES |
2| 0 | 0 | 1 | 2 | 5 | -1 | -1 | 9 | 1 | 9 | 0 |
1| 1 | 3 | 801 |CABLE SOIL TEMPERATURE LAYER 1 (K) |
Copy link
Author

@JhanSrbinovsky JhanSrbinovsky Sep 26, 2025

Choose a reason for hiding this comment

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

these are all of the diagnostics being brought into line with prognostics less the records which testing showed cannot be changed

@JhanSrbinovsky JhanSrbinovsky marked this pull request as ready for review September 29, 2025 05:55
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.

1 participant