Skip to content

Commit b522ae8

Browse files
david-rundlematthewrmshinctgh
authored
Add FY3-E MWSFY3E obtype (#248)
* Adding MWSFY3E support to opsinputs. Merged from OPS branch 17656_mwsfy3e * add cx writer fields * Update Ops_SubTypeNameToNum.inc Accidentally overwrote MWSSG! * Update Ops_SubTypeNameToNum.inc preserve alphabetical order * Add test copied from mwsfy3 * add unit test netcdf --------- Co-authored-by: Matt Shin <[email protected]> Co-authored-by: Chris Thomas <[email protected]>
1 parent e306da6 commit b522ae8

18 files changed

+95
-7
lines changed

deps/ops/stubs/OpsMod_CXGenerate/Ops_GetDefaultCxFields.inc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,7 @@ SELECT CASE (ObsGroup)
211211
StashItem_qcl,StashItem_p,StashItem_p_surface, &
212212
StashCode_u10,StashCode_v10,StashCode_t2,StashCode_rh2, &
213213
StashCode_pmsl/)
214-
CASE (ObsGroupMWSFY3)
214+
CASE (ObsGroupMWSFY3, ObsGroupMWSFY3E)
215215
CxFields(1:14) = (/StashItem_theta,StashItem_q,StashItem_qcf,StashItem_SST, &
216216
StashItem_SeaIce,StashItem_orog,StashItem_qcl, &
217217
StashItem_p,StashItem_p_Surface,StashCode_u10, &

deps/ops/stubs/OpsMod_Control/Ops_ReadObsGroupSwitches.inc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ Using(ObsGroupSurfaceCloud) = ops_env_is_true ("OPS_SURFACECLOUD")
9393
Using(ObsGroupMWSFY3B) = ops_env_is_true ("OPS_MWSFY3B")
9494
Using(ObsGroupRainAccum) = ops_env_is_true ("OPS_RAINACCUM")
9595
Using(ObsGroupMWSFY3) = ops_env_is_true ("OPS_MWSFY3")
96+
Using(ObsGroupMWSFY3E) = ops_env_is_true ("OPS_MWSFY3E")
9697
Using(ObsGroupMWRI) = ops_env_is_true ("OPS_MWRI")
9798
Using(ObsGroupSAPHIR) = ops_env_is_true ("OPS_SAPHIR")
9899
Using(ObsGroupIN3DIClr) = ops_env_is_true ("OPS_IN3DICLR")

deps/ops/stubs/OpsMod_ODB/OpsFn_ObsToReportType.inc

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -719,6 +719,24 @@ SELECT CASE (Obs % Header % ObsGroup)
719719
END IF
720720
END DO
721721
END IF
722+
CASE (ObsGroupMWSFY3E)
723+
IF (Obs % Header % Satid % Present) THEN
724+
DO i = ob_start, ob_end
725+
IF (Obs % Satid(i) == SatId_FY3E) THEN
726+
report_types(i - ob_start + 1) = rep_type_mwts3_fy3e
727+
ELSE
728+
found_report_type = .FALSE.
729+
DO j = 1, SIZE (map, DIM = 1)
730+
IF (map(j,1) == ObsGroupMWSFY3E .AND. map(j,2) == Obs % Satid(i)) THEN
731+
report_types(i - ob_start + 1) = map(j,3)
732+
found_report_type = .TRUE.
733+
EXIT
734+
END IF
735+
END DO
736+
CALL update_unrecognized_satids (Obs % Satid(i))
737+
END IF
738+
END DO
739+
END IF
722740
CASE (ObsGroupOcean)
723741
IF (Obs % Header % ObsType % Present) THEN
724742
DO i = ob_start, ob_end

deps/ops/stubs/OpsMod_ODB/OpsODB_InitODBElemDesp_Body.inc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ USE OpsMod_ObsGroupInfo, ONLY: &
4242
ObsGroupSAPHIR, &
4343
ObsGroupMTSATImClr, &
4444
ObsGroupMWSFY3, &
45+
ObsGroupMWSFY3E, &
4546
ObsGroupMWRI, &
4647
ObsGroupOcean, &
4748
ObsGroupSatSST, &
@@ -317,7 +318,7 @@ IF (ObsGroup == ObsGroupTOVS) THEN
317318
ElemDesp2ODBDesp(IndexMSU_SSU_BRGTS_TMPR) % Varno = ops_odb_getval (h, "$rawbt_amsu") ! brightness temperature
318319
END IF
319320

320-
IF (ObsGroup == ObsGroupMWSFY3) THEN
321+
IF (ObsGroup == ObsGroupMWSFY3 .OR. ObsGroup == ObsGroupMWSFY3E) THEN
321322
ElemDesp2ODBDesp(IndexBRGTS_TMPR1) % TableName = 'body'
322323
ElemDesp2ODBDesp(IndexBRGTS_TMPR1) % ColName = 'initial_obsvalue'
323324
ElemDesp2ODBDesp(IndexBRGTS_TMPR1) % Varno = ops_odb_getval (h, "$rawbt_mwts") ! brightness temperature

deps/ops/stubs/OpsMod_Varobs/Ops_GetDefaultVarfields.inc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -219,7 +219,7 @@ SELECT CASE (ObsGroup)
219219
Varfield_solzenith,Varfield_tskin,Varfield_tcozone, &
220220
Varfield_surface,Varfield_numchans,Varfield_channum, &
221221
Varfield_stratt,Varfield_iremiss,Varfield_qcinfo/)
222-
CASE (ObsGroupMWSFY3)
222+
CASE (ObsGroupMWSFY3, ObsGroupMWSFY3E)
223223
Varfields(1:13) = (/VarField_britemp,VarField_tskin,VarField_mwemiss, &
224224
VarField_satzenith,VarField_surface, Varfield_stratt, &
225225
Varfield_numchans,Varfield_channum,VarField_satid, &

deps/ops/stubs/OpsMod_Varobs/Ops_SetupVarobsLevDepC.inc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ USE OpsMod_ObsGroupInfo, ONLY: &
7070
ObsGroupRainAccum, &
7171
ObsGroupMWRI, &
7272
ObsGroupMWSFY3, &
73+
ObsGroupMWSFY3E, &
7374
ObsGroupGMIlow, &
7475
ObsGroupGMIhigh, &
7576
ObsGroupHLOSWIND, &
@@ -311,7 +312,7 @@ SELECT CASE (Observations % header % ObsGroup)
311312
ObsLevelType = 0.0
312313
NumLevelLevs = 1
313314

314-
CASE (ObsGroupMWSFY3)
315+
CASE (ObsGroupMWSFY3,ObsGroupMWSFY3E )
315316

316317
ObsLevelType = 0.0
317318
NumLevelLevs = 1

deps/ops/stubs/Ops_Constants/OpsFn_IsSatRadGroup.inc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ IF (obsgroup == ObsGroupABIClr .OR. &
3838
obsgroup == ObsGroupSAPHIR .OR. &
3939
obsgroup == ObsGroupMVIRIClr .OR. &
4040
obsgroup == ObsGroupMWSFY3 .OR. &
41+
obsgroup == ObsGroupMWSFY3E .OR. &
4142
obsgroup == ObsGroupMWRI .OR. &
4243
obsgroup == ObsGroupSEVIRIClr .OR. &
4344
obsgroup == ObsGroupSEVIRIASR .OR. &

deps/ops/stubs/Ops_Constants/OpsFn_ObsGroupNameToNum.inc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,8 @@ SELECT CASE (ObsGroupName)
9090
OpsFn_ObsGroupNameToNum = ObsGroupMWRI
9191
CASE ("MWSFY3")
9292
OpsFn_ObsGroupNameToNum = ObsGroupMWSFY3
93+
CASE ("MWSFY3E")
94+
OpsFn_ObsGroupNameToNum = ObsGroupMWSFY3E
9395
CASE ("OceanSound")
9496
OpsFn_ObsGroupNameToNum = ObsGroupOcean
9597
CASE ("OceanWinds")

deps/ops/stubs/Ops_Constants/OpsFn_ObsGroupNumToName.inc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,8 @@ SELECT CASE (ObsGroup)
8585
OpsFn_ObsGroupNumToName = "MVIRIClr"
8686
CASE (ObsGroupMWSFY3)
8787
OpsFn_ObsGroupNumToName = "MWSFY3"
88+
CASE (ObsGroupMWSFY3E)
89+
OpsFn_ObsGroupNumToName = "MWSFY3E"
8890
CASE (ObsGroupMWRI)
8991
OpsFn_ObsGroupNumToName = "MWRI"
9092
CASE (ObsGroupOcean)

deps/ops/stubs/Ops_Constants/OpsMod_ObsGroupInfo.f90

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,8 @@ MODULE OpsMod_ObsGroupInfo
8080
INTEGER, PARAMETER :: ObsGroupFCIClr = 69 ! => FCI clear-sky radiances
8181
INTEGER, PARAMETER :: ObsGroupSternaMWR = 70 ! => AWS & Sterna microwave radiances
8282
INTEGER, PARAMETER :: ObsGroupEPSMWS = 71 ! => EPS SG MWS
83-
INTEGER, PARAMETER :: max_obs_group_num = 71 ! Number of observation groups
83+
INTEGER, PARAMETER :: ObsGroupMWSFY3E = 72 ! => FY3E microwave sounder data
84+
INTEGER, PARAMETER :: max_obs_group_num = 72 ! Number of observation groups
8485

8586
CONTAINS
8687

0 commit comments

Comments
 (0)