Opened 11 years ago

Closed 10 years ago

#356 closed defect (fixed)

Is there an error in ionospheric correction?

Reported by: sti Owned by: sti,ssy,idculv
Priority: normal Milestone: 8.0
Component: ROPP (all) Version: 7.1
Keywords: Cc:

Description

ropp_pp_ionospheric_correction

Line 384

ba_12 = (/ ba_low(1,i) - ba_is(i), &

ba_low(2,i) - ba_is(i)*(f_L1/f_L2)2 /)

I think this is incorrect, and not consistent with user-guide (eq.240).

Please investigate.

Attachments (11)

refrac_3h4d_testxxa.png (45.6 KB ) - added by Ian Culverwell 11 years ago.
refrac_1h4d_testxxa.png (47.1 KB ) - added by Ian Culverwell 11 years ago.
refrac_av_diff_356.png (19.6 KB ) - added by Ian Culverwell 10 years ago.
refrac_sd_diff_356.png (18.9 KB ) - added by Ian Culverwell 10 years ago.
ropp_pp_comp1_ROPP71.jpg (39.4 KB ) - added by Ian Culverwell 10 years ago.
ropp_pp_comp2_ROPP71.jpg (39.9 KB ) - added by Ian Culverwell 10 years ago.
ropp_pp_comp1_ROPP80.jpg (44.0 KB ) - added by Ian Culverwell 10 years ago.
ropp_pp_comp2_ROPP80.jpg (40.4 KB ) - added by Ian Culverwell 10 years ago.
IT-PP-02_ifort12_ROPP71.png (21.5 KB ) - added by Ian Culverwell 10 years ago.
IT-PP-02_ifort12_ROPP80.png (23.1 KB ) - added by Ian Culverwell 10 years ago.
figure_1.png (53.3 KB ) - added by Ian Culverwell 10 years ago.

Download all attachments as: .zip

Change history (23)

comment:1 by Ian Culverwell, 11 years ago

Owner: changed from Ian Culverwell to idculv,sti,cburrows,ssy?
Status: newassigned

comment:2 by Ian Culverwell, 11 years ago

Owner: changed from idculv,sti,cburrows,ssy? to sti,ssy,idculv

comment:3 by Ian Culverwell, 11 years ago

The key thing appears to be a need to replace

ba_12 = (/ ba_low(1,i) - ba_is(i), &
                    ba_low(2,i) - ba_is(i)*(f_L1/f_L2)**2 /)

by

ba_12 = (/ ba_diff(1,i) - ba_is(i), &
                    ba_diff(2,i) - ba_is(i)*(f_L1/f_L2)**2 /)

comment:4 by Ian Culverwell, 11 years ago

In other words, use the actual obs - MSIS bangle diff, as in Eqn 2.43, not the low-frequency smoothed version.

There seems to be general agreement about this, eg these T+3 refrac O-Bs (courtesy Stig) show much smaller std devs when using ba_diff rather than ba_low:

For obs within 1 hour of the analysis time the effect is even bigger:

by Ian Culverwell, 11 years ago

Attachment: refrac_3h4d_testxxa.png added

by Ian Culverwell, 11 years ago

Attachment: refrac_1h4d_testxxa.png added

comment:5 by Ian Culverwell, 10 years ago

Making this change to ropp_pp_ionospheric_correction.f90 at r4214 causes the following difference in refractivity when the 50 GRAS profiles in IT-PP-02.nc are passed through ropp_pp_invert_tool:

average ROPP8.0 - ROPP7.1

standard deviation ROPP8.0 - ROPP7.1

An sd of ~ 0.01 N-units at 15km (where N ~ 25 N-units) is about 0.04%, which is the same ballpark as the thin-thick differences shown in Stig's plots above.

by Ian Culverwell, 10 years ago

Attachment: refrac_av_diff_356.png added

by Ian Culverwell, 10 years ago

Attachment: refrac_sd_diff_356.png added

comment:6 by Ian Culverwell, 10 years ago

Resolution: fixed
Status: assignedclosed

All looks good, so closing ticket.

comment:7 by Ian Culverwell, 10 years ago

Resolution: fixed
Status: closedreopened

comment:8 by Ian Culverwell, 10 years ago

Note the large increase in noisiness of the refractivity, esp below 25km, when ropp_pp_invert_tool is run on the single COSMIC occ in the first test of the make test procedure:

ROPP7.1

ROPP8.0

Some of this noise must be because we start from (presumably) smoothed bending angles. When we process from phases, using ropp_pp_occ_tool, the differences narrow:

ROPP7.1

ROPP8.0

by Ian Culverwell, 10 years ago

Attachment: ropp_pp_comp1_ROPP71.jpg added

by Ian Culverwell, 10 years ago

Attachment: ropp_pp_comp2_ROPP71.jpg added

by Ian Culverwell, 10 years ago

Attachment: ropp_pp_comp1_ROPP80.jpg added

by Ian Culverwell, 10 years ago

Attachment: ropp_pp_comp2_ROPP80.jpg added

comment:9 by Ian Culverwell, 10 years ago

This increased noisiness is enough to fail the test folder, eg

IT-PP-02 ROPP7.1

IT-PP-02 ROPP8.0

by Ian Culverwell, 10 years ago

Attachment: IT-PP-02_ifort12_ROPP71.png added

by Ian Culverwell, 10 years ago

Attachment: IT-PP-02_ifort12_ROPP80.png added

comment:10 by Ian Culverwell, 10 years ago

Since everyone's agreed that this change should go ahead, we therefore need to update the reference data.

by Ian Culverwell, 10 years ago

Attachment: figure_1.png added

comment:11 by Ian Culverwell, 10 years ago

The jump in behaviour at 20 km is consistent with what Sean found earlier ('old' = ROPP7.1; 'new' = ROPP8.0):

comment:12 by Ian Culverwell, 10 years ago

Resolution: fixed
Status: reopenedclosed

Updated ref figs at r4226.

Re-closing ticket.

Note: See TracTickets for help on using tickets.