2025-07-29_02:05:38 [INFO] : __main__ : Starting main() 2025-07-29_02:05:38 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Control Experiment: 2025-07-27 2025-07-29_02:05:38 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : ('Non-control Experiment(s): ', ['2025-07-28']) 2025-07-29_02:05:38 [INFO] : __main__ :  2025-07-29_02:05:38 [INFO] : __main__ : Analyzing StatsDB for gnssrobndropp1d 2025-07-29_02:05:38 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : ===================================================== 2025-07-29_02:05:38 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Construct pandas dataframe from static database files 2025-07-29_02:05:38 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : ===================================================== 2025-07-29_02:05:38 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Reading intermediate statistics files 2025-07-29_02:05:38 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : with 128 out of 128 processors Generating CY-type figures control: 2025-07-27 experiments: ['2025-07-27:jwittig_3denvar-60-iter_O120km_VarBC.2025-07-27_cron', '2025-07-28:jwittig_3denvar-60-iter_O120km_VarBC.2025-07-28_cron'] obs omb/oma None 2018-04-21 18:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-15 00:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-15 06:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-15 12:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-15 18:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-16 00:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-16 06:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-16 12:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-16 18:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-17 00:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-17 06:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-17 12:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-17 18:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-18 00:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-18 06:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-18 12:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-18 18:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-19 00:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-19 06:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-19 12:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-19 18:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-20 00:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-20 06:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-20 12:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-20 18:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-21 00:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-21 06:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-21 12:00:00 2025-07-29_02:05:39 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Working on cycle time 2018-04-21 18:00:00 2025-07-29_02:05:53 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Concatenating statistics sub-dictionaries from multiple processors 2025-07-29_02:05:53 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Constructing a dataframe from statistics dictionary 2025-07-29_02:05:54 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Sorting the dataframe index 2025-07-29_02:05:55 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : Extracting index values 2025-07-29_02:05:56 [INFO] : analysis.StatisticsDatabase.gnssrobndropp1d : availableDiagnostics: ['rltv_omb', 'omb', 'sigmaob'] 2025-07-29_02:05:56 [INFO] : analysis.Analyses.gnssrobndropp1d : Analyses Constructed 2025-07-29_02:05:56 [INFO] : analysis.Analyses.gnssrobndropp1d : Entering Analyses.analyze() 2025-07-29_02:05:56 [INFO] : analysis.AnalysisBase.gnssrobndropp1d.BinValAxes2D : analyze() 2025-07-29_02:05:56 [INFO] : analysis.AnalysisBase.gnssrobndropp1d.BinValAxes2D : rltv_omb, LonLat2D, identity /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) 2025-07-29_02:06:10 [INFO] : analysis.AnalysisBase.gnssrobndropp1d.BinValAxes2D : rltv_omb, LatImpact2D, identity /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) 2025-07-29_02:06:15 [INFO] : analysis.AnalysisBase.gnssrobndropp1d.BinValAxes2D : omb, LonLat2D, identity /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) 2025-07-29_02:06:29 [INFO] : analysis.AnalysisBase.gnssrobndropp1d.BinValAxes2D : omb, LatImpact2D, identity /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/multidim/BinValAxes2D.py:369: RuntimeWarning: invalid value encountered in double_scalars t /= normalizingStat /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) 2025-07-29_02:06:34 [INFO] : analysis.AnalysisBase.gnssrobndropp1d.BinValAxes2D : sigmaob, LonLat2D, identity /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) 2025-07-29_02:06:41 [INFO] : analysis.AnalysisBase.gnssrobndropp1d.BinValAxes2D : sigmaob, LatImpact2D, identity /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/StatisticsDatabase.py:459: FutureWarning: The behavior of indexing on a MultiIndex with a nested sequence of labels is deprecated and will change in a future version. `series.loc[label, sequence]` will raise if any members of 'sequence' or not present in the index's second level. To retain the old behavior, use `series.index.isin(sequence, level=1)` return self.df.loc[Loc, :] /glade/derecho/scratch/jwittig/repos-s/mpas-jedi-cron/graphics/analysis/AnalysisBase.py:296: RuntimeWarning: divide by zero encountered in double_scalars dmax = np.nanmax([dmax, 1.0/dmin]) 2025-07-29_02:06:44 [INFO] : analysis.Analyses.gnssrobndropp1d : Exiting Analyses.analyze() 2025-07-29_02:06:44 [INFO] : __main__ : Finished main() successfully