diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/README.md b/README.md new file mode 100644 index 00000000..8cc68dc8 --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# GitHub Pages Cache +Nothing to see here. The contents of this branch are essentially a cache that's not intended to be viewed on github.com. +If you're looking to update our documentation, check the relevant development branch's 'docs/' dir. diff --git a/en/main/.buildinfo b/en/main/.buildinfo new file mode 100644 index 00000000..b9422add --- /dev/null +++ b/en/main/.buildinfo @@ -0,0 +1,4 @@ +# Sphinx build info version 1 +# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. +config: 89cee837b0976258984cb53dbc57f17c +tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/en/main/.doctrees/api.doctree b/en/main/.doctrees/api.doctree new file mode 100644 index 00000000..dcb8074c Binary files /dev/null and b/en/main/.doctrees/api.doctree differ diff --git a/en/main/.doctrees/environment.pickle b/en/main/.doctrees/environment.pickle new file mode 100644 index 00000000..9fee3899 Binary files /dev/null and b/en/main/.doctrees/environment.pickle differ diff --git a/en/main/.doctrees/examples/generic_tutorial.doctree b/en/main/.doctrees/examples/generic_tutorial.doctree new file mode 100644 index 00000000..8d43ce0f Binary files /dev/null and b/en/main/.doctrees/examples/generic_tutorial.doctree differ diff --git a/en/main/.doctrees/examples/index.doctree b/en/main/.doctrees/examples/index.doctree new file mode 100644 index 00000000..81b53c72 Binary files /dev/null and b/en/main/.doctrees/examples/index.doctree differ diff --git a/en/main/.doctrees/examples/plot_atmosphere.doctree b/en/main/.doctrees/examples/plot_atmosphere.doctree new file mode 100644 index 00000000..52f4f5af Binary files /dev/null and b/en/main/.doctrees/examples/plot_atmosphere.doctree differ diff --git a/en/main/.doctrees/examples/plot_brightness_temperature_down.doctree b/en/main/.doctrees/examples/plot_brightness_temperature_down.doctree new file mode 100644 index 00000000..b58f709c Binary files /dev/null and b/en/main/.doctrees/examples/plot_brightness_temperature_down.doctree differ diff --git a/en/main/.doctrees/examples/plot_brightness_temperature_uncertainties.doctree b/en/main/.doctrees/examples/plot_brightness_temperature_uncertainties.doctree new file mode 100644 index 00000000..573f7ae0 Binary files /dev/null and b/en/main/.doctrees/examples/plot_brightness_temperature_uncertainties.doctree differ diff --git a/en/main/.doctrees/examples/plot_brightness_temperature_up.doctree b/en/main/.doctrees/examples/plot_brightness_temperature_up.doctree new file mode 100644 index 00000000..760cb54d Binary files /dev/null and b/en/main/.doctrees/examples/plot_brightness_temperature_up.doctree differ diff --git a/en/main/.doctrees/examples/plot_brightness_temperature_wO3.doctree b/en/main/.doctrees/examples/plot_brightness_temperature_wO3.doctree new file mode 100644 index 00000000..5ede68d1 Binary files /dev/null and b/en/main/.doctrees/examples/plot_brightness_temperature_wO3.doctree differ diff --git a/en/main/.doctrees/examples/plot_bt_era5.doctree b/en/main/.doctrees/examples/plot_bt_era5.doctree new file mode 100644 index 00000000..aaf6b21e Binary files /dev/null and b/en/main/.doctrees/examples/plot_bt_era5.doctree differ diff --git a/en/main/.doctrees/examples/plot_bt_era5_cloudy_profile.doctree b/en/main/.doctrees/examples/plot_bt_era5_cloudy_profile.doctree new file mode 100644 index 00000000..48b42bc3 Binary files /dev/null and b/en/main/.doctrees/examples/plot_bt_era5_cloudy_profile.doctree differ diff --git a/en/main/.doctrees/examples/plot_bt_igra2.doctree b/en/main/.doctrees/examples/plot_bt_igra2.doctree new file mode 100644 index 00000000..364bcc48 Binary files /dev/null and b/en/main/.doctrees/examples/plot_bt_igra2.doctree differ diff --git a/en/main/.doctrees/examples/plot_bt_wyoming.doctree b/en/main/.doctrees/examples/plot_bt_wyoming.doctree new file mode 100644 index 00000000..ef356810 Binary files /dev/null and b/en/main/.doctrees/examples/plot_bt_wyoming.doctree differ diff --git a/en/main/.doctrees/examples/plot_log_dependance_tb.doctree b/en/main/.doctrees/examples/plot_log_dependance_tb.doctree new file mode 100644 index 00000000..e7af9026 Binary files /dev/null and b/en/main/.doctrees/examples/plot_log_dependance_tb.doctree differ diff --git a/en/main/.doctrees/examples/plot_model_cloudy.doctree b/en/main/.doctrees/examples/plot_model_cloudy.doctree new file mode 100644 index 00000000..a1c5ef61 Binary files /dev/null and b/en/main/.doctrees/examples/plot_model_cloudy.doctree differ diff --git a/en/main/.doctrees/examples/plot_water_vapour_profile.doctree b/en/main/.doctrees/examples/plot_water_vapour_profile.doctree new file mode 100644 index 00000000..3b534dca Binary files /dev/null and b/en/main/.doctrees/examples/plot_water_vapour_profile.doctree differ diff --git a/en/main/.doctrees/examples/plot_weighting_functions.doctree b/en/main/.doctrees/examples/plot_weighting_functions.doctree new file mode 100644 index 00000000..fcb6e76b Binary files /dev/null and b/en/main/.doctrees/examples/plot_weighting_functions.doctree differ diff --git a/en/main/.doctrees/examples/sg_execution_times.doctree b/en/main/.doctrees/examples/sg_execution_times.doctree new file mode 100644 index 00000000..45d1419e Binary files /dev/null and b/en/main/.doctrees/examples/sg_execution_times.doctree differ diff --git a/en/main/.doctrees/examples/uncertainty_tutorial.doctree b/en/main/.doctrees/examples/uncertainty_tutorial.doctree new file mode 100644 index 00000000..bd9c7952 Binary files /dev/null and b/en/main/.doctrees/examples/uncertainty_tutorial.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.__init__.doctree new file mode 100644 index 00000000..5dfad99b Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.doctree new file mode 100644 index 00000000..d8b91153 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.implemented_models.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.implemented_models.doctree new file mode 100644 index 00000000..a9283f67 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.implemented_models.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.set_ll.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.set_ll.doctree new file mode 100644 index 00000000..21fb7268 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.AbsModel.set_ll.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.__init__.doctree new file mode 100644 index 00000000..b890499f Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.doctree new file mode 100644 index 00000000..d7b93745 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.doctree new file mode 100644 index 00000000..047daef4 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.doctree new file mode 100644 index 00000000..8f2c17e7 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.doctree new file mode 100644 index 00000000..415270a2 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.doctree new file mode 100644 index 00000000..0c5c1041 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.doctree new file mode 100644 index 00000000..b8868b56 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.__init__.doctree new file mode 100644 index 00000000..18282669 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.doctree new file mode 100644 index 00000000..0a03aea5 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.doctree new file mode 100644 index 00000000..f2e0f0e4 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.doctree new file mode 100644 index 00000000..e37fac6b Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.doctree new file mode 100644 index 00000000..73d46dd7 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.__init__.doctree new file mode 100644 index 00000000..05d53b90 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.doctree new file mode 100644 index 00000000..8ed81f17 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.doctree new file mode 100644 index 00000000..1f96f489 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.doctree new file mode 100644 index 00000000..c4b75978 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.doctree new file mode 100644 index 00000000..4e952879 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.set_ll.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.set_ll.doctree new file mode 100644 index 00000000..afc5e4f6 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.N2AbsModel.set_ll.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.__init__.doctree new file mode 100644 index 00000000..6f71a283 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.doctree new file mode 100644 index 00000000..f303fcab Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.doctree new file mode 100644 index 00000000..c3fcd18f Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.doctree new file mode 100644 index 00000000..8e265e0a Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.set_ll.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.set_ll.doctree new file mode 100644 index 00000000..cb3764c3 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O2AbsModel.set_ll.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.__init__.doctree new file mode 100644 index 00000000..7012e5f8 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.doctree new file mode 100644 index 00000000..68afadba Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.doctree new file mode 100644 index 00000000..006600a0 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.doctree new file mode 100644 index 00000000..d0987fa5 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.set_ll.doctree b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.set_ll.doctree new file mode 100644 index 00000000..aeebc006 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.absorption_model.O3AbsModel.set_ll.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.doctree new file mode 100644 index 00000000..876fabf1 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.doctree new file mode 100644 index 00000000..145d65ed Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.doctree new file mode 100644 index 00000000..aa2404b6 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.doctree new file mode 100644 index 00000000..84faca3c Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.doctree new file mode 100644 index 00000000..31cd38f7 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.IGRAUpperAir.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.IGRAUpperAir.doctree new file mode 100644 index 00000000..25b775a4 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.IGRAUpperAir.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.doctree new file mode 100644 index 00000000..e638aab8 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.doctree new file mode 100644 index 00000000..d16500a2 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.doctree new file mode 100644 index 00000000..5d19e46f Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.doctree new file mode 100644 index 00000000..ea103800 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.doctree b/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.doctree new file mode 100644 index 00000000..d02bd39b Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.__init__.doctree new file mode 100644 index 00000000..9435def2 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.doctree new file mode 100644 index 00000000..14f2b698 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.doctree new file mode 100644 index 00000000..9c09471f Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.doctree new file mode 100644 index 00000000..05d7aeea Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.doctree new file mode 100644 index 00000000..8406063d Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.doctree new file mode 100644 index 00000000..efc2bc6a Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.__init__.doctree new file mode 100644 index 00000000..e2be37ff Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.doctree new file mode 100644 index 00000000..89525dbd Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.pressure.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.pressure.doctree new file mode 100644 index 00000000..158f9a65 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.pressure.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.doctree new file mode 100644 index 00000000..b2660ed3 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.doctree new file mode 100644 index 00000000..6246c63b Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.doctree new file mode 100644 index 00000000..f0709259 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.doctree new file mode 100644 index 00000000..103814a6 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.doctree new file mode 100644 index 00000000..49a7957d Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.temperature.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.temperature.doctree new file mode 100644 index 00000000..75404569 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.temperature.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.doctree b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.doctree new file mode 100644 index 00000000..4ec2dcc0 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.__init__.doctree new file mode 100644 index 00000000..a84701e2 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.bright.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.bright.doctree new file mode 100644 index 00000000..a125f8ef Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.bright.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.doctree new file mode 100644 index 00000000..35e601b9 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.doctree new file mode 100644 index 00000000..303ce00c Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.doctree new file mode 100644 index 00000000..c93a2469 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.doctree new file mode 100644 index 00000000..9e4161c9 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.doctree new file mode 100644 index 00000000..2c06dc01 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.exponential_integration.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.exponential_integration.doctree new file mode 100644 index 00000000..e564966f Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.exponential_integration.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.planck.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.planck.doctree new file mode 100644 index 00000000..d1a51ac1 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.planck.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.ray_tracing.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.ray_tracing.doctree new file mode 100644 index 00000000..60afb9a9 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.ray_tracing.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.refractivity.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.refractivity.doctree new file mode 100644 index 00000000..2215c100 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.refractivity.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.vapor.doctree b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.vapor.doctree new file mode 100644 index 00000000..243cb854 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.rt_equation.RTEquation.vapor.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.doctree new file mode 100644 index 00000000..97c46a5e Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.doctree b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.doctree new file mode 100644 index 00000000..0ef229b3 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.doctree b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.doctree new file mode 100644 index 00000000..da436ad4 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.doctree b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.doctree new file mode 100644 index 00000000..dffe9986 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.doctree b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.doctree new file mode 100644 index 00000000..e3a10090 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.doctree b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.doctree new file mode 100644 index 00000000..2d59f099 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.doctree new file mode 100644 index 00000000..7b1f581b Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.doctree new file mode 100644 index 00000000..99c66303 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.doctree new file mode 100644 index 00000000..638bd2b6 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.doctree new file mode 100644 index 00000000..ce969894 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.doctree new file mode 100644 index 00000000..76d70ddc Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.doctree new file mode 100644 index 00000000..0c3a40a7 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.doctree new file mode 100644 index 00000000..d8945490 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.doctree new file mode 100644 index 00000000..545af125 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.doctree new file mode 100644 index 00000000..a8ed7fa4 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.doctree b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.doctree new file mode 100644 index 00000000..7d35d0ed Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.atmospheric_tickness.doctree b/en/main/.doctrees/generated/pyrtlib.utils.atmospheric_tickness.doctree new file mode 100644 index 00000000..8757afe0 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.atmospheric_tickness.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.constants.doctree b/en/main/.doctrees/generated/pyrtlib.utils.constants.doctree new file mode 100644 index 00000000..8c859b4d Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.constants.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.dewpoint2rh.doctree b/en/main/.doctrees/generated/pyrtlib.utils.dewpoint2rh.doctree new file mode 100644 index 00000000..5194e000 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.dewpoint2rh.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.dilec12.doctree b/en/main/.doctrees/generated/pyrtlib.utils.dilec12.doctree new file mode 100644 index 00000000..607917f4 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.dilec12.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.doctree b/en/main/.doctrees/generated/pyrtlib.utils.doctree new file mode 100644 index 00000000..cc69b309 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.e2mr.doctree b/en/main/.doctrees/generated/pyrtlib.utils.e2mr.doctree new file mode 100644 index 00000000..ba28a716 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.e2mr.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.esice_goffgratch.doctree b/en/main/.doctrees/generated/pyrtlib.utils.esice_goffgratch.doctree new file mode 100644 index 00000000..a0ee3a04 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.esice_goffgratch.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.eswat_goffgratch.doctree b/en/main/.doctrees/generated/pyrtlib.utils.eswat_goffgratch.doctree new file mode 100644 index 00000000..ce76d769 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.eswat_goffgratch.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.gas_mass.doctree b/en/main/.doctrees/generated/pyrtlib.utils.gas_mass.doctree new file mode 100644 index 00000000..75ba138f Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.gas_mass.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.get_frequencies.doctree b/en/main/.doctrees/generated/pyrtlib.utils.get_frequencies.doctree new file mode 100644 index 00000000..410f5d4b Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.get_frequencies.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.get_frequencies_sat.doctree b/en/main/.doctrees/generated/pyrtlib.utils.get_frequencies_sat.doctree new file mode 100644 index 00000000..f52ca035 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.get_frequencies_sat.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.height_to_pressure.doctree b/en/main/.doctrees/generated/pyrtlib.utils.height_to_pressure.doctree new file mode 100644 index 00000000..ad13383c Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.height_to_pressure.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.import_lineshape.doctree b/en/main/.doctrees/generated/pyrtlib.utils.import_lineshape.doctree new file mode 100644 index 00000000..f65905d8 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.import_lineshape.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.kgkg_to_kgm3.doctree b/en/main/.doctrees/generated/pyrtlib.utils.kgkg_to_kgm3.doctree new file mode 100644 index 00000000..a1b4b4b2 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.kgkg_to_kgm3.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.mr2e.doctree b/en/main/.doctrees/generated/pyrtlib.utils.mr2e.doctree new file mode 100644 index 00000000..c3680585 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.mr2e.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.mr2rh.doctree b/en/main/.doctrees/generated/pyrtlib.utils.mr2rh.doctree new file mode 100644 index 00000000..1cdf25b6 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.mr2rh.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.mr2rho.doctree b/en/main/.doctrees/generated/pyrtlib.utils.mr2rho.doctree new file mode 100644 index 00000000..cf96a525 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.mr2rho.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.ppmv2gkg.doctree b/en/main/.doctrees/generated/pyrtlib.utils.ppmv2gkg.doctree new file mode 100644 index 00000000..53184bef Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.ppmv2gkg.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.ppmv_to_moleculesm3.doctree b/en/main/.doctrees/generated/pyrtlib.utils.ppmv_to_moleculesm3.doctree new file mode 100644 index 00000000..7339a961 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.ppmv_to_moleculesm3.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.pressure_to_height.doctree b/en/main/.doctrees/generated/pyrtlib.utils.pressure_to_height.doctree new file mode 100644 index 00000000..bbd3d754 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.pressure_to_height.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.rho2mr.doctree b/en/main/.doctrees/generated/pyrtlib.utils.rho2mr.doctree new file mode 100644 index 00000000..030e8793 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.rho2mr.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.rho2rh.doctree b/en/main/.doctrees/generated/pyrtlib.utils.rho2rh.doctree new file mode 100644 index 00000000..6a87a3af Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.rho2rh.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.satmix.doctree b/en/main/.doctrees/generated/pyrtlib.utils.satmix.doctree new file mode 100644 index 00000000..012029f6 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.satmix.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.satvap.doctree b/en/main/.doctrees/generated/pyrtlib.utils.satvap.doctree new file mode 100644 index 00000000..2424e21e Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.satvap.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.tk2b_mod.doctree b/en/main/.doctrees/generated/pyrtlib.utils.tk2b_mod.doctree new file mode 100644 index 00000000..e69dc3d0 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.tk2b_mod.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.to_celsius.doctree b/en/main/.doctrees/generated/pyrtlib.utils.to_celsius.doctree new file mode 100644 index 00000000..0df8586d Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.to_celsius.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.to_kelvin.doctree b/en/main/.doctrees/generated/pyrtlib.utils.to_kelvin.doctree new file mode 100644 index 00000000..42b85b49 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.to_kelvin.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.utils.virtual_temperature.doctree b/en/main/.doctrees/generated/pyrtlib.utils.virtual_temperature.doctree new file mode 100644 index 00000000..7a82ad66 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.utils.virtual_temperature.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.doctree b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.doctree new file mode 100644 index 00000000..75b5dbe3 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.doctree b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.doctree new file mode 100644 index 00000000..27ac364d Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.doctree b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.doctree new file mode 100644 index 00000000..2ab324ff Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.doctree b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.doctree new file mode 100644 index 00000000..b7d8e488 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.doctree differ diff --git a/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.doctree b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.doctree new file mode 100644 index 00000000..9a9d6e36 Binary files /dev/null and b/en/main/.doctrees/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.doctree differ diff --git a/en/main/.doctrees/index.doctree b/en/main/.doctrees/index.doctree new file mode 100644 index 00000000..63dff307 Binary files /dev/null and b/en/main/.doctrees/index.doctree differ diff --git a/en/main/.doctrees/installation.doctree b/en/main/.doctrees/installation.doctree new file mode 100644 index 00000000..178302a0 Binary files /dev/null and b/en/main/.doctrees/installation.doctree differ diff --git a/en/main/.doctrees/nbsphinx/notebook/Pressure_Broadening_effect.ipynb b/en/main/.doctrees/nbsphinx/notebook/Pressure_Broadening_effect.ipynb new file mode 100644 index 00000000..863ad75a --- /dev/null +++ b/en/main/.doctrees/nbsphinx/notebook/Pressure_Broadening_effect.ipynb @@ -0,0 +1,259 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Example by Loretta-Pearl-Poku" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This notebook example was created by [Loretta-Pearl-Poku](https://github.com/Loretta-Pearl-Poku)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The code highlights the fluctuations in the downwelling brightness temperature at high resolution and high pressure levels explaining the broadening effect of oxygen line mixing. Also the fluctuations in the downwelling brightness temperature in the V-band (50 - 70 GHz) at high resolution." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "GvOSln_QzdCn", + "outputId": "d626e99c-6a88-40b4-cfe3-0ff5b845e78f" + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/usr/local/lib/python3.10/dist-packages/pyrtlib/apiwebservices/erafive.py:19: UserWarning: Module CDSAPI must be installed to download ERA5 Reanalysis dataset.\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import datetime\n", + "import numpy as np\n", + "plt.rcParams.update({'font.size': 15})\n", + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh\n", + "from pyrtlib.apiwebservices import WyomingUpperAir\n", + "from pyrtlib.utils import import_lineshape\n", + "from pyrtlib.absorption_model import H2OAbsModel" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "fQLIqiPM0L84", + "outputId": "e054ef95-fd04-4d63-fbf6-4bc86113cc22" + }, + "outputs": [ + { + "data": { + "text/plain": [ + "{'pressure': 'hPa',\n", + " 'height': 'meter',\n", + " 'temperature': 'degC',\n", + " 'dewpoint': 'degC',\n", + " 'rh': '%',\n", + " 'mixr': 'g/kg',\n", + " 'station': None,\n", + " 'station_number': None,\n", + " 'time': None,\n", + " 'latitude': 'degrees',\n", + " 'longitude': 'degrees',\n", + " 'elevation': 'meter'}" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "date = datetime.datetime(2023, 6, 12, 12)\n", + "station = 'DIAP' #Abidgan\n", + "df = WyomingUpperAir.request_data(date, station)\n", + "df.attrs['units']" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 824 + }, + "id": "gyPSA8xCzwGN", + "outputId": "22b7fb19-4de3-42b2-a8b4-5b17f66903ee" + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/usr/local/lib/python3.10/dist-packages/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (65) or minimum pressure value lower than 10 hPa (50.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa\n", + " warnings.warn(f\"Number of levels too low ({len(self.p)}) or \"\n", + "/usr/local/lib/python3.10/dist-packages/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (23) or minimum pressure value lower than 10 hPa (50.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa\n", + " warnings.warn(f\"Number of levels too low ({len(self.p)}) or \"\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA2EAAALOCAYAAAAgMRuwAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAD8TElEQVR4nOzdd3wUdf7H8dem904JhN57R6QIIh0sIIoFBeztFPFsd/oT23l28fTOCvZKsQLSpBelCUjvHZKQ3pOd3x9DVkIKKbuZTfJ+Ph55QGbmO/vZb2Z357PfZjMMw0BEREREREQqhYfVAYiIiIiIiNQkSsJEREREREQqkZIwERERERGRSqQkTEREREREpBIpCRMREREREalESsJEREREREQqkZIwERERERGRSqQkTEREREREpBIpCRMREREREalESsJExGmmTp2KzWZjwIABVodimYMHD2Kz2bDZbBw8eNDqcArIj2vp0qVWh1Lpzpw5w/3330+zZs3w9fV11EViYqLjmMOHDzNp0iQaNmyIj48PNpuNsLAwy2IWqWwlvUfU5PePknz00UfYbDYaN27s1PNOnDgRm83GxIkTnXpecR9eVgcgMnXqVJ5++ulC2319fYmKiqJr166MHz+ea665BpvNZkGEIlKV5eXlcdlll7F582YAgoKCCA8PB8DDw/wuMikpiT59+nD06FEAQkND8fPzIzQ01JKYARITE3njjTcAmDx5shJCEZFqREmYuJU6deo4/p+UlMSxY8c4duwYP/74Ix999BFz5szB19fXwghFqq5WrVoBEBAQYHEklWvhwoVs3rwZb29vlixZQt++fQsd8+WXX3L06FHCw8NZvXo1rVu3tiDSghITEx1fUE2cOFFJmFiqpr5/XEhoaCitWrWifv36Tj1vdHQ0rVq1Ijo62qnnFfehJEzcysmTJx3/t9vt7NixgwcffJCFCxcyb948nnjiCV5++WULIxSpunbu3Gl1CJbYunUrAB07diwyATv3mIEDB7pFAibibmrq+8eFjB49mtGjRzv9vC+88AIvvPCC088r7kNjwsRteXh40K5dO3744QeaN28OwLvvvktubq7FkYlIVZKeng6Y3RArcoyIiIizKAkTt+fn58c111wDQEpKiuPbuPMnQNi3bx933HEHTZo0wdfXt9AgWbvdzueff86IESOoU6cOPj4+1KpViyFDhvDll19iGEaRj5+bm8t7773HgAEDiIqKwtvbm8jISFq1asW4ceP48MMPiyz39ddfM3z4cOrUqYO3tzdhYWG0aNGCK664grfffpvMzMwCxw8YMACbzcbUqVOLrYuSJr44t3xOTg6vvvoq3bt3JywsrMjB1Nu2beOOO+6gRYsWBAQEEBQURMeOHfnnP/9JXFxcsTGUxTfffEP//v2JiIggMDCQbt268dZbb5GXl1fk8ecORDYMgw8++IC+ffsSGRmJzWbjo48+KnD80qVLueaaa6hfv75jDOFll13GjBkzin2MnJwcfvjhB+644w66d+9OdHQ0Pj4+1K5dm6FDh5Z4LeQ7duwYd955Jw0aNMDX15eYmBgmTZrE3r17S1Uv2dnZ/Pe//+XSSy8lKioKHx8f6taty5VXXsm8efOKLXfuwPiUlBSeeOIJWrdujb+/P5GRkYwaNYp169aVqvy5zn8tnTp1igceeIAmTZrg5+dHnTp1uO666y74TfihQ4e49dZbiYmJKVQvzpiwpKz1ln895b+mli1b5oghf3v+6yb/2vr4448LHHP+NVfe95F8O3bs4N5776Vt27YEBwcTFBREq1atuO6665g1axZ2ux0wX89NmjRxlGvSpEmBuMoz+c3Jkyd5+OGHadeuHYGBgQQGBtKuXTseeeQRTp06VWQZZ10bF5KUlMQzzzxD165dCQkJwd/fnxYtWnD33Xezf//+Qse/+OKL2Gw2fHx8+O2334o859y5c/Hw8MBms/H5558DMH/+fGw2G15eXhw/frzEmPr161fsxAgVvdateg+oCFe/f1T0tVWcxo0bO17L6enpTJ06lTZt2hAQEEC9evW46aabOHDggOP4uLg4Hn30UVq2bIm/vz9169bltttuK/Y1UtzEHKtXr8bLywubzcbrr79eZNmjR486Pt9uv/32AvtKmpjj3M97wzB4//33ueiiiwgJCSE4OJiLL76Yzz77rMR6ycnJ4bXXXqNz584EBgYSERHBgAEDmDlzZqHHEBcxRCz21FNPGYBR0uX49ttvO45ZtWqVYRiGceDAAce2zz//3AgKCjIAIyAgwAgMDDQaNWrkKB8fH29ccskljuMBIzQ0tMDvV1xxhZGVlVXgcXNzc43BgwcXKufr61tg2/kmTZpUYH9QUJAREBBQYNuBAwcKlOnfv78BGE899dQF66p/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XXc5btjyv7A415EjRxxfPtx7773FxlCea+NC8hMib29vY+vWrYX2JycnG40bNzYAY+TIkYX2z5071/HFzkcffWQYhmG88MILjnOe+8VcvtOnTztaOIp6H8zMzHRcr+e/D1X0Wrf6PeBCKpqElecaqchrqzTykzB/f/8i/2YffvihI7Y6deoYcXFxhY558skni/1cKCkJMwzDOHr0qBEZGWkAxsSJEw3DMIyVK1c6em4U9YWfYZQuCQOMJUuWFNqfmZnpuG967rnnCuw7dOiQo/W9uNbgcz+LlYS5jsaEidtKTExk8eLFDBw40NF3/4EHHnCs63Ou++67r9gB9fljtu6+++5i1/zp1q0b7dq1Izs7m19//dWxPX9K6HNnbbyQ/DKxsbHFjktypXbt2nH55ZcXuW/WrFkkJibSpUsXhg4dWuQxXl5eXH/99QD88ssv5Y7j//7v/4rc/vDDD+Pv709ubi6zZs0q8pjw8HDuvPPOIvctXLiQM2fOABTbV/2ee+5xTOv7xRdflCnukSNHArBv375Cf/evvvoKgGuuuYY2bdoUKlu3bl3uuuuuYs+dfy1OmTIFb2/vIo+56qqrCAkJIS4ujg0bNhR5zB133EHt2rULbe/QoYNjHNGWLVuKjaMkDz30EP7+/oW2Dx8+HB8fH+CvmQTzffvttwCMGzfOMYnOuaKiorj77rvLFQ84r94qoiLvIzNnziQlJQVvb29ee+21Sl3v0DAMvvnmGwDuuusu6tatW+iYmJgYx3Wbf40XpTzXxoV8/fXXAIwdO5b27dsX2h8cHMwjjzwCwLx580hKSir02A8++CBgfg589tlnjveef/3rX3Tv3r3QOWvVqsXVV18NwHvvvVdo/5w5c4iLi8Pf35+bbrqpwL6KXutV4T2gIspzjVTktVUWV199dZF/s3M/C++44w4iIyOLPWbfvn2kpaWV6XHr16/P9OnTAXP82P/+9z9uuOEG8vLyGDVqFPfff3+ZzneuPn36cOmllxba7uvr64j5/Osgf+xpQECA47VzvieffLLcMUnpKQkTt3LuwPPw8HAGDRrk+BAaP348//znP4ss16dPnyK35+XlsXbtWsC8Ya9bt26xP7t27QLMAdf5RowYgc1m44cffmD48OF8+eWXFxzMfdlll+Hn58emTZvo168fH374YYFBv65WXF0ArFq1CjAnByipLp555hmgYF2URYMGDYr8sAMICQmhW7duAKxfv77IY3r06OH4wD5ffpkGDRrQsmXLIo/x9PRk4MCBxT5GSkoKL7/8Mv3796d27dr4+Pg4rrtz18DJX7gXzIH0505jXpzi9h07dsxRn7feemuxdR8dHU1qaipQfP1fdNFFxT5+vXr1AByJalkVd24vLy9q1apV6NzZ2dn8+eefAPTv37/Y85ZnIglwbr2VV0XfR1avXg2YN5KVvebPgQMHHH+vQYMGFXvc4MGDAYiPjy/2/aqs18aFZGdnO24QSxOb3W5n48aNhfa/8MILdO3aldTUVG666SZycnIYMmQIDz30ULHnzE86f/zxx0ITLrz//vsAXHvttQXWZqvotV5V3gMqoqzXSEVfW2XRs2fPIrefuz5pjx49LnhMYmJimR/7iiuu4L777gPMLwkPHz5MdHQ0M2bMKPO5zlWe6yD/NdS9e3cCAwOLLNusWTMaNGhQodjkwrROmLiVc9/o8me769KlCzfeeGOR3/bkK+obQTDffLKysgBISEgoVQz5U1UD9O3blxdffJEnnniC+fPnM3/+fMD85njQoEHcfPPNheJq1qwZH3zwAXfddRdr1qxhzZo1gPnt66WXXsoNN9zAFVdc4bJvw4urC8CRQGZmZhaanbEo59ZFWVxo0cr8/adPny5yf0nPIb/MhR4jJiamyMfYvXs3l112WYEEKyAggLCwMEcra/5N2bnfeJ45c8axPEJJj53/uOc7N3kv7eyTxdV/cHBwsWW8vMy39ZycnFI9RkXPfebMGUeLb/6HflHKu5CpM+utvCr6PpLfotqoUSOnxlUa517/pb1uT58+XWBmxnzOvu7OvXbKEtv5fHx8+Pjjj+nQoQNgLp6bP8tlcS655BLatm3L9u3bmTFjBo899hgAe/fudbS0nN8aX9Frvaq8B1REed4/KvLackZs+XGV9pjy1usrr7zCnDlzOHbsGADTp08nKiqqXOfKV57rIDY2Fij5GgbzOj5y5EiF4pOSqSVM3MrJkycdP4cOHWLDhg188MEHJSZgYLZ8FOXc7oDz5s3DMMdBlvhzfhe3hx9+mAMHDvD6669z1VVXUbt2bY4ePcpHH33EwIEDueaaawq9yd14440cOnSId955h3HjxtGgQQNiY2P55ptvuOqqq+jfvz/Jycnlq6QLKK4u4K/6GDduXKnqorxTiVdUSc+hoiZNmsTRo0dp3Lgx3377LfHx8aSlpXH69GlOnjzp+IAEyj0lclHOvRZ37NhRqvovampid+aKLxbcod4q+j5Smd0Pa6pzuxUmJyezefPmC5bJbw374IMPHK/1/P+3b9+eiy++uNiy5fmbusO17G6c8RldVfz8888FPl+WLVtmYTR6X3IHSsKkWouMjHR8G1SRLkr16tVj8uTJzJkzh1OnTrFlyxZuu+02wBzv8b///a9QmYiICO68806++uorDh8+zN69e3nsscew2WysWLGi0AdJfpwltVCdPx6irPLHgzi7u9b5zv2gKWl/SS1exckvc25LVlHy95/7GEeOHHF0Dfvyyy8ZO3YsERERBcoVN/4vIiLCkRyW9PyK23fuWBxX139lOrdeSuqqe6FrojjuUG8VfR+prNddUc69/kt6zZy7rzyvy/I499qpSGw//fQT//nPfwDo2LEjhmEwYcKEYtd1ynfzzTcTEBDAvn37WLJkCTk5OY514Yoak1rRa90drmV346zPaHd35MgRxz1Dx44dAXjppZdYsmRJpceS3y30QkMryvueLaWnJEyqNW9vb0c/8B9//NFp5+3QoQPvv/++Y/zVwoULL1imWbNmvPDCC9xwww1FlgkPDwcosfm/ootw5se7YcMGTpw4UaFzleTIkSPs27evyH0pKSmOcX5FDZq/kPwyR48eZffu3UUek5eX5+hSdG4f/3PrtkuXLkWWXbRoUZHbfXx8HB+eJQ0ML+5DtXHjxo5uSs68Fq3m4+NDu3btAAot4nqukvaVxB3qraLvI7179wbM8Ylled2dOwlReVtlmzRp4viiYfHixcUel3/dR0ZGFtkV0RXOfU2VJjYPDw+6du1aYN+JEyeYNGkSYLZyL1++nMaNG3P69GkmTJhQYr2FhoY6JiF67733HOPD/P39GT9+fJHxVuRad4dr2d246jPaneTl5XHjjTeSkJBA27ZtWbt2LaNHj8Zut3PTTTcRHx9fqfHkv4bWr19f7CQj+/fvV1fESqAkTKq9O+64A4C5c+cyd+7cEo89fwBrfl/14uTPAnXuzVJ5ygB06tQJMGckLOqNccmSJY7xZeV1zTXXEBYWRk5ODlOmTCnxBsVut5drAHK+Z599tsjtr776KhkZGXh5eTlmKCuLwYMHO2avKq5byrvvvuv4li//JgsoMPPWH3/8UahcSkoKzz33XLGPPW7cOMCcIS1/kPi5Tp8+zTvvvFNs+dtvvx0wZwPbtGlTsceBNYPqy2vs2LGAOdNdUcl3fHx8ifVyIe5QbxV5H7nmmmsICQkhNzeXBx98sNQJVUhIiOP/5X0t2mw2x3X77rvvFtnSe/z4cd59912g4OulMlx33XWA2aNg27Zthfanpqby0ksvAeZESee+hvNvYuPi4mjRogX/+c9/CA0N5YsvvsDLy4tffvmF1157rcTHz++S+N133zke5/wJOc5V0WvdHa5ld1OR11ZV8Nxzz7FixQp8fX356quv8Pf354MPPiAmJobjx487vkSoLGPGjMHDw4O0tDSmTZtW5DHPP/98pcZUUykJk2pv/PjxDBo0CMMwGD16NM8991yBZvi0tDR+/fVX7r33Xpo2bVqg7FVXXcUtt9zCvHnzCtwEnTlzhueee87x7W3+tOZgTpN87bXXMmvWrAKDyFNTU3nnnXf45JNPCpUB84Pfw8OD+Ph4rr/+ekcXnIyMDD7++GNGjx5dqOtcWYWFhfHGG28A5lTUI0eOZN26ddjtdsC8qdmxYwevvvoq7dq146effirX4+QPjH/ggQccA9BTUlL417/+5Zh58d57773gwOCi+Pv7O5KvL7/8krvuusvR7Sg9PZ0333yTyZMnA2bSlD8TI0CbNm1o2LAhALfcckuB6Z/XrFnDgAEDShwcfvfddxMTE0NWVhbDhg1j8eLFjhvqdevWMWjQIEddFuWhhx6iQ4cOZGZmcumll/LWW28V+BY0MTGRefPmcfPNN9OvX7+yVYyF7rvvPurUqUNmZibDhg1j2bJljnpZv349gwcPdkxqUh7uUG8VeR8JDQ113OB//fXXjB49usCYpfT0dH7++WeuvPLKAmNFw8LCHC0nM2bMKHcd/uMf/yAsLIwzZ84waNAgR5dcMGdMHTRoEImJiURERDgmqKgsd999N02aNCEnJ4fhw4czb948x2to69atDB06lAMHDuDr61voC5KXXnqJxYsX4+3tzZdffumY6e3iiy/mqaeeAsznXtSMivm6d+9Ot27dyM7OdvQ0KG55DKj4te4O17K7qchry92tWrXK8YXkyy+/7Jg8JiIigs8++wwPDw9+/PFH3nrrrUqLqVGjRtx6662AuZTMK6+84piNMz4+nilTpjB9+vRiv4gQJyrP4mIiznShxZqLU5aFTJOSkoxRo0Y5jgeMkJAQIywszLHQJ2cXED7XuQsi5pfJX9Q0/2fs2LGOBaQNo+Aih4ARFBTkWCA5/6dv375GampqoTj/7//+r8BxoaGhhpeXlwEYV111lWOh45IWay7Nwor/+9//HIuVAoavr68RGRlpeHt7F3j8zz777ILnOte5i+I+8sgjBmDYbDYjPDzcsTAlYAwaNMjIyMgoVP5CC+ae68EHH3ScL/8x8usKMC699FIjOTm5ULkff/yxwHEBAQFGQECAARiBgYHGokWLSlyw9Pfffy/w9wwICDCCgoIMwAgODja+/vrrEq/LY8eOGb169SoQe1hYWKHrqnnz5oXKlhRXvpKug+LKl/a1lL/o6YwZMwrtW7FihaMezq+XsLAwxyLYQJELBl9IRerNGYs1G0b530fy/etf/3IsksrZxWMjIiIKbEtISChQJn9x4PzXaYMGDYxGjRoZ48aNK021OSxdutQIDQ11nCswMNAIDAx0/B4WFmYsX768UDlnXBsXsnXrVqN+/fqOx/Hz8yvwd/X19TW+/fbbAmXWrVvneL96+eWXC50zLy/PGDBggAEYLVu2LPL9Nt8HH3zgeKz27dtfMN6KXutWvgdcSEnnd+X7R0VfWyUpzbV5oXot6TkWt1hzQkKC0bBhQwMwRo0aVeR58xeB9vPzM7Zs2VJgX2kWay7pb1zS+15KSorRt29fx3Py9PQ0wsPDHXX9xBNPGJdccokBGC+88EKxjyEVo5YwqRFCQkL48ccfmTt3LuPGjaNhw4ZkZWWRnp5O/fr1GTJkCC+88EKhLmb/+c9/ePHFFxkxYgQtWrTAMAwyMjKoV68eV1xxBbNmzeLbb78t0LXwySef5M0332T06NG0bt0aLy8vUlNTqV27NoMHD2b69OksXbq0yPU5nn76aT799FN69epFYGAgeXl5dO7cmXfeeYfZs2c7bdbAu+66i127dvH3v/+dTp064evrS2JiIkFBQXTv3p2//e1vLFy4sEJdk1588UW++uor+vbti2EY+Pj40LlzZ6ZNm8b8+fPx8/Or0HN47bXXWLJkCVdffTV16tQhNTWV4OBgLr30UqZPn87ChQuLnL531KhRLF++nJEjRxIWFkZubi5RUVFMmjSJDRs2cNlll5X4uN27d3dMzFK/fn1yc3MJDQ1lwoQJbNy4sdi1aPLVq1ePlStX8uWXX3LFFVcQHR1Neno62dnZNG7cmMsvv5w33niD5cuXV6h+Klvfvn3ZsmULkyZNol69euTm5hIWFsYtt9zCxo0badasmePY8nzD6g71Vt73kXyPP/44f/zxB7fffrtjHb3s7GxatGjB9ddfz+zZswt0QQSzJWfatGl0794db29vjh49yqFDh8q0gDyY61rt2LGDhx56iDZt2mC32zEMgzZt2vD3v/+dHTt2WNby0r59e/7880+mTp1K586d8fLyIisri2bNmnHXXXfx559/OroBgtmqfv3115OTk8PgwYOLXA/Mw8ODTz/9lIiICHbv3u1Yo6koY8eOdcwUV1IrWL6KXuvucC27m4q+ttzR7bffzuHDh6lbt65jsebzPfXUU/Tu3ZvMzEyuu+46MjIyKiW2oKAgFi9ezMsvv0zHjh3x8fHBMAz69+/P7NmzefbZZx29f9Qi5jo2w3DiHMwiIiJFeP/997njjjto2rRpsZO2iFhh1qxZjB07Fn9/f44fP17hm05d61LVpaamEhkZSXZ2NsuXL68xXWMrm1rCRETEpTIzMx1jEYcNG2ZtMCLnyZ/e/vrrr69wAqZrXaqD1157jezsbCIiIgrMMCzOpSRMREQq7KuvvuKJJ55g27ZtZGdnA5Cbm8vy5csZOHAg27dvx8/PjwceeMDiSEX+8t5777Fs2TI8PDyYMmVKqcroWpeqLiUlheuuu4758+cXmHTs0KFDPPzww47JryZPnlzhoQNSPHVHFBGRCnvjjTd48MEHAXNa9PDwcFJTUx03qT4+Pnz88ceOKclFrLJ27Vquu+46kpKSHDeg9913n6NF7EJ0rUtVl5iY6FibFHCMn05JSXFsu/rqq/nqq68ci2mL86lmRUSkwkaNGkVsbCxLly7l0KFDxMXF4e3tTdOmTbn00kuZPHkyLVu2tDpMETIzMzl06BCenp40bdqUCRMm8I9//KPU5XWtS1UXFBTEW2+9xcKFC9m2bRuxsbFkZGQQHR1N9+7dufnmm7n66qsdE9aIa6glTEREREREpBJpTJiIiIiIiEglUndEJ7Pb7Rw/fpzg4GA144qIiIiI1BCGYZCSkkK9evUKrCFbFCVhTnb8+HEaNGhgdRgiIiIiImKBI0eOEBMTU+IxSsKcLH+GmSNHjhASEmJpLDk5OSxYsIAhQ4bg7e1taSzVkerXtVS/rqX6dS3Vr2upfl1L9etaql/XsrJ+k5OTadCggSMfKImSMCfL74IYEhLiFklYQEAAISEhepG7gOrXtVS/rqX6dS3Vr2upfl1L9etaql/Xcof6Lc2QJE3MISIiIiIiUomUhImIiIiIiFQiJWEiIiIiIiKVSEmYiIiIiIhIJVISJiIiIiIiUomUhImIiIiIiFQiTVEvIiIiIlVCTk4OeXl5VodRITk5OXh5eZGZmVnln4s7clb9enh44O3tXarp5stDSZiIiIiIuLXk5GTi4uLIysqyOpQKMwyDunXrcuTIEZfd4NdkzqxfT09PAgICqF27Nj4+Pk6K0KQkTERERETcVnJyMseOHSMoKIioqCiXtk5UBrvdTmpqKkFBQXh4aGSQszmjfg3DIC8vj4yMDJKSkjh48CAxMTEEBAQ4LU4lYSIiIiLituLi4ggKCiImJqZKJ1/57HY72dnZ+Pn5KQlzAWfWb1BQEBERERw6dIi4uDgaNmzopCg1MYeIiIiIuKmcnByysrIIDQ2tFgmYVD2enp5ERESQlpZGbm6u086rJExERERE3FL+xAre3t4WRyI1ma+vL4CSMBERERGpOdQKJlZyxfWnJExERERERKQSuW0S9tprrzFmzBhatGhBaGgovr6+NGrUiJtvvpmtW7cWW+6jjz6iZ8+ejoF0I0aMYPXq1SU+1qpVqxgxYgQREREEBQXRs2dPPvnkE2c/JREREREREfdNwv71r38xb948IiIiuOyyyxg5ciR+fn58+umndOvWjZ9++qlQmcmTJzNp0iS2bdvGoEGD6NmzJwsXLuSSSy7hu+++K/JxZs2aRf/+/Zk/fz4dO3Zk2LBh7NmzhwkTJvD3v//dxc9SRERERERqGrdNwr7//nsSEhJYt24ds2fPZvbs2ezatYu3336bnJwcbrvttgKD4xYtWsS0adOIjIzkjz/+4LvvvmP+/PksX74cT09PJk2aRGJiYoHHOHPmDLfccgt5eXnMnDmTpUuXMnPmTHbu3Enz5s159dVXWbp0aeU+cRERERGRYqSnp/Pdd99x66230qpVK/z8/AgMDKRTp04888wzpKamFlvW6h5jU6dOxWazFfvz2GOPVUoc7sBtk7A+ffrg5+dXaPs999xDs2bNOHXqFNu3b3dsf+211wB44oknaNGihWP7xRdfzF133UViYiIffvhhgXN98MEHJCcnc+WVVzJmzBjH9jp16vDSSy8B8Oqrrzr1eYmIiIiIlNcXX3zB6NGjmT59Op6enlxxxRX069ePAwcO8NRTT9GjRw9Onz5dqJw79Rjr06cPEyZMKPTTrVu3So3DSlVyseb8aUp9fHwAyMjIYMmSJQCMHTu20PFjx47lzTff5Mcff+Shhx5ybP/555+LLZPf/XHRokVkZmYWmRCKiIiIiFQmb29v7rjjDiZPnkybNm0c20+cOMHIkSPZtGkTkydP5osvvnDsO7fH2Jo1axwNFmvWrGHAgAFMmjSJAQMGEBYW5ihzbo+xWbNmORosTp06Rd++fXn11VcZNWoUAwYMKPNzuO2225g4cWKpjnVlHFZy25aw4nz66afs2rWLFi1aOC6gXbt2kZWVRa1atYiJiSlUpmvXrgBs2bKlwPY//vijwP5z+fj40L59ezIzM9m9e7ezn4aIiIiISJlNmDCBd999t0ACBhAdHc3bb78NwOzZs8nOznbsq8o9xtwlDmdz+5awl19+mT///JO0tDR27NjBn3/+Sb169fjyyy/x9PQE4PDhwwBFJmAAgYGBhIWFkZCQQEpKCsHBwSQnJ5OUlFRiuZiYGNavX8+hQ4fo2LFjkcdkZWWRlZXl+D05ORkwV3jPyckp35N2kvzHtzqO6kr161qqX9dS/bqW6te1VL+u5U71m5OTg2EY2O127Ha71eE4hWEYjn+d/Zw6dOgAmPensbGxREdHF+gxNmbMmEKPOWbMGEePsQcffNCxPb/HWFFlhg8f7ugxlp6eXuoeY/nPvSx/z7LG4Yr6tdvtGIZBTk6OI/8oSlleM26fhP3yyy8sXrzY8XujRo345JNPCvQZzR+AGBAQUOx5AgMDSUxMdCRh5w5aLK5cYGAgACkpKcWe94UXXuDpp58utH3BggUlxlOZFi5caHUI1Zrq17VUv66l+nUt1a9rqX5dyx3q18vLi7p165KamlqgZac6KOn+srzy50vw9vbGy8uL5ORktm7dSlZWFlFRUYSEhDgaDPI1b94cMHuInbtv8+bNALRs2bJQGYA2bdqwadMmNm7cSPv27UsVX37DxYIFC/j999/JzMykfv36DBo0iM6dOxdZprxxOLN+s7OzycjIYPny5QUmBjxfenp6qc/p9knYokWLAEhMTGTr1q0888wz9O/fn+eee45//vOfFkcHjz/+OFOmTHH8npycTIMGDRgyZAghISEWRmZm4wsXLmTw4MGOcXTiPKpf11L9upbq17VUv66l+nUtd6rfzMxMjhw5QlBQULUZn28YhqNRwGazOfXc06dPB2Do0KHUqlULgPj4eAAaNGhQ5L1pSEgIYWFhJCYmYrPZHD3G8hOe1q1bF1muYcOGbNq0ifj4+FLf8/r6+gLw9ddfF9j+/PPPM2bMGGbMmEFQUJBje3nicEX9ZmZm4u/vzyWXXFLidVhUklgct0/C8oWFhdGvXz/mzp3LxRdfzJNPPsmQIUPo0aOH449VUvaZlpYGQHBwMECBP3B6enqRf9TzyxTF19fXcUGdy9vb2/I3rnzuFEt1pPp1LdWva6l+XUv161qqX9dyh/rNy8vDZrPh4eGBh0fhqQwysvPYF1v8lOzuplmtIHy9zMQg/3k5y9y5c5k+fTre3t4899xzjnPn3x8HBAQU+3j5PcbS0tIIDQ0tcE8dFBRUZLn8e+m0tLRSP48WLVrwyiuvMHz4cBo1akRCQgLLly/nkUceYfbs2djtdubMmeM4vjxx5HdBdGb9enh4YLPZLviaKMvrpcokYfm8vb0ZN24cGzZs4Mcff6RHjx40bNgQgKNHjxZZJi0tjcTERMLDwx0JVUhICKGhoSQlJXH06FHatm1bqFz++Ro1auSiZyMiUg0ZBuR/+5iRCLlZkJcN9hyw2yEkGnwCIeUUpJwAI8/cbuRBQCREtYDsNDi05uy+vL/+bXeVed7dCyDtdMF9TQeYZU/8Aft+BePsOQ0DwhpBp3GQkwnLXjy7L//HgEv/Ab5B8PuHcGrbX/vsdmg/BppfBkd+h3XvnD3n2f1hjWDo82ZMX15vPlfDjqc9j95xsZDUAaKawvJXYPf8go/b+Ua46E44uh6+v/fsczm7L6g23LrAPO+7/c/W0zllr/8KGvaCJc/D6v+YMeXrfCNc/gbE7oL3BpzdaDP/Jl6+8Mh+c9OMEeZzzd8HcOXb0Hok/P4B/PrCX9uxmXUw+h1IPwPvXwo2T/Dw/OvfW34x63D+P+D4xrPbPcx/L7oTWg2Hgyvht/fA0wc8fcHLByKaQe/7zL/D8lfA09uM09PH/LfNFeAXAie3QkYCeAeChw/+2XGQnQre4c6/hqXK2Bebyqj/rLQ6jFL76W99aRtd/Jf75bVz507Gjx+PYRi8/PLLdOrUyemP4Qzjx48v8HtgYCA33HADl156KR06dOC7775j7dq19OrVy6IIK0+VS8IAoqKiAIiNjQWgVatW+Pr6Ehsby7Fjx6hfv36B4zdu3AhQaHKNTp06sXz5cjZu3FgoCcvJyWHbtm34+fnRsmVLVz0VERHnsdshJ81MNHIzzITALwyCakFqrHljnJMBuZnYstKof2Y3MMIsu+R5yEwyy+VkmknToKkQ0QTWvgM7fjC35WVDXi50vAb6PgjHN8FnYyEv569Eyy/0rxv99wZAwoGCcd44C1oMgvXTYdm/C+7rcC1c/T6knITPry78HNsmmonB8pfg6O9nN9rMJOCq//2VhK18HWweZ5MED2jc10zC7LmwbZa57dyfS86uMxO3B45tKLgvI8Hcl5sJqaf+2u7haT7nfJ4+4OFl7gOyvLPNBAQguC7UalXwvCFnP6v8w6HZZebzyt/nH/bXeTteayalRZVtfhkERuFIpAwDap39zAqsBZf9n7kNw/zX45wB5V1uMhPZs4PYwYDIs7OmRXeGXnc5Npv7mp19nt7QbvRfSaM91/y/h9dfzzW8sbnNnmsmiJ5nvx2250Jm8tnr5Wxynn32m257npmg5WVB7tlrzcgz/3Z+IbDiNfhzNgDewBAgL/IUDPwH7FkE304A7wDwCQCfIIhsDtd+bJ573mNmvfmFmj/+YdBiCAREQOppMx7/MLO8k7uHiWs1qxXET3/ra3UYpdasVtCFDyqjY8eOMWzYMBISEpgyZQoPPPBAgf2V1WNs586d/Pvf/y503GOPPUbr1q1LfA7R0dFMmjSJV155hfnz5zuSMGf1XHNHVTIJW7ZsGQDNmpkfCP7+/gwcOJB58+bx7bffMnny5ALHz5w5E4DLL7+8wPaRI0eyfPlyZs6cWSgz/+mnn8jMzGTUqFHVpg+yiLghux2yU8wbWJ9ASD5uJgGZSeaNd3aq2TrUbaJ5kzpzkrk9K/Wv/RN/htD6MOtWx02qw6X/hP6PmMnSF9c6NnsBLf1igOfMDXsXmje+3n7g5WcmFPazg4/9QiC0AXh6nW3B8DFvcAGC6kKvu//a7ull3gDnG/WaeV5PL/DwNpOA2me/9Oo2EVoNK9ii4hdq7gtrBA/+eV5ryzndSibNw5F8nX/T3PVm86covkEweUvR+wCGF76BcGjSz/wpTv4NP5CXk8OGuXMZEVLP3NBlvPlTlMhmMOxfxZ/34nuL39ewl/lTlIAI829TnM7XF78vprv5UxTfYDNBL06f+4vf13SA+VMUTy94eE/BbfY8R1LLyFfhsichO53cjCR+W7mUHu2uxhPMOhzwOOSkm6+LnHTzC4h8p7aZCXRm0tkvGzLhrlVmHf36L9gwwzzOw8u8BnvdDZc8bCblK16DwEgIiDIT3uBoM/kF80sNLz8lbhby9/Gkff1Qq8MoE2fOiHjmzBmGDBnCoUOHHEnM+Sqrx9jJkyf5+OOPCx03ceLECyZhgGPq/BMnTji2Veeea26ZhK1atYqUlBSGDBlSoC9nTk4O77zzDp9++in+/v6MGzfOsW/KlCnMmzeP5557jpEjRxZYhO7dd98lLCyMW2+9tcDj3HbbbTz//PN8//33zJ4927H2wOnTp3nkkUcACizuLCJSLMMwb+y8/c0WqD0LIC0O0uPP3vglwrB/m4nWzw/B3kVmV72sZLM1YfhLZpetQ6vNZArMmzufQIjpYSYsNg/zBtPb32zl8Ak0Ex6vs18U9bzd7Erm7W9u8/Y3kxkwk4eHdpnbvfzIMTz4dd68/HYwuGNp8c+t8w3mT1FCov9qRSpKs4HF7wuJNn+K4ukFoUUvH2Lu1zigGuHclruACPMHMHJyiA2Jg4im5r6IJmaXxuJM/Kng7zmZf11DF98HrUeZr9HMRPP1Wu/s+qFZKRC/F46shbR4yEoyX1P5ifwbHc1jgmqZyVlQHbjsKYhqDie2QHqc+UVFcF2zxVPJmjhRamoqw4cPZ/v27YwZM4b333+/yIkoKqvH2IABAxzTw5dHQoLZ6yB/dvLyxlFVuGUStmfPHiZNmkRUVBTdunUjMjKSuLg4tm7dyokTJ/Dz8+Ojjz6iQYMGjjKDBg3igQceYNq0aXTu3JnBgweTnZ3NwoULMQyDGTNmFFgFHCAiIoLp06dz7bXXMnbsWAYMGEBkZCSLFi0iMTGRKVOmVLnVt0XEyXIyIeU4JJ8wx+VEdzK7vO1dDKvfNG/M0mLNZKtRb5jwg/nt/dfjz3YrCze/kfcPM7819wmEuh3M5Mk/7Gz3qDCo19l8vFYj4JEDZmvD+YmGzQbjZxUfa6Pexe/z9jd/HM/L+vV/RCzjfU4Pl6jm5k9R6neF286Zpj0320y68g3/t9mdMfXUX2Mc8788/v192PjJX8d6+ppdeC99HBIOweYvIKwBhDU0f0Lq68sFKbWsrCyuvPJKfvvtN4YOHVpg/dzzVYUeY4ZhOCbk6Nq1q2VxVCrDDe3fv9/4xz/+YfTp08eIjo42vL29jcDAQKNdu3bG3/72N2PPnj3Flp0xY4bRrVs3IyAgwAgLCzOGDRtmrFq1qsTHW7lypTFs2DAjLCzMCAgIMLp372589NFH5Yo9KSnJAIykpKRylXem7Oxs47vvvjOys7OtDqVaUv26VqXUr91uGIlHDOPACsPY8IlhLPmXYXx/n2FkpZn7v7rRMJ4KKfiz9h1z3/5lhvH1zYbx0xTD+PUFw1j3nmHsXfzXuVPjDCMv13WxV5CuX9dS/bpWlajf7AzDOHPQMA6tNYxtcwxjzf8M48BKc9/+5YbxcouC7y3TOv9V9qeHzPejLd8axvE//npPqqzQ3ah+MzIyjO3btxsZGRlWh+I0eXl5RkJCgpGXl1eu8rm5ucbo0aMNwOjXr5+Rlnbh62PhwoUGYERGRhq7d+92bF+9erXh6+trhIWFGQkJCQXKxMfHGyEhIQZgzJo1y7H91KlTRvPmzQ3A+PXXX0sd9+nTp4233nrLSE5OLrA9JSXFuPPOOw3AqFu3bqHnU9Y4Klq/RSntdViWPMAtW8KaNGnC888/X66yEydOZOLEiWUq06dPH+bNm1euxxMRN2cY5rfTsTvN2eLi94JvCAx6yuw++Hq7v44NqgMh9cwugj4B0Hk8tBppdpkLrmf+63t24G+TS8yf4gRGuvZ5iYh78/aD8Ebmz/ma9IO/7zZb2pOOQtJhs5UNzJb0U9sgfp85cUq++zaYLXbbZp/tMtnZHF/pVXiZHKne3nrrLUerUVRUFPfcc0+Rx73yyiuOyezcocdYWloa9913H4899hg9evQgOjqa2NhYNm7cSHx8PGFhYcycOZOAgACXxuEu3DIJExEpl/QzcGIznPoT6naEpv3NWf2+OTtJg5efOR12/kQG3v5w0xwIiTG7A3mf15Wh1bBKDV9Eahhvv8LdIT084Zb55v8zEs0vjuJ2m+9RYI433fKNOXOkhxfUbgOXPmG+X2Umm10az+16LNVO/tgpoMCaWuebOnWqIwkDeOONN+jcuTNvvfUWCxcuxMfHh0GDBvHkk0/Su3fR3dmvvvpqli9fznPPPcfatWvJzs6mbdu23HfffUyYMKFMcUdGRvLoo4+ydu1adu/ezerVq/H09KRJkyZMnDiRBx98sNB4NVfE4S6UhIlI1ZSZZI6x8PaDde/B2rch4aC5zzsA+j1kJmENe5trKtVqZQ6o9zivz3xJE0eIiFjJP6zwTJWj34GRr8Hp7easpyf+MMeegjnL4+JnzLGrDS6CBj2hUV9z4hCpNqZOncrUqVPLVdbKHmPBwcFFTmFf2XG4CyVhIlI15GaZMwfuXQT7lpg3IDd8Ay2Hmgvbth5lrm1Ur4s5Y1r+4PigWuYisSIi1YVPQNHLCLQeZU7+c3gd7PwZ1v4Xuk0yF+9OizN7CTTuW/jLKBGpdErCRMRtedhz/lpI9rOr4eAKc7rn5oOg99/MpAug3VXmj4hITRbZzPzpcZv5e/IJcwF1ML+8mn27OQtjx2uh43VQ+8JrN4mIaygJExH3YhhwfCOev09n2LbZ2LrUh8YXw+CnzTFdtdtqrR0RkdI4dx2+DtdAeBP440tYPwNWvm5+mTXkOeviE6nBlISJiPvYOhNWTYOTW7CF1Gd/rcE0DT57E1G/m7WxiYhUZTYbNOhh/gx7weyumP/+enidOaa2w1h1VRSpJB5WByAiNVzSUXNWQzCnkA+pDzd8Q+69G9kZfbX5u4iIOI+XL7QfA40uNn/ftxjm3AH/62MmZ/ndwEXEZdQSJiLWOLUdVr5mrnnT/1EY8Chc+o+/uhrm5Fgbn4hITXHpP6DFEFg0Fb66Ac/63QkMudbqqESqNSVhIlK5Tu+Axc/Crp8htAEM/Rd0udHcp7FeIiLWiOkOE36E/b/Cymlke51dmD43SwtCi7iAuiOKSOXKTIK4XXDlf+H+TdDrLvANtjoqERGx2aDZQPJumEmOVyCknoY3OsLyVyA32+roRKoVJWEi4nont8J390JeLjTsBff+brZ+eXpbHZmIiBTH29+crOPXf8G7l5gTeIiIUygJExHX+v1DeH8gnPgD0uPNbR566xERcXu+wTD0ebhzmZmQTR8Ka/5rdVQi1YLGhImI66yaBgv/D3rcbq5F4+1ndUQiIlJWdTvAbYvgt/egySVWRyNSLejraBFxjcNrzQTskodhxMtKwEREqjIPT+h1N9RpZ47t/f7ev5YXEZEyU0uYiLhGw15w8w/mt6aa9VBEpPpIOQm75sOxjXDz9xBU2+qIRKoctYSJiHP9/iFs/tL8f9P+SsBERKqbWq1g0lyzJezjyyEz2eqIapwNGzbw73//mzFjxhATE4PNZsNWis/bjz76iJ49exIUFERERAQjRoxg9erVJZZZtWoVI0aMICIigqCgIHr27Mknn3xSYpmjR48yadIk6tWrh5+fHy1btuSpp54iMzOzTM8TYOnSpY7nV9RPr169KiUOZ1NLmIg4z+5fYO7foeed0Pl6q6MRERFXqdUKJv5kTrw05y647nN96VaJnn32Wb7//vsylZk8eTLTpk3D39+fIUOGkJmZycKFC1mwYAEzZ87kqquuKlRm1qxZjBs3DrvdziWXXEJUVBSLFy9mwoQJbNmyhVdeeaVQmb1793LxxRcTFxdH+/bt6devH+vXr+eZZ55h8eLFLF68GF/fsq8916xZM/r27Vvk9qLs3buXPn36OD0OZ1ESJiLOceIP+HYStBxuzqYlIiLVW1QLGPOe2T1RKtXFF19Mx44d6dGjBz169KBx48ZkZWUVe/yiRYuYNm0akZGRrFmzhhYtWgCwZs0aBgwYwKRJkxgwYABhYWGOMmfOnOGWW24hLy+PWbNmMWbMGABOnTpF3759efXVVxk1ahQDBgwo8FgTJ04kLi6O+++/n2nTpgGQm5vLtddey5w5c3jhhReYOnVqmZ9z3759+eijj0p9/C233OKSOJxF3RFFpOKSjsLn10KtlnD1++YAbhERqf5aDYfuk8xWsNTTVkdTYzz66KM888wzXH755dStW/eCx7/22msAPPHEE44EDMxk7q677iIxMZEPP/ywQJkPPviA5ORkrrzySkcCBlCnTh1eeuklAF599dUCZX777TdWrVpF7dq1HccAeHl58b///Q9vb2/efPNNcnNzy/6ky2DDhg1uEUdJlISJSMV5eEGDHnD91+ATaHU0IiJS2TZ+Am/3hISDVkci58nIyGDJkiUAjB07ttD+/G0//vhjge0///xzsWVGjhyJn58fixYtKjC+Kr/M5ZdfXqirX506dejXrx8JCQmsXLmyAs/owhYsWOAWcZRESZiIlJ9hmFMVB9eFcZ9BcB2rIxIRESu0uRx8Q2DW7ZBnXeuCFLZr1y6ysrKoVasWMTExhfZ37doVgC1bthTY/scffxTYfy4fHx/at29PZmYmu3fvLlWZkh6rNPbs2cPjjz/OHXfcwT/+8Q/mzp2L3W4v8tht27a5LA5n0ZgwESm/VdNg/XS4exX4BlsdjYiIWMU/HK7+AKYPgxWvwIDHrI5Izjp8+DBAkQkYQGBgIGFhYSQkJJCSkkJwcDDJyckkJSWVWC4mJob169dz6NAhOnbsWKrHyt9+6NChMj+P1atXF5rJsUOHDsyaNatAF0swZ0V0VRzOopYwESmfvYth8dPQ/molYCIiAg16wiUPw7IX4egGq6ORs1JTUwEICAgo9pjAQHMoQUpKSoEyJZU7v0xpHquoMhcSGhrKww8/zNq1a4mPjyc+Pp7FixfTq1cvtm7dypAhQxwJY760tDSnx+FsagkTkbI7cwBm3gLNBsLAJ6yORkRE3MUlD4NPANRuU3mPmXKy8AyN/mEQ3hhyMiF2Z+Ey9Tqb/8btgey0gvvCGkJABKTFmRNPncs3GCKbgT0PTm4tfN467cDTG87sL7x+Wkg9LWxdDl26dKFLly4Ftg0cOJCVK1dy6aWXsmLFCv773//y+OOPWxRh+SgJE5Gysdvh2wl/dT3RTIgiIpLP0wv6PGD+P+WkOWbY1dbPgGX/Lritw7XmbL3Jx+C9/oXLTD3bcvLd3XD094L7Rr8HncbBn3PMtS/P1Wwg3DTHTNyKOu/D+yAwCub/A3bPK7hvyPPQ+76yPTcnCAoKAiA9Pb3YY/JbjoKDgwuUyS8XEhJywTKleayiykycOLHQcVdddVWR65ady9PTk0cffZQVK1bwyy+/FEjC8lu6yhJHZVMSJiJl4+EBQ56DgEgzERMRETlf3F54py+MnQ6tR7j2sbpPMqfKP5d/mPlvSH24Y1nxZa/6X9EtYQDtRkNMj4L78rvf+wQWfV6/UPPfYf8qPC4upF7xcbhQw4bm88kfJ3W+tLQ0EhMTCQ8PdyQlISEhhIaGkpSUxNGjR2nbtm2hcvnna9SoUYHH2rRpU7GPVVSZjz/+uNBxjRs3vmASBjjGgp04caLA9piYGLZs2VKmOCqbkjARKb1Dq6HBRdDkEqsjERERdxbZDJr2h58mQ8NeZvc+VwmuW3yLm7ffX10PixLVovh9gVHmT1E8PEs+b0TT4vdVslatWuHr60tsbCzHjh2jfv36BfZv3LgRwDG5Rr5OnTqxfPlyNm7cWCgJy8nJYdu2bfj5+dGyZcsCZb7//nvHOc9X1GMZhlHu55aQkAD81fKVr3379sydO7dMcVQ2TcwhIqWzbwl8NBI2f2F1JCIi4u5sNhj1BuRmwrxHrY6mRvP392fgwIEAfPvtt4X2z5w5EzDX1DrXyJEjC+w/108//URmZiaDBg3Cz8+vUJkff/yRrKysAmVOnTrFihUrCA8Pp0+fPhV4Rn+ZNWsWUHgq+iFDhlRqHOWhJExELiwtHmbdBk0HQOcbrI5GRESqgpBoGP4SbP0Gdvx44ePFZaZMmQLAc889x549exzb16xZw7vvvktYWBi33nprgTK33XYbISEhfP/998yePdux/fTp0zzyyCMAPPTQQwXK9OzZkz59+nD69GkeffSv5Ds3N5d77rmHnJwc7r//fry9vUsd+xtvvMGRI0cKbDMMg3fffZfXX38dm83G3XffXWB/t27dnB6Hs6k7oohc2IJ/mjNBjX5XE3GIiEjpdRwHCQehbgerI6lWfv75Z5599lnH79nZ2QD06tXLse3JJ590tEwNGjSIBx54gGnTptG5c2cGDx5MdnY2CxcuxDAMZsyYQVhYWIHHiIiIYPr06Vx77bWMHTuWAQMGEBkZyaJFi0hMTGTKlCkMGDCgUGwzZszg4osvZtq0aSxZsoS2bdvy+++/s3//fnr37l3mWQzfeOMN/v73v9O1a1eaNGlCZmYmW7du5cCBA3h4ePDmm2/SrVu3QuU+/PBD+vTp47Q4nE0tYSJSsqMb4I8vYcizmlpXRETKxmYzJ6jIny5enCI2NpZ169Y5fvLHVZ27LTY2tkCZN954gxkzZtCmTRsWLlzImjVrGDRoEMuXLy92Eoyrr76a5cuXM3ToUDZt2sTcuXNp3rw5H330Ea+++mqRZVq0aMGmTZuYOHEisbGxzJkzBw8PD5588kkWL16Mr69vmZ7rQw89xPDhw4mLi+Pnn39m/vz52O12xo8fz9q1a7nvvqJnnHR2HM6mljARKVn9rnD9V9BymNWRiIhIVZV6Gt6/DIY+D22vsDqaKm/ixIlFTu3uinJ9+vRh3rx5Fz7wHA0aNGDGjBllKlOcv/3tb/ztb38rV1lnxuFsagkTkeIlHDS/xWw13PxXRESkPAJrmV0Sf55ijjMWqeGUhIlI0U5th/90gx0/WR2JiIhUdTYbjHod7LmFF0AWqYGUhIlI0Va8AqEx0GKw1ZGIiEh1EFwHRrwCf86GP7+zOhoRS2lMmIgUlnwCtn8Pg58FL2sHroqISDXS/mo48hsERFodiYillISJSGEbZoCnL3S50epIRESkOrHZYMRLVkchYjl1RxSRwjx94KI7wC/U6khERKQ6SjwCX94AKSetjkTEEmoJE5HCLtGgaRERcSHfYDi0Cpa9aE7YIVLDqCVMRAra9Dmkn7E6ChERqc78w8wv/DZ8DHF7L3h4/mLEIlZwxfWnJExE/nJsA3x/Dxxea3UkIiJS3fW4HYKjYckzxR7i6ekJQE5OTmVFJVJIVlYWAF5ezutEqCRMRP7y2/sQ1hBaDrU6EhERqe68/WDgP2HPIkg5VfQh3t74+vqSlJSk1jCxRF5eHmfOnCEwMNCpSZjGhImIKf0MbJsFl/4TPDytjkZERGqCjuOg+SAIql3sIVFRURw7doyjR48SGhqKt7c3NputEoN0LrvdTnZ2NpmZmXh4qD3E2ZxRv4ZhkJeXR0ZGBklJSdjtdqKjo50ap5IwETFt+RoMAzprWnoREakkHp5mApaVChjmhB3nCQkJASAuLo5jx45VcoDOZxgGGRkZ+Pv7V+lk0l05s349PT0JCAigdu3a+Pj4OClCk5IwETFFd4LL/g+CalkdiYiI1CS5WTCtE/S5H/o8UOQhISEhhISEkJOTQ15eXiUH6Fw5OTksX76cSy65BG9vb6vDqXacVb8eHh4ubXVVEiYipka9zR8REZHK5OULzQaaMyX2vt9c0LkY3t7eVT5x8fT0JDc3Fz8/vyr/XNxRValfdUQVEVj3HuxdZHUUIiJSU3WbAGf2wcGVVkciUimUhInUdFmpsPhpOLre6khERKSmatQHIpvDho+sjkSkUigJE6np/pwD2WmakENERKxjs0G3iZCRAHa71dGIuJzGhInUdJs+NfvihzWwOhIREanJLr4Pev/N6ihEKoVawkRqsthdcGQddL3J6khERKSms9nMVrBDq80lU0SqMSVhIjVZcDSMeh1ajbA6EhERETi8GmYMhyO/WR2JiEspCROpyfxCoPst5vTAIiIiVmvYG0Ibml3lRaoxJWEiNdWuefDjZMjLsToSERERk4cHdL7+r0mjRKopJWEiNdVv78Pp7eDpvgsZiohIDdT5BshOhe3fWx2JiMsoCROpiRIPw74l0EUTcoiIiJsJbwydx4OHJvGW6ktXt0hNtPkL8AmEdqOtjkRERKSwq962OgIRl1JLmEhNYxiw6XNoPwZ8g6yORkREpGjx+2Dfr1ZHIeISagkTqWlsNrhpDnh4Wh2JiIhI8Vb/B/YshMlb9Jkl1Y5awkRqoqjmENHE6ihERESK12U8JB+F/UutjkTE6ZSEidQkafHw9kVwbIPVkYiIiJSsfjeIagWbP7c6EhGnUxImUpNs+QrO7IewxlZHIiIiUjKbzWwN2/ETZCRYHY2IU2lMmEhNYRiw8RNoPRICI62ORkRE5MI6XQdn9kFOJvhbHYyI86glTKSmOPo7xO6ErjdbHYmIiEjpBNWGy6dBSLTVkYg4lZIwkZpi+/cQ2hCaDLA6EhERkdLLyYTfP4TY3VZHIuI0SsJEaorBz8Kkn8FDL3sREalCPDxh6QuwYYbVkYg4je7GRGqCnEwz+QpraHUkIiIiZePpDR3HwZavITfb6mhEnEJJmEhN8PHlsGiq1VGIiIiUT+cbIT0eds+3OhIRp1ASJlLdnd4BR3+Del2sjkRERKR86rSFel21ZphUG5qiXqS62/gpBERBy+FWRyIiIlJ+Ax6H3AyroxBxCiVhItVZbpa5QHOn68HLx+poREREyq/lEKsjEHEadUcUqc5O/WkmYlobTEREqoMTf8BPU8AwrI5EpEKUhIlUZ/W7wsN7oVYrqyMRERGpuKxUWP8hHFxpdSQiFaIkTKS6ykiEzGTw9rc6EhEREedo1BsimsHGT6yORKRClISJVFfr3oH/dIO8XKsjERERcQ6bDbreBDt+gIwEq6MRKTclYSLVkT0PNn0GrYaBp+bfERGRaqTTDZCXA1tnWh2JSLnp7kykOtq/FJKOQNcJVkciIiLiXMF14NqPoUEvqyMRKTclYSLV0cZPoFYbqN/N6khEREScr83lVkcgUiHqjihS3djtkJ0K3W8x+86LiIhURytehcXPWh2FSLm4ZRKWnp7Od999x6233kqrVq3w8/MjMDCQTp068cwzz5CamlqozNSpU7HZbMX+PPbYY8U+3qpVqxgxYgQREREEBQXRs2dPPvlEs+5IFeXhAeNnwUV3WB2JiIiI62SnwW/vQ3a61ZGIlJlbdkf84osvuP322wFo06YNV1xxBcnJyaxevZqnnnqKL7/8kmXLllG7du1CZfv06UPz5s0Lbe/WrehuWbNmzWLcuHHY7XYuueQSoqKiWLx4MRMmTGDLli288sorzn1yIq525gCENtCEHCIiUr11GW+2hu34ATpdZ3U0ImXilndp3t7e3HHHHUyePJk2bdo4tp84cYKRI0eyadMmJk+ezBdffFGo7G233cbEiRNL9ThnzpzhlltuIS8vj1mzZjFmzBgATp06Rd++fXn11VcZNWoUAwYMcMbTEnE9w4CPrzD7yg/7l9XRiIiIuE5EU2jcDzZ+qiRMqhy37I44YcIE3n333QIJGEB0dDRvv/02ALNnzyY7O7tCj/PBBx+QnJzMlVde6UjAAOrUqcNLL70EwKuvvlqhxxCpVHF7IOkwNB1gdSQiIiKu13UCHFoJCYesjkSkTNwyCStJp06dAMjKyiI+Pr5C5/r5558BGDt2bKF9I0eOxM/Pj0WLFpGZmVmhxxGpNPsWg6cPNO5jdSQiIiKu1+ZyuHMFhDeyOhKRMnHL7ogl2b9/P2B2WYyIiCi0f8mSJWzevJnMzExiYmIYPnx4sePB/vjjDwC6du1aaJ+Pjw/t27dn/fr17N69m44dOzrxWYi4yN7F0Kg3+ARaHYmIiIjreftBdEezOz5oVmCpMqpcEjZt2jQAhg0bhq+vb6H9n376aYHfn3zySa6++mo++ugjgoKCHNuTk5NJSkoCICYmpsjHiomJYf369Rw6dKjYJCwrK4usrKwC5wXIyckhJyenDM/M+fIf3+o4qiu3q1/DwDP9DEabK7C7S0wV4Hb1W82ofl1L9etaql/XqnL1m5mE16eXk3fJYxitRlgdzQVVufqtYqys37I8ps0w8r86cH9z585l1KhReHl58fvvvzu6JgJ89tlnnDp1iuHDh9OoUSMSEhJYvnw5jzzyCMeOHeOqq65izpw5juOPHz9O/fr1AbPCvLwK56Pjx4/n888/5/PPP+eGG24oMqapU6fy9NNPF9r+xRdfEBAQUNGnLFJ2hh1sVa6nsYiISLldsuspMr3C+K3Zg1aHIjVYeno6N9xwA0lJSYSEhJR4bJVJwnbu3Env3r1JSEjgjTfe4IEHHihVuRMnTtChQwfi4+NZs2YNvXr1ApyXhBXVEtagQQPi4uIuWPmulpOTw8KFCxk8eDDe3t6WxlIduV39ZiSAX1i16YrhdvVbzah+XUv161qqX9eqivXrsWEGHr88Su4Df0JgLavDKVFVrN+qxMr6TU5OJioqqlRJWJXojnjs2DGGDRtGQkICU6ZMKXUCBuaMipMmTeKVV15h/vz5jiTs3K6J6enpRVZUWloaAMHBwcWe39fXt8hukd7e3m7zwnKnWKojt6nf966A5pfB0OetjsSp3KZ+qynVr2upfl1L9etaVap+24+G+Y/gfWCJuX5YFVCl6rcKsqJ+y/J4bt9n6cyZMwwZMoRDhw45kqmyatGiBWC2iuULCQkhNDQUgKNHjxZZLn97o0aacUfcXNIxiN0B9YuehEZERKRaC6oFMT1g/1KrIxEpFbdOwlJTUxk+fDjbt29nzJgxvP/++9jK0dUqISEBgMDAgjPG5Y8p27hxY6EyOTk5bNu2DT8/P1q2bFmO6EUq0b7F5jgwrQ8mIiI11bUfw1XvWB2FSKm4bRKWlZXFlVdeyW+//cbQoUP58ssv8fT0LPN5DMNwTMhx/lT0I0eOBGDmzJmFyv30009kZmYyaNAg/Pz8yvEMRCrRvl+hXhcIKLxsg4iISI0QUg88vf6arl7EjbllEpaXl8f111/PkiVL6NevH7Nnz8bHx6fY42NjY3n77bdJSUkpsD01NZW7776bdevWUbduXcaMGVNg/2233UZISAjff/89s2fPdmw/ffo0jzzyCAAPPfSQE5+ZiIvE7oKml1odhYiIiLXm3AXzH7c6CpELcsuJOd566y1H61VUVBT33HNPkce98sorREVFkZaWxn333cdjjz1Gjx49iI6OJjY2lo0bNxIfH09YWBgzZ84sNGV8REQE06dP59prr2Xs2LEMGDCAyMhIFi1aRGJiIlOmTGHAgAGufroiFXf3KsjNtDoKERERa/mGwI4fYdgL1Wa2YKme3DIJyx/DBRRY2+t8U6dOJSoqisjISB599FHWrl3L7t27Wb16NZ6enjRp0oSJEyfy4IMPOqajP9/VV1/N8uXLee6551i7di3Z2dm0bduW++67jwkTJjj9uYk4nT0PPDzB29/qSERERKzVahj89i6c2gZ1O1gdjUix3DIJmzp1KlOnTi318cHBwfz73/8u9+P16dOHefPmlbu8iKW+vA7CG8OIl62ORERExFqN+oJPMOyaryRM3JpbjgkTkVLKzYKDKyE0xupIRERErOflA80Hwt6FVkciUiK3bAkTkVI6+jvkpEOT/lZHIiIi4h6GPA9+oVZHIVIiJWEiVdn+ZeAfDnU7Wh2JiIiIewhrYHUEIhek7ogiVdmh1WYrmIdeyiIiIg5LX4Q5d1sdhUixdOcmUpWNnwXDX7Q6ChEREffi5QPbv4McLd8i7klJmEhV5u0HwXWtjkJERMS9tBxujpk+sNzqSESKpCRMpKpa9DT8cL/VUYiIiLifWq3M5Vt2awkicU9KwkSqql1zAcPqKERERNyPzWa2hu3+BQx9Vor7URImUhUln4DYnZqaXkREpDi974NbF5gJmYib0RT1IlXR/l8BGzS91OpIRERE3FNojNURiBRLLWEiVdG+JRDdCQIjrY5ERETEfW3+Ar4eb3UUIoWoJUykKhr6AqSesjoKERER92bzhB0/mt34Q6KtjkbEQS1hIlVRUC2o297qKERERNxbi8Fg84A9v1gdiUgBSsJEqprfP4S5D1sdhYiIiPsLiIAGvWDXfKsjESlASZhIVfPnHEg8YnUUIiIiVUOrYbB/KeRkWB2JiIOSMJGqJCsVDq+FZgOtjkRERKRq6Hgd3DIfvPysjkTEQRNziFQlh1aBPUdJmIiISGkF1zF/RNyIWsJEqpK9iyGsIUQ2szoSERGRqmPfEvj8WjAMqyMRAZSEiVQtF90JV/wHbDarIxEREak6PLzMGRJPbLY6EhFASZhI1RLZDJoOsDoKERGRqqXhxeAbqlkSxW0oCROpKnb8BIumqiuFiIhIWXl6Q4tBsHue1ZGIAErCRKqOLV/BwVXqiigiIlIeLYfDiT8g+bjVkYgoCROpEnKzYd9SaDHE6khERESqphaD4cZZEBBpdSQimqJepEo4vAayU6ClkjAREZFy8Q8zuySKuAG1hIlUBXsWQFBdqNvR6khERESqrpPb4KsbITvd6kikhlMSJlIVdBgLI17SeDAREZGK8PKDnT/B/qVWRyI1nJIwkaqgXhdoe6XVUYiIiFRtUc0hsjnsmmt1JFLDKQkTcXc7f4a171gdhYiISPXQepSZhOXlWh2J1GBKwkTc3foZ+sZORETEWdpeCenxcGiV1ZFIDaYkTMSdZafDwRWaml5ERMRZ6nWBqz+E6E5WRyI1mKaoF3FnB1dAbia0HGp1JCIiItWDzWZOeCViIbWEibiz3b9AeGNzELGIiIg4R1YKfHcvHF5ndSRSQ6klTMSdtR4JDS/W1PQiIiLO5BNkTlPv7Q8NL7I6GqmB1BIm4s6aXwYdr7E6ChERkerFZjMn6NjxA9jtVkcjNZCSMBF3teNH+HOO1VGIiIhUT22vhNRTcGSt1ZFIDaQkTMRdrXwDts22OgoREZHqKaYHBEfD9u+tjkRqII0JE3FHKafg2HrooUWaRUREXMLDA676nzkBlkglUxIm4o72/AI2D60PJiIi4krNLrU6Aqmh1B1RxB3tmgcNekFgpNWRiIiIVG9r3oblr1gdhdQwSsJE3FGby+Hie6yOQkREpPpLOgbr3oG8XKsjkRpESZiIO+p8g5mIiYiIiGt1uBrSYuHgCqsjkRpESZiIu9nyLRxaY3UUIiIiNUO9rhDeBLbNsjoSqUGUhIm4E7sdfvkH7PrZ6khERERqBpsN2l9tLtycm2V1NFJDaHZEEXdyfCOknYZWI6yOREREpOboNtGckdjTx+pIpIZQEibiTnbNBf8IiOlpdSQiIiI1R1gD80ekkqg7oog72fcrNBsInvp+REREpFId2wgfXw7ZaVZHIjWAkjARd2EY0HoEdBxndSQiIiI1j38YHFgOu3+xOhKpAZSEibgLmw0ueRhaDrE6EhERkZonoinU76ZZEqVSKAkTcRf7lsCJLVZHISIiUnO1uRz2LobsdKsjkWpOSZiIu5j/OPz+vtVRiIiI1FytR0FuBuxfanUkUs0pCRNxBymnIHYnNOlvdSQiIiI1V1QLuHEWNB1gdSRSzWkKNhF3cGC5+W+TS6yNQ0REpKZrMcjqCKQGUEuYiDs4sAxqtYGg2lZHIiIiUrOln4Gvx8OR36yORKoxJWEi7iCsEXS6zuooRERExC/MTMC2f291JFKNqTuiiDvo/7DVEYhIJUvKyGH9wTNsP55MalYuqVm5pGfnERnoQ8u6wbSqE0yLOkEE+OijWqRSeXhAq+Gw82cY8py5hIyIk+mdXcRqcXvA0wfCG1kdiYi42MG4NL5ef4Tlu2PZfiIZw4DwAG/CAnwI8PEk0MeLTYcT+HDVAQwDfDw9GNq+Ltf3aECvppF4eOhmUKRStB4FGz4yJ82q3cbqaKQaUhImYrWlL0DCQbh9idWRiLhEWlYu328+zrbjSSSmZ5OQlkN6di7NagXRrn4o7euF0DEmDH8fT6c/tmEYJKTnEJeahb+3J5FBPhdsWbLbDdJz8kjNNFunIgN9CAvwxlbOb8Nz8uws2n6Kz9cdZuXeOEL9vbmsdW0mXNyYi5pG0DAioNC507Nz2Xs6lbX74/nq9yPc8MFxGkUGcOclzRjXowGeSsZEXKvJJeATBDt/UhImLqEkTMRKhmHOjNhlvNWRiDjdwbg0PllziG83HCEtK5fWdUOIDPKhVrAvvl7+7Dmdys9bT5CVayfYz4vrezbk5osbERMeUO7HNAyDjYcT+fK3w6w7EM+p5Cyyc+0FjvH39iQi0IfIIB8iAn0ID/AhOSOHk8mZnEzK5Ex6NoZR8LzBvl40iAigRZ0gLm1VmwGtahEW4FNiLBm58OGqg3yy5jDHkzLp1iicV6/pxMiO0fh5l5xwBvh40TEmjI4xYdzerym/HTjDp2sP8Y85W/nit0M8fUV7ujUKL1PdHEvMYN7WE6zdH49hgJenDS9PD1rWDmZcjwbUDfUr0/lczW432HkyhTX741mzL57jiRnEhPvTMCKAmDBfPLKtjlCqNS9fGPcp1G5ndSRSTSkJE7FS7E5Ii9XU9FLtfL7uEE9+t40Qf29uvKgR43s1LDK5ys2zs/tUKt//cYwv1x3mgxX7Gda+Ln8f0oqmtYJK/XjZuXa+Xn+Ez9ceYufJFBpE+DOsXV3qh/lTN9SPWsG+pGfncSYtm7jUbM6kZTn+fzQhnRA/bzo1CGNYOz+ign0J8vUiyM+LAG9P4tOyOXwmnUPx6Ww9lsj3m4/jYYPujSLo2SSC9vVD6RATSlSQD3tOpfLn8SQ2Hkrgu02e2NnDFZ3qc0vfxrSrF1quurTZbFzUNJKLmkYyqU8CT/2wjav/t5qru8bw4OAWJSat6dm5fPP7EeZsOsYfR5Pw8fSgZ5MI/Lw9ycq1k5KZy7vL9/Hmkj0MalOb8b0a0bd5VJlb/U4nZ7L5SCLbjiWx9VgSuXaD3s2i6Ns8irb1QsrUcmcYBvO2neSZH7dzMjkTHy8PujYMo1ODUI4lZrJ452mOJqRjMzyJDdnLXQNaEOir2xlxgWYDrY5AqjG9a4lY6eBK8PCGBhdZHYmI07y7bB8vzNvJxN6NeWx46xJbfbw8PWhbL4S29UJ44LIWzNp4jHeX7WPYGyu4q39T7rm0+QVbjdbsi+fJ77exPzaVIW3r8viINvRrHuWy8VMnkzL5dddpluw8zdfrj/DWr3sBc+y+YZj/NokMpF9dg6k39CMmMthpj92tUTjf39uXr38/wqsLdvHDH8e4rkdD7r20eYGWrKT0HD5ec5AZqw6QnJnLoDa1uaVvEwa2rk2wn3eBc6Zk5vDdpmN8tvYwN334GyM61OX5qzoQHlhySx+Yk4u8tmAXn649hN2AqCAf2tcPxdPDxn+W7OHF+TsJD/Dm3kubM7F3Y7w8S56U+XhiBv/3/Z8s2nGKwW3r8HqfznRpGFboGohPTueRjxbz7oqDfPn7MR4d1oprujcoQ02KlIJhwLxHoUFP6DDW6mikmlESJmKl3CxoMQR8Aq2ORKTCDMPgtYW7+c+Svdw/sDkPDm5ZphaVAB8vburViGu6xfDfX/fyzrL9zNl8jIeHtmZI2zqFbsQPx6fz+qLdzNl0jG6Nwvnpb/1oWy/E2U+rkLqhflzfsyHX92wIwKnkTLYcTSIuNYtWdYNpXTcYb5vB3LlzqRPi/C5+nh42brioIVd2rsfHaw7y3vL9fL3+CK3qBJORk0dGdh5xqVkAjOvRgNv7NaVBRPGtZcF+3tx0cWPG92rEvG0neXz2VoZNW86r13Smb4uoIssYhsHsjcd4Yd4OMrLzeHx4Gy7vVI86Ib6Ov3l2rp3NRxL5fvMxnp+7gx/+OM6/x3Qs8m+UmZPHJ2sOMm3RHgJ9vXhnfFeGtY8uNuYQf2+uaGTnyev78NqifTw8cws2m42x3WLKUpUiJbPZ4PR2SDigJEycTkmYiJV632f+iFho5Z443l2+jwYRAbSrF0Lb6BA61A+9YKvF+f49fyfvLtvP48Nbc2f/ZuWOx8/bkylDWnFll/pM/eFP7v9yE4E+ngxuW4dLW9dm+4lkluw4zZ7TqUQE+vDS2I6M7Rpj2cyBdUL8GNy2YLKVk5Pj8scN9PXingHNualXIz5de4gjZzLw9/YkwMeTsABvruxcn1rBvqU+n81mY0SHaLo2DOehbzcz/sN1jOlan7FdY7ioaSSeHjYyc/L4YfNxPlp9kO0nkhnVMZonRrYtcjyZj5fZ9bFnkwiu7hbD47O2cvlbK7m2ewP6tYiie+NwogJ9+f6PY7zyy25OJmdyQ8+G/H1oK0L9vYuIsLD6Yf5Mu64zAT6ePD57CzHh/vRqGlnq5yxyQS2HweJnIDtNX5iKUykJE7FKVorZ1cHP9d/cixRn8Y7T3P/1FprXDiI2JYuvfz9Cnt2gZ+MIpk/qQVApx9rM2XSUd5ft58lRbbm1bxOnxNasVhCf3noRB+LS+OmP4/zwx3G+23ycqCAfLm1Vm4eGtKRfi1o1fjxQsJ839wxo7rTz1Q3149NbLuLjNQeZvuoAszceo3awL72aRrJ8TyxJGTkMaFmLJ0ZdRO9mRbeUna9rw3B+/Ftf3lu+j6/XH+HL3w4DEBbgTWJ6DkPb1eGTW3vSrAzjAPPZbDaevao9h8+kc+enG5hzT+8yjScUKVGr4bDgn7B/KbQeaXU0Uo3U7E8uEStt/RbmPQaPHQJvf6ujkRpoY5yNz9b9wZC2dZh2XRd8vDzIzMljzf547v9iEzd9uI6PJvW8YKvEn8eTeHz2VsZ2i+GWPo2dHmeTqED+dlkL/nZZC04nZxIV5Kv1slzMw8PGpD5NmNi7MZuPJPLDH8dZsy+ea7rFML5XIxpFlr1FwMfLg/sGtuC+gS04mZTJ+kNn+PN4MoPa1KZbo4gKxevt6cH/buzGmP+t4paPfmfOPX1KNaZN5IIim0FkC9g9X0mYOJWSMBGrHFwFdTsoARNLzNl0nE/2eHBlp7q8cm1nR9dDP29PLm1Vm89vv4ibPvyN8R+s49NbexY7HXtiejZ3fbaB5rWDeO6q9uVeS6u0artgjJUUz2az0aVhOF0alm06/AupG+rHqI71GNWxntPOGRrgzYyJPbnqv6u45/ONfHJrT7zL2KVWpEgjX4GgOlZHIdWM3p1ErGAY5syIjftYHYnUQKlZuTz90w661zJ4cUz7Isd+dYwJ44vbL+JYYgbXvbeWA3FphY7JzbPzwFebSc3M5Z3x3S44i6GIqzWMDOB/N3bl94NneP7nHVaHI9VF0wFasFmcTkmYiBXO7IfUk9Cor9WRSBWTnWvnRFJGhc7x3aZjZObaGdXAXmK3vnb1Qvnqjl5k5OQxYtoKPllzELvdwDAMluw8xdA3lrNybxxvXt+lQgssizjTRU0jmXpFOz5afZCvfz9sdThSXax+C9bPsDoKqUbUHVHECrG7wMsfGvayOhKpQpIycrj1o9/ZeiyJhQ/2p2Fk2RMfwzD4fN1hBraqRZjv8Qse37JOMHPv78cL83bwf9//yYI/TwGwcm8cFzeNZNp1XWhfv3yLEIu4yvhejdh+IpknvttGs1pBdG9sjjmz2w1Op2RxIC6Ng/FpeHt6aFp7KZ0Tf0DsDug+yepIpJpQEiZihdYjzAk5vEo/fbTUbKeTM7l5+m+cSMok1N+bZ3/ezvs3dy/zeTYdSWTHiWQeHtyclD0XTsLAnAr9uas6MKRtXR6btQU/H08+uLk7l7Wp7fIxYCLlNfXyduw9lcrYd9aUeFyPxuHlmmhEaphWw2DrN5B0FEKVuEvFKQkTqWyGAYZdCZiU2qH4NG768DeycvP49q6L2X0qhfu+2MSvu05zaavaZTrX52sP0yDCnz7NIpm/p2xxXNKyFqsfv6xshUQs4uPlwQcTu7Pgz1Pk2e3mWy9QK8iXxlGBRAX50PNfi1m4/RS39Wtqdbji7ppdBh5e5iyJPW6zOhqpBpSEiVS2hIPw7iUwfjY06GF1NOLm7HaDGz9Yh7enBzPv6k2DiABa1A7i86aHeebH7fRuFomvV+kmxEhMz+anLcd5YFALTfEuNUKIn3eJ3Q37NY9iwZ9KwqQU/MOg4cWwa56SMHEKTcwhUtkOrTIXao5y3uKqUn3tOJnM0YQM/jW6Aw0izDFgNpuNp69sx+Ez6UxfebDU55q18Rh2w+Cabg1cFK1I1TK4bR3WHzpDfGqW1aFIVdD/Uej7oNVRSDWhJEyksh1cBXXbg79z190R95Gda2f1vjhemLuD95bvq9C51uyLx9fLg66Nwgpsb1knmAkXN+Y/S/aUarZEc0KOQwxtV5daweoKKwJwWZs6GMDinaetDkWqgib9oLFmNRbnUBImUpkMAw4sgyb9rY5EXCA3z87D3/5Bl2cWcMP76/h4zUFemr+LxPTscp9z1d44ejSOKLLL4eTBLfD39uStJXsveJ41++PZH5vGjRc1KncsItVNrWBfujYMZ+H2U1aHIlXFjp9g6YtWRyHVgJIwkcqUcBCSj5kLP0q1s+lIIt9uOMrNvRvz09/6suzhS8kzjHLf4OXk2fntwBkubhZZ5P4QP28m9m7MzA1HL9idavrKA7SsE0SvphHlikWkuhrStg4r9sSSkZ1ndShSFcTvhZWvQ3bhBexFykJJmEhlimgCD+2Cxv2sjkRcYMnO00QG+vDwkFa0rx9KnRA/ejSKYN62k+U635ajSaRl59GneVSxx4zv1QibDT5bW/yitPtiU1m04zS39W2qKeVFzjO4bR0yc+ys2BNrdShSFbS5HHIzYO8iqyORKk5JmEhlC64L3n5WRyEu8OvO0/RvWavAzIPDO9RlxZ5YkjNzyny+1XvjCPb1on29kGKPCQ/04ZpuDfhkzUEyc4r+Jv/DlQeICvLlyi71yhyDSHXXtFYQzWsHsUBdEqU0IptBnfaw40erI5EqTkmYSGWx58E7/WDnXKsjERc4kZTBzpMpXNq64Lpdw9rXJSfPYPGOst/grd4Xz0VNI/DyLPmt+ta+TTiTns2cTccK7YtPzWLWhqNM7N2o1FPZi9Q0g9vWYfGOU+Tm2a0ORaqCNlfA7l8gV7NqSvkpCROpLCc2w8ktmhWxmvp1ZyweNrikRa0C26ND/enaMIy5W8vWJTEzJ48NhxPo3az4roj5GkcFMqRtHT5YsR+73Siw79O1h7DZ0IQcIiUY3LYOCek5bDiUYHUoUhV0vBZGvW51FFLFuWUSlp6eznfffcett95Kq1at8PPzIzAwkE6dOvHMM8+QmppabNmPPvqInj17EhQUREREBCNGjGD16tUlPt6qVasYMWIEERERBAUF0bNnTz755BNnPy2p6fYvA58giOludSTiAr/uOk23RuGEBngX2jeiQzTLdseSUoYuiRsOJZCda6d386In5Tjf7f2asi82jV93/TXVdmZOHp+uOcQ13RoQHuhT6scWqWk6x4QRFeTDst0aFyalENEEOowFLy33IeXnlknYF198wejRo5k+fTqenp5cccUV9OvXjwMHDvDUU0/Ro0cPTp8uvKbH5MmTmTRpEtu2bWPQoEH07NmThQsXcskll/Ddd98V+VizZs2if//+zJ8/n44dOzJs2DD27NnDhAkT+Pvf/+7iZyo1yv6l0Kg3eBa+SZeqLSs3j1V74wp1Rcw3rH1dsnPtLCnDWkSr98URGehDqzrBpTq+W6NwOjcI4/VFu/l5ywl2nUzhm/VHOJOeza19m5T6cUVqIg8PG22iQ9h7uvgveUUKOPUn/PA3yMu1OhKpotwyCfP29uaOO+5g+/btbN++nW+++Yb58+eza9cuunTpws6dO5k8eXKBMosWLWLatGlERkbyxx9/8N133zF//nyWL1+Op6cnkyZNIjExsUCZM2fOcMstt5CXl8fMmTNZunQpM2fOZOfOnTRv3pxXX32VpUuXVtrzlmosJxOOrNP6YNXU7wcSSM/O49JWRSdhMeEBdIoJZV4ZuiSu2hvPxc0iSz2boc1m45FhrTiZlMm9X2xk6BvL+b/v/2RI2zo0jgos9eOK1FRNowLZH6dpx6WUcrNg4ydwcIXVkUgV5ZZJ2IQJE3j33Xdp06ZNge3R0dG8/fbbAMyePZvs7L8WQH3ttdcAeOKJJ2jRooVj+8UXX8xdd91FYmIiH374YYHzffDBByQnJ3PllVcyZswYx/Y6derw0ksvAfDqq68698lJzeTpA7cthg7XWB2JuMCSnaeJDvWjdd3iW62Gd4jm112nScu68LemyZk5bDmaWKrxYOfq3SyK9U8MZuOTg/n2rot5aWxHpl7RrkznEKmpmtYK4lB8mibnkNKp1wXCm8C2mVZHIlWUWyZhJenUqRMAWVlZxMfHA5CRkcGSJUsAGDt2bKEy+dt+/LHgdKI///xzsWVGjhyJn58fixYtIjMz03lPQGomDw+o2x6C61gdibjA0l2nGdCqdomtViPaR5OVa2fprguPOfn9wBnsBvQp5Xiw80UE+tCjcQTXdm9AdKh/uc4hUtM0rRVITp7B0YQMq0ORqsBmM79Y3f6j2dtFpIyqXBK2f/9+wOyyGBERAcCuXbvIysqiVq1axMTEFCrTtWtXALZs2VJg+x9//FFg/7l8fHxo3749mZmZ7N6926nPQWqg7++FbbOsjkJc4GBcGvvj0ri0Va0Sj2sYGUCrOsEs3nnhqepX7Imjfpg/DSMCnBWmiFxA01pBAOyP07gwKaUOYyErCfYutDoSqYK8rA6grKZNmwbAsGHD8PU1Z6U5fPgwQJEJGEBgYCBhYWEkJCSQkpJCcHAwycnJJCUllVguJiaG9evXc+jQITp27FjkMVlZWWRl/bVORHJyMgA5OTnk5JR9cVZnyn98q+Oorkpdv5lJeG3+grx63TH0tyi1qnL9Lt5xEm9PGz0bhV4w1gEto/hmw1Eys7Lx9Ci61cwwzDXF+reMJDfXdQO+q0r9VlWqX9dyRf1G+Xvi5+3BnpPJ9GsW4bTzVkW6fksprCm2UW9i1O0CZagr1a9rWVm/ZXnMKpWEzZ07lw8//BBvb2+effZZx/b8KesDAor/1jgwMJDExERHEnbuNPfFlQsMNAezp6SkFHveF154gaeffrrQ9gULFpQYT2VauFDf0LjSheq3XsI6ehh2lhy0k3FcCzWXlbtfvz/v9iAmwMayxQsueKxfMiSke/Hut/NoXMzwsdMZcCTBi8DkQ8yde9C5wRbB3eu3qlP9upaz6zfS25NlG3dSN2m7U89bVen6LY0wOLahXCVVv65lRf2mp6eX+tgqk4Tt3LmT8ePHYxgGL7/8smNsmNUef/xxpkyZ4vg9OTmZBg0aMGTIEEJCQiyMzMzGFy5cyODBg/H21rTozlba+vX84SeM2u249KqbKzG6qq+qXL/vHlxDzyYhjBhx4Qkw8uwGH/97KZmRTRgxqEWRx8xYfQifbXu475qBBPi47i26qtRvVaX6dS1X1e8vKX8Ql5rNiBE9nHbOqkjXbxkYdjwWT8WIuQij9chSFVH9upaV9ZvfI640qkQSduzYMYYNG0ZCQgJTpkzhgQceKLA/KMjsx11S9pmWZk47GxwcXKBMfrmiEqbzyxTF19fX0S3yXN7e3m7zwnKnWKqjEuvXngd7F0H3SfoblJM7X792u8H+uDTGdI0pVYzewIBWtVi2O55Hh7ct8pgVe+Pp1TSS0MDKmVDDneu3OlD9upaz67d57WB+P3REf7OzdP2W0sk/IG4XdLiqTMVUv65lRf2W5fHcfmKOM2fOMGTIEA4dOsSkSZN45ZVXCh3TsGFDAI4ePVrkOdLS0khMTCQ8PNyRUIWEhBAaGlpiufztjRo1qvDzkBrsmhnQZbzVUYgLHEvMIDPHTrPaQRc++KyBbeqw/UQyJ5IKz8CWlpXLuv1nLjjJh4i4RtNaQcSmZJGSqbE6UgYdxsL+pZB62upIpApx6yQsNTWV4cOHs337dsaMGcP7779f5BTQrVq1wtfXl9jYWI4dO1Zo/8aNGwEKTa6R36Uxf/+5cnJy2LZtG35+frRs2dIZT0dqIg9PaDoAIppaHYm4wL5Yc2xp81qlT8L6t6iFp4eNX3cWnqp+9b54svPsxS76LCKu1bSWORZ8f6wWbZYyaHuVOWX9n99ZHYlUIW6bhGVlZXHllVfy22+/MXToUL788ks8PT2LPNbf35+BAwcC8O233xbaP3OmuZDe5ZdfXmD7yJEjC+w/108//URmZiaDBg3Cz8+vQs9FarCfHoR9v1odhbjI3tOp+Hl7UD+s9F0HQwO86dYonCVFTFX/667TNIkKpHFUoDPDFJFSanL2tadp6qVMAiKg+SDY8rXVkUgV4pZJWF5eHtdffz1LliyhX79+zJ49Gx8fnxLL5E+O8dxzz7Fnzx7H9jVr1vDuu+8SFhbGrbfeWqDMbbfdRkhICN9//z2zZ892bD99+jSPPPIIAA899JCznpbUNImHYf10yEy0OhJxkX2xaTSNCsKjmOnmi3NZ69qs2htPZk6eY5thGCzdeZoB6oooYplgP29qBfuqJUzKbsDjMOo1q6OQKsQtJ+Z46623mDNnDgBRUVHcc889RR73yiuvEBUVBcCgQYN44IEHmDZtGp07d2bw4MFkZ2ezcOFCDMNgxowZhIWFFSgfERHB9OnTufbaaxk7diwDBgwgMjKSRYsWkZiYyJQpUxgwYIArn6pUZ7t/AQ8vaDbQ6kjERfadTqV5GcaD5RvYujYvzNvJmv3xjq6Hu0+lcjwpU10RRSzWNCpQSZiUXb3OVkcgVYxbJmEJCQmO/+cnY0WZOnWqIwkDeOONN+jcuTNvvfUWCxcuxMfHh0GDBvHkk0/Su3fvIs9x9dVXs3z5cp577jnWrl1LdnY2bdu25b777mPChAnOe1JS8+yeD416g1+o1ZGIi+yNTaVP86gLH3ie5rWDaBDhz5Idpx1J16+7TuPv7UnPJjV7kVgRqzWtFcSmwwkXPlDkfAdWwIpX4MaZ4KlZD6VkbpmETZ06lalTp5ar7MSJE5k4cWKZyvTp04d58+aV6/FEipSVCgeWw6DCC3lL9XAmLZszadnlagmz2WwMblOXj9ccZPORRLo1CmfNvnj6NI/Ez7vosa8iUjma1Qpkzqaj2O1GmbsaSw3nF2rOkrh3EbQabnU04ubcckyYSJXn4QVX/Q/aXmF1JOIi+TMjNqtdvkk0Hh7aimevbE+LOkEs3XWaXadSGNY+2pkhikg5NK0VSGaOnRPJmVaHIlVNdEeo2wE2fWZ1JFIFuGVLmEiV5+1nrhsi1da+06l42KBxZPmSMH8fT264qCE3XGSuc5ialUugj1rBRKzWNMps3d4fm1qmmU9FAOhyE/zyD0iLg8Cyd1eXmkMtYSLOZrfDzw/BiS1WRyIutPd0Kg0iApzWfTDI16vIdRBFpHLFhPvj7WnT5BxSPh2uAZsHbJtldSTi5pSEiTjbyT/g9w8gK9nqSMSF9sWmlmmRZhGpGrw8PWgUGcj+WK0VJuUQEAG3zIfut1gdibg5JWEizrb7F3NwboOLrI5EXGhvbPmmpxcR99c0KpD9cWoJk3Kq382cHdEwrI5E3JiSMBFn2zUPmg/S9LTVWGZOHkcTMmimljCRaqlprSB1R5SK+eF+mPeo1VGIG1MSJuJMySfgxGZoOczqSMSF9semYRjQTC1hItVSs1qBHEvMIC0r1+pQpKoKiIQtX0FOhtWRiJvS7IgizuTtB8NeNFvCpNrae3asiMaEiVRPbaJDANh5MplujUpeQH3V3jiW744lNiWL2NQsAN6/ubvW/KvpOt8IK1+DnT9rtmQpklrCRJzJPxx63WUOzJVqa9/pVKKCfAkNUJdTkeqoZZ1gvD1tbDt24QmWHpm5hZkbjnIkIZ3cPIMVe+I4FJ9eCVGKW4tqDg0v1pphUiwlYSLOkpMJC56EhENWRyIutjc2lWa1yrc+mIi4Px8vD1rVDWbrsaQSjzudksmxxAyeubI9397VmxfGdAAg/myLmNRwnW+Ew2sh/YzVkYgbUhIm4iwHV8DqN9X/uwbYd1ozI4pUdx3qh7LtAknY5sOJAHRpGAZAVLAvAHFp2a4MTaqK9lfDlO3qHSNFUhIm4iy750NYI6jVyupIxIXy7Ab749KUhIlUc+3qhbLndCqZOXnFHrPpSCJ1QnyJDvUDINDHE18vD7WEicknwEzAcjLAbrc6GnEzSsJEnMEwzPXBWg4Dm83qaMSFDsWnkZ1rVxImUs11qB9Knt1g58mUYo/ZdDiBzg3CsJ1937fZbEQF+RKnJEzynTkAr7SCQ6usjkTcjJIwEWc4vR2SjkDLoVZHIi627bg5UL99vVCLIxERV2pVNxhPD1uxXRLz7AZbjibRpWF4ge2RQT7Ep6o7opwV3hgCI2Hz51ZHIm5GSZiIM/iGwCUPQ+O+VkciLrbtWBL1w/wJD/SxOhQRcSE/b09a1A7iz+NFJ2G7T6WQnp1HlwZhBbabLWFKwuQsm82coOPP7yDzwrNtSs2hJEzEGcIawMAnwMvX6kjExbYeTaJDfbWCidQEHeqHFjtD4qbDiXh62OgQU/D9IDLQh/g0dUeUc3S6HvKy4M85VkcibkRJmEhFpcfDyjc0BW0NYBgG244n0b5+iNWhiEglaF8/lF0nU8jOLTypwqbDCbSuG0yAj1eB7ZFBvuqOKAWF1odmA+HEH1ZHIm5ESZhIBdn2LoJFT0FejtWhSAUYhkFuXsmzVx0+k05KZi7t1RImUiO0rx9KTp7B7lOFJ+fYfCSRzud1RQSICvLRxBxS2LjPYdRrVkchbkRJmEgFeexdAPW7QXAdq0ORCnj6x+3c+emGEo/ZduzspBxKwkRqhDbRwXjYKDQ5R1JGDntOpxaalAPMiTnSs/NIz86trDClKvD2M2dSTjpqdSTiJpSEiVSAzZ6Lbf8Sc2p6qdK2n0jm112nS1zfZ+uxJKJD/YgK0tg/kZogwMeLZrWC2Hbe5BxbjiYCfy3SfK789wd1SZRClr4A718GdiXooiRMpEIi03Zjy0rR1PTVwImkDOwGLNpxqthjth1LUiuYSA3ToX6ooxU836bDiYT6e9MkMrDQ8ZGBZ5OwNCVhcp5WIyD1JLZ9S6yORNyAkjCRCsjyCiav511Qt6PVoUgF2O0GJ5MyAfjlz6KTMMekHFofTKRGaVc/lB0nkguMGd18JJFODcLw8LAVOj4qyFy+Ii5F48LkPNGdoE57PLZ8aXUk4gaUhIlUQIp/A+yDnzPXAZEqKy4ti5w8g97NIlm5J46UzMKTrBxNyCAxPYcOMZoZUaQmaV8vhKxcO3tjUwHzC5lNhxMKrQ+WL38NQU1TL4XYbNBlPLbd8/HJLTzZi9QsSsJEyivpCA3jl0NOutWRSAWdSDRbwSb2bkx2np1fd8UWOiZ/wVZ1RxSpWdqdfc0v+PMUa/fHM3vjMRLSc4ocDwbg7elBeIC3FmyWonW4FkJjCMwqvuu71AxeFz5ERIriseMHOh75GDv/Z3UoUkEnkjIA6NYonI4xofyy7SRXdKpX4Jitx5KoHexL7WA/K0IUEYsE+XrRqk4wry3cXWBblwaFZ0bMp7XCpFiBkeTe/RsJ8+ZZHYlYTEmYSDnZ9i7kdHBbIr0DrA5FKuh4Yia+Xh5EBPowtF1d3v51L5k5efh5ezqO2XosmQ5qBROpkT69rSenk7MI9PUi0MeTEH/vAu8P54sM9FF3RCmezYZ/ViwkH4PIxlZHIxZRd0SR8shMxnZkLadCOlkdiTjBiaQMokP9sNlsDG1Xl/TsPFbsiXPsNwyDP48lOboliUjNUjvYj/b1Q2kSFUjtEL8SEzAwp6nXgs1SLMNOvz3P4bH6TasjEQspCRMpjwPLsNlzOa0krFo4npRJdKg/AM1rB9G8dhC//HnSsf9EUibxadlqCRORUokM8lF3RCmezYMjEX3w+HMW5GRaHY1YREmYSHn4R5DXdRLpvrWsjkSc4ERiBtFhf431GtauLgu3nyI715ySetsxc1IOJWEiUhpmS5iSMCne4Yh+2DITYdfPVociFlESJlIejftgH/6y1VGIk5xIyqTe2ZYwgGHt65KUkUP7qb8w+LVl/Hv+TqKCfKgT4mthlCJSVUQG+XAmLQu73bA6FHFTaX7R2GMugk2fWx2KWEQTc4iUVeIROL0dGvazOhJxgtw8O6eSMwu0hLWvH8pXd/Ri54lkDsancyAujR5dwrFpPTgRKYXIQF/sBiRm5BBxdt0wkfPZu03E4/AqsNvBQ+0iNY2SMJGy2jYLlr0IU/ZYHYk4wemULOwGBVrCAHo1jaRX00iLohKRqiwqyEy84lKzlIRJsYz210CXG6wOQyyitFukrPYshCb9wUtd06qD/DXCzm0JExGpiMgg8/NBMyTKBWWnw+YvwJ5ndSRSyZSEiZRFZhIcWQstBlkdiTjJ8URzZqro81rCRETKK78lTDMkygXF7oDv7oZdWry5plESJlIW+5eCPReaD7Y6EnGSE0kZ5uKrfuqdLSLOEeTrhY+XB/FqCZMLqd8NYnrCunesjkQqmZIwkbLw8oMO10J4I6sjESc5nphJdJi/Jt0QEaex2WxEBfpomnopnV53wcEVcHKb1ZFIJVISJlIWLYfC1e9bHYU40YmkDKJDNR5MRJwrMsiX+DS1hEkptLkCguupNayGUf8bkdJKPg7JJ6BeF00lW42cSMqkTd0Qq8MQkWomKkgtYVJKnt4w+BlN+FXD6E5SpLQ2fQafXAn2HKsjEScyuyOqJUxEnCsyyFdjwqT0Ol4Dba+wOgqpRErCREpr58/mrIj6pqrayMrNIy41q9AaYSIiFRUZ5EN8mlrCpAxid8H390KevuytCZSEiZRG0jE4sRlajbQ6EnGiU0nmt9RqCRMRZ4sK9CUuRS1hUgb2PLPXzbbZVkcilUBJmEhp7JoLHl7QQlPTVyeOhZrVEiYiThYZ5ENadh4Z2VqEV0qpTltoPghWvQF2u9XRiIspCRMpDU9v6Hgd+IdZHYk40Ykkc6HmemoJExEniwoyu65rhkQpk75T4PR22POL1ZGIiykJEymNbhPhqretjkKc7HhSBqH+3gT4aKJYEXGuyCAfAOI1Q6KURaPe0KAXrNE9R3WnOw+RC4nbA54+WqC5GjqRmKk1wkTEJfJbwuI0Q6KUhc0Gl0+DgAirIxEXU0uYyIUsfQG+Hm91FOICJ5IyqBem8WAi4nzhAWoJk3Kq3RqCakOuEvjqTEmYSElys2HPQmitWRGro+NqCRMRF/Hx8iDU35s4jQmT8ji9E15tDcc3Wx2JuIiSMJGSHFoJWcnQaoTVkYgLqCVMRFwpKshHLWFSPpHNwS8EVr5udSTiIkrCREqycy6ENoS6HayORJwsIzuPhPQctYSJiMtEBvkSrzFhUh6eXtD3Qdj+vdkqJtWOkjCRknj5Qqdx5kBZqVZOJpvT09dVEiYiLhIV5EOcWsKkvDrdAKExsPwlqyMRF9DsiCIlGfq81RGIi5xJM2+M8mcwExFxtshAX/bHplkdhlRVXj7Q7yH44ytzjLqXj9URiROpJUykOEc3QGay1VGIiyRlmElYmL+3xZGISHUVFeRLfJpawqQCuk6AW+YrAauGlISJFCUvF74cpy4A1Vhieg4AIUrCRMRFIoN8OJOWjd1uWB2KVFUeHuaQiIMrIX6f1dGIE5WrO2J2djarV69m2bJlbN68mdjYWBITEwkLC6NWrVp07tyZ/v3707t3b3x8lLlLFXRoJaTFQrvRVkciLpKYnoO/tyd+3p5WhyIi1VRUkA95doPEjBwiAnU/JOWUlwNz7oIGF8HYD62ORpykTEnYzp07eeedd/jss89ISEjAMIr+Zuf777/HZrMRFhbGzTffzB133EGbNm2cErBIpdg2G8IbQ72uVkciLpKYkUNYgFrBRMR1Is+OOY1PzVISJuXn6W3OlPjzQ9D/EajVyuqIxAlK1R3x6NGjTJw4kfbt2/Pmm28SFBTE+PHj+c9//sPChQvZsGEDe/bsYf369SxcuJA333yTG2+8kaCgIKZNm0aHDh2YNGkSR48edfXzEam4vBzY8YPZCqZZEautpPRsQtUVUURcKPJs4qUZEqXCuoyHkPqwTMMkqotStYS1bNkSgNtvv53x48fTp0+fEo+/7LLLHP9fuXIln376KZ9++inffvstqampFQhXpBKkxUF0Z2g3xupIxIXUEiYirhYVfLYlLE1rhUkFeflCvylqDatGSpWE3XnnnTz66KPUrVu3zA/Qt29f+vbty9SpU3npJWXvUgWERMPN31kdhbhYYnoOYf7qHiQirhPs64WPpwfxagkTZ+gyHrKSIai21ZGIE5SqO+Lrr79ergTsXNHR0bz++usVOoeIy+Vmw75fzdkRpVpTS5iIuJrNZiMyyIe4VLWEiRN4+Zpjw/zDrY5EnKBUSVhycvnXSnrnnXfKXVak0u1dBJ9eBXG7rI5EXCwpPZtQJWEi4mJmEqaWMHGitf+Dn6ZYHYVUUKmSsKFDh5KWVvYV31966SXuvffeMpcTscwfX0DdDlCnndWRiIslZqg7ooi4XmSgL/FqCRNn8vCCDTMgdrfVkUgFlCoJW7duXZkTsSeffJLHHnsML69yLUUmUvnS4mHXfOh8o9WRiIvZ7QZJ6o4oIpUgKsiX+DS1hIkTdb0ZgurCcs21UJWVKgnr168fq1evZsSIEaSnp1/w+MmTJ/Ovf/0LX19fZs6cWeEgRSrFtpmAAR2usToScbGUzFwMA8I0Rb2IuFiUxoSJs3n5wiUPwdaZcGq71dFIOZUqCZs7dy59+vRhxYoVjBo1ioyMjCKPMwyD2267jTfffBN/f39++uknLr/8cqcGLOIyfmHQ804IjLI6EnGxxAzzW2mNCRMRV4sM8tHsiOJ8XW6G8Eaw40erI5FyKlUSFhgYyPz58+nduzdLly7l8ssvJzMzs8AxeXl5XH/99UyfPp3Q0FAWLFhQYL0wEbfXaRwM+5fVUUglSEzPAdCYMBFxuchAX1KzcsnMybM6FKlOvHzg9l9hwKNWRyLlVKokDP5KxHr16sWvv/7KlVdeSVaW2byelZXFlVdeyTfffENUVBRLliyhd+/eLgtaxOl2zdcA1xokMeNsEqaWMBFxsb8WbFZrmDhZQAQYBhxaY/4rVUqpkzCAoKAgfvnlF3r27MmiRYsYPXo08fHxDBs2jLlz5xIdHc2yZcvo0qWLq+IVcb68HPjhPnOmIakREtPNmyElYSLiapGBZot7WWZInL3xKN+uP+KqkKQ6ObQaZgyDfYutjkTKqMxTFwYHB/PLL78wePBg5s+fT+PGjUlLS6NRo0YsXryYpk2buiJOEdfZsxDSYqHzDVZHIpUkKSMHH08P/L09rQ5FRKq5qCCzJawsk3N8se4wdsPgmu4NXBWWVBeNekODXrDoaWg6EDzK1L4iFirXXyokJISFCxfSo0cP0tLSaN26NatWrVICJlXT5s+hbkdzfTCpERLTcwgN8MZms1kdiohUcxFnW8LKsmDz0YQMjiUWPQmaSAE2GwyaCie3wJ+zrY5GyqBULWHFJVcZGRnYbDbi4+Pp27dvkcfYbDb27dtX/ghFXCktDnbPhyHPWx2JVKLE9BxNTy8ilcLHy4MQP69Sz5CYlZvHqRRz8rPsXDs+XmrZkAtodDG0GgkLn4JWI8AnwOqIpBRKlYQdPHiwxP2xsbHExsYWuU/fNItbs+dC91u0NlgNk5iRrfFgIlJpooJ9Sz0m7HhipmOOhZNJmTSM1A21lMLQ5+DP78BD3eyrilIlYQcOHHB1HCLWCK4LI162OgqpZEnpOYRqenoRqSRRgb6lHhN25Ey64/9HE9OVhEnpRDSFflPM/xuG2U1R3FqpkrBGjRq5Og6Ryhe7C/Yvha4TwNvP6mikEiVm5NAkKtDqMESkhogM8in1FPVHEzLwsIHdgGMJGhcmZbTiVYjbC6P/Z3UkcgHqaCw114aPYfnLarqvgRLTszUmTEQqTWSQT6kn5jiSkE50qD9RQb6anEPKLqgO/PEFHF5rdSRyAaVKwnJycpzyYM46j0iF5eXAlq+h4zjw1M14TZOUkaMxYSJSaaKCSj8m7GhCBg0i/Kkf5qeWMCm7TjdAdGeY9wjY86yORkpQqiSsWbNmvPvuu+Tm5pbrQXJycvjvf/9Ls2bNylVexOn2LIT0OOh0vdWRSCUzDOPsFPUaEyYilSMyyJczadnY7cYFjz1yJp3/b+/Ow5uq0j+Af5M0a9MkXelKWQqVRXaQRRZRUEDcQEVGBXdxGHXcnZ8LOurojKi4zYyo4IaOgIqIC1URkX1HFtmhpS3dm3RLmibn90dIoTRt05LkJun38zx9sHfJfXO8XPLmnPOe1GgdUqK1yDMzCaNWkstdc93zdwGb5ksdDTXDqyQsIyMDs2bNQmpqKu6//35s2LABTqez2XOcTifWr1+Pv/zlL0hNTcXs2bPRrVs3nwRNdM52fAIk9QUSe0sdCQVYVa0DdU7B4YhEFDBxkSrUOQXMNS2PCDpRVoO0aB1STFr2hFHbpA1xVX4u3Ct1JNQMrwpz/Pzzz1ixYgX+9re/4fXXX8cbb7wBrVaL/v37IzMzE9HR0YiKikJFRQVKS0uxf/9+7NixAzU1NRBCoF+/fli4cCEmTJjg7/dD5J3+NwIyTolsj8qrXfMyOByRiAIlVq8GAJRU2RAd2XQvfE2tA8WVNqRGa1FhjUBeuRVOp4Bczkp31EoTOec92HmVhAHApEmTMGnSJKxduxbvvvsuvv32W6xduxZr1671eHxCQgKuu+463HHHHRg2bJjPAibyiUx+IdBelVe7vok2sUQ9EQVIrN71vCmurEVGQtPH5Za7ytOnxehgrrGj1uFEcaUNCQZW8KVWkitcpep3fQ5oo4Hu46WOiM7idRLmNmLECIwYMQIAsH//fuzatQuFhYUwm80wGo1ISEhA37590b1793MKbOvWrcjKysKmTZuwadMm5ObmAnDN5/Bkzpw5eOaZZ5p8vUcffRQvvviix31r167F888/jw0bNqC2thY9e/bE7NmzcfPNN5/Te6Ag9d1jQO8pQNpgqSMhCbiHA7EnjIgCJc7dE9ZChcScUtfww9RoLSLVrl6ME+U1TMKo7XYvBU7+Dvx5I6AxSB0NnaHVSdiZMjMzkZmZ6atYGvj73/+OZcuWtfq8ESNGICMjo9H2gQMHejx+6dKluP766+F0OjFq1CjExcXhp59+wowZM7Br1y68/PLLrY6Bglj+LmDjv4Euo6WOhCTi7gkzMgkjogAxaCKgVMhaXLD5RFk1lAoZOhg0iFS5PqLlltVgQMfoQIRJ4UYmAya9DLw1FMh6Cpj8mtQR0RnOKQnzp2HDhqFPnz4YPHgwBg8ejE6dOsFma7m86+23346ZM2d6dY3S0lLceuutcDgcWLp0Ka655hoAQEFBAS688ELMnTsXl19+OcaMGXMO74SCys5Pgch4IOMSqSMhiZTX1EIhlyFKHbSPPyIKMzKZDLGRLZepzymrQbJJC4VcBoM2Anp1BPK4VhidC1NHYNwzwLcPAT0u5+efIBK0n0IeffRRv1/j3XffhcViwZVXXlmfgAFAhw4d8M9//hPXXHMN5s6dyyQsXNTVutYG63sD1wZrx8qr7TBqlZDJONGdiAInVq9CcVXzwxFPlFUjNVoLwJW4pZi0XLCZzt3g24E/VgCb3mUSFkSCNgkLhBUrVgAApk6d2mjfpEmToNFo8OOPP8JqtUKj4XjskHcoC6gu4dpg7Zy5xs7y9EQUcLFeLNh8oqwGPZNOz9tJiWaZevIBmQyY+j6gjpI6EjpD2CVhP//8M3bs2AGr1YrU1FRMmDChyflgO3fuBAAMGDCg0T6VSoXevXtjy5YtOHDgAPr06ePXuCkAOg4Drn6Ha4O1c+XVtZwPRkQBF6dXIbukutljckqrMb5nh/rfU0xabD5W6u/QqD3Qxbj+zNsB1JQCXcdKGg6FYRL20UcfNfj9ySefxJQpU7Bw4ULo9fr67RaLBWazGQCQmprq8bVSU1OxZcsWHD9+vMkkzGazNZirZrFYAAB2ux12e8uLMvqT+/pSxxE0lFFAz2sAH7UH29e//NW+ZVW1MGgi2v3/N96//sX29a9QbN9obQS2VtiajLnSVoeyajuSDOr6YzpEqXCirCbg7zMU2zeUSNm+il/nQpa9DnV3rnHNkQ9DUrZva64pE03VfA8yGo0GNputyRL1H3/8MQoKCjBhwgSkp6ejrKwMv/76Kx555BHk5ubiqquuwpdffll/fF5eHlJSUgC4GiwionE+euONN+KTTz7BJ598gunTp3u8blOl8RctWgSdTteWt0p+0LFkNaJqTmBPynRXtzy1W6/vViBaLXBTN6fUoRBRO/JTrgwrc+V4aYjD4/68KuClXRG4v3cdOp8aNbatWIYPDirwj8F10IXd1+YkBbXdjIv++BtKIjOxufNf+JnIx6qrqzF9+nSYzWYYDM0vCeDVX+ns7Gzo9XrExMT4JEB/uPHGGxv8HhkZienTp+Oiiy7C+eefj6+++gobNmzA0KFDfXrdxx9/HA888ED97xaLBWlpaRg/fnyLje9vdrsdWVlZGDduHJTKdjz8SghEvPsSRExnpE+a5LOXZfv6l7/a963D69CzSwwmTjzPZ68Zinj/+hfb179CsX2t23PxdfYeXDzuUqiVikb7f/qjENi1A9dOvBgJUa51xZKyy/HBwU3oPWQkzksM3HyeUGzfUCJ1+8oy9UheegsmdayCOP+6gF/f36RsX/eIOG94lYR17twZM2fOxHvvvdfmoKSSlJSEW265BS+//DK+//77+iTszKGJ1dXVHhOmqqoqAEBUVNMPPrVaDbVa3Wi7UqkMmgdXMMUiiZzNQOEeyMY9C7kf2qHdt6+f+bp9zVY7YvRq/j87hfevf7F9/SuU2reD0TU6xlwrkOJhXmq+pRaqCDmSTJGQy129E+nxrs8fBRV2nJ8W+PcZSu0biiRr3/OvAQ58h4jf5gJ9rwcU4dnNKkX7tuZ6cm8OEkI0OQwwFHTr1g0AkJ+fX7/NYDDAaDQCAE6cOOHxPPf29PR0P0dIfrXlfdc6GZyESnCVqGd1RCIKtE6xkQCAAwUVHvefKKtBqklbn4ABQLxeDaVCxjL15HsT/wnc+n3YJmChwKskLNSVlZUBcA1RPFPfvn0BANu2bWt0jt1ux+7du6HRaNC9e3f/B0n+YasA9nwJDJwJyNvF7U7NsNodsNU5YdKppA6FiNqZ9FgdjFolduWYPe7PKa1GakzDueRyuQxJRq4VRn6gjQb0CUBVMXBgpdTRtEth/6lUCFFfkOPsUvSTTs0PWrJkSaPzvvnmG1itVlxyySVcIyyUqaOAO1cBA2+ROhIKAuXVrqpFLFFPRIEmk8nQJ9WIXSfKPe4/UVZTv1DzmVJMXCuM/Gj9m8DnNwEFe6WOpN0JiySsqKgIb731FioqGnbxV1ZWYtasWdi4cSMSExNxzTXXNNh/++23w2AwYNmyZfjiiy/qtxcWFuKRRx4BADz44IP+fwPkH0K4fhJ6nF4fg9q18ppaAOBwRCKSRN9UE3aeMHuc4pFTVo206MZVlVOitTjBnjDyl9GPAjFdgCW3AnbeZ4Hk9UDQ77//HmPHtn5OjUwmw08//dTq81asWIG///3v9b/X1ro+PJ1Z3fDJJ5/EpEmTUFVVhdmzZ+Oxxx7D4MGDkZSUhKKiImzbtg0lJSUwmUxYsmRJo5LxMTExeP/993Hddddh6tSpGDNmDGJjY/Hjjz+ivLwcDzzwAMaMGdPq2ClIHF8HLL8PmLEcMCRJHQ0FAXdPGIcjEpEU+qQa8eaqQ8g3W5FsOt3rZa6xo8Ja12RP2OoDRYEMk9oTpRaY+j7wzhjgh/8DLn9F6ojaDa+TsIKCApw8ebLVF5C1cf2BoqIibNy4sdH2M7cVFbkeSrGxsXj00UexYcMGHDhwAOvWrYNCoaiv6vjXv/61fk2ws02ZMgW//vornnvuOWzYsAG1tbXo2bMnZs+ejRkzZrQpdgoSW94HIICoRKkjoSBRn4SxJ4yIJNA3zQQA2HWivEESdrTYVY05LcZzT1hRhQ1WuwMaD6Xtic5ZQg/g0heA7x4Bhv0ZiO0qdUTtgtdJ2IgRI3Dbbbf5M5YGZs6ciZkzZ3p1bFRUFF588cU2X2vEiBH47rvv2nw+BaHKImDvMuCSOVyIkOqZTw1HNDAJIyIJdDBo0MGgxo4cMy7rfXqExqo/ChGliUDPpMbL5aScStbyzVZ0jotstJ/IJwbdCnQayQQsgLxOwjIyMtgzRKFj2weATA70my51JBREyqvtMGgioJAzMSciafRJNTUqzvHDnpMYe14CVBGNp+p3MLiKgxVYmISRH8lkQHx3wFEHbJ7vKmimZGE6fwqLwhxEjRxc6VqAkAU56AzlNXbOByMiSfVLM+H3E2Y4na7iHNkl1fjjZAUu7eV56LzxVM+9pcYesBipHSs9Avw4B/j2IakjCXtMwig8zfwWGPf3lo+jdqW82g4Ty9MTkYT6pBpRYavD0RLXPLCVe09CFSHH6O7xHo83aF2DlizWuoDFSO1YfHfg8leB7R8BWz+QOpqwxiSMwosQQNlx1wrwWpPU0VCQKa+urf9WmYhICn1STABQPyRx5Z4CjMyIQ6Ta8wwRdYQCGqUcZvaEUaD0m+6aI/btQ0DuVqmjCVteJWGjR4/Geeed5+9YiM7d8bXAvL5A3g6pI6EgVGCxIiGKY9yJSDpGnRKdYnXYmWNGcaUNm4+XYnyvDs2fo1UyCaPAuuxFIKkvsPuLlo+lNvGqMMeqVav8HQeRb6x/G4jPdD04iM5y0mzF8K5xUodBRO2cuzjHT/sKIANwcY+WkzDOCaOAilADN30JqPRSRxK2WjUc0eFwYNeuXdi2bRssFkuDfQcPHsQDDzyAyZMn44YbbsDHH3/s00CJWlRyGNj/LTD0Hpalp0YcToGCChsSjewJIyJp9U0zYU+eBd/syseg9BjE6dXNHm/QMAkjCaijXJ+n/vgWWHoH4HRKHVFY8bpE/WeffYZ7770XJSUlAAClUol77rkHr7zyCr7//ntceeWVqKurgxCuaj+ff/45li5dii+//NI/kROdbeN/AF0s0Oc6qSOhIFRcaYPDKZDEJIyIJNY31QhbnRNrDhbjiUk9WjzeqFXCYmUSRhKRyYHfFwOGJGDcs1JHEza86glbv349/vSnP6G4uBgKhQIxMTGora3FvHnz8Pbbb2PGjBnQaDR48MEH8dZbb+HBBx+EXq/H119/jQ8+YGUVChC5Ehg6C1BqpY6EglC+2QoA7AkjIsn1SjbWr1c4vqfn0vRnMnBOGEkp8zLg0ueBtfOAjf+VOpqw4VVP2Ny5cyGEwGOPPYZnnnkGSqUSR48exfXXX4+//e1vqKqqwpYtW9C37+l5ONOnT8fgwYPx4YcfcpFnCozLXpA6AgpiJ801AIBkI5N0IpKWVqVAtwTXXJuOsboWjzdqldiTxySMJDT0HsCSB3z3CKBPAHpdLXVEIc+rJGz9+vXIyMjACy+c/pDbuXNnvPLKKxg1ahSGDx/eIAEDgP79+2Po0KHYtWuXbyMmOltNuaubvP+N7AWjJuWbrVBHyLlOGBEFhacu7wllhHdT8w1aJSw1XCeMJCSTudZfjVADyQOkjiYsePW3v6ioqFGSBbgSLQBIT0/3eF56ejrKy8vbHh2RNzbPB374P8BqljoSCmInzVYkGTWQsWgLEQWB4RlxGNwpxqtjDZoIDkck6cnlwMVPAdHpQE0ZkL9T6ohCmldJWF1dHaKiohptj4yMBACo1Z6r+qhUKjhZSYX8qbbKVZZ+wE1AVMvj6ik8HC6qRG55TavOyTdbOR+MiEKSUatEjd2B2jp+pqIgkfU08MEVQOE+qSMJWa0qUU8UdLYuBGwWYMR9UkdCAfS3L37H7EXbWnWOqyeMw1WJKPQYtK5h1KyQSEFj3LOAMRX46BqgPFvqaEISkzAKXXYrsPZ1oM80wNRR6mgogEqrarE9uxy7TpR7fU6+pYY9YUQUkozuJIxDEilYaE3AjUuBCBXw0dVAVbHUEYUcr5OwDz74AAqFotGPTCZrct+HH37oz9ipvVOogIn/BEY+IHUkFGDuuREL1x3z6ninU6DAbOMaYUQUktxJGOeFUVCJSgRu+hKwVQJHfpE6mpDjdRImhGjTD5FfCOGaINrzSiC2q9TRUICZa+xIi9Him535KK60tXh8SVUtah1OJBqYhBFR6DEwCaNgFdMFmL0ZOH+q63cH71FveZWEOZ3ONv84HA5/vwdqjzb8G/jfjQALv7Q7VrsDtjonbhneGXI58Nmmlseinzy1UDPnhBFRKKofjmhlmXoKQhqD6891b7qKddRWSRtPiOCcMAo9tkrgt1cAjcnVG0btintiescYHa7ql4KPNhyH3dF8Mp5/aqFmzgkjolAUqVJAIZexJ4yCW9oQ4OQuYNH1QG211NEEPX6CpdCz6R3XAs2jH5E6EpKAe2K6UafEjOGdUGCx4Yc9J5s956TFCqVChthIVSBCJCLyKZlMBoMmgoU5KLilDQH+tBjI3Qp8ej17xFrAJIxCi9UMrJ0HDLiZFRHbKfc3wUatEj2SDLigcww+aKFAR77Zig4GDeRyLtRMRKHJqFUyCaPglz7cVTUxdxuw6gWpowlqTMIotORudf056iFp4yDJWGpccyLccyRuHtYJm4+V4XhJ09+4udYI41BEIgpdBq2SwxEpNKQPB275DhjzmNSRBDUmYRRauo4FHtgHGJKljoQk4v4QYtC4krALusQAAPbkWZo8J99cg0QW5SCiEGbUKrlYM4WOpD6AOgooPuha0LmiQOqIgg6TMAodx35zFeVQ6aSOhCRkrrFDpZBDo3Q9vuL0asTpVdh/sqLJc9gTRkShjj1hFJKcdUDhXuC9cUDJYamjCSpMwig0VBUDn1wHrHtd6khIYuYaOwxaJWSy0/O7uneIajIJE0Ign0kYEYU4g0ZZPxybKGQk9ABuWwkoVMB7411zxQgAkzAKFb+9CsjkwAV3Sx0JScxSY4dBG9FgW2ZiFA4UeE7CyqvtsNU5mYQRUUgzsieMQpWpoysRi+kMfDoNsNdIHVFQYBJGwa/iJLD5XWDYPYAuRupoSGLmGnt9UQ63zA5ROFZSBau98eLw+acWauacMCIKZQZtBJMwCl26GODmZcC0RYBSCzgb/3vd3jAJo+C35hUgQg0MvUfqSCgIeErCuidGwSmAQ4WVjY4/aXF948aeMCIKZUatEhVWO5xOIXUoRG2jigRSBwFCAF/cAXz3WLtOxpiEUfDrfikw4Z+A1iR1JBQELFZ7fWVEt+4dogDA47ywfLMVCrkMcXp1QOIjIvIHo1YJpwAqazkvjEKcTAakjwA2veManmg1Sx2RJJiEUfDLuBjoO03qKChImGvqGvWE6dURSI3WYr+HeWEnzVZ0iFJDwYWaiSiEub984oLNFBYG3wb8aTGQvRGYPxYo/EPqiAKOSRgFr5O/Ax9cwbUlqAGLh+GIAHBeoucKiflmKxI5FJGIQpz7ucd5YRQ2Mi4G7lzlqpy4e4nU0QRcRMuHEEkk6ynAkstiHNRAU0lY9w5R+HJ7bqPt+eYaJLEoBxGFOIPW3RPG4YgURmK7Arf/CESc+rL02G9A2gWAovG/8+GGPWEUnA79BBz+GbjkmXbxF5G843AKVNjqGpWoB1xl6vPNVpirG35LzJ4wIgoH7AmjsKWKBOQKoLII+Hgq8P5lQNkxqaPyOyZhFHycDlcvWMdhwHmTpI6Ggoh7LoSnnrDMRFdxjgOFp4ckCiFwkgs1E1EYMGhcXz5xThiFLX08MPMboKoI+M9IYPdSqSPyKyZhFHyK/gDKs4Hxz7kq6BCd4v4G2OAhCesSp0eEXIY/zpgXZrHWobrWwZ4wIgp5EQo5IlUKWKxMwiiMpQ4C7l4DdBsHLLkV2DRf6oj8hnPCKPh06AU8sBdQR0kdCQUZ94ePs0vUA4AqQo4u8ZE4cEYSdrS4CgDXCCOi8GDUKjkckcKfxghMeQ/IGOdKxgCgzuZaMzaMsCeMgssf3wI15UzAyCNzM8MRAVdxDneFRCEEXs06gNRoLXolGwMWIxGRvxi0Sg5HpPZBJgP63QBExgGVhcAbg4AN/wGcTqkj8xkmYRQ8ig4An98EbF0gdSQUpOqTMJ3nJOy8xCjsL6iAEAI//1GI1QeK8OTlPaFRKgIZJhGRXxjYE0btkdoAZE4Avn8UWDgJKDksdUQ+wSSMgoMQwHcPA8Y04IJZUkdDQcpSUweZDNCrPI+k7t4hCuYaO06U1eDZb/ZiZLc4jO/ZIcBREhH5B4cjUruk1AAT/wnM+AaoyAP+PQLY9bnUUZ0zJmEUHPZ9DRz5BZjwkusvG5EH5ho7DBol5HLPBVvOSzQAAB77Yhdyy2rw9OSekLG4CxGFCYNGCYuV64RRO9V5JDBrHTBwJhDXzbUthIcnMgkj6TnswA9PAN0nAN0vlToaCmLmJhZqdkuN1kKnUmDtoRLMGN4JGQmcW0hE4YM9YdTuqSKBCS8Cyf1dnx8XTAB+ew1whN6XE6yOSNJTKIEp7wJRHDZGzTPX2D0u1Owml8vQrUMUcsuqcd8l3QIYGRGR/xm0ESzMQeTmdLhK2q96Hug2HujQU+qIWoVJGEmrshDQxQIdL5A6EgoBFmvzPWEA8MSkHpDLZB7L2BMRhTL2hBGdQakBLn0eGDYbMCRJHU2rMQkj6TjqgI+nAEl9gSvflDoaCgGWFoYjAsDgTjEBioaIKLCMWiVsdU5Y7Q5WfSVyC8EEDOCcMJLS+jeAgt3AoFuljoRCREtzwoiIwpm7h9+9cD0RhS4mYSSNksPALy8CQ+8BUgZIHQ2FCMup6ohERO2Re41EzgsjCn1MwijwnE5g+X1AVCJw0f9JHQ2FEFdhDiZhRNQ+ub+EMteEXiU4ImqIc8Io8GQyoPcUILYroNJJHQ2FCCEELNY6DkckonbL/fxjTxhR6GMSRoFlrwGUWmDQLVJHQiGm0lYHh1OwJ4yI2q36JIxzwohCHocjUuDU1QLvXwqsmSt1JBSCLFbX8Bv2hBFRe6VRyqFUyFimnigMMAmjwFn9ElCwB+g6VupIKASZq10fOpiEEVF7JZPJXGuFVTMJIwp1TMIoMLI3Ar+9Aox+DEjuL3U0FILc3/waNBxFTUTtl0Gr5HBEojDAJIz8z1YJfHkXkDIQuPCvUkdDIcr9oYM9YUTUnhk0Sg5HJAoD/EqZ/E8mB7pfCgy5E1DwlqO2qe8JYxJGRO2YUauEhSXqiUIePxGTfznsrjL0E16SOhIKcZYaOyJVCigV7MAnovbLpFMi32yVOgwiOkf8NEP+U1UMvDkIOJgldSQUBrhQMxERkGjQ4CSTMKKQxySM/EMIYPl9gNUCJPaROhoKA5YaO+eDEVG7l2R0JWFCCKlDIaJzwCSM/GPL+8Af3wCT5wFRHaSOhsIAe8KIiIAkkxa1DidKqmqlDoWIzgGTMPK9/F3A948Dg28Hel4hdTQUJsw1dhg0TMKIqH1LNmoBAPnlHJJIFMqYhJHvaaOBvtcD45+XOhIKIxZrHYcjElG7l2TSAADyzDUSR0JE54LVEcl3hADs1YApDbjiDamjoTBj5pwwIiLE6FRQKeTIL2cSRhTK2BNGvrPtQ+DtYUBNmdSRUBhyzQnj90ZE1L7J5TIkGjWtLlN/qLASG46U+CkqImotJmHkGye2At8+BHS9yDUckcjH2BNGROSS1IYk7MmvduPpZXv8FBERtRaTMDp3lUXA5zcBSX2BCf+UOhoKQ1a7A7V1TiZhREQAkk1a5LdiTlhOaTXWHylBWTUrKhIFCyZhdG6EAJbeBjjswHUfARFqqSOiMGSpsQMAkzAiIrh6wvJaUR3xi225AIDyU89SIpIeJ1jQuZHJgJEPAAo1YEiSOhoKU+ZTHxy4ThgRkWutsAKLFQ6ngEIua/ZYp1NgybYcGLVKmGvssNod0CgVAYqUiJrCnjBquxNbAKcD6DIGSB8mdTQUxixW9oQREbklGzWocwoUV9paPHbzsVLklNZg+gUdAQDl1ewNIwoGTMKobY7+Crx/KbDtA6kjoXagrMr1ocHEJIyICInGU2uFeVGmfsnWE+gYo8MlPToAAMprOC+MKBgwCaPWKz4E/O8moNNIoP9NUkdD7UBpletDQ3SkSuJIiIikl2zUAgBOtlAhscpWhxW/52PKgFTEnHp+sieMKDhwThi1TnUpsOhaQJ8AXLsQULBngvyvuMoGk04JpYLfGxERmXRKaJRy5LWQhH2/+ySqax24ZkAK9GrXRz4mYUTBgUkYtc7WhUBNOXDHT4DWJHEw1F4UV9Qilr1gREQAAJlMhmSjFvktDEdcsvUEhnWJRVqMDg6nAACYORyRKCjwa2VqnRH3A3euAmK6SB0JtSMlVTbE6rn8ARGRW5Kp+QWbiypsWH+kBNcMSAEAKOQyGDQR7AkjChJMwqhlQgDfPgIc+AGQy4HoTlJHRO1MSWUt4vTsCSMicksyapHXzILNe/MtAIAhnWPqt5l0Kq4VRhQkmIRRy1Y9D2z6r2s+GJEEiittiI1kTxgRkVuyUYP8ZhZs/iPfAp1KgbRoXf02o1bJnjCiIMEkjJq38b/Ar/8Cxv0d6HeD1NFQO1VSVYtY9oQREdVLNGpRWGFFncPpcf8fJyuQmRgF+RmLOZt0SljYE0YUFJiEUdP2LgO+exQYNhsYca/U0VA75XQKlFbVck4YEdEZkkwaOAVQWOF5weZ9+Rb0SDI02GbUKrlOGFGQYBJGTUvsA1x4v6sXjEgiZqsdDqdAPHvCiIjqudcKy/cwL6y2zonDRZXokRjVYLtJx+GIRMGCSRg1VrAXsJqBmM7AJXNcxTiIJFJS6frWlj1hRESnJZk0AIA8D/PCjhRXwu4QOO+snjCTVsUkjChI8NM1NVSwB1g4Efjhb1JHQgTANR8MANcJIyI6g0GjhF4d4bEn7I/8CgBApoeeMDPnhBEFhaBNwrZu3YoXX3wR11xzDVJTUyGTySCTyVo8b+HChRgyZAj0ej1iYmIwceJErFu3rtlz1q5di4kTJyImJgZ6vR5DhgzBhx9+6Ku3EjqKDgAfXgkYU4Hxz0kdDREAoLSKPWFERJ4kGTUee8L2nbQgxaSFQaNssN2oVaLSVgd7E8U8iChwIqQOoCl///vfsWzZsladc//992PevHnQarUYP348rFYrsrKysHLlSixZsgRXXXVVo3OWLl2K66+/Hk6nE6NGjUJcXBx++uknzJgxA7t27cLLL7/so3cU5EqPAB9eAejigJuWAdpoqSMiAuDqCVMqXIuMEhHRaYlGjceesH35FeiRFNVou0nnGlFgrrEjjl9sEUkqaHvChg0bhieffBJff/018vPzoVY3/7D48ccfMW/ePMTGxmLnzp346quv8P333+PXX3+FQqHALbfcgvLy8gbnlJaW4tZbb4XD4cCSJUvwyy+/YMmSJfjjjz+QkZGBuXPn4pdffvHfmwwmx9cBKj1w8zIgMlbqaIjqlVTWIjZS7VVPOBFRe5Js1OKkuXFP2B/5FpyXaGi03ah19YxxXhiR9II2CXv00Ufx7LPPYvLkyUhMTGzx+FdeeQUA8MQTT6Bbt27124cNG4a7774b5eXleO+99xqc8+6778JiseDKK6/ENddcU7+9Q4cO+Oc//wkAmDt3ri/eTvCyml1/9r8RuHsNENVB2niIzsI1woiIPEsyaZB3VhJWUmlDYYUN53nsCXMlYWaWqSeSXNAmYa1RU1ODn3/+GQAwderURvvd25YvX95g+4oVK5o8Z9KkSdBoNPjxxx9htTa9In1IKz4EvDUU2PaR63elVtp4iDwo4RphREQeJRu1KK60obbu9Byv/SddRTk89YSZtO4kjD1hRFILiyRs//79sNlsiI+PR2pqaqP9AwYMAADs2rWrwfadO3c22H8mlUqF3r17w2q14sCBA36IWmJF+11VENVRQLfxUkdD1KTSqlrEsTIiEVEjSSYNhAAKLKe/LN53sgLqCDk6xeoaHW/gcESioBEWM92zs7MBwGMCBgCRkZEwmUwoKytDRUUFoqKiYLFYYDabmz0vNTUVW7ZswfHjx9GnTx+Px9hsNthsp1ert1gsAAC73Q67XdqHnPv6jeLI34GIz64HIhNQ96cvAE0MIHGsoajJ9iWfcLdrcaUNfVONbGcf4/3rX2xf/2L7unTQu5KqbcdKkBjl+u+9eeXolqCHcDpgdzoaHK8AoFXKUVJpbbbt2L7+xfb1LynbtzXXDIskrLKyEgCg0zX+1sctMjIS5eXl9UmY+5zmzouMjAQAVFRUNPm6//jHP/DMM8802r5y5cpm4wmkrKysBr9fcHgu1DBifeJs2Fdvliiq8HF2+5JvFZRXoyjnCL799rDUoYQl3r/+xfb1r/bevkIAPUxyPP3VTliPbYNGAWzar0CyTuDbb7/1eI5apsCWXfuQULanxddv7+3rb2xf/5Kifaurq70+NiySMCk9/vjjeOCBB+p/t1gsSEtLw/jx42EwNB6PHUh2ux1ZWVkYN24clEolYK9xzfuyjgDkCoxT6SWNL9Q1al/yKbvdju9+yEKNQ4bhA/tg4oAUqUMKK7x//Yvt619s39P6jajBxDfWYbesI/52aSYe2fwzbh7dDROHpXs8/t9H1iEhJRoTJ/Zo8jXZvv7F9vUvKdvXPSLOG2GRhOn1rmSiueyzqqoKABAVFdXgHPd5nhKms8/xRK1Weyyfr1Qqg+YvllKphHL3/4BfXgRuWwkYkqUOKawE0//rcFN5qle/g1HHNvYT3r/+xfb1L7Yv0CleiYfGZ+LvK/bi/NRo2Oqc6JViarJdjDoVLDaHV+3G9vUvtq9/SdG+rbleWBTm6NixIwDgxIkTHvdXVVWhvLwc0dHR9QmVwWCA0Whs9jz39vR0z98mhQQhIF/zL2DZn4GMi4HIBKkjIvJaZZ3rT5aoJyJq2ozhndAn1YQnvtoNwHNlRDeTTsnCHERBICySsMzMTKjVahQVFSE3N7fR/m3btgFAo+Iaffv2bbD/THa7Hbt374ZGo0H37t39EHUAOOvQN+d9KH59CRj7BHD5a4AiLDo/qZ2osLsWaGaJeiKipinkMrw05Xw4hUAHgxoxzVSUNWlVKGeJeiLJhUUSptVqMXbsWADA4sWLG+1fsmQJAGDy5MkNtk+aNKnB/jN98803sFqtuOSSS6DRaHwdcmAUH0BK2UbUTX4TGPUwIJNJHRFRq7iHI8ayRD0RUbPOSzTgyct74oYhHZs9zqRTwlzNxZqJpBYWSRiA+uIYzz33HA4ePFi/ff369fjvf/8Lk8mE2267rcE5t99+OwwGA5YtW4YvvviifnthYSEeeeQRAMCDDz4YgOj9JKEnsnq9AtFnmtSRELVJhR2IVCugUSqkDoWIKOjNGN4J91/S/Ogdo07JxZqJgkDQJmErVqzA0KFD639qa13f2py5bcWKFfXHX3LJJbjvvvtQUlKCfv364aqrrsLEiRMxatQo1NXVYcGCBTCZTA2uERMTg/fffx9yuRxTp07F2LFjce211yIzMxOHDh3CAw88gDFjxgTwXfuePYIVECl0Vdpl7AUjIvIhk1YFc40dTqeQOhSidi1oJwgVFRVh48aNjbafua2oqKjBvtdeew39+vXDm2++iaysLKhUKlxyySV48sknMXz4cI/XmTJlCn799Vc899xz2LBhA2pra9GzZ0/Mnj0bM2bM8O2bIqJWqbBzKCIRkS+ZdEo4BVBhq4NRy8p8RFIJ2iRs5syZmDlzZkDOGzFiBL777rtWX4uI/KvSDqTEsSgHEZGvuBMvc7WdSRiRhIJ2OCIRUYVd1myVLyIiah134lVew+IcRFJiEkZEQauSwxGJiHzKpDuVhHGtMCJJMQkjooA5UlSJ+z7bjjqHs8VjhRCuJIwLNRMR+YxJ53qmcq0wImkxCSOigFl9oAjLduTheGl1i8dW1TpgF6yOSETkS5EqBSLkMq4VRiQxJmFEFDDZp5KvgwWVLR5bUun6gMAkjIjId2QyGUw6JYcjEkmMSRgRBUx2iSsJO1RY0eKxJVVMwoiI/MGo5YLNRFJjEkZEAeMehniw0PuesBjOCSMi8imjVsk5YUQSYxJGRAHhdArklFYjQi7DIW+SsKpayCBg4jo2REQ+ZdKpOByRSGJMwogoIAorbLDVOXFBlxgcKqyEwymaPb6kqhaRSkAhlwUoQiKi9sGkVcLMdcKIJMUkjIgC4nhJFQDg4vM6wFbnRG5ZTbPHl1TVIioiEJEREbUvRhbmIJIckzAiCgh3ZcSLzksAABxsoThHaWUt9Mrme8uIiKj1TFoV54QRSYxJGBEFRHZpNRINGnSK1SFSpWhxXlhJlQ1RnA5GRORzJp0S5mo7hOAXXURSYRJGRAFxvKQaHWN1kMlkyOgQ1WKFxKMl1YhWByg4IqJ2xKRTotbhRI3dIXUoRO0WkzAiCojs0mp0jNEBALol6JtNwgotVhRYbOio57e0RES+ZjhVdZbzwoikwySMiAIiu7Qa6aeSsIwEPQ4VVDQ5FGbXCTMAMAkjIvID99IfXLCZSDpMwojI7yqsdpRW1aJj7OmesKpaB/LNVo/H78o1IyZSiWiu00xE5HMmnevhyp4wIukwCSMiv3NXRjw9HDEKAJoszrHrRDnOTzFCxiXCiIh8zt0TVlbNtcKIpMIkjIj8LrvElYSlx0YCAFKitdAo5R7nhQkh8PsJM85PNgQ0RiKi9sKkU0KlkKPQ4nk0AhH5H5MwIvK746XViFJHIFrn+vZVIZehS5wehzysFZZbXoOSqlqcn2oMdJhERO2CTCZDgkGNggqb1KEQtVtMwojI77JLq5EW4ypP79atgx4HCxr3hP1+qigHe8KIiPyng0GDgibm5RKR/zEJIyK/yy6pRvqpohxu7jL1Z1dI3HnCjCSjBvFRXCSMiMhfEg0aFFQwCSOSCpMwIvK746VV9ZUR3TISomCusaO4suHE8N9zXUU5iIjIfxIMapxkTxiRZJiEEZFf2R1O5JVb6ysjumUk6AEAB8+YF+Z0Cuw6YUbfNFMgQyQiancSDRoUWjgnjEgqTMKIyK/yymvgcAqkx0Q22J4eq4NSIWtQpv5YSRUqrHXsCSMi8rMOBg0qbHWostVJHQpRu8QkjIj86nh9efqGPWFKhRzdO0Rh+c48OJyueWG/57qKcvRhZUQiIr/qYNAAAApYpp5IEkzCiMivskurESGXIcmoabTvyct7YuvxMrz+00EAwM4cMzrG6GDSqQIdJhFRu5J46pl8kkkYkSQipA6AiMJbdmk1UqK1iFA0/s5naJdY3Hdxd7z20wFc0CUGv+eWsxeMiCgAOhhcFWjZE0YkDSZhRORXx0uqGhXlONPssRnYcKQE93+2AxXWOozr2SGA0RERtU86VQSiNBEoYHEOIklwOCIR+VV2aU2zSZhCLsNr0/rB4RSosTvQJ9UUuOCIiNqxDgYNy9QTSYRJGBH5VYHFimSTttljOhg0eG1aP5yfYuRwRCKiAEk0aFDIBZuJJMHhiETkN3aHE6VVtYjXq1s8dmS3eIzsFh+AqIiICHAt2HysuErqMIjaJfaEEZHflFTWAgDio1pOwoiIKLASDRrOCSOSCJMwIvKbogrXP+5xXvSEERFRYHU4NRzReWqtRiIKHCZhROQ3xZWuJIw9YUREwaeDQQO7Q6CsulbqUIjaHSZhROQ37p6wWD0XXyYiCjbutcK4YDNR4DEJIyK/Kaq0ISZSBaWHhZqJiEhaiUYNAKCQ88KIAo6fjIjIb4oqbIhjLxgRUVCK16shk7EnjEgKTMKIyG+KKm2cD0ZEFKQiFHLE6dUoYBJGFHBMwojIb4oqbF6tEUZERNJwlalnEkYUaEzCiMhviivYE0ZEFMw6GNRcK4xIAkzCiMhvXHPCmIQREQWrDgYNTprZE0YUaEzCiMgvrHYHKmx17AkjIgpi7gWbiSiwmIQRkV+41whjEkZEFLwSDRoUV9aits7p1fGFFVY4nMLPURGFPyZhROQXRZVMwoiIgl3CqQWb3c/s5ljtDox9eTWW7cj1d1hEYY9JGBH5hbsnjHPCiIiCl3vBZm/mhe3Js6DSVoe9eRZ/h0UU9piEEZFfFFXYoJDLEK3jYs1ERMEq0eBKwgq9KFO/M6ccAHCkuMqfIRG1C0zCiMgviittiI1UQSGXSR0KERE1wahVQhUhx0lvkrAT5QCAo0zCiM4ZkzAi8osirhFGRBT0ZDLZqQWbW54TtjOnHFHqCGSXVsPu8K6QBxF5xiSMiPyCa4QREYUG14LNzfeElVfX4lhJNSaenwSHUyCntDpA0RGFJyZhROQXRZXsCSMiCgUdDJoWk7BdJ8wAgKv6pwAAjhRxSCLRuWASRkR+UcwkjIgoJCSbtDhe0nzP1s6cchg0Ebigcwx0KgXnhRGdIyZhRORzQggORyQiChED06ORW17T7BDDnSfK0TfNBLlchs5xkayQSHSOmIQRkc9V2upgtTvZE0ZEFAKGdomFXAasO1zscb8QAjtyzOiXZgIAdI6LxNHiygBGSBR+mIQRkc+5F2qOZ08YEVHQM2qVOD/FiLWHSjzuzzNbUVxpQ59UEwCgS1wk54QRnSMmYUTkc8WVtQDAnjAiohAxIiMO6w4XQwjRaJ97kea+qUYAQJd4PQorbKi01QUyRKKwwiSMiHyOPWFERKFlREYciitrsb+gotG+nTnlSDZqkGDQAHANRwSAY5wXRtRmTMKIyOeKKqxQKeQwaCOkDoWIiLwwMD0aqgi5xyGJO3JcRTncOp1Kwlicg6jtmIQRkc+51wiTyWRSh0JERF7QKBUYlB6NdYcaFudwOAV+zzU3SMKMWiXi9CocKWJxDqK2YhJGRD5XXFGLOM4HIyIKKSMy4rDxaCnqHM76bYeLKlFd60DfU0U53LrE6blWGNE5YBJGRD5XVGlDvF4ldRhERNQKw7vGotJWh99zLfXbtmeXQSYDzj9VlMPNVaaeSRhRWzEJIyKfK6qwsTIiEVGIOT/FiCh1BNYdKQUAHC2uwr9+OIALOsdAr244x7dzfCSOFlV5rKZIRC1jEkZEPldUYWNlRCKiEBOhkOOCLrFYf6QEpTZgxsKtMOmUeGv6gEbHdo6LRIWtDkWVNgkiJQp9TMKIyKecToHiSvaEERGFogszYrEtuxxv7VVAIZfh49suQKyHL9W6nKqQeJSLNhO1CZMwIvIpc40ddU6BOPaEERGFnBEZcbA7BOwO4IOZA5Fo1Hg8rmOsDnIZOC+MqI24iA8R+ZR7aAp7woiIQk9Ggh5/m5AJ5O9Bxxhdk8epIxRIjdYxCSNqI/aEEZFPFVUwCSMiClUymQy3DE9HB23Lx3aOi8RhDkckahMmYUTkU4UVVgDgcEQiojDXOS4SR4q5YDNRWzAJIyKfOlhQiUSDBpFqjnYmIgpnnWJ1OFFaA6eTZeqJWotJGBH51N58C3omG6QOg4iI/CwtRodah5Nl6onagEkYEfnU3jwLeiYxCSMiCnep0a7CHTml1RJHQhR6mIQRkc8UVdhQWGFjTxgRUTuQGu2q3nGirEbiSIhCD5MwIvKZvfkWAEAvJmFERGEvUh2BmEgVe8KI2oBJGBH5zN48C/TqCKRFN722DBERhY+0aC17wojagEkYEfnM3nwLeiRFQS6XSR0KEREFQGq0Djll7Akjai0mYUTkM3vyzCzKQUTUjqTGsCeMqC2YhBGRT1TX1uFocRV6JRulDoWIiAIkNVqHvPIaOLhWGFGrMAkjIp/442QFhAArIxIRtSOp0VrUOQVOWqxSh0IUUpiEEZFP7M2zIEIuQ0aCXupQiIgoQNyFmE6wQiJRqzAJIyKf2JNnQUaCHhqlQupQiIgoQNxrheVwXhhRq4RVEjZmzBjIZLImf77//nuP5y1cuBBDhgyBXq9HTEwMJk6ciHXr1gU4eqLgY3c4IYR34/z35ls4FJGIqJ3RKBWIj1LjBCskErVKhNQB+MOUKVOg1zceEpWSktJo2/3334958+ZBq9Vi/PjxsFqtyMrKwsqVK7FkyRJcddVVAYiYKPgs25GL+z7bAZkMUEfIoVNF4Nkre+HyPsmNjq1zOPFHvgWT+yRJECkREUkpNVqLnFL2hBG1RlgmYS+//DI6derU4nE//vgj5s2bh9jYWKxfvx7dunUDAKxfvx5jxozBLbfcgjFjxsBkMvk3YKIgtD27HMlGDWaP7Qar3YFlO3Lx39VHPCZhx0qqYKtzsieMiKgdSovWsSeMqJXCajhia73yyisAgCeeeKI+AQOAYcOG4e6770Z5eTnee+89qcIjklR2aTV6JBkw/YKOuPXCzvjL2G74PdeM3bnmRsfuybMAANcIIyJqh1KjuVYYUWu12ySspqYGP//8MwBg6tSpjfa7ty1fvjygcREFi+zSanSM1dX/PiYzHokGDT7dlN3o2L15FqSYtDDpVIEMkYiIgkBajA755hrYHU6pQyEKGWE5HPG9995DSUkJ5HI5unfvjquuugodO3ZscMz+/fths9kQHx+P1NTURq8xYMAAAMCuXbsCEjNRMHE6hSsJizmdhEUo5LhucBre/+0o/jaxByLVpx8fLMpBRNR+pUZr4RRAfrm1wZd3RNS0sEzCnnvuuQa/P/TQQ3jyySfx5JNP1m/LznZ9m+8pAQOAyMhImEwmlJWVoaKiAlFRUR6Ps9lssNls9b9bLK5hWXa7HXa7/Zzex7lyX1/qOMJVOLfvSYsVtXVOpBjVDd7flH6JeOPng1i2PQfXDnT93dmTZ8Gmo6X485guPm2LcG7fYMD29S+2r3+xff2rte2bGKUEABwrtiDJoPRbXOGC969/Sdm+rbmmTHhbfzoEPPXUU+jevTuGDx+OpKQk5OTkYMmSJXjuuedQU1OD1157Dffddx8AYNGiRfjTn/6EESNG4LfffvP4eqmpqcjNzUVubi6SkxsXIwCAOXPm4Jlnnmm0fdGiRdDp+G0QhaZDFuCNPRF4vG8dEs+6jf+zT47qOhkeON8Bcy0w93cFDErg3l4OqLhEGBFRu1PnBB7aqMD1XZwY1iFsPlYStVp1dTWmT58Os9kMg6H5EUJhlYQ1ZeXKlbj00kthMpmQl5cHrVbrsyTMU09YWloaiouLW2x8f7Pb7cjKysK4ceOgVPKbKV8L5/Zdui0Xj325B7ufuhjqsxZfztpbiHs+3YHP7xyCv6/4A4UVNiy96wJ0MGh8GkM4t28wYPv6F9vXv9i+/tWW9r3wX6sxpX8K/npJhp+jC328f/1Lyva1WCyIi4vzKgkLy+GIZxs/fjwGDRqELVu2YOPGjRgzZkz9OmLV1U2XVK2qqgKAJociAoBarYZarW60XalUBs1frGCKJRyFY/vmmm1INGig1zVOrMb1TkJC1D7c+sE2OJwCi+8ehtTYpv+OnKtwbN9gwvb1L7avf7F9/as17dsxRod8i43/P1qB969/SdG+rbleu6mO6C5Bn5+fDwD1hTpOnDjh8fiqqiqUl5cjOjq62SSMKBydXRnxTEqFHNcPTkNVbR1em9YPvVOMAY6OiIiCTWq0DjmlXCuMyFvtoicMAMrKygC4Cm4AQGZmJtRqNYqKipCbm4uUlJQGx2/btg0A0KdPn8AGShQEjpdUIyNB3+T+v4zthkl9knBeIisiEhERkBatxfrDJVKHQRQy2kVPWFFREdasWQPgdOl5rVaLsWPHAgAWL17c6JwlS5YAACZPnhygKImCR05pNdJjmi4so4qQMwEjIqJ6qdE6FFRYYatzSB0KUUgImyRs3bp1+Oqrr+BwNPzLf+zYMVx99dWoqqrCFVdc0aAk/QMPPADAVdL+4MGD9dvXr1+P//73vzCZTLjtttsC8waIgkSlrQ4lVbVc64WIiLyWGqOFEEBeuVXqUIhCQtgMRzxw4ABuueUWJCYmYsCAATCZTDh+/Di2bt0Kq9WKXr16Yf78+Q3OueSSS3Dfffdh3rx56NevH8aNG4fa2lpkZWVBCIEFCxbAZDJJ84aIJHK8xFWQpmMzPWFERERnSot2/ZuRU1qNznGREkdDFPzCJgm74IILMGvWLGzcuBGbN29GWVkZIiMj0a9fP1x77bWYNWsWtFpto/Nee+019OvXD2+++SaysrKgUqlwySWX4Mknn8Tw4cMleCdE0nJPrGYSRkRE3ko0aqCQy3CcxTmIvBI2SViPHj3w9ttvt+ncmTNnYubMmb4NiChEHS+phl4dgZhIldShEBFRiFAq5OidYsSmo6W4aWi61OEQBb2wmRNGRL6RXVqNtBgdZDKZ1KEQEVEIGdUtDr8dLILTKaQOhSjoMQkjogayW6iMSERE5MnIbvEoq7ZjT55F6lCIgh6TMCJqoLmFmomIiJrSv6MJkSoFfj1YJHUoREGPSRgR1atzOJFbVsOiHERE1GpKhRzDusZhDZMwohYxCSOievlmK+qcgkkYERG1yajucdh6vAxVtjqpQyEKakzCiKje8RJXaeF0DkckIqI2GNktHnaHwMajJVKHQhTUmIQRUb3s0moo5DIkmxqvqUdERNSSTrE6pEZr8euBYqlDIQpqTMKIqN7x0iokmzRQKvhoICKi1pPJZBjZLb7ZeWHVtXVYd6gYDpayp3aMn7SIqF52STXngxER0TkZ1S0Oh4uqkFte43H/s8v3Yvq7GzHu1dVYsvUE7A5ngCMkkh6TMCKql11ajY4xkVKHQUREIWx41zjIZcBvHnrDduea8b8tObh1RGd0idPjocU7cdHLv2DXifLAB0okISZhRAQAcDoFe8KIiOicGXVK9E0z4deDDeeFCSHw92/2omu8Ho9PPA/vzhiE7+4bCSGARRuzJYqWSBpMwogIAHCgsAIVtjr0STVKHQoREYW4Ud3iseqPQvx2RiL2/e6T2Hi0FE9e3rN+7nGPJAOGd43F7jyzVKESSYJJGBEBADYeKYVSIcOAjtFSh0JERCHutpGdMTA9Gje/vxHvrjkCq92B57/dh4sy4zG6e3yDY89PNWL/yQrU1nFuGLUfTMKICACw8WgJ+qaaoFUppA6FiIhCnEGjxMJbhuCOkV3w3Ip9uPyN33DSbMX/TerZ6NheyUbYHQIHCiokiJRIGkzCiAhCCGw8UooLusRIHQoREYUJhVyGxyf2wLxp/ZBTWo2ZwzshI0Hf6LieSQbIZa6iHUTtRYTUARCR9A4VVqKkqhZDu8RKHQoREYWZK/ulYEz3BERpPH/s1KoUyEjQc14YtStMwogIG46WIkIuw8B0zgcjIiLfM+qUze7vnWzE7lxLgKIhkh6HIxIRNhwpQZ9UI3Qqfi9DRESB1yvFiH35FtRx4WZqJ5iEEbVzp+eDcSgiERFJo3eyAbY6Jw4VVUodClFAMAkjaueOFFehuNKGCzqzKAcREUmjV4prjUoOSaT2gkkYUTu34UgJFHIZBnViEkZERNLQqyPQJS6SFRKp3WASRtTObTxSit4pRujVnA9GRETS6ZVixB5WSKR2gkkYUTsmhMDGoyUYyvXBiIhIYuenGLAnzwKHU0gdCpHfMQkjCkNCePcP2LGSahRYbBjamUU5iIhIWr2TjaiudeBocZXUoRD5HZMwojBTZavDqH+twkfrj7V47G+HiiGXAYM6cX0wIiKSVq9kV3EODkmk9oBJGFGYWXe4BDmlNXhm+V5sOlra5HHmajte/+kgxvXsgChN84toEhER+ZtRp0THGB2Lc1C7wCSMKMz8sr8Q6bE6DEyPxj2fbEOBxerxuOdW7IW11oFnrugd4AiJiIg8651iYJl6aheYhBGFESEEftlfhIsyE/Dm9AGIkMsw6+OtqK1zNjju1wNFWLz1BP5vUg8kGjUSRUtERNRQr2QjdueZWZyDwh6TMKIwcrioCrnlNRjdPR7xUWq8feMA/J5rxoOLd+JQYSUA15yxx7/4HcO7xuL6wWkSR0xERHTaiIw4VFjr8NuhYqlDIfIrLgxEFEZ+2V8IVYQcQ7u4qh0O6BiNF6/pgznL92D5zjz0TjEgWqdCaVUtPr1jKGQymcQRExERndY31YjuHfT4fEsORnePlzocIr9hTxhRGFl9oAgXdI6BVqWo3zZlYCo2/98l+M+NA5Bi0mLjkVI8PvE8dIzVSRgpERFRYzKZDNcNSkPWngKUVdVKHQ6R3zAJIwoTNbUObDxa6vGbQ41Sgct6J+G/Nw3Cvr9fhpuHdQp8gERERF64un8KBAS+2pErdShEfsMkjChMbDhSgto6J8ZkJjR7nELOIYhERBS8YvVqXNKjA/63OQdCsEAHhScmYURh4pf9hUgxadE1PlLqUIiIiM7JdYPS8MfJCparp7DFJIwoTKw+UIQxmfEstkFERCFvVPd4JBo0+N+WbKlDIfILJmFEYeBYcRWOlVSzkhQREYUFhVyGKQNTsGxHHqx2h9ThEPkckzCiMPDL/kIoFTIMz4iTOhQiIiKfuHZgGiqsdfh6Z16Lx1rtDuw6Ue7/oIh8hEkYURj4ckcehneNg17Npf+IiCg8dIqLxKTzk/DUst1Y18zizcdLqjDl3+twxZtrmYhRyGASRhTi9uSZsTOnHDcM6Sh1KERERD4197q+GNwpBrd+sBkbjpQ02v/DnpO4/I3fUGmrQ6JBgw/XH5cgSqLWYxJGFOI+25SDhCg1Lu7RfGl6IiKiUKNRKjD/5kEY3CkGtyzYjFX7C7H+cAk+WHcM9322HXd9tBUjusZh+V8uxM3D07F8Zx4XeaaQwCSMKIRV19bhq+25uG5QGpQK/nUmIqLwo1Eq8M5Ng9C/owm3LNiMG+ZvwPMr9uFAQSWentwT/75xAAwaJa4flAYhgMVbc6QOmahFnEBCFMK+2ZmPyto6XD84TepQiIiI/EarUuD9mYOx4UgJUqO1SI+NbPTlY6xejUl9kvDxhmzcfmEXyOVcsoWCF786JwphizZlY1S3eKTF6KQOhYiIyK80SgXGZCYgIyGqydEfNw1LR3ZpNVYfKApwdEStwySMKETtzbNgBwtyEBER1eufZkKvZAM+2sACHRTcmIQRhahPN2WzIAcREdEZZDIZbh6WjlX7C5FTWi11OERNYhJGFILyzTUsyEFEROTBFX1TEKWOwHu/HZU6FKIm8dMbUYgxV9sx8/3NMGiVmDG8k9ThEBERBRWtSoG7RnfFRxuOY0+eWepwiDxiEkYUQqx2B+74cAsKKqz44NYhiI9SSx0SERFR0LlzVBdkxOvx+Be/w+EUUodD1AiTMKIg8srK/bht4WZsPV7WaJ/DKXD/ZzuwK7cc780YjIwEvQQREhERBT+lQo4Xrjkfv+ea8cG6Y1KHQ9QI1wkjChLvrjmC138+hBSTFlP+vQ5jMuMxa3RXlNfYseloKdYeKsaBggq8c9MgDEyPljpcIiKioDYwPRo3DU3H3JX7cVnvRCSbtFKHRFSPPWFEQWD5zjw8t2IfZo3pijWPXIQ3buiPnNJqXP/OBtz10VZ8v/skeiQZ8P7MwbikZwepwyUiIgoJD1+aCb0mAk8t2w0hOCyRggd7wogktv5wCR78fCeu6peMh8dnQi6XYXLfZEw8PwlbjpUiNUaHFH57R0RE1GpRGiWevbI37vpoK+74cAv+NbUvoiNVUodFxJ4wIikdK67CnR9tweDO0fjn1L6Qy2X1+xRyGS7oEssEjIiI6Bxc2isR780YhK3HyzBh3hpsPFIidUhE7AkjkoqtzoHZn25DTKQK/75xIFQR/E6EiIjIHy7u0QHf3TcK9322HTfM34DJfZMxuFMMBnSMRpf4SOzJM2PDkVJsPlaKTrGReOjSTOjV/JhM/sO7i0giL323H/tPVuCLWSNg0CilDoeIiCisJRo1WHTHUMxfcwTf/p6PFbvyUXdG+Xq9OgL9O5rw+ZYc/PRHAeZe2w9DOsdIGDGFMyZhRBL4cW8B3l97FE9d3hPnpxqlDoeIiKhdUMhluHt0V9w9uitqah3YdaIcR4qr0CvZgJ5JBkQo5MguqcaDi3fg+nfW486RXfDQpZlQKjhahXyLSRhRgOWV1+ChJTtxSY8E3DKik9ThEBERtUtalQIXdInFBV1iG2zvGKvDZ3cOw7trjuDllfuxN9+Ct/80AFEctUI+xLSeKIDWHy7BtHc2QBOhwL+m9oVMJmv5JCIiIgoohVyGu0Z3xQe3DMGO7HJc998NOGm2Sh0WhREmYUQBUGWrw5Nf7cYN8zegg0GNz+4cyhK5REREQW54RhyWzBqO8upaXP32WuzONUsdEoUJDkck8hNbnQNbj5Vh9cEiLN+Rh7JqO+ZM7ombh3VqUIqeiIiIgldmYhS+vGcEblm4GZe/8RvGnpeA20d2xrAusRzRQm3GJIyojYQQKKwBPtyQjbWHS7E9uwwKuQwapQJapQK55TWornUgTq/G6O7xuO/ibugYq5M6bCIiImqlRKMGy/48Al/vzMO7a45g+vyN6JlkwMU9EjAwPRoD0qNZ6ZhahUkYURscKqzAw4t3YntOBJS/78eg9BjMGN4JEXIZauwOVNc6EB/lSr56JBrY80VERBTiVBFyTB2YiikDUrDmYDE+3ZSNRRuz8cbPhyCTAUkGDfSaCOjVEYjSKJESrUWnWB3SYyPRJ9WIJKNW6rdAQYRJGFErOJwC7645grlZB5Bq0uDW7g7ce904mPR8sBIREbUHMpkMo7rHY1T3eAghcKykGpuPliK7tBqVtjpU2epgrrFjR3Y5lm3PRVWtAwq5DBPPT8Jdo7ogM4GjYohJGJFXauuc+GV/If69+jB25JTj9gs7496LuuDnrB8QqeZfIyIiovZIJpOhc1wkOsdFetwvhEBRpQ3f/X4S7/52BJe/8Rsu6ByNNMjQo7gK3RKNnFfWTvHTI1ETzNV27Motx/e7T2LF7/kor7ajd4oBi+8ahkGdYmC326UOkYiIiIKYTCZDQpQGM4Z3wo1D0/H97pP4YN1RfHFcjiXz1iLZqMGQzjHITDQgM1GPbglRSDZpoeA0hrDHJIzaJYdToLSqFsWVtvqfogobiitrkVteg925ZhwvqQYAJBk1mDa4I67un4LMxCiJIyciIqJQpJDLMKlPEsb3iMMXy79FdPfB2HC0HNtzyvDjvkJU2urqj0uIUqODQYOEKDWMWiWMWiWiI1Xo3iEKAzqaEKtXS/xu6FwxCaN246TZipV7T+L73Sex6Wgp6pyiwX69OgJxehU6GDS4+LwO6JNqxPmpRnSOjWRhDSIiIvIZjQK4KDMe43snA3ANW8wzW3GgoAL55Vbkm2uQb7aiqMKGg4WVsNTYUVJVC3ONaxROeqwOfVJNyIjXIyPB9ZMWo4VOxY/2oYL/pygsVdrqcKSoEr/nmrE714ydOWbszbcgQi7DsK6x+NvEHkiN1iIuSo14vRrxUWpolAqpwyYiIqJ2SCaTIcWkRYqp6UJfQgjkltdge3Y5tmWXYU+uBb8dLEJZ9enpEQZNBJKMWiQaNUgyak79txpxejVMOhViIl0/Bk0E56JJjEkYhZQqWx0KK2worXINHSyprD3931W1yC2rRnZpNYorawG4uvS7JehxfooRt4/sjIvP6wCjjut4EBERUWiRyWRIjdYhNVqHyX2T67eXVNpwuKgKeeWu3rOTp3rR9uZb8NMfhSiqsDV6LY1Sjg4GDTpEaZBgcA197FD/p6Z+KCSLj/kPW5aCisMpUFZdi/xyK3LLa5BbXoOc0mocLqrEocJK5JutDY6Xy4BonQqxetc3O53iIjG6ewLSY3XoFBeJ8xKj2MNFREREYStWr252jlhtnRPl1bUoq7ajtKoWJVU2FFpsKKiwotBiw8lTCVuhxVY/L81No5QjWqdyzUnTqRAdqYRJp0K0zvW7SaeCSas8Y7vrWBYWaRmTMPKrOofz9F/6ShtKqmpPPQBcv7v/u/TUT1l1LcQZU7U0SjlSo3XoGh+JawakoEucHskmLWL1KsRGuv7y8y86ERERkWeqCDkSDBokGDQtHltpq0OhxYoCiw2FFVaUVNbWJ3Bl1a45adml1SirsqO8uhZVtY5GryGTAQaNEibd6YQtSqNElCYCUZoIGM747yi1+7+VMGhdf+rVEe3isx2TMPKK3eGEucYOS40d5lM/Fmtd/Tb39vIzvmVxTyAVDetfQKWQIybydO9VslGD3snG+sQqJlKFJKMWySYNYiJVHLNMREREFAB6dQT08Xp0idd7dbytzgFztR1l1fb6ZK3hn7Uor7ajuMKGo8WVqLDWnfqxw+4QTb6uXh1xOlE7lbTp1a6fyFM/erUCerUSkWoFUqO1GJge46tmCAgmYWHOKYAKqx01VXWotNah0uZKnlz/7fpLUGmtQ4XN9ZfizO0VNtfvFdY61Ngbf9MBuOZcuUunGjQRMOpUSInWok+qETH1SZW6QYKlV3MyKBEREVGoU0cokGBQeNXLdiYhBKx2Jyqsrs+lFVZ7gwTN/afljG2lVbXIKa1Gpa0OVTYHqmx1qKytgxDAqO7x+PDWIX56l/7BJCyM/fXzXfjm9whgwyqP+2WyU980qCOg15zuAjbplEiL0Z76FsK1zdAg0VLCoHH9rlMpmFARERERkddkMhm0KgW0KgUSDG1/HSEEauyOZnvVghWTsDB2df9k6KtyMXxwfxgjNafG3p5OuHRKBde/IiIiIqKQJJPJQnZttNCMmrwyqlscKg8KTOidCKWSZdmJiIiIiIKBXOoAiIiIiIiI2hMmYURERERERAHEJIyIiIiIiCiAmIQBqKmpwVNPPYXu3btDo9EgOTkZt956K3Jzc6UOjYiIiIiIwky7T8KsVivGjh2Lv//976isrMSVV16JtLQ0LFiwAP3798eRI0ekDpGIiIiIiMJIu0/CnnvuOWzYsAHDhg3DgQMH8L///Q8bN27E3LlzUVRUhFtvvVXqEImIiIiIKIy06ySstrYWb775JgDgrbfegl6vr9/3wAMPoE+fPli9ejW2bt0qVYhERERERBRm2nUStnbtWpjNZnTt2hX9+/dvtH/q1KkAgOXLlwc6NCIiIiIiClPtOgnbuXMnAGDAgAEe97u379q1K2AxERERERFReIuQOgApZWdnAwBSU1M97ndvP378eJOvYbPZYLPZ6n+3WCwAALvdDrvd7qtQ28R9fanjCFdsX/9i+/oX29e/2L7+xfb1L7avf7F9/UvK9m3NNdt1ElZZWQkA0Ol0HvdHRkYCACoqKpp8jX/84x945plnGm1fuXJlk68baFlZWVKHENbYvv7F9vUvtq9/sX39i+3rX2xf/2L7+pcU7VtdXe31se06CfOFxx9/HA888ED97xaLBWlpaRg/fjwMBoOEkbmy8aysLIwbNw5KpVLSWMIR29e/2L7+xfb1L7avf7F9/Yvt619sX/+Ssn3dI+K80a6TMHc1xKay1qqqKgBAVFRUk6+hVquhVqsbbVcqlUHzFyuYYglHbF//Yvv6F9vXv9i+/sX29S+2r3+xff1LivZtzfXadWGOjh07AgBOnDjhcb97e3p6esBiIiIiIiKi8Nauk7C+ffsCALZt2+Zxv3t7nz59AhYTERERERGFt3adhI0YMQJGoxGHDx/Gjh07Gu1fsmQJAGDy5MkBjoyIiIiIiMJVu07CVCoVZs+eDQD485//XD8HDABeeeUV7Nq1C6NHj8bAgQOlCpGIiIiIiMJMuy7MAQBPPPEEfvzxR6xbtw7dunXDyJEjcfz4cWzcuBHx8fF4//33pQ6RiIiIiIjCSLvuCQMAjUaDVatW4cknn4ROp8NXX32F48ePY+bMmdi2bRu6dOkidYhERERERBRG2n1PGABotVo8++yzePbZZ6UOhYiIiIiIwly77wkjIiIiIiIKJCZhREREREREAcQkjIiIiIiIKICYhBEREREREQUQkzAiIiIiIqIAYnVEHxNCAAAsFovEkQB2ux3V1dWwWCxQKpVShxN22L7+xfb1L7avf7F9/Yvt619sX/9i+/qXlO3r/vzvzgeawyTMxyoqKgAAaWlpEkdCRERERESBVlFRAaPR2OwxMuFNqkZeczqdyMvLQ1RUFGQymaSxWCwWpKWlIScnBwaDQdJYwhHb17/Yvv7F9vUvtq9/sX39i+3rX2xf/5KyfYUQqKioQHJyMuTy5md9sSfMx+RyOVJTU6UOowGDwcC/5H7E9vUvtq9/sX39i+3rX2xf/2L7+hfb17+kat+WesDcWJiDiIiIiIgogJiEERERERERBRCTsDCmVqvx9NNPQ61WSx1KWGL7+hfb17/Yvv7F9vUvtq9/sX39i+3rX6HSvizMQUREREREFEDsCSMiIiIiIgogJmFEREREREQBxCSMiIiIiIgogJiEBZExY8ZAJpM1+fP99997PG/hwoUYMmQI9Ho9YmJiMHHiRKxbt65NMTgcDrz66qs4//zzodVqER8fj+uuuw779u07l7cWFFrTvk6nE2vWrMEjjzyCgQMHIioqCmq1Gl27dsXdd9+No0ePtvr6M2fObPb6//nPf3z5dgOutffvnDlzmj3+sccea3UMvH9Pa+5Y98/YsWO9vn64379uRUVFeOihh5CZmQmtVouYmBgMGDAADz/8sMfjly9fjtGjR9evRzNmzBisWLGizdf35fM8GHnbvlu3bsWcOXMwfPhwmEwmqFQqpKWl4cYbb8SuXbtafV1/PG+Ckbftu3DhwmbbY9q0aW26Pu9fl06dOrX4/O3SpYvX1w3n+/eXX37x6t+rZ599ttG5of75l4s1B6EpU6ZAr9c32p6SktJo2/3334958+ZBq9Vi/PjxsFqtyMrKwsqVK7FkyRJcddVVXl/X6XTi2muvxZdffgmTyYRJkyahuLgYS5YswYoVK7Bq1SoMGTLkXN5aUPCmfY8cOYJRo0YBABITEzF27FgoFAps2rQJ//3vf7Fo0SJ8++23uPDCC1t9/UsvvRSJiYmNtmdmZrb6tYJRa+5fABgxYgQyMjIabR84cGCrrsv7t2H7zpgxo8nXWLFiBYqLizFy5MhWXz+c79+tW7fi0ksvRUlJCXr16oUrr7wSFosFe/fuxauvvop//etfDY5/7bXX8Ne//hURERG45JJLoFarsXLlSlx++eV44403MHv27FZd35fP82DkbfvW1dVh0KBBAICYmBgMHz4ckZGR2L59Oz755BMsXrwYn3zyCaZOndrqGHz1vAlGrb1/AaBv377o169fo+0XXHBBq6/P+/d0+06dOhXFxcUeX2f16tU4duxYm56/4Xj/JiYmNvnvlcPhwMcffwwAjdorLD7/Cgoao0ePFgDE0aNHvTo+KytLABCxsbHiwIED9dvXrVsnVCqVMJlMoqyszOvrz58/XwAQ3bp1EydPnqzfvmTJEgFAZGRkCLvd7vXrBZvWtO+hQ4fEuHHjxE8//SScTmf9dqvVKmbOnCkAiI4dO4ra2lqvrz9jxgwBQKxataoN0Qe/1t6/Tz/9tAAgFixY4JPr8/71TllZmVCr1QJAg+dGS8L9/i0sLBRxcXFCp9OJZcuWNdq/cePGBr//8ccfQqFQCLVaLdatW1e/ff/+/SI2NlZERESIgwcPen19Xz/Pg01r2tdut4vBgweLr776StTV1dVvdzgc4v/+7/8EABEVFSWKioq8vr6vnzfBprX374IFCwQA8fTTT/vk+rx/N3o4qzGHwyGSkpIEAJGVleX19cP9/m3Kt99+KwCItLS0Bp/FwuXzL5OwINLaD1kTJkwQAMSrr77aaN+9994rAIiXX37Z6+v36NFDABBffvllo31XXHGFACCWLFni9esFG199iK2urhZGo1EAEL/88ovX54X7h1ipkzDev9555513BAAxdOjQVp0X7vfvrFmzBADx1ltvter4++67r9G+V155RQAQs2fP9vr6vn6eB5vWtm9TnE6nyMzMFADEwoULvT4v3D/EtrZ9fZ2E8f71zsqVKwUAkZKSIhwOh9fnhfv925Tp06cLAOKxxx5rsD1cPv9yTliIqqmpwc8//wwAHodkuLctX77cq9c7evQo9u3bB61Wi0mTJp3z64UzrVaL7t27AwDy8vIkjoYA3r+t4R7acdNNN0kcSfCoqanBxx9/jMjISNxyyy1eneOe9+WL56+vn+fBpi3t2xSZTIY+ffoA4PPXzZft29br8/71jvv5O336dMjl/AjenKqqKixbtgxAw3+vwunzL+eEBaH33nsPJSUlkMvl6N69O6666ip07NixwTH79++HzWZDfHw8UlNTG73GgAEDAMDrCcw7d+4EAPTu3RtKpfKcXy+YedO+zXE6nTh+/DgAeJwb05IvvvgCS5cuhcPhQOfOnTF58mScd955rX6dYNXa9v3555+xY8cOWK1WpKamYsKECa0e387717v7Nzs7G2vWrIFSqcT111/fpuuH4/27ZcsWVFRU4MILL4RWq8V3332HrKwsWK1WdO/eHddddx2Sk5Prjy8vL0d2djYAoH///o1eLy0tDXFxcTh+/DgsFgsMBkOz1/f18zzYtLZ9W3LkyBEAbXv++uJ5E2zOpX23bt2Khx9+GBaLpX7+8+jRo1t1fd6/3t2/NTU1+PLLLwEAN954Y5tiCcf7tylffPEFqqqq0L9/f/Ts2bN+e1h9/vV53xq1mXu40dk/SqVSPPvssw2OXbZsmQAg+vfv3+TrmUwmAUBYLJYWrz1v3jwBQFx99dUe95eXlwsAIiYmpnVvKoi0pn2b8/HHHwsAIj4+XlitVq/Pcw/nOvtHJpOJe+65J6TnKwnR+vZ1D6/w9DNlyhRRUVHh9bV5/3p3/77wwgsCgLjiiitaff1wvn//85//CADimmuuEVdeeWWj96jVasWiRYvqj9+5c6cAIKKjo5t8zX79+gkAYteuXS1e39fP82DT2vZtzpo1awQAoVKpRF5entcx+PJ5E2za0r7u4YiefkaPHt1gXkxLeP96d/8uWrRIABB9+vRpdQzhfP82Zfz48QKAeOWVVxpsD6fPv+wLDSKjRo3CRx99hMOHD6O6uhr79+/H888/j4iICDz11FOYN29e/bGVlZUAAJ1O1+TrRUZGAgAqKipavHZLr9ea1wpWrWnfpuTk5OD+++8HADz77LNQq9VeX79///74z3/+gwMHDqC6uhpHjhzBW2+9BZPJhLfffrvJEtihorXtm5GRgZdffhl79uxBZWUlcnJy8MknnyAlJQVLly5t1XA53r/e3b/nMhQxnO/fsrIyAMDXX3+N77//Hm+99RYKCwtx7NgxPPTQQ6ipqcGMGTOwY8cOAIF//rb29YJNa9u3KRaLBbfeeisA4K9//SuSkpK8jsGXz5tg05b2TUpKwpw5c7B9+3aYzWacPHkSX3/9Nc477zysXr0al19+ORwOh1fX5/3r3f370UcfAWjb8zec719P8vPz8dNPP0GhUOCGG25osC+sPv/6PK0jn/vhhx8EAGEymUR1dbUQQohPPvlEABAjRoxo8ryUlBQBQOTm5rZ4jeeff14AEH/605887rfb7fXfuocbT+3rSWVlpRg0aJAAIK666iqfXX/37t1CpVKJiIgIkZ2d7bPXDRbetq9bXl6eiI2NFQDE+vXrvboG79+W23fr1q31x7WmB7cl4XD/uu8fAOKll15qtP/aa68VAMT06dOFEEKsXbu2fnJ9U0aMGCEAiLVr17Z4fV8/z4NNa9vXk7q6OnH55ZcLAGLIkCHCZrP5JLa2PG+CjS/a162iokJ0795dAPC6d5L3b8vtW1BQICIiIoRcLvdpG4TD/evJ3LlzBQBx2WWXNdoXTp9/2RMWAsaPH49BgwahvLwcGzduBID6dYKqq6ubPK+qqgoAEBUV1eI1Wnq91rxWqPHUvmez2+249tprsWXLFlx44YVYtGiRz67fq1cvXHHFFairq8NPP/3ks9cNFt6075mSkpLqJz83tUD52Xj/tty+7l6wa6+9tlU9uC0Jh/v3zHXXPE28d29bvXp1g+MD9fxt7esFm9a2ryezZs3CN998g8zMTKxYsQIqlconsbXleRNsfNG+Z77WvffeCwD44YcfWnV93r9Nt+9nn32Guro6XHzxxa2a/9iScLh/PWlu1EY4ff5lEhYiunXrBsDVRQugfiL+iRMnPB5fVVWF8vJyREdHe3XjtPR67u3p6emtCzxEnN2+Z3I6nZgxYwa+++479OvXD8uXL4dWqw3Y9cNBa99fa4/n/dt8ezkcDnz22WcA2j4h/FyuH+zc94VOp0N8fHyj/Z06dQIAFBYWAjh9v5WVldX/A3221txzvn6eB5vWtu/ZHnvsMcyfPx9paWnIyspCXFycT+Nrb/dvS3z9/G3v9y9wOqng87dl+/btw/bt26HX6z0uuBxOn3+ZhIUI95hk99jUzMxMqNVqFBUVITc3t9Hx27ZtA4D6Ur4t6du3LwBg9+7dsNvt5/x6oebs9j3TX/7yF3z66afo3r07fvjhB5hMpoBePxy09v219njev823108//YT8/Hykp6dj5MiRAb9+sHNXOKypqYHNZmu0v7S0FMDpb0xNJlP9P9zbt29vdHxOTg6Ki4uRnp7eYmVEwPfP82DT2vY90z//+U+89NJLSEhIQFZWFtLS0nweX3u7f1vS2vbg/dt8+x44cACbN2+GTqfDNddc4/P4Qv3+PZt77tw111zjcZ5WOH3+ZRIWAoqKirBmzRoAp0tlarVajB07FgCwePHiRucsWbIEADB58mSvrtG5c2f06NEDNTU19evfnMvrhRJP7ev2xBNP4O2330bHjh2RlZWFhIQEn1/fZrPVt/nZ1w8HzbWvJ0KI+jK+3rYH79/m2/fMb2FlMplPrx8O92/Hjh3Rt29fCCE8DilybzuzHL17PRn3vXWm1t5vvn6eB5u2tC8AzJ8/H48++ihMJhN++OEHZGZm+jy2tjxvgk1b27cpS5cuBeB9e/D+bb593c/fq6++2utE2FvhcP+eSQhRP92jqWIjYfX51+ezzKhN1q5dK7788ktRV1fXYPvRo0frJ3ifXVY6KytLABCxsbHiwIED9dvXrVsn1Gq1MJlMoqysrME5GzduFJmZmWLs2LGNYpg/f74AILp16yYKCgrqty9dulQAEBkZGSFbhrot7fvKK68IACIxMbFB+zanqfbdt2+f+PDDDxsVRCgsLBRXXXWVACD69u0rnE5nG96d9FrbvoWFheLNN99sVD62oqJC3HXXXfXtXlVV1WA/71/v71+3qqoqodfrBQDxxx9/NHud9nr/CnF6svf555/foPT59u3bRUxMjAAgPv/88/rtf/zxh1AoFEKtVjeYEH/gwAERGxsrIiIixMGDBxtc48SJEyIzM1NkZmY2un5bnuehpLXtu3jxYiGXy4Verxfr1q3z6hpNtW9bnzehpLXt+8ILL4iioqIGr1FbWyvmzJlTX3b9xIkTDfbz/vW+fc/UpUsXAUB8//33zV6jPd+/bqtXr64veuRwOJo8Llw+/zIJCxLuNTsSExPFxIkTxfTp08WIESOERqMRAESvXr0a3Bhu9913nwAgdDqduPLKK8WECRNERESEUCgU4ssvv2x0/KpVqwQAkZ6e3mifw+EQV199tcCp9W+mTp0qxowZI2QymdBqtWLDhg1+eOeB0dr23b59u5DJZAKAGDZsmJgxY4bHnzVr1jS4TlPt694eHR0txo0bJ6ZPny7GjBkjoqKiBACRmpoq9u/fH4im8IvWtu/Ro0cFAKHX68VFF10kpk+fLsaNG1df5clkMonffvut0XV4/7bu+SDE6Q8PgwcPbvE67fX+dXOvhWYymcTEiRPFRRddJNRqtQAg7rjjjkbHu7+oiYiIEBMmTBBXXnml0Gq1AoB4/fXXGx3vvu+b+v6ztc/zUONt+xYUFAiVSlX/obep5+/ZbdJU+7b1eRNqWnP/AhBqtVqMGDFCTJs2TUycOFEkJycLAEKj0YilS5c2en3ev617PghxupJqYmJioy/Rztbe718hhLjjjjsEAPHwww+3eGw4fP5lEhYk9u7dK2bNmiUGDBgg4uPjRUREhDAajWLo0KFi7ty5zZaeXrBggRg4cKDQ6XTCZDKJyy67rMmyyM3dhEK4ygDPnTtX9OrVS2g0GhEbGyumTp0q9uzZ44u3KZnWtq+7nVr6WbBggcfzzm7f3Nxccf/994uhQ4eKxMREoVQqhV6vFwMGDBBPP/20KC0t9XML+Fdr29disYhHH31UjB49WqSkpAi1Wi10Op3o1auXePDBBxt9A+vG+7f1z4cJEyYIAGLevHktXqe93r9uTqdTvPPOO/XP08jISDFs2DCxcOHCJs/5+uuvxciRI4Verxd6vV6MHDlSLF++3OOxLX2IFaJ1z/NQ4237ntlOzf08/fTTTZ53prY+b0JNa+7fp556SowbN0507NhRaLVaodFoREZGhrjrrrua7DHn/dv658OsWbMEAPHXv/61xddv7/ev1WoV0dHRAoDYuXOnV+eE+udfmRBCgIiIiIiIiAKChTmIiIiIiIgCiEkYERERERFRADEJIyIiIiIiCiAmYURERERERAHEJIyIiIiIiCiAmIQREREREREFEJMwIiIiIiKiAGISRkREREREFEBMwoiIiIiIiAKISRgRUTsmk8ma/RkzZozUIVIrHDp0CCqVCg8//HCTx2zevBl33XUXevToAaPRCJVKhQ4dOuDiiy/GCy+8gOPHjzc6Z+HChZDJZJg5c2az1x8zZgxkMhl++eWXNsVfU1ODpKQkTJw4sU3nExGFigipAyAiIunNmDHD4/bzzjsvwJHQuXj88cehUqnwyCOPNNpXW1uLe+65B++99x4AoFOnThgzZgwiIyNRVFSEzZs34+eff8acOXOwcOFCTJ8+PdDhQ6vV4pFHHsEDDzyAn3/+GWPHjg14DEREgcAkjIiIsHDhQqlDoHO0bds2LFmyBPfeey/i4+Mb7b/xxhuxePFidO/eHfPnz8eoUaMa7K+rq8Py5cvx9NNP48iRI4EKu5G7774bzz77LB5//HFs3LhRsjiIiPyJwxGJiIjCwL///W8AwM0339xo32effYbFixcjKSkJv/32W6MEDAAiIiJw9dVXY8uWLbjqqqv8HW6TtFotpkyZgk2bNmH79u2SxUFE5E9MwoiIqEUzZ86sn+vzww8/4KKLLoLJZIJMJkN5eXn9cd9//z0mTZqE+Ph4qNVqdOnSBQ888ABKSko8vm5paSlmz56N5ORkaDQa9OzZE/PmzYMQAjKZDJ06dWpw/Jw5cyCTyZrsuevUqRNkMpnHffv27cPMmTORlpYGtVqNDh06YNq0adizZ0+jY91zoObMmYPs7GxMnz4d8fHx0Gq1GDRoEJYvX95kW+3btw+33XYbOnXqBLVajYSEBIwYMQIvv/wy6urqAAC9e/eGTCbD/v37Pb5GTk4OFAoFOnfuDCFEk9dyq6ysxGeffYZu3bph4MCBjfa//PLLAIBnnnnGYy/ZmVQqFXr37t3iNb3lvnea+zl7Dpl7KOQ777zjsziIiIIJhyMSEZHXFi1ahHfffReDBg3ChAkTcPjw4fqk57HHHsNLL70ElUqFwYMHIykpCTt37sSrr76Kr7/+GmvXrkWHDh3qX6usrAwXXngh9u3bh8TERFx55ZUoLS3FQw89hEOHDvk07q+++grTpk2DzWZDv379MHToUOTk5ODzzz/H8uXL8d1333nsHTp27BgGDx6MqKgoXHzxxcjOzsb69etx1VVX4bvvvsP48eMbHL948WLcdNNNsNls6NGjB66++mqYzWbs2bMHDz/8MG6//XaYTCbcdddduPfee/Huu+/iX//6V6Prvv/++3A6nbj99tubTCrPtHr1alRWVnospFJUVIStW7dCLpfj+uuv977RfOTCCy/0uN3hcODTTz+Fw+GAQqFosG/48OFQKpVYsWJFIEIkIgo8QURE7RYA4c0/BTNmzKg/9rPPPmu0//PPPxcARO/evcXBgwfrtzudTvHUU08JAOL6669vcM7dd98tAIjLLrtMVFVV1W/fuHGj0Ov1AoBIT09vcM7TTz8tAIgFCxZ4jDM9Pb3R+zl69KiIjIwUer1eZGVlNdj33XffCaVSKdLS0oTNZqvfvmDBgvr3++CDDwqHw1G/79VXXxUAxMiRIxu81oEDB4RGoxERERHik08+abDP6XSKH374QVitViGEEOXl5UKn04n4+PgG1xVCCIfDITp27CgUCoXIzc31+D7P9uijjwoA4p133mm0LysrSwAQGRkZXr2WJ+72mDFjRrPHjR49WgAQq1atavE17733XgFAXH755Q3a123gwIECgDhy5EgboyYiCl4cjkhERE0OEzt27FiD4yZNmuSxN+X5558HAHz66afIyMho8Lpz5sxBv379sGTJEhQXFwMAqqqq8MEHH0Aul+PNN9+ETqerP2fIkCH485//7LP39tprr6Gqqgr/+Mc/cMkllzTYd9lll2HWrFnIycnx2OvSuXNnvPDCC5DLT/9zOXv2bERHR2PDhg2ora2t3/7qq6/CarXi9ttvb1RZUCaTYfz48VCr1QAAo9GIadOmoaioCMuWLWtw7MqVK5GdnY1JkyYhOTnZq/e4a9cuAEBmZmajfe6hoHFxcR7PXb58OWbOnNng56GHHvJ47AcffNDssMLVq1d7Fe+7776L119/HT179sSiRYsatK+buzLnjh07vHpNIqJQwuGIRETUZIl6vV7f4Pcrrrii0TGFhYXYuXMnunXr5nEukUwmw4gRI7Bjxw5s3boVl156KbZu3YqamhoMGTIEXbt2bXTODTfcgJdeeqmN76ahlStXAgCuueYaj/tHjhyJ119/HZs2bcLVV1/dYN+YMWOgUqkabIuIiEDnzp2xbds2lJSUICkpCQDw448/AgDuuusur+K6++678f7772P+/Pm49tpr67fPnz8fAHDnnXd69TqA6/8BAERHR3t9jtvOnTvxwQcfNNiWnp5eP4/sTF27dm1yeCHgmhNYUFDQ7PXWrFmDe+65B7GxsVi+fDmioqI8HhcTEwPANZySiCjcMAkjIiKvS9R37Nix0TZ3b9nBgwdbnL/k7gnLy8sD4Pqw78nZBTnOhTu+lJQUr2I7U2pqqsdj3YmDzWar35aTkwMAHpNKTwYPHowBAwbgxx9/xNGjR9G5c2cUFBRg+fLlSE1NxWWXXebV6wCA2WxuENeZYmNjAXh+fwDwxBNP4IknngAAnDx5sj6p9OTCCy9s9l4ZM2ZMs0nY8ePHMWXKFAghsHjxYnTp0qXJYw0GAwA0KPxCRBQumIQREZHXNBpNo21OpxMAkJiYiEsvvbTZ85tKunzFHYunbU319rldcMEFjbZ5GibnS3fffTfuvPNOvPfee3juuefwwQcfwG6349Zbb21UrKI5RqMRAFBRUdFoX58+fQAAR44cgcViqU9uAq2qqgpXXHEFioqK8Pbbb+Oiiy5q9nh3YmkymQIQHRFRYDEJIyKic+LuLYqLi/O6R83d23L8+HGP+5va7h4aWFlZ2Wifw+HAyZMnPcZ3+PBhzJ07t75XyB/S0tJw8OBBHD58GP369fPqnOnTp+Ohhx7CggULMGfOHLz77ruQy+W47bbbWnXthIQEAK6S/572DRw4EFu3bsXnn3+O22+/vVWv7QtCCNx0003YtWsXZs2ahVmzZrV4TllZGQC0WFKfiCgUsTAHERGdk9TUVJx33nnYu3cvDhw44NU5AwcOhFarxdatW3HkyJFG+z/77DOP57mTN0/XWbVqFex2e6Pt48aNAwB8+eWXXsXWVu6iH61Z2yoyMhI33ngj8vLy8Mgjj+DgwYO49NJLPQ77bE7fvn0BoMl1x9yFNp566ilJ5lg99dRT+PLLL3HRRRfh9ddf9+qcffv2AYDXCS0RUShhEkZEROfsySefhNPpxJQpUzxWsyspKakvOAG4Cn7cdNNNcDgc+Mtf/oKampr6fVu2bMGbb77p8Trutbw+/vjjBpUbjx49invvvdfjOQ8++CC0Wi0eeughfPHFF43222w2LFmyBCdOnPDmrTbp/vvvh0ajwfz58/G///2vwT4hBLKyshrMIXO7++67AbiqKwLAHXfc0eprjxw5EgCwefNmj/unTZuGqVOnIj8/HxdeeCF+/fVXj8etX7++1dduyf/+9z8899xz6NKlCxYvXoyIiJYH4VitVvz+++9IS0tD586dfR4TEZHUOByRiIjO2fTp07Fnzx688MILGDhwIPr164euXbtCCIHDhw9j165d0Ov1DRKMf/zjH1i9ejW+/fZbdO3aFaNGjUJZWRl+/vln3HXXXXjrrbcaXadr1664+eab8eGHH6Jfv34YNWoUqqursWHDBkycOBHV1dWNhjJmZGTg008/xfTp0zFlyhRkZGSgR48eiIyMRG5uLrZt24aqqips3769yUIc3ujevTsWLFiAm2++GdOmTcOzzz6LPn36wGw2Y/fu3cjJyUFZWVl9mXq3888/H8OHD8e6deuQmJiIyZMnt/rao0aNgl6vxy+//NLkMZ988gkMBgPef/99jB49Gp06dULfvn2h0+lQUFCAAwcO4MSJE4iIiMC0adNaHUNT/va3vwEAkpOT8eCDD3o85rHHHqsvSQ8Aa9euhd1ux6RJk3wWBxFRMGFPGBER+cTzzz+P1atXY8qUKTh58iS++uorrFq1Cg6HA7NmzcLXX3/d4PiYmBisXbsWs2bNghACX331FbKzs/Hiiy/ijTfeaPI68+fPx2OPPQaDwYAffvgBx44dw+OPP45PP/20yXOuvPJK7Nq1C/fccw9kMhmysrKwYsUKFBYWYvLkyfj888/Rs2fPc26DadOmYcuWLbjxxhthNpuxdOlSbN26FR07dsTcuXMblfx3Gzt2LADglltu8aqn6Gx6vR433HADDh061GRvmEqlwnvvvYdNmzbhzjvvhFqtxk8//YQlS5Zg9+7d6Nq1K5555hkcPHgQL774YqtjaIrD4QAA/Pbbb/jggw88/pw9l2/RokUA2tYrSEQUCmRCCCF1EERERGeTyWRIT09vtGB0uBFCoEePHjhw4AAOHTrUbNn25uzYsQP9+/fH7Nmzm01ig11NTQ2Sk5PRvXt3bNy4UepwiIj8gj1hREREElqyZAn279+PiRMntjkBA1wFLK699lq8//779Ys3h6L//Oc/KC8vxz/+8Q+pQyEi8hv2hBERUVAK956w22+/HeXl5fjmm29QV1eHjRs3YuDAgef0mocPH0aPHj1w77334uWXX/ZRpIFTU1ODLl26oH///vj222+lDoeIyG+YhBERUVAK9yRMJpMhIiIC3bp1w7PPPoupU6dKHRIREQUIkzAiIiIiIqIA4pwwIiIiIiKiAGISRkREREREFEBMwoiIiIiIiAKISRgREREREVEAMQkjIiIiIiIKICZhREREREREAcQkjIiIiIiIKICYhBEREREREQXQ/wNaj7Hij/HnsQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#WyomingUpperAir.get_stations(region = 'africa')\n", + "date = datetime.datetime(2023, 6, 12, 12)\n", + "station = 'DIAP' #Abidgan\n", + "df = WyomingUpperAir.request_data(date, station)\n", + "df.attrs['units']\n", + "\n", + "fig, ax = plt.subplots(1, 1, figsize=(12, 8))\n", + "mdl = 'R17'\n", + "ang = np.array([90.])\n", + "frq = np.arange(50, 70, 0.1)\n", + "nf = len(frq)\n", + "ax.set_xlabel('Frequency (GHz)')\n", + "ax.set_ylabel('BT (K)')\n", + "\n", + "pressure = df.pressure.values[42:65]\n", + "rh = df.rh.values[42:65]/100\n", + "height = df.height.values[42:65]/1000\n", + "temp = df.temperature.values[42:65]+273\n", + "\n", + "'''\n", + "pressure = df.pressure.values\n", + "rh = df.rh.values/100\n", + "height = df.height.values/1000\n", + "temp = df.temperature.values+273\n", + "'''\n", + "\n", + "rte1 = TbCloudRTE(df.height.values/1000, df.pressure.values, df.temperature.values+273, df.rh.values/100, frq, ang)\n", + "rte1.satellite = False\n", + "rte1.init_absmdl(mdl)\n", + "\n", + "rte = TbCloudRTE(height, pressure, temp, rh, frq, ang)\n", + "rte.satellite = False\n", + "rte.init_absmdl(mdl)\n", + "\n", + "\n", + "df1 = rte1.execute()\n", + "df = rte.execute()\n", + "\n", + "df = df.set_index(frq)\n", + "df1 = df1.set_index(frq)\n", + "\n", + "df.tbtotal.plot(ax=ax, linewidth=1,label=('200-50'))\n", + "df1.tbtotal.plot(ax=ax,linewidth=1,label=('1000-50'),linestyle='--')\n", + "\n", + "ax.grid(True, 'both')\n", + "ax.legend()\n", + "ax.set_title('Pressure broadening effect on oxygen line mixing')\n", + "ax.set_box_aspect(0.8)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 708 + }, + "id": "P1kBgWxM0Cti", + "outputId": "e65ad5fd-87fd-40cb-8d11-7ca703dfa60b" + }, + "outputs": [ + { + "data": { + "image/png": "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IEwIIYQQQgghjiAJwoQQQgghhBDiCJIgTAghhBBCCCGOIAnChBBCCCGEEOIIkiBMCCGEEEIIIY4gCcKEEEIIIYQQ4giSIEwIIYQQQgghjiAJwoQQ4gSnaVqPP7Nnz/6iT1EkYdu2bVitVu64446423zyySfceOONjBw5kvT0dKxWK/n5+Zxxxhn84he/YPfu3d1e8+ijj6JpGtdff32Px589ezaapvH+++/36fw9Hg+FhYWcd955fXq9EEIcC8xf9AkIIYQ4Olx33XUxHx8xYsQRPhNxKH7wgx9gtVq58847uz3n9/u55ZZbeOihhwAoLy9n9uzZpKSkUFNTwyeffMK7777LPffcw6OPPsqCBQuO9OnjcDi48847+e53v8u7777L6aeffsTPQQghDjcJwoQQQgDhTIc4tn366acsXLiQ2267jdzc3G7PX3PNNTz77LMMGzaMBx54gFmzZnV6PhgM8vLLL3P33XezY8eOI3Xa3dx0003ce++9/OAHP2D58uVf2HkIIcThIuWIQgghxHHib3/7GwDXXnttt+eefvppnn32WQoLC/noo4+6BWAAZrOZSy+9lJUrV3LJJZcc7tONy+FwMG/ePFasWMHq1au/sPMQQojDRYIwIYQQCbn++uujc33efPNN5syZQ0ZGBpqm0dDQEN3ujTfe4Pzzzyc3NxebzcagQYP47ne/y8GDB2Put66ujltvvZWioiLsdjujRo3iD3/4A0opNE2jvLy80/b33HMPmqbFzdyVl5ejaVrM5zZu3Mj1119PaWkpNpuN/Px85s+fz/r167ttG5kDdc8997Bnzx4WLFhAbm4uDoeDKVOm8PLLL8cdq40bN/Jf//VflJeXY7PZyMvLY/r06fzud78jGAwCMGbMGDRNY/PmzTH3UVFRgclkYuDAgSil4h4roqWlhaeffpqhQ4cyefLkbs//7ne/A+CnP/1pzCxZR1arlTFjxvR6zERFrp2efrrOIYuUQv7jH//ot/MQQoijhZQjCiGESMqTTz7Jgw8+yJQpUzj33HPZvn17NOi56667+PWvf43VamXq1KkUFhayZs0a7r//fl566SWWLFlCfn5+dF/19fXMmDGDjRs3UlBQwMUXX0xdXR23334727Zt69fzfuGFF5g/fz4+n48JEyYwbdo0KioqeOaZZ3j55Zd5/fXXY2aHdu3axdSpU0lNTeWMM85gz549LFu2jEsuuYTXX3+duXPndtr+2Wef5ctf/jI+n4+RI0dy6aWX0tjYyPr167njjju44YYbyMjI4MYbb+S2227jwQcf5Le//W234z788MMYhsENN9wQN6jsaPHixbS0tMRspFJTU8OqVavQdZ2rrroq8UHrJzNmzIj5eCgU4qmnniIUCmEymTo9d+qpp2KxWHj11VePxCkKIcSRpYQQQpzQAJXIn4Prrrsuuu3TTz/d7flnnnlGAWrMmDFq69at0ccNw1A/+clPFKCuuuqqTq+56aabFKDOOecc1draGn18+fLlyuVyKUANGDCg02vuvvtuBahHHnkk5nkOGDCg2/vZuXOnSklJUS6XSy1atKjTc6+//rqyWCyqtLRU+Xy+6OOPPPJI9P1+73vfU6FQKPrc/fffrwA1c+bMTvvasmWLstvtymw2qyeeeKLTc4ZhqDfffFN5vV6llFINDQ3K6XSq3NzcTsdVSqlQKKTKysqUyWRS+/bti/k+u/r+97+vAPWPf/yj23OLFi1SgBoyZEhC+4olMh7XXXddj9uddtppClDvvfder/u87bbbFKAuuOCCTuMbMXnyZAWoHTt29PGshRDi6CTliEIIIYD4rep37drVabvzzz8/Zjbl5z//OQBPPfUUQ4YM6bTfe+65hwkTJrBw4UJqa2sBaG1t5bHHHkPXdf785z/jdDqjrznppJP4xje+0W/v7X//939pbW3ll7/8JWeeeWan58455xxuvvlmKioqYmZdBg4cyC9+8Qt0vf1P5q233kpmZiYff/wxfr8/+vj999+P1+vlhhtu6NZZUNM05s6di81mAyA9PZ358+dTU1PDiy++2Gnbt956iz179nD++edTVFSU0Htcu3YtAMOHD+/2XKQUNCcnJ+ZrX375Za6//vpOP7fffnvMbR977LEeywoXL16c0Pk++OCD/PGPf2TUqFE8+eSTncY3ItKZ87PPPkton0IIcayQckQhhBBA/Bb1Lper078vuuiibttUV1ezZs0ahg4dGnMukaZpTJ8+nc8++4xVq1Zx9tlns2rVKjweDyeddBKDBw/u9pqrr76aX//61318N5299dZbAFx22WUxn585cyZ//OMfWbFiBZdeemmn52bPno3Vau30mNlsZuDAgXz66accPHiQwsJCAN5++20AbrzxxoTO66abbuLhhx/m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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "atm = ['Tropical',\n", + " 'Midlatitude Summer',\n", + " 'Midlatitude Winter',\n", + " 'Subarctic Summer',\n", + " 'Subarctic Winter',\n", + " 'U.S. Standard']\n", + "\n", + "\n", + "fig, ax = plt.subplots(1, 1, figsize=(12, 8))\n", + "\n", + "for i in range(0, 6):\n", + " z, p, d, t, md = atmp.gl_atm(i)\n", + " gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + " rh = mr2rh(p, t, gkg)[0] / 100\n", + "\n", + " mdl = 'R19SD'\n", + "\n", + " ang = np.array([90.])\n", + " frq = np.arange(50, 70, 0.1)\n", + " nf = len(frq)\n", + "\n", + " ax.set_xlabel('Frequency (GHz)')\n", + " ax.set_ylabel('BT (K)')\n", + "\n", + " rte = TbCloudRTE(z, p, t, rh, frq, ang)\n", + " rte.init_absmdl(mdl)\n", + " df = rte.execute()\n", + "\n", + " df = df.set_index(frq)\n", + " df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i]))\n", + "\n", + "ax.grid(True, 'both')\n", + "ax.legend()\n", + "ax.set_title('Upwelling Brightness Temperature calculation from 50 to 70 GHz')\n", + "ax.set_box_aspect(0.8)\n", + "plt.show()" + ] + } + ], + "metadata": { + "colab": { + "provenance": [] + }, + "kernelspec": { + "display_name": "Python 3", + "name": "python3" + }, + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/en/main/.doctrees/nbsphinx/notebook/first_run.ipynb b/en/main/.doctrees/nbsphinx/notebook/first_run.ipynb new file mode 100644 index 00000000..96d9c90b --- /dev/null +++ b/en/main/.doctrees/nbsphinx/notebook/first_run.ipynb @@ -0,0 +1,252 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/SatCloP/pyrtlib/blob/main/docs/source/notebook/first_run.ipynb)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# My first test with PyRTlib" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Installing PyRTlib via pip. Note that the following command will also install all requirements to execute properly PyRTlib package. It is possible to test development version by installing the package directly from github repository.\n", + "```console\n", + "!pip install https://github.com/SatCloP/pyrtlib/archive/refs/heads/dev.zip\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defaulting to user installation because normal site-packages is not writeable\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collecting pyrtlib\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Downloading pyrtlib-1.1.0-py3-none-any.whl (246 kB)\r\n", + "\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/246.2 KB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m246.2/246.2 KB\u001b[0m \u001b[31m10.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n", + "\u001b[?25hRequirement already satisfied: netCDF4 in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (1.7.1.post2)\r\n", + "Requirement already satisfied: numpy in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (2.1.1)\r\n", + "Collecting bs4\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Downloading bs4-0.0.2-py2.py3-none-any.whl (1.2 kB)\r\n", + "Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from pyrtlib) (2.25.1)\r\n", + "Requirement already satisfied: pandas in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (2.2.2)\r\n", + "Requirement already satisfied: matplotlib in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (3.9.2)\r\n", + "Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from pyrtlib) (59.6.0)\r\n", + "Requirement already satisfied: scikit-learn in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (1.5.2)\r\n", + "Requirement already satisfied: scipy in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (1.14.1)\r\n", + "Requirement already satisfied: beautifulsoup4 in /home/runner/.local/lib/python3.10/site-packages (from bs4->pyrtlib) (4.12.3)\r\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (1.4.7)\r\n", + "Requirement already satisfied: pillow>=8 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (10.4.0)\r\n", + "Requirement already satisfied: pyparsing>=2.3.1 in /usr/lib/python3/dist-packages (from matplotlib->pyrtlib) (2.4.7)\r\n", + "Requirement already satisfied: cycler>=0.10 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (0.12.1)\r\n", + "Requirement already satisfied: python-dateutil>=2.7 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (2.9.0.post0)\r\n", + "Requirement already satisfied: contourpy>=1.0.1 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (1.3.0)\r\n", + "Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib->pyrtlib) (24.1)\r\n", + "Requirement already satisfied: fonttools>=4.22.0 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (4.53.1)\r\n", + "Requirement already satisfied: cftime in /home/runner/.local/lib/python3.10/site-packages (from netCDF4->pyrtlib) (1.6.4)\r\n", + "Requirement already satisfied: certifi in /usr/lib/python3/dist-packages (from netCDF4->pyrtlib) (2020.6.20)\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: pytz>=2020.1 in /usr/lib/python3/dist-packages (from pandas->pyrtlib) (2022.1)\r\n", + "Requirement already satisfied: tzdata>=2022.7 in /home/runner/.local/lib/python3.10/site-packages (from pandas->pyrtlib) (2024.1)\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: joblib>=1.2.0 in /home/runner/.local/lib/python3.10/site-packages (from scikit-learn->pyrtlib) (1.4.2)\r\n", + "Requirement already satisfied: threadpoolctl>=3.1.0 in /home/runner/.local/lib/python3.10/site-packages (from scikit-learn->pyrtlib) (3.5.0)\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.7->matplotlib->pyrtlib) (1.16.0)\r\n", + "Requirement already satisfied: soupsieve>1.2 in /home/runner/.local/lib/python3.10/site-packages (from beautifulsoup4->bs4->pyrtlib) (2.6)\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Installing collected packages: bs4, pyrtlib\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Successfully installed bs4-0.0.2 pyrtlib-1.1.0\r\n" + ] + } + ], + "source": [ + "!pip install pyrtlib" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Import necessary packages to perform and plotting your first spectrum in PyRTlib." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "# This requires jupyter-matplotlib a.k.a. ipympl.\n", + "# ipympl can be install via pip or conda.\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "plt.rcParams.update({'font.size': 15})\n", + "import numpy as np" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Load standard climnatology and utils functions necessary to run the code." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from pyrtlib.absorption_model import O2AbsModel\n", + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The following code allows to performing spectra for one typical climatologies (Tropical) at 90° elevation angles. Please refer to the PyRTlib documentation for more details on how to use the library." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)\n", + "\n", + "gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + "rh = mr2rh(p, t, gkg)[0] / 100\n", + "\n", + "frq = np.arange(20, 1001, 1)\n", + "\n", + "rte = TbCloudRTE(z, p, t, rh, frq)\n", + "rte.init_absmdl('R22SD')\n", + "O2AbsModel.model = 'R22'\n", + "O2AbsModel.set_ll()\n", + "df = rte.execute()\n", + "df = df.set_index(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plotting zenith upwelling brigthness temperature." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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aOnSpbrnnnv00ksv6dNPP1VGhvGZlBUVFZo7d65WrVql7OxszZkzR5K0fft2PfPMM7rmmms0cOBAw3uWLVum0047TY2NjZo+fbqGDh2qzz77TLfeequWLl2ql19+mXATEdFe6/XuIjjuWeb7R3st9M2PTID1mNthB63AbzGOxUYR4AO9WaIpiK9upwLf/EiNBDcBviTFuIyPEWlpte7i2C/zynXoj+Yop10zR6S2/4ZeICvRGOCXdDPAf/ObAt39n/WH/Hkv0RtfF+i3356k40emdevYAAAAAAAAOKhLFfhTp07Vxo0b21rmz507V36/X3fccYc2b96s2tpaPfLII1q1apWmTJnS6eO7XC794Ac/0MaNG7Vx40b9+9//1vvvv68tW7ZoypQp2rx5s+bPn294j9/v18UXX6xVq1bpnnvu0e7du/X666/r9ddf19q1a7Vjxw6NHTvW8B6Px6PLL79cjY2N+u1vf6svv/xSL7/8srZt26aZM2fqlVde0XPPPdeVLxHQbeaW6qGqwPf6CfB7UuBCjP3/a76e5o4LsB5zC/3aoBX45hb6joB9APQe5gr89gL8WlMFvrljR3/lcgT+DPSF6O8zobZ0R7lh+5ghA+R29e57uDnAL+5GC/29lQ368StrAharFNc06Yq/r9DSHWVdPjYAAAAAAACMuhTgn3feeSorK9O7774rSZo0aZK+853vaM2aNTrqqKOUnJysO++8U06nU7/61a86ffwrr7xSf/nLXzRu3DjDeHZ2tp588klJ0uuvv66WloMtG1955RV98sknuuSSS3TvvfcGVP4PHz5caWnGypA33nhDO3fu1KRJk3Trrbe2jcfHx+uJJ56QJP3mN7/p9PyBUDAH694QPdLB/ItzKr/Dy7w+wttOBb456If1mNvhmwM7iRb6QF9jboVf1W6Abww1E6nAlxR8kWCoFiSG2jJTgH98L6++l6RMUwv9mqZWNbQELj7riKc+y5PHG/zatfr8+tkb69Xc6g36OgAAAAAAADqnSwH+ZZddpsbGRp199tltY88995weeOABHXvssRo5cqTmzZunjz76SNOnTw/ZZKX9iwUkqbm5WeXlB3/R9tRTT0mSbrrppg4f68AChIsvvjjgtalTp2r48OFav3698vPzuzFjoGvMv/Q2P7u+q8y/OHdQ+R1W5mDefyDAN3VCMHdcgPWY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fvopTj31VFx++eVev/57772H8847D6+99hrUajXOOecczJ49G4cPH8ZDDz2EadOmob7e/Y/mjTfewLJlyzwu2n366aeYO3cuvv32W4wfPx7z58/HgQMHsGjRItxzzz1ej50gAg3vflLqwFdyR0HxmqGBr2DnocNAEARBEJ6RRuiz4loH58BP0lMEMY+7wtBIceDzSQse9/dS8I92dGq+CEPOgU8OLm+55cShzOO2bhveXVseptHIE40OfFEU8ciXu5iof6NOjfvnjwzfoMIEf03qOlogwl/LAGr/QoQXyVzBKYYk6WVghgFpBvlrenmTCe+uC885We7UG0UGfOyrZU1wg7ONcZV+EglI0pPsPV8gB1c8S2u0hBy5kgh9zwJ+Ax+hn0IR+t7Cx+ivOdQUppG4Z0NZM8549mfM/9cqrDnUGO7hEEHApyu2Wq3G0qVLccstt6C6uhovvfQSAGDLli147rnnUFFRgRtuuAFLlizxyfWi1Wpx4403Yvfu3di9ezc++ugjfPvtt9i3bx8mTZqEvXv34s4773T59w0NDfj973+P0047DcXFxS73a25uxrXXXguHw4FPPvkEK1aswCeffIK9e/di6NChePrpp7FixQqvx08QgYQXf5VGdSlZ4KF4zdDg6TRISQgEQRAE4Rnekdhm8uTAjy9hVwnuWjNFigjsbYS+t/tHO/y80SlKiy9oju89I/KSceroXGbbyz8fhtnmCNOIpIhR2Hrzy+012Fjewmy7dd7QuFxINnICfvfR7xafJiMIQJKOBHwifPDmevkI/cDPEVQqAb8/bYRLg8NLq0qZ1j+hQtaBH0UFVfvrWAf+sFyKzw81Wq740urKgU/zN0KGPC5Cv77D7FYbsDmcaOpiE7PJge89s4ZmMY/31bZLDAPhRhRF3PXhVuypacfe2g7c9eHWqGrxQijD5xlXQkICXnjhBRw5cgQffvgh/v73v+Pxxx/H22+/jfLycrz44otISPDtpmzRokV48cUXMWrUKGZ7fn4+XnjhBQDA4sWLZeP7AeDOO++EyWTCf/7zH7fv88orr6C9vR0LFy7E+eef37c9NzcX//jHPwAATz/9tE//BoIIFHwFJj/Bc4WS+wm+spoIDp4j9Ok4EARBEIQneAGf73nP31CTg1GKVPztmTA6naJk7hg2B77XEfrxdZz54+IURUn7A3Jw+cat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xhstSZYka968edY555xjnXTSSVZDQ4Mlydprr72sjRs3Ol532WWXWZKsmpoa6/TTT7dOOukkq7y83Eomk9Zdd93l+lm33367lUwmrUQiYR199NHWWWedZTU3N1uSrCuuuCLP3xQA4u3CCy+0EomEJcmaPXu25360zwCQf88//7w1evRoS5K19957W//yL/9ive9977OmT59uJZNJx/433HCDJckqLy+3Tj75ZOv000+3ampqLEnW//zP/7h+xlNPPTW4z8KFC61zzz3XmjBhgiXJOuecc6x0Op3vrwkAsTLQp5VkHXjggda5555rHXPMMVZ5ebklyTr//PNt+6dSKeuMM86wJFnNzc3WWWedZR199NFWIpGwamtrrWeeecb1c7Jp0wGglJ1++umD48tD//NTqLGLpUuXWmPGjLEkWfvss4917rnnWrNmzbIkWYcffrjV3d093K8/YhDAh8N//ud/WpKsQw891Nq5c+fg9uuvv96SZB199NHFOzgAiLmbbrrJ+uQnP2m98cYbtu3r1q2zDjjgAEuS9aEPfcj23P33329JskaPHm0tWbJkcPtTTz1lVVZWWs3NzVZra6vtNVu3brUaGxstSdYdd9wxuH3Dhg3WnDlzLEnWww8/nPPvBwCl4IEHHrAkWZ/85Cd9A/i0zwCQf5s2bbLGjBlj1dbWWn/6058cz5sBnzfffNNKJpNWVVWV9dRTTw1uf+utt6zRo0db5eXl1tKlS22v6e3ttWbOnGlJsr73ve8Nbt+5c6d16KGHWpKsX/3qV7n9YgAQY319fda4ceMsSdZvf/tb23NvvPGGNWrUKEuS9dBDDw1uH0ho2GOPPawNGzYMbr/99tstSdacOXOsvr4+23tl06YDQKn79re/bX31q1+1/vznP1vr16+3qqqqfAP4hRy7OPzwwy1J1he+8IXBbX19fYMTuK666qqsv/dIQwAfNj09PVZTU5MlyXrxxRcdz++3336WJOv5558vwtEBQGl76qmnLElWVVWV1dPTM7j9fe97nyXJuuGGGxyv+cIXvmBJsq677jrb9u985zuWJOv00093vObOO++0JFnvf//7c/0VACD2Ojs7rdmzZ1vz58+3lixZ4hvAp30GgPz79Kc/bUmyfvzjH2e0/2WXXeZ47nvf+54lyfrc5z5n2/773//ekmQtWLDA8ZoXXnhhMIMIALDLP//5T0uSteeee7o+P9AX/s53vjO4bd68eZYk10zP0047zZJk3X777bbt2bTpADDSBAXwCzV28cwzz1iSrHHjxjky7Tds2GBVVFRYLS0tjslacFeWcc19lLQnn3xS27dv1+zZs3XAAQc4nj/77LMl7Vp3CACQWwsWLJAk9fT0aOvWrZKkrq4uPfTQQ5J2t8FDebXLA2vBub3m1FNPVXV1tR544AHWHgIAw9e//nWtWLFC//u//6uKigrP/WifASD/urq69Jvf/EZ1dXW6+OKLQ73Gr53Npm0+8MADNWvWLL322mt6++23Mzl8AChZVVVVofYbPXq0JGnlypVavHixampqdOqppzr2y6Z9ZpwaAIIVcuxi4DUf+MAHHNeJ8ePH68gjj1Rra6ueeOKJYXyjkYMAPmxeeeUVSbtuUN0MbH/11VcLdkwAMFKsWLFCklRRUaFRo0ZJkt566y319PRo7NixmjJliuM1Xu2yX3teWVmpffbZR93d3VqyZElOvwMAxNmrr76q66+/XhdffLGOPPJI331pnwEg/55//nnt3LlTBxxwgGpqanTvvffq8ssv12c+8xl9//vf17p162z7t7W1afXq1ZLkmpQwdepUjRkzRqtWrdKOHTsGtzMWAgCZmTVrlmbPnq233npLv/vd72zPLV68WL/5zW/U0tKiM844Q9LudnafffZxnSTr1s5m26YDAHYr5NgFfercIoAPm4FOkdsPeej2VatWFeyYAGCk+MEPfiBJOvnkkwdnKQa1y3V1dWpublZra6t27twpSdqxY4e2b9/u+zracwCwS6fTuuSSS9Tc3Kzvfve7gfvTPgNA/r3xxhuSpHHjxumDH/ygTjnlFN1www36v//3/+pf//VfNWfOHN1yyy2D+w+0zS0tLaqrq3N9T7d2lrEQAMhMMpnUzTffrObmZn34wx/WQQcdpPPOO0/HHnus9ttvP02ZMkUPPvjgYHJCNu1stm06AGC3Qo5d0KfOLQL4sGlvb5ck1dbWuj4/0Fka+CEDAHLjr3/9q37xi1+ooqJC//Vf/zW4Pahdlpxt88Br/F5Hew4Adv/zP/+j5557Ttdee+1gqU8/tM8AkH+tra2SpD//+c/629/+ph//+MfatGmT3n77bV155ZXq6urShRdeqJdffllSdm1zmNfRNgOA0+GHH65HH31Us2bN0osvvqjf//73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c/bdvv/976ujo0P//d//bQveS9LJJ5+sT3/601qzZo3uuecex2tnzpypb33rW4PBe0n63Oc+p5aWFv3jH/9Qb2/v4PYbbrhB3d3duuSSS2zBe2nX3+HEE09UVVWVJKmpqUnnnXeeNm/erD/96U+2fe+77z6tXr1ap556qiZNmjTs7z+wfMGYMWNcn7/77rt10UUX2f678sorXfe9+eabfUvhP/roo6GO6ec//7l++MMfav78+frd735n+/sCAAAAAEYWMvABAAAAADBceOGFrtvr6+ttj0877TTHPps2bdIrr7yiPfbYw3Xt9EQiocMPP1wvv/yyXnjhBZ100kl64YUX1NXVpYULF2r27NmO13zoQx/Sd77znSy/jd19990nSTrzzDNdnz/yyCP1wx/+UM8++6zOOOMM23OLFi1yZOWXl5dr5syZevHFF7V161ZNnDhRkvTAAw9Ikj71qU+FOq5LL71Uv/zlL3XjjTfqnHPOGdx+4403SpI++clPhnqf4XrllVd0880327ZNnz5d1113nWPf2bNne5bEl3ZVNNi4caPv5z3++OP6zGc+o9GjR+vuu+9WQ0NDdgcOAAAAACgJBPABAAAAADDcdNNNofabNm2aY9tAlv7SpUsD12sfyMBft26dpF2BYjczZswIdTxhDBzf5MmTQx3bUFOmTHHddyDo3NPTM7htzZo1kuQ6IcHNwQcfrAMPPFAPPPCAVq5cqZkzZ2rjxo26++67NWXKFJ188smh3ifI6NGjJbl/P0n6yle+oq985SuSpA0bNgxOSHBzxBFH+P5bWbRokW8Af9WqVTrrrLNkWZZuu+02zZo1K8Q3AAAAAACUMgL4AAAAAABkqbq62rEtnU5LkiZMmKCTTjrJ9/VeAftcGTgWt21eVQYGHHLIIY5t+S7tfumll+qTn/ykfvGLX+gb3/iGbr75ZvX19eljH/uYkslkTj5jv/32kyStWLFCO3bsUGNjY07eN1MdHR067bTTtHnzZv3kJz/RMcccU5TjAAAAAABECwF8AAAAAAByaCBLfcyYMaEz+QeyvFetWuX6vNf2gXL27e3tjudSqZQ2bNjgenzLly/X9ddfP5iNng9Tp07V0qVLtXz5cu2///6hXnP++efryiuv1K9+9StdffXV+vnPf66ysjJ9/OMfz9lxjRs3TgcddJBeeOEF/eEPf9All1ySs/cOy7IsfeQjH9Grr76qT3/60/r0pz9d8GMAAAAAAERTfqfOAwAAAAAwwkyZMkV77bWX3njjDS1ZsiTUaw466CDV1NTohRde0IoVKxzP33rrra6vGwj8u33Oww8/rL6+Psf2E044QZJ01113hTq2bB1//PGSpJ/97GehX1NXV6cLLrhA69at07/9279p6dKlOumkk1yXKhiOK6+8UpL0ta99TZs3b87pe4fxta99TXfddZeOOeYY/fCHPyz45wMAAAAAoosAPgAAAAAAOfbVr35V6XRaZ511ll5++WXH81u3btWNN944+Li+vl4f+chHlEql9PnPf15dXV2Dzz3//PP60Y9+5Po5Rx11lCTpN7/5zeDa9pK0cuVKfeELX3B9zRVXXKGamhpdeeWVuvPOOx3P9/T06Pbbb9c777wT5qt6+uIXv6jq6mrdeOON+v3vf297zrIs3X///erp6XG87tJLL5Uk3XDDDZKkT3ziE8M6DjfnnXeezj77bK1fv15HHHGEHnvsMdf9nn766Zx/9u9//3t94xvf0KxZs3TbbbepvJziiAAAAACA3bhLBAAAAAAgx84//3y9/vrr+ta3vqWDDjpI+++/v2bPni3LsrR8+XK9+uqrqq+vtwWn//u//1uPPvqo/vrXv2r27Nk66qij1Nraqoceekif+tSn9OMf/9jxObNnz9ZHP/pR/frXv9b++++vo446Sp2dnfrHP/6hU045RZ2dnY7y+3PmzNEtt9yi888/X2eddZbmzJmjefPmqa6uTmvXrtWLL76ojo4OvfTSS4PLAWRj7ty5+tWvfqWPfvSjOu+883TNNddov/320/bt2/Xaa69pzZo1am1tVVVVle11++67rw477DA99dRTmjBhgj7wgQ9kfQx+fvvb36qxsVG//OUvdfTRR2vGjBlasGCBamtrtXHjRi1ZskTvvPOOysvLdd555+Xsc//jP/5DkjRp0iRdccUVrvt8+ctf1l577ZWzzwQAAAAAxAcBfAAAAAAA8uCb3/ymTjrpJP3oRz/Sk08+qX/+859qbGzU5MmT9elPf1rnnHOObf9Ro0bpySef1Fe/+lXddddd+uMf/6iZM2fq29/+ti6//HLXAL4k3XjjjZo0aZJ++9vf6u9//7umTp2qf//3f9eXv/xlzZ492/U1p59+ul599VV973vf0/3336/7779fFRUVmjRpkj7wgQ/ozDPP1Pz584f9NzjvvPM0f/58XXvttXr44Yd1xx13qKWlRXvssYe++MUvqr6+3vV1xx57rJ566ildfPHFectQr6ys1C9+8Qtdeuml+vnPf65HH31UDz74oHp6etTS0qJ58+bpE5/4hD760Y9qxowZOfvcVColSXriiSf0xBNPuO5z0UUXEcAHAAAAgBEqYVmWVeyDAAAAAAAA/hKJhKZPn24rlV+KLMvSvHnztGTJEi1btkyzZs3K+D1mzJihVatWqZSGPG666SZdfPHFuuqqq3T11VcX+3AAAAAAAHlCBj4AAAAAAIiM22+/XW+99ZZOPfXUrIL3Q1100UWSdlUCOPnkk3NwdIX3ta99TatXr9ayZcuKfSgAAAAAgAIggA8AAAAAAIrukksuUVtbm/7yl78omUzq61//+rDf8+abb5Yk7bPPPrEN4P/5z3/WK6+8UuzDAAAAAAAUCCX0AQAAAACIgVIvoZ9IJFReXq499thD11xzjc4+++xiHxIAAAAAAAVHAB8AAAAAAAAAAAAAgAgoK/YBAAAAAAAAAAAAAAAAAvgAAAAAAAAAAAAAAEQCAXwAAAAAAAAAAAAAACKAAD4AAAAAAAAAAAAAABFAAB8AAAAAAAAAAAAAgAgggA8AAAAAAAAAAAAAQAQQwAcAAAAAAAAAAAAAIAII4AMAAAAAAAAAAAAAEAEE8AEAAAAAAAAAAAAAiID/DweDPwrdep+IAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df.tbtotal.plot(figsize=(25, 8), linewidth=3, xlabel=\"Frequency [GHz]\", ylabel=\"Brightness Temperature [K]\", grid=True)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/en/main/.doctrees/nbsphinx/notebook/tutorial.ipynb b/en/main/.doctrees/nbsphinx/notebook/tutorial.ipynb new file mode 100644 index 00000000..5a114f72 --- /dev/null +++ b/en/main/.doctrees/nbsphinx/notebook/tutorial.ipynb @@ -0,0 +1,908 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Generic example" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Import python package for plotting." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'divide': 'warn', 'over': 'warn', 'under': 'ignore', 'invalid': 'warn'}" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# This requires jupyter-matplotlib a.k.a. ipympl.\n", + "# ipympl can be install via pip or conda.\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "plt.rcParams.update({'font.size': 15})\n", + "import matplotlib.ticker as ticker\n", + "from matplotlib.ticker import ScalarFormatter\n", + "import numpy as np\n", + "np.seterr('raise')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Import pyrtlib package" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "atm = ['Tropical',\n", + " 'Midlatitude Summer',\n", + " 'Midlatitude Winter',\n", + " 'Subarctic Summer',\n", + " 'Subarctic Winter',\n", + " 'U.S. Standard']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL)\n", + "gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + "rh = mr2rh(p, t, gkg)[0] / 100\n", + "\n", + "mdl = 'R16'" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing upwelling brightness temperature calculation" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Default calculatoin consideres no cloud" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "ang = np.array([90.])\n", + "frq = np.arange(20, 201, 1)\n", + "nf = len(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Setup matplotlib plot" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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frtT9hmt89BDD6mmpkZf//rXddBBB2Vdh2PVO9p6PL711ltprzcVDod18MEH6/XXX9fKlSt16KGHdsCeo61s29bq1aslJfsLZPPxxx/rF7/4haqrq9WnTx+NGTNGEyZMkN/PMyE3aM05lmPVe9asWaOXXnpJoVBIZ511Vs71OE67XrZ7l1K5rhIQQIeYM2eOJGnChAmKRCIZr//1r39N+/d1112n008/XfPmzcvayA6d74Ybbkj791VXXaXrrrtO1113XWrZmjVrJCnrSVKSunXrph49emjr1q3auXOnunfv3nE7jFZryVMLjlXvaMvxuGPHDm3fvj3vdoMGDdLrr7+u1atXu2Lggt0WLFigL7/8Un379tU3v/nNrOssX748oxP2IYccokWLFmm//fbrjN1EHi09x3KsetN9990nY4wmTpyo3r1751yP47TrZbt3KZXrKmEntLsnnnhCd999t0KhkH71q1+lvTZixAjNnj1b7733nnbt2qW1a9fqvvvu08CBA7Vo0SLSqVxg3Lhx+utf/6pPP/1UtbW1+uijj3TjjTcqGAzq+uuvT50wJaWmZykvL8/5ft26dZMk7dy5s2N3HK2yceNGPffccwoEAjrnnHMyXudY9Z62HI9Np1jKtR3HsDutXbtWl19+uSRp1qxZGcH3qqoq/fznP9err76q6upqVVdX67nnntPRRx+td955RyeccEJq0IrO19pzLMeqNxUKvHOcukOue5eSua52dRMDFJcPPvjA9OzZ00gyf/jDH1q83YYNG0zv3r2NJPPKK6904B6irZ5++mkjyfTo0cPU1tYaY4y57777jCRzzDHH5Nxu4MCBRpJZv359Z+0qWuCWW24xksyECRNatR3HatfK19SqLcfj+vXrjSQjycTj8azb/OAHPzCSzH333bfnXwBZtbZZ2a5du8wRRxxhJJlTTz21VZ+VSCTM2LFjjSRz0003tXZX0UJtbUCX6xzLsdr1WvubrlixIjVuqq+vb9VncZx2nnz3LqVyXSVDAO1m/fr1mjBhgrZu3aorrrhCP/vZz1q8bf/+/XXBBRdIkp566qmO2kXsgRNOOEFHHHGEtm3bpn/961+SlEpnrK2tzbldTU2NJFEu4DJtbXLEsepebTkem6Yk59qOY9hd4vG4zjzzTL3++usaM2aM5s+f36rtA4GA/ud//keS9PTTT3fELmIP5DrHcqx6j3OdPfPMM7OWz+bDcdo5Ct27lMp1lYAA2sWWLVt0wgknaPXq1brgggs0e/bsVr+HUyO1cePG9t49tJPmv5HTZHDdunVZ16+pqdG2bdvUs2dP15z0IH3wwQf6z3/+o4qKCp166qmt3p5j1Z3acjxWVlaqqqoq73bO8qFDh7b3LqOVbNvWlClT9OSTT2rUqFFavHixysrKWv0+HMPulu334Vj1FsuydP/990uSzjvvvDa9B8dpx2rJvUupXFcJCGCP7dq1SxMnTtT777+vyZMn684775TP52v1+2zdulXS7roauE/z3+iAAw5QJBLR5s2btX79+oz133jjDUlyRcMU7OY0sZo8eXLeurhcOFbdqa3HozPVkvN6U/F4XO+++66i0Whqejt0nZ/+9KdasGCB9t9/fz399NPq0aNHm96HY9jdcv0+HKve8dxzz2njxo0aOnSoxo4d26b34DjtOC29dymV6yoBAeyRWCymU045Ra+99ppOPPFELViwQIFAoNXvY4zRww8/LCn7FB3oeps3b9ZLL70kafdvVFZWpuOOO06S9OCDD2Zss3DhQknS9773vU7aSxRijEmlGLelMSDHqnu19XicNGlS2utNPfbYY6qvr9d3vvMdRaPR9t5ltMK1116rO+64Q0OGDNGSJUu01157tfm9Fi1aJIlj2I3ynWM5Vr3DKRc477zz2vSQTOI47SituXcpmetq17YwgJclEglz2mmnGUlm7NixpqamJu/6X375pbn99tvNjh070pbv3LnTXHzxxUaS6devX8H3QcdZtmyZefjhh00ikUhbvmrVKnPMMccYSebkk09Oe23JkiVGkundu7dZuXJlavny5ctNJBIxPXr0MFu3bu2M3UcLvPjii0aSGThwoLEsK+s6HKvuVaipVVuOx+rqalNZWWkkmUWLFqWWf/HFF2bEiBFGklm6dGl7fxU0Ueh3/f3vf5867pr+rvnceuutZs2aNWnLbNs2//d//2eCwaDx+Xzm9ddf36P9Rm75ftO2nmM5VrtWS5sK1tTUmIqKCiPJfPjhh3nX5TjtXK29dzGmNK6rPmOM6cwABIrHnDlzUlMenXbaaaqsrMy63uzZs9WnTx99/vnnGjZsmCoqKnTkkUeqf//+2rx5s9544w1VV1erR48eeuyxx3TMMcd04rdAU/PmzdMFF1ygfv36afTo0erRo4dWr16tFStWqL6+Xl/72tf0/PPPZzyZuvzyyzVnzhyVl5fr+OOPV0NDg5YsWSJjjBYuXNimOnV0jIsuukh33nmnfv7zn+t3v/td1nU4Vt3j8ccfT5sC6bXXXpMxRt/4xjdSy6677rrU0wipbcfjokWL9P3vf1/GGI0fP169e/fWs88+q23btumKK67QLbfc0qHfs9S05nd98803NXr0aBlj9F//9V85U0ynTZumMWPGpP69zz77aN26dRo9erSGDRum+vp6vfPOO1q1apX8fr/mzJmjSy+9tOO+ZIlpzW+6J+dYjtXO05bzryTNnz9fP/jBD3TkkUfqtddey/sZHKedq7X3Lo6iv652SRgCRWHGjBmpaTXy/Vm1apUxxpgdO3aY//mf/zHHHnusGThwoIlEIqa8vNx87WtfM1deeaVZt25d134hmPfff99ccsklZvTo0aZv374mGAyaqqoqc/TRR5tbbrklNd1gNnPnzjWHH364KS8vNz169DATJkwwy5Yt68S9RyH19fWpqXXeeuutnOtxrLrH3LlzC55j586dm3W71h6PL7/8spkwYYLp0aOHKS8vN0cccYSZN29eB32z0taa33Xp0qUtutY2///gtttuM9/97nfNsGHDTLdu3Uw4HDZDhw415513nnnttdc6/0sXudb8pnt6juVY7RxtPf9OnDjRSDJz5swp+Bkcp52rtfcuTRXzdZUMAQAAAAAAShBNBQEAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAaCc+ny/vn/Hjx3f1LqIF9tlnn7Tfbfbs2TnX/fe//62LL75YI0eOVFVVlcLhsPbee299+9vf1k033aTVq1dnbDNv3jz5fD5NnTo1736MHz9ePp9PL7zwQpu/y6hRo9K+y8yZM9v8XgCA4hPs6h0AAKDYTJkyJevyAw88sJP3BHvC+R0PPvjgjNcaGhr0k5/8RHfffbekZBBh/Pjx6tatmzZv3qx///vfev755zVz5kzNmzdP5557bqfuu+Pkk0/WqFGj9Mknn2jZsmVdsg8AAPciIAAAQDubN29eV+8C2kG+3/G8887Tgw8+qP3331933nmnxo0bl/Z6IpHQ4sWLNWPGDH322WcdvKe5zZo1S1LyuxAQAAA0R0AAAACgFe6//349+OCD6t+/v15++WX17ds3Y51gMKjTTjtNkyZN0sqVK7tgLwEAKIweAgAAdLKpU6emasOffvppfetb31KPHj3k8/m0bdu21HpPPfWUJk2apL59+yoSiWjffffVFVdcoerq6qzvu2XLFl166aUaMGCAotGoDjroIM2ZM0fGGPl8Pu2zzz5p68+cOVM+ny/nk3Cnlj6bDz74QFOnTtXgwYMViUS099576+yzz9Z7772Xsa5TMz9z5kytWbNG5557rvr27auysjIdccQRWrx4cc7/Vh988IEuvPBC7bPPPopEItprr710zDHHaPbs2UokEpKSKf0+n08fffRR1vdYu3atAoGAhg0bJmNMzs9qKaenwC9/+cuswYCmwuFw1pKDtnL+38n3Z096DgAASgsZAgAAdJH58+frrrvu0hFHHKGJEyfq008/Td2AX3PNNfrtb3+rcDisI488Uv3799dbb72lW2+9Vf/4xz+0bNky7b333qn32rp1q8aMGaMPPvhA/fr10ymnnKItW7boqquu0ieffNKu+/3II4/o7LPPViwW06hRo3T00Udr7dq1euCBB7R48WI9+eSTGSn0kvT555/ryCOPVPfu3fXtb39ba9as0SuvvKJTTz1VTz75pE444YS09R988EGdf/75isViGjlypE477TRt375d7733nn7+859r2rRp6tGjhy6++GJddtlluuuuu3TzzTdnfO4999wj27Y1bdq0nAGOltq8ebNWrFghv9+vs846a4/eqy3GjBmTdbllWVqwYIEsy1IgEOjkvQIAeJYBAADtQpJpyaV1ypQpqXXvv//+jNcfeOABI8kcfPDB5uOPP04tt23bXH/99UaSOeuss9K2mT59upFkJkyYYGpqalLL//Wvf5mKigojyQwdOjRtmxkzZhhJZu7cuVn3c+jQoRnfZ9WqVaZbt26moqLCLFmyJO21J5980oRCITN48GATi8VSy+fOnZv6vldeeaWxLCv12q233mokmbFjx6a918qVK000GjXBYNDcd999aa/Ztm2efvppU19fb4wxZtu2baa8vNz07ds37XONMcayLDNkyBATCATM+vXrs37Plnxvx5IlS4wkM2LEiBa9VzbOf48pU6bkXe/YY481kszSpUsLvudll11mJJnvfve7af99m3/mjBkz2rbTAICiRMkAAADtLFcq9+eff5623qRJk7I+Zb7xxhslSQsWLNCIESPS3nfmzJkaNWqUFi5cqK+++kqSVFNTo3vvvVd+v1+33367ysvLU9scddRR+u///u92+25/+MMfVFNTo1//+tf6zne+k/bahAkTdMkll2jt2rV6/PHHM7YdNmyYbrrpJvn9u4cfl156qXr27KlXX31VDQ0NqeW33nqr6uvrNW3atIwO/T6fTyeccIIikYgkqaqqSmeffbY2b96sRx99NG3dZ555RmvWrNGkSZM0YMCAPf7+TrlGnz59sr6+ePFiTZ06Ne3PVVddlXXde++9N2/q/4svvtiifbrrrrt022236aCDDtL8+fPT/vsCAJAPJQMAALSzXNMOVlRUpP375JNPzljnyy+/1FtvvaX99tsva+25z+fTMcccozfffFMrVqzQiSeeqBUrVqiurk5HHXWUhg8fnrHNOeeco9/+9rdt/DbpnnnmGUnS5MmTs74+duxY3XbbbXrttdd02mmnpb02fvx4hcPhtGXBYFDDhg3TG2+8oerqavXv31+S9Oyzz0qSLr744hbt1/Tp03XPPffozjvv1Jlnnplafuedd0qSLrrooha9z5566623dO+996YtGzp0aKrvQFPDhw/PWQIgJXtIfPHFF3k/76WXXtJPfvIT9e7dW4sXL1b37t3btuMAgJJEQAAAgHbW0mkHhwwZkrHMySL4+OOPC9a7OxkCGzZskJS88cymeTPBPeHs38CBA1u0b00NGjQo67rOTWwsFkstW7t2rSRlDXBkc+SRR2r06NF69tlntWrVKg0bNkxffPGFFi9erEGDBmnChAktep9CevfuLSn795Oka6+9Vtdee60kadOmTakARzZjxozJ+//K+PHj8wYEVq9erdNPP13GGD344IPad999W/ANAADYjYAAAABdJBqNZiyzbVuS1K9fP5144ol5t88VAGgvzr5kW5YrC8LxjW98I2NZR6eyT58+XRdddJHuvvtu3XDDDbr33nsVj8f1ox/9qN0a7R166KGSpM8++0w7duxQZWVlu7xva9XU1Ojkk0/W5s2bdccdd+hb3/pWl+wHAMDbCAgAAOAizlP0Pn36tDjTwHkKvXr16qyv51rupO/v2rUr4zXLsrRp06as+/fpp5/qlltuST0t7wiDBw/Wxx9/rE8//VSjRo1q0TbnnnuurrrqKs2dO1czZ87UXXfdJb/frwsvvLDd9muvvfbS4YcfrhUrVuiBBx7QtGnT2u29W8oYo/PPP19vv/22LrnkEl1yySWdvg8AgOJA1xkAAFxk0KBBOvDAA/X+++9r5cqVLdrm8MMPV1lZmVasWKHPPvss4/X7778/63ZOICHb5yxdulTxeDxj+fHHHy9Jevjhh1u0b23lNCz885//3OJtunXrpvPOO08bNmzQ1VdfrY8//lgnnnhi1tKMPeE0Cbz++uu1efPmdn3vlrj++uv18MMP61vf+pZuu+22Tv98AEDxICAAAIDLXHfddbJtW6effrrefPPNjNerq6tTzfKkZLPC888/X5Zl6ac//anq6upSr73++uu6/fbbs37OuHHjJEl/+9vf0mZAWLVqlS677LKs21x55ZUqKyvTVVddpYceeijj9VgspoULF2rdunUt+ao5XX755YpGo7rzzjv197//Pe01Y4yWLFmS1nPAMX36dEnJWQok6cc//vEe7Uc2Z599ts444wxt3LhRY8aM0T//+c+s673yyivt/tl///vfdcMNN2jffffVgw8+qGCQZE8AQNtxFQEAwGXOPfdcvffee7rpppt0+OGHa9SoURo+fLiMMfr000/19ttvq6KiIu1m99e//rVefPFFPfHEExo+fLjGjRunrVu36vnnn9fFF1+sP/7xjxmfM3z4cP3whz/UX/7yF40aNUrjxo1TbW2tXn31VZ100kmqra3NKDcYMWKEFixYoHPPPVenn366RowYoZEjR6pbt25av3693njjDdXU1Og///lPziaCLbH//vtr7ty5+uEPf6izzz5bs2bN0qGHHqrt27fr3Xff1dq1a7V169bU1IOOQw45RN/85je1fPly9evXT9/73vfavA/53HfffaqsrNQ999yjY489Vvvss48OO+wwlZeX64svvtDKlSu1bt06BYNBnX322e32uf/7v/8rSRowYICuvPLKrOtcc801OvDAA9vtMwEAxYuAAAAALnTjjTfqxBNP1O23365ly5bpnXfeUWVlpQYOHKhLLrkkbWo9SerVq5eWLVum6667Tg8//LAeeeQRDRs2TL/5zW90xRVXZA0ISMlp+QYMGKD77rtPTz/9tAYPHqxf/OIXuuaaa3J2+D/llFP09ttv6/e//72WLFmiJUuWKBQKacCAAfre976nyZMn66CDDtrj/wZnn322DjroIN18881aunSpFi1apJ49e2q//fbT5ZdfnjGNo+O4447T8uXLdcEFF3TYE/RwOKy7775b06dP11133aUXX3xRzz33nGKxmHr27KmRI0fqxz/+sX74wx+26ywPlmVJkl5++WW9/PLLWdeZOnUqAQEAQIv4jDGmq3cCAAB0LJ/Pp6FDh6aVBhQjY4xGjhyplStX6pNPPmnTVHz77LOPVq9erWIaIs2bN08XXHCBZsyYoZkzZ3b17gAAXIIMAQAAUDQWLlyojz76SJMmTWpTMKCpqVOnSkpmKkyYMKEd9q7zXX/99VqzZo0++eSTrt4VAIALERAAAACeN23aNG3btk2PPfaYAoGAfvnLX+7xe957772SpIMPPtizAYF//OMfeuutt7p6NwAALkXJAAAAJaDYSwZ8Pp+CwaD2228/zZo1S2eccUZX7xIAAK5HQAAAAAAAgBLk7+odAAAAAAAAnY+AAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJej/B/Ir+dq7Feg3AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\n", + "ax.set_xlabel('Frequency [GHz]')\n", + "ax.set_ylabel('${T_B}$ [K]')\n", + "\n", + "rte = TbCloudRTE(z, p, t, rh, frq, ang)\n", + "rte.init_absmdl(mdl)\n", + "df = rte.execute()\n", + "\n", + "df = df.set_index(frq)\n", + "df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))\n", + "\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Print dataframe" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauice
20298.1099690.0286.9501330.00.1203440.0128550.00.0
21297.2456300.0286.3010430.00.1888080.0135240.00.0
22296.1535170.0285.0006630.00.2618480.0142590.00.0
23296.3402410.0285.6360220.00.2579130.0150660.00.0
24297.1584410.0286.7384960.00.2023080.0159540.00.0
...........................
196281.7270420.0281.2708400.03.6729750.0257840.00.0
197282.2817800.0281.7315010.03.4600000.0259560.00.0
198282.7477980.0282.1092770.03.2898480.0261290.00.0
199283.1397460.0282.4204500.03.1527100.0263020.00.0
200283.4695540.0282.6776930.03.0414240.0264760.00.0
\n", + "

181 rows × 8 columns

\n", + "
" + ], + "text/plain": [ + " tbtotal tbatm tmr tmrcld tauwet taudry tauliq tauice\n", + "20 298.109969 0.0 286.950133 0.0 0.120344 0.012855 0.0 0.0\n", + "21 297.245630 0.0 286.301043 0.0 0.188808 0.013524 0.0 0.0\n", + "22 296.153517 0.0 285.000663 0.0 0.261848 0.014259 0.0 0.0\n", + "23 296.340241 0.0 285.636022 0.0 0.257913 0.015066 0.0 0.0\n", + "24 297.158441 0.0 286.738496 0.0 0.202308 0.015954 0.0 0.0\n", + ".. ... ... ... ... ... ... ... ...\n", + "196 281.727042 0.0 281.270840 0.0 3.672975 0.025784 0.0 0.0\n", + "197 282.281780 0.0 281.731501 0.0 3.460000 0.025956 0.0 0.0\n", + "198 282.747798 0.0 282.109277 0.0 3.289848 0.026129 0.0 0.0\n", + "199 283.139746 0.0 282.420450 0.0 3.152710 0.026302 0.0 0.0\n", + "200 283.469554 0.0 282.677693 0.0 3.041424 0.026476 0.0 0.0\n", + "\n", + "[181 rows x 8 columns]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing calculation for R03 absorption model" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "mdl = 'R03'\n", + "rte.init_absmdl(mdl)\n", + "df_r03 = rte.execute()\n", + "df_r03 = df_r03.set_index(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Add brigthness temperature values as new column" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "df['delta'] = df.tbtotal - df_r03.tbtotal" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauicedelta
20298.1099690.0286.9501330.00.1203440.0128550.00.0-0.005362
21297.2456300.0286.3010430.00.1888080.0135240.00.0-0.055802
22296.1535170.0285.0006630.00.2618480.0142590.00.0-0.149566
23296.3402410.0285.6360220.00.2579130.0150660.00.0-0.084145
24297.1584410.0286.7384960.00.2023080.0159540.00.0-0.001669
..............................
196281.7270420.0281.2708400.03.6729750.0257840.00.0-0.166236
197282.2817800.0281.7315010.03.4600000.0259560.00.0-0.158865
198282.7477980.0282.1092770.03.2898480.0261290.00.0-0.152032
199283.1397460.0282.4204500.03.1527100.0263020.00.0-0.145768
200283.4695540.0282.6776930.03.0414240.0264760.00.0-0.140071
\n", + "

181 rows × 9 columns

\n", + "
" + ], + "text/plain": [ + " tbtotal tbatm tmr tmrcld tauwet taudry tauliq \\\n", + "20 298.109969 0.0 286.950133 0.0 0.120344 0.012855 0.0 \n", + "21 297.245630 0.0 286.301043 0.0 0.188808 0.013524 0.0 \n", + "22 296.153517 0.0 285.000663 0.0 0.261848 0.014259 0.0 \n", + "23 296.340241 0.0 285.636022 0.0 0.257913 0.015066 0.0 \n", + "24 297.158441 0.0 286.738496 0.0 0.202308 0.015954 0.0 \n", + ".. ... ... ... ... ... ... ... \n", + "196 281.727042 0.0 281.270840 0.0 3.672975 0.025784 0.0 \n", + "197 282.281780 0.0 281.731501 0.0 3.460000 0.025956 0.0 \n", + "198 282.747798 0.0 282.109277 0.0 3.289848 0.026129 0.0 \n", + "199 283.139746 0.0 282.420450 0.0 3.152710 0.026302 0.0 \n", + "200 283.469554 0.0 282.677693 0.0 3.041424 0.026476 0.0 \n", + "\n", + " tauice delta \n", + "20 0.0 -0.005362 \n", + "21 0.0 -0.055802 \n", + "22 0.0 -0.149566 \n", + "23 0.0 -0.084145 \n", + "24 0.0 -0.001669 \n", + ".. ... ... \n", + "196 0.0 -0.166236 \n", + "197 0.0 -0.158865 \n", + "198 0.0 -0.152032 \n", + "199 0.0 -0.145768 \n", + "200 0.0 -0.140071 \n", + "\n", + "[181 rows x 9 columns]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Difference between R16 and R03 brightness temperature" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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UlKMiIgIIyQkxPjggw+qbDObzcaKFSuMgoICwzAMIzMz04iKijKaNGlS5X4NwzBKS0uNNm3aGMHBwcaRI0dqfJz2PG6LlStXGpKMTp062XWumlj+PSZMmGBzv0svvdSQZHz77bd1nvPhhx82JBlXX311lX/fs+9z+vTp9QsaAOCXKFsAAMCDaltO/scff1TZb9SoUTX+ev3CCy9IkubPn69OnTpVOe+MGTPUp08fLVy4UKdOnZIk5eXl6d1331VQUJDeeOMNRUVFWY8ZMGCA/vSnPzntsf3jH/9QXl6eXnrpJV155ZVVtg0fPlz333+/Dh8+rKVLl1Y7tn379nrxxRcVFFTxUeXBBx9Uo0aNtGHDBhUVFVlvf+2111RQUKBJkyZVm1RgMpk0dOhQhYeHS5Li4+N100036eTJk/riiy+q7Pv111/r0KFDGjVqlFq2bNngx28pGUlKSqpx++LFizVx4sQqfx599NEa93333Xdtlh989913dsX01ltv6fXXX1f37t314YcfVvn3BQDAFsoWAADwoNpGNcbExFT5+7XXXlttn7S0NG3btk3nnHNOjbXyJpNJAwcO1NatW7V582YNGzZMmzdv1pkzZzRgwAB17Nix2jE333yzXnnllXo+mqq+/vprSdLYsWNr3H7JJZfo9ddf18aNGzVmzJgq24YMGaKwsLAqt4WEhKh9+/basmWL0tPT1aJFC0nSqlWrJEn33XefXXFNnjxZ77zzjubMmaPrr7/eevucOXMkSffee69d52mobdu26d13361yW9u2ba19Eirr2LFjrWUIUlnPixMnTti8v++//14PPPCAGjdurMWLFys2NrZ+gQMAAhLJAwAAPMjeUY1t2rSpdptldcKePXvqrM+3rDw4evSopLIvqTU5u1FiQ1jia9WqlV2xVZacnFzjvpYvvIWFhdbbDh8+LEk1JkNq0r9/f/Xt21erVq3SgQMH1L59e504cUKLFy9WcnKyhg8fbtd56tK4cWNJNT8+SfrrX/+qv/71r5Kk48ePW5MhNRk0aJDN/1eGDBliM3lw8OBBjRs3ToZhaMGCBerQoYMdjwAAgAokDwAA8AERERHVbjObzZKk5s2ba9iwYTaPry1Z4CyWWGq6rbbVFRYXXHBBtdtcvZx+8uTJuvfee/X222/r+eef17vvvqvi4mLdddddTmsi2KtXL0nS/v37lZ2drbi4OKec11F5eXm69tprdfLkSf3rX//SZZdd5pE4AAC+jeQBAAA+yvLrfFJSkt0rGCy/bh88eLDG7bXdbikhyM3NrbattLRUx48frzG+ffv2adasWdZf4V2hdevW2rNnj/bt26c+ffrYdcwtt9yiRx99VHPnztWMGTP01ltvKSgoSHfffbfT4mratKn69eunzZs365NPPtGkSZOcdm57GYah22+/Xdu3b9f999+v+++/3+0xAAD8A11yAADwUcnJyeratat+++03paSk2HVMv379FBkZqc2bN2v//v3Vtn/00Uc1HmdJOtR0P99++62Ki4ur3X7VVVdJkj777DO7YqsvSzPG//znP3YfEx0drdtuu01Hjx7V448/rj179mjYsGE1loc0hKUB4tNPP62TJ0869dz2ePrpp/XZZ5/psssu0+uvv+72+wcA+A+SBwAA+LBp06bJbDZr3Lhx2rp1a7Xt6enp1kaAUlkjxttvv12lpaV66KGHdObMGeu2TZs26Y033qjxfgYPHixJev/996tMgjhw4IAefvjhGo+ZOnWqIiMj9eijj+rTTz+ttr2wsFALFy5UamqqPQ+1Vo888ogiIiI0Z84cffzxx1W2GYahlStXVumRYDF58mRJZdMaJOmee+5pUBw1uemmmzR+/HgdO3ZMgwYN0tq1a2vc78cff3T6fX/88cd6/vnn1aFDBy1YsEAhISw4BQDUH+8iAAD4sFtuuUW//vqrXnzxRfXr1099+vRRx44dZRiG9u3bp+3btysmJqbKF+OXXnpJ3333nZYtW6aOHTtq8ODBysjI0DfffKP77rtP//znP6vdT8eOHXXHHXfovffeU58+fTR48GDl5+drw4YNGjlypPLz86uVPHTq1Enz58/XLbfconHjxqlTp07q1q2boqOjdeTIEW3ZskV5eXn65Zdfam2QaI/OnTtr7ty5uuOOO3TTTTfp2WefVa9evZSVlaWdO3fq8OHDysjIsI5rtOjZs6cuvvhirV+/Xs2bN9c111xT7xhs+eCDDxQXF6d33nlHl156qdq1a6fevXsrKipKJ06cUEpKilJTUxUSEqKbbrrJaff7v//7v5Kkli1baurUqTXu8+STT6pr165Ou08AgP8ieQAAgI974YUXNGzYML3xxhtat26dduzYobi4OLVq1Ur3339/lXGEkpSYmKh169Zp2rRp+uyzz/T555+rffv2evnllzVlypQakwdS2SjDli1b6oMPPtCKFSvUunVrPfXUU3ryySdrnXRw3XXXafv27fr73/+ulStXauXKlQoNDVXLli11zTXXaOzYserevXuD/w1uuukmde/eXX/729/07bffatGiRWrUqJHOOeccPfLII9VGX1pcfvnlWr9+ve68806X/TIfFhamt99+W5MnT9Zbb72l7777TqtXr1ZhYaEaNWqkbt266Z577tEdd9zh1GkXpaWlkqQffvhBP/zwQ437TJw4keQBAMAuJsMwDE8HAQAAvIfJZFLbtm2rlCf4I8Mw1K1bN6WkpGjv3r31Gl/Yrl07HTx4UP70cWrevHm68847NX36dM2YMcPT4QAAvAQrDwAAQEBauHChdu/erVGjRtUrcVDZxIkTJZWtgBg+fLgTonO/p59+WocOHdLevXs9HQoAwAuRPAAAAAFl0qRJyszM1JIlSxQcHKxnnnmmwed89913JUk9evTw2eTBl19+qW3btnk6DACAl6JsAQAAVOHvZQsmk0khISE655xz9Oyzz2r8+PGeDgkAAK9H8gAAAAAAANgU5OkAAAAAAACAdyN5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbPr/LwGCGERGHg0AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\n", + "ax.set_xlabel('Frequency [GHz]')\n", + "ax.set_ylabel('$\\Delta {T_B}$ [K]')\n", + "df.delta.plot(ax=ax, figsize=(12,8), label='$\\Delta {T_B}$ (R16-R03)')\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing downwelling brightness temperature calculation" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABAQAAAKzCAYAAACJeN8YAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAADA60lEQVR4nOzdd3ib9dn28VOWLMmWPGI7cfbehCQEMiABEjYECITVMpqwWijQMlrG0/JAgT7wUqClBTrYu0DCKGGUhARSsiAJZO89PeLYkm1t3e8fjg1ploesW+P7OY4cLbJv6xJtZOnUdV0/i2EYhgAAAAAAQFrJMLsAAAAAAAAQfwQCAAAAAACkIQIBAAAAAADSEIEAAAAAAABpiEAAAAAAAIA0RCAAAAAAAEAaIhAAAAAAACANEQgAAAAAAJCGbGYXkOqi0ah27typnJwcWSwWs8sBAAAAAKQ4wzDk9XrVsWNHZWQcug+AQKCV7dy5U126dDG7DAAAAABAmtm2bZs6d+58yK8TCLSynJwcSXX/Q+Tm5ppcDQAAAAAg1Xk8HnXp0qXh/eihEAi0svoxgdzcXAIBAAAAAEDcHGlsnaWCAAAAAACkIQIBAAAAAADSEIEAAAAAAABpiEAAAAAAAIA0RCAAAAAAAEAaIhAAAAAAACANEQgAAAAAAJCGCAQAAAAAAEhDBAIAAAAAAKQhAgEAAAAAANIQgQAAAAAAAGmIQAAAAAAAgDREIAAAAAAAQBoiEAAAAAAAIA0RCAAAAAAAkIYIBAAAAAAASENJEwg88cQTmjhxovr06aO8vDw5HA5169ZNP/nJT7Rs2bJDXvfSSy9pxIgRcrvdKigo0DnnnKO5c+ce9r7mzJmjc845RwUFBXK73RoxYoReeeWVWD8kAAAAAABMYzEMwzC7iMYoKipSTU2NBg8erE6dOkmSVqxYobVr1yozM1Pvvvuuzj333P2uufXWW/Xkk08qKytLZ5xxhvx+vz7//HMZhqEpU6boggsuOOB+pk6dqssuu0zRaFQnnXSSioqK9Pnnn6uyslJ33HGHHnvssSbV7fF4lJeXp6qqKuXm5jb78QMAAAAA0BiNfR+aNIHAnDlzdOyxx8rpdO53+zPPPKObbrpJxcXF2r59u2w2myRpxowZOv3001VYWKh58+apT58+kqR58+Zp7Nixys7O1qZNm5Sfn9/wsyoqKtSjRw95PB5NnTpVEydOlCSVlJRozJgxWr9+vWbNmqWxY8c2um4CAQAAAABAPDX2fWjSjAyMHj36gDBAkn7+85+rV69eKikp0cqVKxtuf+KJJyRJv/3tbxvCAEk6/vjjdcMNN6iyslLPP//8fj/rueeek8fj0YQJExrCAEkqLi7Wo48+Kkl6/PHHY/q4AAAAAAAwQ9IEAoeTmZkpSbLb7ZIkn8+nmTNnSpIuvvjiA76//rYPP/xwv9s/+uijQ14zfvx4OZ1OzZgxQ36/P3bFAwAAAABggqQPBF599VWtWbNGffr0aegEWLNmjQKBgNq2bavOnTsfcM2wYcMkSUuXLt3v9iVLluz39R+y2+0aNGiQ/H6/1q5dG+uHAQAAAABAXNnMLqCp/vCHP2jFihWqqanRqlWrtGLFCnXs2FFvvvmmrFarJGnr1q2SdNAwQJJcLpfy8/O1d+9eeb1e5eTkyOPxqKqq6rDXde7cWQsXLtSWLVs0ePDgVnh0AAAAAADER9IFAv/+97/1+eefN/xzt27d9Morr+jYY49tuK26ulqSlJ2dfcif43K5VFlZ2RAI1F9zuOtcLpckyev1HvLnBgIBBQKBhn/2eDxHeEQAAAAAAMRf0gUCM2bMkCRVVlZq2bJleuCBB3TyySfroYce0m9+8xuTq5Mefvhh/e53vzO7DAAAAABJqLw6oLW7vdpR6dPOSr92Vfm0s8qvan9IvlBU/lBEvmBE/nBE0aghQ5L2nRtnSDIMY99/SoYMGT/4mn54vpxFskiyWCSLLHU3Ndy275Yf/vMP/vu+L8maYVGW3aqsTKuy7VZl2a3Kz7KrXa5D7XKcKs51qDjXqb7FOWqb42jdf3FolqQLBOrl5+frxBNP1Mcff6zjjz9e9957r8444wwNHz5cbrdbklRbW3vI62tqaiRJOTk5ktRwTf11Bzua4b+vOZh77rlHt99+e8M/ezwedenSpQmPDEBzGYahipqgSr0BlVfv++MNam9tUB5/SF5/WB5fSB5/WIFwRKGwoVA0qlAkqkjEkNNe98ssO9OmLLtVxbkOndCrSCf0LlS7nANPOQEAAGgpfyiiRVv2ava6Mv1nbblW7vq+w7jIbVfH/Cy1z3WquK274c13lt0qh82qDMuBb+jr/vP7N+0HvJG37AsLfhAcSN+HCdL+YcLBwgXt+95w1JBvX0DhC0ZUG4qosjaoNSVelXr88vjDDd/fPtepQZ3ydHSnPA3tmq9RPQvksFlb4d8omiJpA4F6mZmZuuyyy7Ro0SJ9+OGHGj58uLp27SpJ2r59+0GvqampUWVlpdq0adPw5j43N7fhnMbt27dr4MCBB1xX//O6det2yHocDoccDtIvIB4Mw9DG8hot2Fihrzft0debKrSzav9TQFx2q9q47MrLylSO06ZcZ6a6F7rkzMxQpjVDdluGMq0WZVgs8ociqq3/hRaMaOn2Kr29sO7vfd9it07oVaQrRnZVn+JDh4IAAACNsbcmqL/MXK83v94qXyiiIrdDJ/Up0vUn9dDQLm3UIc8pZ2Zyv2H2BSPa7fFr1S6Plu2o0vIdVXpx7iZVzggpx2nTmUe113lDOuqEXoXKtCb9vvuklPSBgCQVFRVJksrKyiRJ/fr1k8PhUFlZmXbs2KFOnTrt9/2LFy+WpAMWAw4ZMkSzZ8/W4sWLDwgEQqGQli9fLqfTqb59+7bWQwHQCIZh6N8rduvBaau0o9KnDIs0qFOezjm6g4Z1a6P2eU61dTtU5HYoy96yX6Tl1QHN3bBHc9aV65Plu/T2wm16/JIhOvvoDjF6NAAAIJ34QxG9MGeT/vrFBhmGdP1JPXX2oPbq3z6n4VP8VJFlt6pHkUs9ilw6Z99rJ8MwtLakWh8t3akPl+7SlEXb1SY7Uxce01k/O7mninPpyoynlAgEvvzyS0lSr169JElZWVk65ZRT9Mknn+idd97Rrbfeut/3T5kyRZJ03nnn7Xf7+PHjNXv2bE2ZMkVXXnnlfl+bNm2a/H6/zj33XDmd/J8UMMu2ilrd968Vmrm6VKf2b6f/m3i0ju3WRm5H6zydFbkdOn9IR50/pKNqg2H9espS3fj6Yv3i1D669dQ+yshIrV/cAACgdRiGoXcX79Bjn61RmTegK0d10y2n9FahO726iy0Wi/q1z1G/9v102+l9tWKnRx8u2ak3v96q1xds0eUju+rGk3upHcFAXFgM44eTIIlpzpw58nq9OuOMM5SR8X0rSSgU0t/+9jfdeuutcjgcWrNmTcO8/owZM3T66aersLBQ8+bNU58+fSRJ8+bN07hx45SVlaVNmzYpPz+/4edVVFSoR48e8ng8mjp1qiZOnChJKi0t1ejRo7V+/XrNmjVLY8eObXTtHo+nYRThYHsJADROKBLVc//ZpCc/X6s22Xbdf/5ROmNgcdyTdMMw9MwXG/TYZ2t0+oBiPXHZ0FYLIwAAQGqIRg397sMVenneFo0/uoN+fWY/dS9ymV1WQvH4Q3rxq8167quNCoajumJkN900rlfaBSax0tj3oUkRCLz00ku6+uqrVVRUpGOPPVaFhYUqLy/XsmXLtGvXLjmdTr388su69NJL97vu1ltv1ZNPPqns7GydfvrpCgaDmj59ugzD0JQpU3TBBRcccF9Tp07VpZdeKsMwNHbsWBUWFmrGjBmqrKzU7bffrscff7xJtRMIALFx3csLNWtNqa4+obtuO72vXCa/CZ+xskS3vvWdOuY79c+fHq8Cl93UegAAQGIKhCO6/e0l+mTZLj10wdG6fGRXs0tKaFW+kF6cs0nPf7VJmdYM3X/+UTpvcIeUG6dobSkVCGzatEnPPfecvvzyS23cuFHl5eWy2+3q3r27TjnlFP3iF79Q7969D3rtSy+9pKeeekqrVq2S3W7XqFGjdO+99+qEE0445P3NmTNHDz30kObPn69gMKiBAwfq5ptv1qRJk5pcO4EA0HJfrCnV5Be/0VOXH6NzB3c0u5wG60q8Ov+pObppXC/dfEofs8sBAAAJpjoQ1s9eXahvNu/Vn380VGcNYgdRY5V5A7r/Xyv00bJdOm1AsX5/4SD2CzRBSgUCyYxAAGiZcCSqs5/8jwpcdv3zp6MSLh3+9TtLNG/jHs3+9Tj2CQAAgAbl1QFNfvFrbSmv1bOTjtOonoVml5SUPl2+W/d+sFz+UES/HT9Alx7XJeFeDyaixr4P5WwHAAntza+3an1Zte49d2BCPvn/aERXbd/r01fry80uBQAAJIjaYFhXPrdAJZ6A3vrZ8YQBLXDWoPaacdvJOvOo9rpr6jLd/Ma38vpDZpeVMggEACSsKl9IT0xfq4uHddagTnlml3NQw7rmq19xjt78eqvZpQAAgARgGIbueXeZtlbU6vXrRmpgR7qEWyovO1OPXTJEf71imL5cW6bzn5qj1bs9ZpeVEggEACSsp2auUyAc1a/P7Gd2KYdksVj0oxFdNH1licq8AbPLAQAAJnt57mZ98N1O/b+LBqtvcY7Z5aSUs4/uoA9vGSOHLUMXPD1HUxZtN7ukpEcgACAhbS6v0UtzNyfFObQXHtNJ1gwLv5QAAEhzi7ZU6KGPVuma0T103pDEWYScSnoUufT+TaN1/pCO+tU7S3T31KUKhCNml5W0CAQAJKSHP1mltm6Hrj+pp9mlHFF+tl3nHN1Bb32zVdEoe1oBAEhHZd6Afv76Yh3TNV/3nNPf7HJSmjPTqkcvHqJHLxqsdxfv0OXPLqBTs5kIBAAknEVbKvTvFSW66+z+cmZazS6nUX48oqs276nV/I17zC4FAADEWTgS1S1vLlYkKj19+TBlWnmbFQ+XDu+if/5slLZW1GrCU19p+Y4qs0tKOvw/FUDC+XrTXuU4bTo/iVrthndvo15tXXrzm21mlwIAAOLs6Vkb9M3mvXr68mMSftQx1Qzr2kb/unm0Ct0OXfy3ufpo6S6zS0oqBAIAEs7uKp865Wcl5DGDh2KxWPTjEV317+W7taealjUAANLFhrJqPT1rvW44uadGcrygKTrkZemdG47XGQPb66Y3FuuJz9YwxtlIBAIAEs6uKr/a5yVfuj5xWGdJ0ruLd5hcCQAAiAfDMPTb95arQ75Tt5zSx+xy0poz06onfzRUvz6zn/4ya71ufH2RagJhs8tKeAQCABLObo9fHZIwEChw2XXmoPZ6ayFjAwAApIN3F+/QvI179OCEQUmz9yiVWSwW3TSut/5x1XH6al25LvrrXG2rqDW7rIRGIAAg4eyq8qt9bpbZZTTL6F6F2lBWrXAkanYpAACgFe2tCer3H6/S+UM66qS+bc0uBz9w+sBivXfTaNUGI5rw9BwtYOnzIREIAEgowXBU5dWBpOwQkOq6BAxDqvSFzC4FAAC0okc+Wa1QJKrfnjvA7FJwEH2Lc/TBTaPVrzhHVzy3QG8s2Gp2SQmJQABAQinx+GUYSsodAlJdICDVfWoAAABS09ebKvTWwm2666z+apeTnK9Z0kEbl12vXDtCl4/sqv95b5n+94PlCtHFuR+b2QUAwA/t9vglSR3zk/OXa30gUEEgAABASgqGo/rNe8t0TNd8XT6iq9nl4AgyrRl6YMIg9Wufo/s+WKH1pdV6+vJharPvNVu6o0MAQELZVVUXCLTPS84dAgQCAACktjcWbNGGsmr9/oKjlZGRPEckp7srRnbTa9eN1KpdHk14eo7WlnjNLikhEAgASCi7q3zKcdjkdiRnA1OuM1MZFqmilkAAAIBU4/WH9OeZ63XxsZ01sGOu2eWgiUb1LNS/bh6jbLtVFz49RzNWlphdkukIBAAklF1V/qTdHyBJGRkWtcm2s0MASCOvzd+i/6wrM7sMAHHwj9kbVRMI67bT+5pdCpqpS0G2pt54gsb0KdL1ry7UM1+sl2EYZpdlGgIBAAlld5IHAlLd2EBFDacMAOkgEI7o4Y9Xaeqi7WaXAqCVlXr8eu4/m3TNmB7qkKSjjajjctj01yuO1S3jeuvRT9fol//8Tv5QxOyyTEEgACCh7KzyJ+2Rg/XauOyqqAmYXQaAOPh6U4VqghGVV9MVBKS6P85YJ0dmhm44uZfZpSAGMjIsuv2Mfnrq8mP02crduvTv87Srymd2WXFHIAAgoeyu8iXtQsF6Bdl2VdTSIQCkg5mrSyVJ5dWEgEAqW19arbcXbtPN43orLyvT7HIQQ+cO7qgpN5ygcm9A4//8lWauTq+9AgQCABJGKBJVqTegjkneIVDgZocAkC5mrS5VhkXaw995IKU9+ulqdchz6qrju5ldClrBoE55mvaLE3VMl3xd89JC/e7DFQqE02OEgEAAQMIo8wZkGEr+HQLZdo4dBNLAxrJqbd5Tq5P7tlVFTVDRaPoupQJS2cLNFfpsZYl+dUY/OWxWs8tBKylw2fXcpON0/3kD9fr8rbrw6blaX1ptdlmtjkAAQMLYVeWXpKRf1FO3Q4BAAEh1M1eXym7L0HlDOioSNVTpY1QISDWGYeiRT1brqI65On9IR7PLQSuzWCyaPLqH3rvpBAXCEZ33l6/0yrzNKR34EggASBi79wUCSd8h4MqULxSRL5gerWZAupq1plQn9CpUl4JsSdIe9ggAKWf2unIt3LJXvzqznzIyLGaXgzg5qmOePrxljCYO66T//WCFfvzsfG0urzG7rFZBIAAgYeyq8inbblWu02Z2KS1S4HJIkvbW0iUApCqvP6SvN1XolP7tVOSu+zvPSQNAajEMQ3+cvlbHdM3X2L5tzS4HcZZtt+n3Fx6tN64bqZ1VPp315Gw995+NiqRYtwCBAICEsavKr/Z5TlksyZ3AF2TbJYmxASCFfbWuXKGIoXH92qnQXfd3npMGgNTyxdoyfbetUred1jfpX5ug+U7oXaR/33qSfjS8q37/8Spd8re5KvX6zS4rZggEACSM3VV+dUjycQFJauOqO46IQABIXTNXl6pPO7e6FGQrx2GT3ZrByACQQgzD0J+mr9Wx3droxD5FZpcDk2Xbbbr//KP09s+OV/s8p9rs+/AnFSR3Xy6AlLKryqeebd1ml9FiBa66XxKMDACpKRo1NGtNmS4a1klS3RKqIredoweBFDJzdamWbK/Sa9eOpDsADYZ3L9Dw7gVmlxFTdAgASBip0iGQbbfJmZlBhwCQopbvrFJ5dUDj+rdruK3Q7WBkAEgRhmHoTzPWaXj3Nhrdu9DscoBWRSAAICFEooZKvIGkP2GgXkE2Rw8CqWrm6lLlOm06tlubhtsK3XaWCgIpYsaqUi3bUaXbTmd3AFIfgQCAhFBeHVAkaqREh4AktXERCACpatbqUp3Ut60yrd+/jCpyO9ghAKSAuu6AtRrZo0An9GJ3AFIfgQCAhLCrqm5ba/vcLJMriY0Cl50dAkAKKvMGtGR7lU75wbiARIcAkCo+W1miFTs9uu30vmaXAsQFgQCAhLCr0idJKdMhUOCyaw9vDoCU88WaUlks0sn/dSZ5kYsOASDZGYahP3++TqN6FmhUT3YHID0QCABICLuq/HJmZig/O9PsUmKiTTYdAkAq2rynRp3ys1Todux3e1GOXTXBiHzBiEmVAWipmatLtWKnR784tY/ZpQBxQyAAICHs9vjVIS8rZZb3FLjsqqgJmV0GgBir9oeV4zwwuCx01QUEnDQAJCfDMPTnmet1XLc2Op7uAKQRAgEACWFXlV/tc1NjXED6foeAYRhmlwIghryBsHIctgNuL3TbJUl7WCYKJKX/rCvXkm2VuuXUPinz4QTQGAQCABLC7ipfyuwPkOoCgUjUkMcXNrsUADFU7Q/L7TwwEGi7b4SAPQJA8jEMQ3+ZuU5DOufppD6cLID0QiAAICHsqvKrfQoFAm2y6z4trGCPAJBSqgNhuQ/SIdDGVfd3npEBIPnM31ihbzbv1S/oDkAaIhAAYLpo1FCJx59yHQKSVEH7MJBSqgNhuQ4SCGRaM9QmO5OjB4Ek9OfP1+mojrkHHCcKpAMCAQCm21MTVChiqH1eltmlxEx9ILCXQABIKXVLBQ8MBCSp0O3guFEgySzcXKF5G/follN60x2AtEQgAMB0u6p8kpRSHQL1xyfSIQCkFu8hRgYkqdBlZ2QASDJ/nrle/YpzdMbA9maXApiCQACA6XZV+SWlViCQac1QrtPGDgEgxVT7Dx0IFOU4tKeGQABIFku2VWr22jLddEpvZWTQHYD0RCAAwHS7q/yyWzMa2uxTRYHLzsgAkELCkah8ochBTxmQpCKXnZEBIIn8ZeY69Wzr0vijO5hdCmAaAgEApqs/YSDVZvcKXHbOJAdSSE0gIknKOdTIgNvByACQJJbvqNKMVaW65ZTestIdgDRGIADAdLurfCl15GA9OgSA1FIdDEvSoTsE3A5V1AQViRrxLAtAM/z583XqXpit8wZ3NLsUwFQEAgBMt6sqtY4crNcm284OASCFVPv3BQKH7BCwK2pIlfy9BxLayp0efbayRDeN6y2blbdDSG/8DQBgut0ef2p2CLjpEABSSXUgJEmHPHawyF23B4VRISCxPTVrnboUZOmCYzqZXQpgOgIBAKYyDEO7qvzqmJdldikxV5DNDgEglXgbOgQyD/r1IrdDklTuZY8AkKjW7Pbq42W7ddPY3sqkOwAgEABgrr21IQXDURXnpl6HQBuXXV5/WKFI1OxSAMRAdeDwOwQK6wMBgkAgYT01a7065Wdp4rDOZpcCJAQCAQCmqtn3Ajv3EC+wk1lBdl378F7miYGUUO0Py2KRsjOtB/26y26Vw5ahPZw0ACSk9aXVmrZ0p24c20t2G2+DAIlAAIDJfKG6Y7yc9oO/wE5mBfvmiffWhEyuBEAsVAfCctttyjjEEWUWi0VFHD0IJKynZ61XcY5TlxxHdwBQj0AAgKl8wX2BgC0FA4Hs+gVjvDkAUoHXHz7kuEC9Irdde6rpCgISzabyGn3w3Q7dOLaXHCn4mgNoLgIBAKby7+sQyErBDoE2LjoEgFRSHQgf8sjBeoVuh8oJBICE8/Ss9SpyO3TZ8C5mlwIkFAIBAKaqHxnIOsRMbjLLddpky7Cogh0CQEqo9oflOkIgUOS2MzIAJJite2r13rc79LOTe8mZgq83gJYgEABgKn8KBwIWi0VtXHZV8GkhkBKqA2HlHGFkoNDtYEwISDDPfLFebbIzdfmIrmaXAiQcAgEApvp+qWBqPh0VZNs5ZQBIEd7GjAy42CEAJJLte2s1ZdF2/fSknik5ngi0VGq+AgeQNHzBqCwWyW5NzaejNq5MVXAmOZASqv2hIwYCbXMcqg1GVBsMx6kqAIfz1y82KDcrU1eM7GZ2KUBCSs1X4ACShj8UUVamVRbLwY/xSnaFLgcdAkCKqA4c+ZSBQpdDkugSABLAzkqf3l64Tded2OOI+z+AdEUgAMBUvn2BQKpq48rkjQGQIqr9YeUc8ZSButNFWCwImO/vX26Qy2HTT47vbnYpQMIiEABgKn8oktIbf9khAKQObyM6BIrcdR0CHD0ImKvE49eb32zTtaN7HHHUB0hnBAIATOULRuTMTN2nojYuuypqgjIMw+xSALSAYRiqCYTldmQe9vvaZGfKYpH20CEAmOpvX26Qw5ahSaO7m10KkNBS91U4gKTgC0VSeutvgcuuQDiq2mDE7FIAtIAvFFHU0BE7BGzWDLXJtmsPy0QB0+yu8uv1BVt13ZieynUePsQD0h2BAABT+UPRlN4hUOCqmyfmpAEguVX7604NONIOAUkqcttV5qVDADDLU7PWKdtu1TVjuptdCpDwCAQAmCrVdwi0ya4LBNgjACQ3b6AuEDhSh4BUd9IAHQKAObbvrdVb32zTT0/qqRy6A4AjIhAAYKpUP2WADgEgNdR3CDRmOVlRjoMdAoBJ/vL5euU6MzWJkwWARiEQAGCquqWCBAIAElt1oPGBQKHLzrGDgAk2l9doyuLtunFsL7k4WQBoFAIBAKbyh1O7Q8CZaVW23UogACQ5b/0OgUaMDBS57drDsYNA3P3583Uqctt15ahuZpcCJA0CAQCm8gVT+5QBqW6PADsEgORW3yHQmE8di9wOVdQGFYly3CgQL+tLq/X+dzt007jeKd15CMQagQAAU6X6UkFJKnTbVVETMrsMAC1Q7Q/JYctQpvXIL50K3Q4ZBstEgXj604y1ap/r1GXDu5hdCpBUCAQAmCrVlwpKUl5Wpqp8vDEAkll1INyocQGpLgSUxB4BIE5W7/Zo2tJduuXUPnLYUvs1BRBrBAIATFW3VDC1n4qyMq3yBSNmlwGgBbyBcKMWCkpSW7dDklTuJQgE4uEPn65Rt8JsXXxsZ7NLAZJOar8KB5Dw/OFoyu8QyLJbVUsgACS1an9Y7kZ2CORm1Z197vEzKgS0tm82V+jz1aW644x+jRrpAbA//tYAME0kaigYjqb8DoFsu1X+EIEAkMyqm9AhUP991ftOJgDQOgzD0P/7ZLWO6pirc4/uYHY5QFIiEABgmvo3yam+Q8CZSYcAkOyq/WG5HZmN+l5rhkUuu5UOAaCVzVxdqoVb9urOs/orI8NidjlAUiIQAGAaX5oEAtl2a8NjBZCcvE1YKihJbqet4ahCALEXiRp69NM1GtWzQCf1KTK7HCBpEQgAME39or1UHxnIymRkAEh2dR0CjQ8EcpyZjAwAreiD73ZoTYlXd57VXxYL3QFAcxEIADBNILyvQ8Ce2k9FWXYbIwNAkqsONH6poFS3R8BLIAC0ikA4oiemr9WZRxVrWNc2ZpcDJLXUfhUOIKH5glFJ6dEh4AtFZBiG2aUAaKaaJiwVlKQcRgaAVvPGgq3aWenTr87oZ3YpQNIjEABgmnTZIZBlz5BhSIFw1OxSADRTU3cI5Dht8hIIADHn9Yf01Mz1umhYZ/UpzjG7HCDpEQgAME19IJD6HQJ1byJ8jA0ASSkQjigYjjapQ6BuZIBTBoBY+9uXG1QdCOu20/uaXQqQEggEAJim/g1y6ncI1D0+ThoAklNNoO7vbtMCAZYKArG2s9Kn5/6zSdef2FMd87PMLgdICQQCAEzz/VLB1A4Esvc9PhYLAsmp/o19U3cIsFQQiK3H/r1GOU6bbhjby+xSgJRBIADANPUdAg5baj8V1XdAcPQgkJy8gbrW/6acMsBSQSC2lm2v0rvf7tBtp/dtUjgH4PBS+1U4gITmC0WUlWlN+fOD63ck0CEAJKfmdAi4HXWBQDTK6SJASxmGod9/vFJ92rl12XFdzC4HSCkEAgBM4wtF5MxM/aehbHYIAEmt/pP+pnUIZNZdG6RLAGipGatKNX9jhf7nnAGyWVP/dQMQT/yNAmAafyia8gsFpe9HBny8MQCSUn0gkOPIbPQ19eEBiwWBlglFonr4k1Ua07tIY/u1NbscIOUQCAAwjT8UkTPFFwpKnDIAJDuvPyxrhqVJHU059YEAewSAFnnz663aVF6j/zlnQMqPGAJmSIpAoLa2Vu+//76uvfZa9evXT06nUy6XS0OGDNEDDzyg6urqA665//77ZbFYDvnn7rvvPuT9zZkzR+ecc44KCgrkdrs1YsQIvfLKK635EIG05AtG0qJDwGHLkMUi+YJRs0sB0AzVgbDcDluT3ozk7Ns34PWHWqssIOVV1gb1xPS1uuTYzhrYMdfscoCUlBQrOt944w1df/31kqQBAwbo/PPPl8fj0dy5c3XffffpzTff1Jdffql27dodcO3o0aPVu3fvA24/9thjD3pfU6dO1WWXXaZoNKqTTjpJRUVF+vzzzzVp0iQtXbpUjz32WGwfHJDG6pcKpjqLxaLsTKtqGRkAklK1P9zkreb1IwMcPQg03x+nr1UkYujXZ/Y3uxQgZSVFIJCZmamf/vSnuvXWWzVgwICG23ft2qXx48fr22+/1a233qo33njjgGuvu+46TZ48uVH3U1FRoWuuuUaRSERTp07VxIkTJUklJSUaM2aMHn/8cZ177rkaO3ZsLB4WkPbqlgqmfiAg1Y0NcOwgkJyqA+GGEYDGql8qSCAANM/q3R69On+L/uecAWqb4zC7HCBlJcXIwKRJk/T3v/99vzBAkjp06KCnn35akvTuu+8qGAy26H6ee+45eTweTZgwoSEMkKTi4mI9+uijkqTHH3+8RfcB4HuBNAoEnJlWjh0EkpS3GR0C2ZlWWSzsEACawzAM3f+vFepe5NJPju9udjlASkuKQOBwhgwZIkkKBALas2dPi37WRx99JEm6+OKLD/ja+PHj5XQ6NWPGDPn9/hbdD4A6vlCkYeFeqsu2W1kqCCSp6kCoSUcOSlJGhkVuu41TBoBm+GT5bs3fWKH/PXeg7Lakf7sCJLSkGBk4nI0bN0qqGysoKCg44OszZ87Ud999J7/fr86dO+vss88+5P6AJUuWSJKGDRt2wNfsdrsGDRqkhQsXau3atRo8eHAMHwWQnnzBiLLy0+MXfVamVT46BICkVB0Iq022vcnX5ThtLBUEmsgXjOj3H63SaQPaaWy/A/eDAYitpA8EnnzySUnSWWedJYfjwPmiV199db9/vvfee3XRRRfppZdektvtbrjd4/GoqqpKktS5c+eD3lfnzp21cOFCbdmyhUAAiAFfKJo2IwNZdAgASavaH1bXguwmX+d22uRlZABokr99uUFl3oBev26k2aUAaSGpP5r7+OOP9fzzzyszM1MPPvjgfl/r3bu3HnvsMa1YsULV1dXatm2bXn/9dXXq1ElTp07VVVddtd/3//Dowuzsg//Sd7lckiSv13vImgKBgDwez35/ABycP01OGZDoEACSWf2xg03ldjAyADTF9r21+tuXG3TdiT3UvchldjlAWkjaDoHVq1fryiuvlGEY+sMf/tCwS6DelVdeud8/u1wuXX755Ro3bpyOPvpovf/++5o/f75GjRoV07oefvhh/e53v4vpzwRSlT+Nlgpm223y0DoMJKXqQFiuZgQCOc5MThkAmuB3H65Ufnambhp34JHhAFpHUnYI7NixQ2eddZb27t2r22+/Xb/85S8bfW2HDh109dVXS5I+/fTThtt/OD5QW1t70GtramokSTk5OYf8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n+uM2/nxRfveULJHIPG98NUmPfjRSk0Y0lGPXjxEdlvSfp4GAAdIume0iooKnXHGGdqyZYuuvvpqPfbYYwd8T9eudce+bN++/aA/o6amRpWVlWrTpk3Dm/vc3Fzl5eUd9rr627t169bixwGkI18oIidLBSXV7RCQxNGDQIIo8QTULk7jApJU6LJLksqrGRlIVNGooYc/XqUHpq3UT0/sqScuHUoYACDlJNWzWnV1tc4++2ytXLlSEydO1LPPPnvQJL9fv35yOBwqKyvTjh07Dvj64sWLJUmDBw/e7/b6sYP6r/9QKBTS8uXL5XQ61bdv31g8HCCthCJRhaMGIwP71I8M1AQJBIBEUOLxqzhOCwUlyZlpVa7TpjJGBhJSMBzVHe8s0T/+s1H/e+5A3XPOAGVkxKd7BADiKWkCgUAgoAkTJujrr7/WmWeeqTfffFNW68HfWGRlZemUU06RJL3zzjsHfH3KlCmSpPPOO2+/28ePH7/f139o2rRp8vv9Ou200+R0xu8FA5Aq/Pu26RMI1GkIBNghACSEUm8groGAVDc2wMhA4qnyhTT5xa81belO/flHx+iaMT3MLgkAWk1SBAKRSEQ//vGPNXPmTJ144ol69913ZbfbD3vN7bffLkl66KGHtG7duobb582bp7///e/Kz8/Xtddeu9811113nXJzc/XBBx/o3Xffbbi9tLRUd955pyTpjjvuiNXDAtJK/fF6WfakeNppddmZjAwAicIwDO2u8qtdnBfFFbkddAgkmO17a3XxX+dqxU6PXr12pM4b0tHskgCgVSXFUsGnnnpK7733niSpqKhIP//5zw/6fY899piKiookSaeddpp++ctf6sknn9TQoUN1+umnKxgMavr06TIMQy+++KLy8/P3u76goEAvvPCCLr30Ul188cUaO3asCgsLNWPGDFVWVur222/X2LFjW/OhAinLH6w7a9tpo0NAkjIyLMq2W1kqCCQAbyAsXyii9nnx7RDoWpCttSWHPsoY8bV0e6WueWmhsuwZmnrjCerdzn3kiwAgySVFILB3796G/14fDBzM/fff3xAISNKf/vQnDR06VE899ZSmT58uu92u0047Tffee69OOOGEg/6Miy66SLNnz9ZDDz2k+fPnKxgMauDAgbr55ps1adKk2D0oIM3UdwiwVPB7LodNtUFGBgCzlXr8khT3kYF+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FBcXo7S0VN/hEDVopqamGh0m8CQmBIiIiIiISCvMzc219iBDRPXHSQWJiIiIiIiIjBATAkRERERERERGiAkBIiIiIiIiIiPEhAARERERERGREWJCgIiIiIiIiMgIMSFAREREREREZISYECAiIiIiIiIyQmb6DqCxE0IAAHJzc/UcCRERERERERmD8ufP8ufRyjAhoGV5eXkAAC8vLz1HQkRERERERMYkLy8PDg4OlW6XiOpSBlQvZWVluHv3Luzs7CCRSPQdjl7k5ubCy8sLKSkpsLe313c4pCG8r40P72njxPva+PCeNk68r40P72nj05DuqRACeXl5cHd3h4lJ5TMFsIeAlpmYmMDT01PfYRgEe3t7g284VHu8r40P72njxPva+PCeNk68r40P72nj01DuaVU9A8pxUkEiIiIiIiIiI8SEABEREREREZERYkKAtE4qlWLp0qWQSqX6DoU0iPe18eE9bZx4Xxsf3tPGife18eE9bXwa4z3lpIJERERERERERog9BIiIiIiIiIiMEBMCREREREREREaICQEiIiIiIiIiI8SEANVZQUEBdu3ahVdeeQVt2rSBpaUlbGxs0KVLFyxbtgz5+fkV6oSEhEAikVT6WrhwoR6uhJ4UFBRU5T36/fff1dYLDw9Hz549YWtrCycnJ4wYMQLR0dE6jp7UOXbsWJX3tPy1bNkyZR22VcMQExODFStWYNy4cfD09FS+/9WpS3s8ffo0RowYAScnJ9ja2qJnz5748ccfNXUp9ITa3NeysjKcPHkSCxYsQLdu3WBnZwepVAo/Pz/MmjULCQkJautV1+579+6tzUs0OrVtq/X5jGVb1Y3a3tOafM8OGjRIpQ7bqW7V5dmlXGP+XjXTdwDUcG3evBmvvvoqAKBdu3YYNWoUcnNzER0djaVLl2LLli04fvw4mjRpUqFu37590bJlywrl3bp103rcVDPjx4+Hra1thXIPD48KZXPmzEFoaCisrKwwdOhQKBQKREZG4tChQ9i+fTvGjBmjg4ipMm5ubpg6darabaWlpfj5558BAP369auwnW1Vvz7++GPs3r27VnXq0h4jIiIwYcIElJWVoX///nBxccGRI0cwdepUXLt2DStXrtTQFRFQu/saHx+P/v37A3jclgcNGgRTU1OcP38e3333HTZv3oz9+/cjMDBQbX0/Pz+12/z8/Op+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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\n", + "ax.set_xlabel('Frequency [GHz]')\n", + "ax.set_ylabel('${T_B}$ [K]')\n", + "\n", + "rte.satellite = False\n", + "df_from_ground = rte.execute()\n", + "\n", + "df_from_ground = df_from_ground.set_index(frq)\n", + "df_from_ground.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauice
2038.10058036.106575287.7826560.00.1196540.0127480.00.0
2153.60281551.750325287.5497230.00.1832710.0133960.00.0
2268.63475466.918654286.8727030.00.2496770.0141070.00.0
2368.96656067.268116287.3807480.00.2498660.0148870.00.0
2458.51827656.754139288.0835800.00.2016700.0157450.00.0
...........................
196290.020626290.013156297.0812770.03.6974740.0251500.00.0
197288.152409288.143310296.8592640.03.4869090.0253150.00.0
198286.380803286.370182296.6714820.03.3189050.0254810.00.0
199284.742167284.730168296.5136090.03.1836920.0256480.00.0
200283.256287283.243076296.3814890.03.0741470.0258150.00.0
\n", + "

181 rows × 8 columns

\n", + "
" + ], + "text/plain": [ + " tbtotal tbatm tmr tmrcld tauwet taudry tauliq \\\n", + "20 38.100580 36.106575 287.782656 0.0 0.119654 0.012748 0.0 \n", + "21 53.602815 51.750325 287.549723 0.0 0.183271 0.013396 0.0 \n", + "22 68.634754 66.918654 286.872703 0.0 0.249677 0.014107 0.0 \n", + "23 68.966560 67.268116 287.380748 0.0 0.249866 0.014887 0.0 \n", + "24 58.518276 56.754139 288.083580 0.0 0.201670 0.015745 0.0 \n", + ".. ... ... ... ... ... ... ... \n", + "196 290.020626 290.013156 297.081277 0.0 3.697474 0.025150 0.0 \n", + "197 288.152409 288.143310 296.859264 0.0 3.486909 0.025315 0.0 \n", + "198 286.380803 286.370182 296.671482 0.0 3.318905 0.025481 0.0 \n", + "199 284.742167 284.730168 296.513609 0.0 3.183692 0.025648 0.0 \n", + "200 283.256287 283.243076 296.381489 0.0 3.074147 0.025815 0.0 \n", + "\n", + " tauice \n", + "20 0.0 \n", + "21 0.0 \n", + "22 0.0 \n", + "23 0.0 \n", + "24 0.0 \n", + ".. ... \n", + "196 0.0 \n", + "197 0.0 \n", + "198 0.0 \n", + "199 0.0 \n", + "200 0.0 \n", + "\n", + "[181 rows x 8 columns]" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_from_ground" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.10" + }, + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + } + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/en/main/.doctrees/nbsphinx/notebook/uncertainty.ipynb b/en/main/.doctrees/nbsphinx/notebook/uncertainty.ipynb new file mode 100644 index 00000000..3ec5a125 --- /dev/null +++ b/en/main/.doctrees/nbsphinx/notebook/uncertainty.ipynb @@ -0,0 +1,376 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Calculate uncertainty on BTs (notebook)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import python package for plotting." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'divide': 'warn', 'over': 'warn', 'under': 'ignore', 'invalid': 'warn'}" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# This requires jupyter-matplotlib a.k.a. ipympl.\n", + "# ipympl can be install via pip or conda.\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "plt.rcParams.update({'font.size': 15})\n", + "import matplotlib.ticker as ticker\n", + "from matplotlib.ticker import ScalarFormatter\n", + "import numpy as np\n", + "import pandas as pd\n", + "np.seterr('raise')" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import pyrtlib package and tools" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter\n", + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.absorption_model import O2AbsModel\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies, constants\n", + "from pyrtlib.uncertainty import covariance_matrix" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "atm = ['Tropical',\n", + " 'Midlatitude Summer',\n", + " 'Midlatitude Winter',\n", + " 'Subarctic Summer',\n", + " 'Subarctic Winter',\n", + " 'U.S. Standard']" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Define spectroscopic parameters to be perturbed and them uncertainties" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "O2_parameters = {\n", + " 'O2S': range(1),\n", + " 'X05': [None],\n", + " 'WB300': [None],\n", + " 'O2gamma': range(34),\n", + " 'Y300': range(34),\n", + " 'O2_V': range(34)\n", + "}\n", + "HO2_parameters = {\n", + " 'con_Cf_factr': [None],\n", + " 'con_Cs_factr': [None],\n", + " 'gamma_a': range(1),\n", + " 'S': range(1),\n", + " 'con_Xf': [None],\n", + " 'SR': range(1),\n", + " 'con_Xs': [None]\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "parameters = {**SpectroscopicParameter.oxygen_parameters('R18'),\n", + " **SpectroscopicParameter.water_parameters('R17')}\n", + "\n", + "parameters['O2S'].uncer = parameters['O2S'].value / 100\n", + "parameters['X05'].uncer = 0.05\n", + "parameters['WB300'].uncer = 0.05\n", + "parameters['O2gamma'].uncer[0: 34] = np.array([0.05, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.01131274, 0.01131274, 0.01453087, 0.01453087,\n", + " 0.01789881, 0.01789881, 0.02116733, 0.02134575, 0.02476584,\n", + " 0.02476584, 0.02839177, 0.02839177, 0.03203582])\n", + "parameters['Y300'].uncer[0: 34] = np.array([0.01, 0.00404133, 0.00502581, 0.00786035, 0.00820458,\n", + " 0.00935381, 0.00809901, 0.0078214, 0.00544132, 0.00460658,\n", + " 0.00225117, 0.00209907, 0.0039399, 0.00484963, 0.00799499,\n", + " 0.00878031, 0.01202685, 0.01261821, 0.01577055, 0.01615187,\n", + " 0.01907464, 0.01926978, 0.0218633, 0.02188287, 0.02416567,\n", + " 0.02401716, 0.02604178, 0.02575469, 0.02762271, 0.02720018,\n", + " 0.02897909, 0.02843003, 0.03019027, 0.02951218])\n", + "parameters['O2_V'].uncer[0: 34] = np.array([0.00288243, 0.04655306, 0.03914166, 0.06110402, 0.0494057,\n", + " 0.05728709, 0.06444876, 0.07279906, 0.06385863, 0.07007177,\n", + " 0.05963384, 0.06373721, 0.11789158, 0.12307213, 0.10151855,\n", + " 0.10427449, 0.08328802, 0.08486523, 0.10130857, 0.10244286,\n", + " 0.15750036, 0.15814743, 0.24421784, 0.24343211, 0.3084326,\n", + " 0.30576201, 0.34568212, 0.34107696, 0.36123446, 0.35507902,\n", + " 0.37305309, 0.36544166, 0.38490936, 0.37583782])\n", + "\n", + "parameters['gamma_a'].uncer[0] = 0.039\n", + "parameters['S'].uncer[0] = 0.043 * 1e-25 * constants('light')[0] * 100\n", + "parameters['con_Xf'].uncer = 0.8\n", + "parameters['SR'].uncer[0] = 0.0014\n", + "parameters['con_Xs'].uncer = 0.6\n", + "\n", + "SpectroscopicParameter.set_parameters(parameters)\n" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)\n", + "\n", + "gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + "rh = mr2rh(p, t, gkg)[0] / 100" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Use frequencies set of HATPRO Radiometer" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "frq = sorted(list(set().union(get_frequencies('hat'), np.arange(20, 61, 0.5).tolist())))" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Performing uncertainty of brightness temperature" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Default calculatoin consideres no cloud and no perturbation" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters)\n", + "rte.satellite = False\n", + "rte.init_absmdl('R17')\n", + "O2AbsModel.model = 'R18'\n", + "O2AbsModel.set_ll()\n", + "df = rte.execute()" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "df_out = pd.DataFrame()\n", + "df_out['freq'] = frq\n", + "df_out['tb'] = df.tbtotal" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate Jacobian matrix" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$Cov(T_{b}) = K_{p} \\times Cov(p) \\times K_{p}^T$$" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "cnt = 0\n", + "for k, v in (O2_parameters | HO2_parameters).items():\n", + " for i in v:\n", + " amu_p = AbsModUncertainty.parameters_perturbation([k], 'max', index=i)\n", + " rte.set_amu(amu_p)\n", + " df = rte.execute()\n", + " if k =='O2S':\n", + " parameters[k].uncer = parameters[k].uncer / parameters[k].value * 100\n", + " if k in ['con_Cf_factr', 'con_Cs_factr']:\n", + " parameters[k].uncer = parameters[k[0:6]].value * parameters[k].uncer\n", + " field_name = 'p_{}{}'.format(k, '_' + str(i) if i else '')\n", + " delta_tb = df.tbtotal.values - df_out.tb.values\n", + " if i is not None:\n", + " o = pd.Series(delta_tb / parameters[k].uncer[i], name=field_name)\n", + " else:\n", + " o = pd.Series(delta_tb / parameters[k].uncer, name=field_name)\n", + " df_out = pd.concat([df_out, o], axis=1)\n", + " cnt += 1" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate uncertainty (sigma) for BT\n", + "Using covariance matrix by [Cimini-2018](https://doi.org/10.5194/acp-18-15231-2018) which identifies 111 parameters (6 for water vapor and 105 for oxygen)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "params = df_out.copy()\n", + "\n", + "Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq', 'p_con_Xs'])].values\n", + "covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_111), Kp.T)\n", + "sigma_tb = np.sqrt(np.diag(covtb))\n", + "params['sigma_tb'] = sigma_tb" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Using covariance matrix by [Cimini-2019](https://doi.org/10.5194/gmd-12-1833-2019) which add the ${n_{CS}}$ parameter for water vapour " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq'])].values\n", + "covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_112), Kp.T)\n", + "sigma_tb = np.sqrt(np.diag(covtb))\n", + "params['sigma_tb_with_con_Xs'] = sigma_tb" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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HDp0CHCP2HzllVeanEpExDcV3t5u9erVrF69utj0WbNm6WS0mmmbi0hFqQAgfm/atGme24WJVKc9e/YA0LBhQ0aOHMmTTz6J3W43OZWIiG9atmyZ2RFOONrmIlJRGgRQRERERERE5ASgQQBFRERERERETgC6BKCauVwuDhw4QEREhAYKExERERERkRpnGAYZGRk0btwYq7X03/lVAKhmBw4cICEhwewYIiIiIiIicoLZt28fTZs2LXW6CgDVLCIiAnBv+MjISJPTlM7hcLB48WJGjBihQc18kNrH96mNfJvax7epfXyf2si3qX18m9rH99XFNkpPTychIcFzPloaFQCqWWG3/8jISJ8vAISGhhIZGVlndvq6RO3j+9RGvk3t49vUPr5PbeTb1D6+Te3j++pyG5V3GboGARQRERERERE5AagAICIiIiIiInICUAFARERERERE5ASgAoCIiIiIiIjICUAFABEREREREZETgAoAIiIiIiIiIicA3QbQRzgcDpxOZ62uLyAggNzc3Fpdr3hH7eP71Ea+Te1TnNVqxW63l3t7IBEREam7VAAwWXp6OklJSeTl5dXqeg3DoGHDhuzbt09fBn2Q2sf3qY18m9qnZDabjdDQUOrXr09gYKDZcURERKSWqQBgovT0dBITEwkPDycuLq5Wf5lxuVxkZmYSHh6O1aorQXyN2sf3qY18m9qnKMMwcDqd5OTkkJaWxu7du2natCmhoaFmRxMREZFapAKAiZKSkggPD6dp06a1/guVy+UiPz+f4OBgfTn2QWof36c28m1qn5KFh4cTGxvLnj17SEpKolmzZmZHEhERkVqkb0UmcTgc5OXlERUVpe6pIiJSa2w2G7GxsWRlZVFQUGB2HBEREalFKgCYpHBQKrvdbnISERE50QQFBQGoACAiInKCUQHAZPr1X0REaps+e0RERE5MKgCIiIiIiIiInABUABARERERERE5AagAICIiIiIiInICUAFAfILFYqnQfy1atDA7Mrt378ZisTB48OBaX7evbAMREREREfEfAWYHEAG49NJLiz22cuVKdu7cSZcuXejatWuRaXFxcbWUTEREREREpG5QAUB8wuzZs4s9NmXKFHbu3Mm4ceOYMWNGrWcqT5MmTfjzzz8JDQ01O4qIiIiIiEi5VAAQqSS73U67du3MjiEiIiIiIuIVjQEgfmf27NlYLBZmzJjBX3/9xQUXXECDBg2wWq18/fXXnvkWLFjA8OHDiYmJITg4mLZt23L33Xdz7NixYsucMWMGFouF2bNn8+uvv3LGGWcQHR1NZGQkw4cP55dffin2nPLGAPj111+54IILaNKkCUFBQTRq1Ihhw4bx9ttvF5lv48aN3HnnnXTv3p34+HiCgoJo3bo1t912GwcOHKjKphIREREREfFQAUD81vbt2+nZsydr1qxhyJAhDB8+HLvdDsATTzzBqFGjWLZsGd27d2fcuHFkZ2fz1FNP0bt3bw4fPlziMn/++WdOO+009u/fz5lnnknbtm35/vvvGTRoEIsXL/Y624svvki/fv349NNPadSoERMmTKBjx45s3ryZO+64o8i8Tz75JM8//zwAAwYM4KyzzsIwDGbOnEmvXr1UBBARERERkWqhSwB8kGEY5DicNboOl8tFTr6TgPwCrNaq14FC7DYsFks1JPPeJ598wg033MALL7yAzWbzPL527Vruv/9+wsPD+f777+nduzcAeXl5XHzxxXz++edMnTqVL774otgy3377be677z4eeeQRz+t5/fXXuf766z1jEoSEhJSZa/ny5dxyyy2Eh4czZ84chg0b5plWUFBQrJBwzTXX8OKLL9KgQYMi8z344IM88cQT3H///cycObPiG0hEREREROQ4KgD4oByHk/YPLjI7RoVsffgMQgNrd3eKj4/nqaeeKnLyD/DKK6/gcrm48cYbPSf/AEFBQbzyyit8++23zJkzh3379pGQkFDkuc2bN/dcDlDouuuu47333uPXX3/lyy+/5KKLLioz15NPPolhGNx3331FTv4BAgICOOuss4o8NmTIkGLLsFqt3Hnnnbz//vvMmzev7A0hIiIiUlvyMuDABohsAjEtwGor9yki4jtUABC/dfrpp5c4Av+KFSsAuPDCC4tNq1+/PiNGjGDu3LmsWrWKCy64oMj0c845h4CA4ofFpEmT+PXXX1mxYkWZBYCCggKWLVsGwNVXX+31a0lOTmbevHls3ryZY8eOUVBQgMPhwOFwkJycTEpKCrGxsV4vT0RERKTa7VkNX10FafvcfweEQP12UL8D1D8FGrSH+u0hvAHUcs9QEfGOCgA+KMRuY+vDZ9ToOlwuFxnpGURERlTbJQC1rVmzZiU+XnjNfIsWLUqcXvh4YmJisWnNmzcv8znlXY+fnJxMTk4OsbGxxMTElDlvoY8//pirr76azMzMUufJyMhQAUBERETM4SyA5c/A8qfBcJETEIXdlUtAQY67N8CBDUXnD4mFBv8rCnSZBE26mZNbRIpRAcAHWSyWGu9O73K5KAi0ERoYUC0FADMEBwdX6nm1PVZBWfbs2cOUKVMAeOGFFxg1apTnrgHp6emcddZZrF69GsMwzA0qIiIiJ6Zje+HLq2Cf+45Ic1yn8UDmJWQTTHPLYdpa9tHBto/OQQdoyz7qFxzAmpMCu1fA7hUYf36DZdpmsOm0Q8QX6EiUOqdx48bs2rWLPXv20L59+2LTd+/eDUCTJk2KTduzZ0+Jyyx8vHHjxmWuOy4ujpCQEFJSUjh27BjR0dFlzr9gwQLy8/O5/fbbufnmmz2Pu1wuAP75558yny8iIiJSY3atgE8uhLw0cq2h3Jl7GfNc/enVMpbwoAB2J0fwY0oTFjp6gcP9lCDyaW1JpK1lH/fbPyA24yDs+B7ajjT3tYgIoNsASh00cOBAwN21/t+OHj3KokWLsFgs9O/fv9j0r776Cqez+B0YPvnkE8B9m76y2Gw2Bg8eDMBbb71VbtbU1FQAmjZtWmzaqlWrSr1doYiIiEiNW3Qv5KWxxdqW4TmPMZ8B3HNmOz65qg8zp/Tkx9sG8+cjI1l51xA+vLI3j4/vxJTT2tG0fR+21h/FV073d7KsX2eb+zpExEMFAKlzpk6ditVq5aWXXmLdunWex/Pz87nxxhvJyclhwoQJxe4AAO7eAQ899FCRx9566y1Wr15NgwYNOOecc8pd/1133YXFYuGxxx5j6dKlRaYVFBSwYMECz98nn3wyAB988AFZWVmexxMTE7ntttu8e8EiIiIi1e3oX3BoEw7DxoXZt+KIaM6nV/fhmkGtsFr//3JKm9VC05hQ+reOY3LvZtxz1im8eXEPFk47jd3N3N+bgncthswjZr0SETmOLgGQOqdXr1488sgj3HffffTt25fBgwcTFxfHqlWr2LdvH23atOHVV18t8blXXXUVTz75JF999RWdO3dmx44drF27FrvdzuzZs0u868C/DRo0iKeffpo777yToUOH0qNHD9q0aUNSUhK///47eXl5HDt2DIAxY8bQoUMH1q1bR+vWrenfvz+5ubksXbqUjh070q9fP37++efq3DwiIiIi5dv8BQDLXZ3p1KYlL0zsSr3woAotYmD/gWz4tDWnWnfg3PgxtgE3l/8kEalR6gEgddK9997Lt99+y6BBg1i7di1fffUVQUFB3Hnnnfz66680aNCgxOf169ePn376iYYNG/Ltt9/y559/MmzYMJYtW8bIkd5fu3b77bfz008/MX78ePbu3csXX3zB5s2b6dSpE//5z3888wUGBrJixQquu+46goODPeu84YYbmDNnDna7vcrbQkRERKRCDIP8DZ8CMN/ozyuTulX45B9gaLv6zA84HYCcX2eDBjUWMZ16AIjPmj17NrNnzy72+JQpUzwj55dl1KhRjBo1qsLr7du3L99//32587Vo0aLM0fkHDhzoGY+gLDExMbz22mtFHnO5XKSnp/Pjjz+WeJcG3RVAREREasyBDQSm7ybHCCSv1RlEhVbuBwm7zUroqeeRvW4W4Rn/wP61kNCrmsOKSEWoB4CIiIiIiHgYf3wOwBJXd0ac2qpKyxrf9xQWuHoDkP3rrCpnE5GqUQFARERERETcXE4KNn0JwHf05/RTSr5s0lst48L4o/4YAAL+/BryMquaUESqQAUAERERERFx27MKe/ZhjhlhBLYbQVhQ1a8Y7tp/JP+4GhLozMa1+atqCCkilaUCgAgwY8YMDMPwamwBERERkbrK+MM9+v93zl6c1bV5tSzzzE6NmWcdCkDGL7OrZZkiUjkqAIiIiIiICBTk4dz8NQBLAgYyuG18tSw22G4jv+NECgwrUUd/g6N/VctyRaTiVAAQERERERHY8QMB+WkcNqKJaz+EoABbtS16VL9TWerqCkDOmveqbbkiUjEqAIiIiIiICK7/jf7/jbMvZ3dNqNZld2gcxZros9x/bPwInI5qXb6IeEcFABERERGRE11eJsa2BQD8FDiIfq3qVfsqWvQdz1EjihBHCsZfi6p9+SJSPhUAREREREROdNu/w+bMZZerAS06DSDAVv2nCaO7NWeucRoAqWs+rvbli0j5VAAQERERETnBOTd9BsA8V3/GnNqkRtYRGWyH5gMAyD24rUbWISJlUwFARERERORElp2CZeePAKwOGUz3ZjE1tqqT23UEIDovEQyjxtYjIiVTAUBERERE5ET210KsRgF/uhLofGovrFZLja0qLqENAKFGDmSn1Nh6RKRkKgCIiIiIiJzACrbMA2CRqyejOzeu0XU1rR/LIcPdwyDryI4aXZeIFKcCgIiIiIjIiSo/y9P9//eI0+jYJLJGVxcZbOeApQEAqfv/rtF1iUhxKgCIiIiIiJyodnyPzZXHHld92nTsjcVSc93/Cx0Lcg8ymH14Z42vS0SKUgFAfIbFYqnQfy1atDA7cjFm5TJjvZVZ5+7du7FYLAwePLhas0ybNg2LxcKDDz5Y6jy5ubnYbDasVisZGRlVWl9BQQEfffQRF1xwAS1btiQoKIi4uDhOP/10/vvf/+Jyuaq0fBERkdri3PoNAAtdPRnRoWGtrDM3PAEAV/KuWlmfiPy/ALMDiBS69NJLiz22cuVKdu7cSZcuXejatWuRaXFxcbWUTLy1e/duWrZsyaBBg1i2bFmtrff3338HoGPHjqXOs3XrVlwuF61atSIiIqLS69q0aROXXnopGzduJDQ0lG7dutGvXz8OHTrE8uXL+eGHH/joo4/46quvCAkJqfR6pG4w65gQEfFKQT7G9oUA/BrUjytrcPT/4xkxzSEZ7Bl7a2V9IvL/VAAQnzF79uxij02ZMoWdO3cybtw4ZsyYUeuZKurPP//EbrebHaNW+NJr9aYAsHnzZgC6dOlS6fWsW7eO008/nbS0NG677TamTp1K8+bNsVrdnan+/vtvRo0axcKFC5k2bRpvvvlmpdclIiJS43YvJ8CRwREjmobtB2CrwdH/jxcc3wp2QGROYq2sT0T+ny4BEKlG7dq1o1WrVmbHqBW+8lr37t1LamoqgYGBnHzyyaXOV1gA+HdPEm8dOnSIM888k7S0NN544w2efvppYmKK/lLSpk0bPvnkEwDeffdd9uzZU6l1iYiI1Abjf93/Fzu7M7xjzY7+f7zIxu5bAcY6j4DTUWvrFREVAMTPHX9NeXp6OrfeeistW7bEbrczbdq0IvOuXr2asWPHEh8fT1BQEC1atOD666/nwIED5S735ptvJiEhgeDgYE455RSef/75Eq/zLuu6+H379nHTTTdx8sknExISQmxsLD169OChhx4iPT3dM9/8+fO54oor6N27N9HR0YSFhdGlSxcef/xx8vLyqrS9cnNzCQ4OLjHjuHHjsFgsDBgwoNi0Hj16YLVaOXr0aKmvdcaMGbRs2RKAn376qch4DVOmTCm2zJycHO6++26aN29OUFAQrVu35qmnnsIwjAq9po0bNwLQtm1bAgJK79RU1R4AU6dOJSkpicmTJ3PNNdeUOl+3bt3o1q0bTqeThQsXerXsHTt2YLFYGD58OFlZWTz00EOccsophIaG0qpVK55++ukKb5fqUtljYf78+Vx++eWccsopREZGlrsfe3ssV2S5e/fuxWazMXjwYLKysrj11ltJSEggJCSEbt268c0333jm/fzzz+nduzdhYWE0aNCAm266iZycnFK3y759+7jhhhto1aoVwcHBxMbGcvbZZ/Pzzz975qnoMeHNMiu6vURESuVyUvDntwAst/WhX6t6tbbqRk2ak2vYseHCmbqv1tYrIroEQOqInJwcBg0axJ49exg0aBDdunUr8uvsBx98wJQpU3A6nfTv35+EhATWr1/P66+/zldffcWyZcto165dseXm5eUxdOhQdu7cydChQ8nPz+eHH37g1ltv5ffffy/xsoWSrFixgjFjxnDs2DFatGjB6NGjycnJYdu2bcyYMYOxY8d6fpm+4ooryMnJoV27dnTp0oX09HTWrFnDfffdxw8//MDixYux2WyV2k7BwcH07t2b5cuXs3v3bs8JvMvlYvny5QCsXbuW7OxsQkNDAUhLS2PDhg20b9+e+Pj4UpfdtWtXzjnnHL788ksaNGjAyJEjPdP+XVTIz89nxIgRbN261XNy9tNPP3H33XeTkZHBo48+6vVr8qb7P1StB8Aff/zBV199RXBwMM8991y587dv357169fzzz//eLX8wtcQGxtLly5dyMvLo2/fviQkJPDDDz9w1113ERcXx+WXX17h7NWlosdC4X7csWNHOnfuTFpamlf7cXnHcmWWm5+fz7Bhw9i1axennXYaSUlJLF++nPHjx7Nw4UL++OMP7rzzTgYNGsQZZ5zB8uXLefnll0lOTubDDz8slnH16tWMGjWK1NRU2rZty6hRozh69CiLFi1i4cKFfPjhh0ycOLFCx4S3y6zo9hIRKdX+tdhzkkgzQgk5eRBBAZX7blEZjaJD+ceoTxtLIqmJfxEXd1KtrVvkhGdItUpLSzMAIy0trcz5cnJyjK1btxo5OTm1lKwop9NppKamGk6n05T1e+vSSy81AGP69OklTt+1a5cBGIDRt29fIzU1tdg8e/fuNUJCQgybzWbMnTvX87jT6TSmTZtmAEaPHj1KXW7nzp2No0ePeqbt2LHDaNy4sQEYc+bMKfI8wGjevHmRx5KTk434+HgDMJ555pli2/znn382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/sjkyZP55ZdfWLRoEQkJCTz77LPMnj3b6/UPHjyY33//nWuvvRbDMPj6669ZtWoVUVFRPPzww57u3SeffDLr1q3znFB+8803ZGZm8uabb1b7L5zHn9iXVAAobVp53nnnHS6++GKSk5P56KOPePfdd/npp58qH7QU5XWdL1TSSfTxjh07xqhRo2jRogXvvfdeqYPjXXjhhWzcuJErrriCgoIC5s2bx5o1a4iKiuLee+9ly5Yt3H777RV6Ddu2bSMvL6/UbCVlLywUFBaNKiIkJMQzhoG3d1ooVJFjoXA/Hj16NElJScybN69a9uOaWm5F9enThz/++IM777yTyMhIfvrpJ77++mv27NnDoEGDmD17tufSH/DumKjoMkVEKmW7uyfkb6429OhUfk+ympYT5i7gu1J2mxtE5ARiMapjSHEfsHr1avr160dQUBDp6enlXut78OBBmjZtSkBAAHv37i3SxTkvL4+EhARSUlI4cOCA17+0gfvXuaioKNLS0socATw3N5ddu3bRsmVLU0ZxdrlcpKenFxlkTv7f7t27admyJYMGDfJcB1+b1D61Iz8/n5EjR7Jr1y5++eUXry91APPaKC0tjcaNGzNu3Dg+/PDDYtNXr15N3759OXLkSLH3roKCAvr160dubq7n9oLlMftYqCwdQ2Uz+zPI4XCwYMECzjrrLOz22r//uJRPbeTbKts+zvfGYNv1E487JjHm+qfo2CSqBlOWb8H7z3LWP4+wI6InrW/73tQs1UnHj++ri23k7XlonbkLQGH33ry8PJKTk2nUqFGZ8y9cuBCXy8XAgQOLfekPCgpi9OjRzJw5kwULFjBlypSaii0iJrr++uv56aefePvtt9m1a5fn9n9BQUHl9iwwS1RUFI888gi33XYbFouFc889l6ioKDZv3sysWbMYPHgwffv25ZxzzqFevXqcd955JCQkkJiYyOuvv87mzZtZsmSJ2S9DRERqW04qlt2rANgYNpB7Gpd/q9qaFlz/JPgHInISzY4icsKoMwWAwltA2e12YmNjy52/sPtwaaOHd+vWjZkzZ3r9K5mI+J/vv/8el8vFFVdcUeTx5s2be24P6YtuvfVWGjVqxPPPP8/kyZOx2+20bNmSkSNHeq6FnzJlCp9++il33HEHSUlJxMTEMGTIENatW+fVAIIiIlLH/LUIq1HAn64E2nfsWuol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Sdb+nWaHI1LrlABopKzL3qF55lwMLHDxuxDbweyQRERERETqlJ/DwX5rEwDSUzaaHI1I7VMCoDHa9hPW2Y8A4B76OLQdZXJAIiIiIiLmyHQkAFCwf4vJkYjUPiUAGqPAKAhqwu6IAbj7asR/EREREWm8CoOSAXBnbDM3EJE6oARAYxTXlbIb5rA68XqN+C8iIiIijZolsgUAvrm7zA1EpA4oAdBYBcXgtvqYHYWIiIiIiKn8YtsAEF602+RIRGqfEgAiIiIiItJoRTZrB0Cs6wCGq8zkaERqlxIAIiIiIiLSaMU1a0WJYcfXUkbm/h1mhyNSq5QAEBERERGRRsvh68t+aywAmbs1FaA0bEoAiIiIiIhIo3bIkQhA/j5NBSgNmxIAIiIiIiLSqBUGJwHgzthuciQitUsJABERERERadwiWgLgl7fT5EBEapcSACIiIiIi0qgFxHmmAgwr2mNyJCK1SwkAERERERFp1CIT2wPQxLUfw+U0ORqR2qMEgIiIiIiINGqeqQB98LG4yNynqQCl4VICQEREREREGjVfHzv7rE0AyEjRVIDScCkBICIiIiIijd4hvwQACvZvNjkSkdqjBICIiIiIiDR6xcHJALgzNRWgNFxKAIiIiIiIiJRPBZibYnIgIrVHCQAREREREWn0yqcCDC9ONTkSkdqjBICIiIiIiDR6EYntAIh1HdBUgNJgKQEgIiIiIiKNXtNmLSk+PBVgxh6NAyANkxIAIiIiIiLS6PnY7eyzxgGQkbLB5GhEaocSACIiIiIiIkCWXyIABQe2mByJSO1QAkBERERERIQ/pgI0NBWgNFBKAIiIiIiIiABENgfAL2+XuXGI1BIlAERERERERICAuLYARGgqQGmglAAQEREREREBopq1ByDGlYbbWWpyNCI1TwkAERERERERIC6hOUWGLz4WF+l7t5kdjkiNUwJAREREREQEsNvt7Ld5pgLM3K2pAKXhUQJARERERETksCxHAgCF+7eaHIlIzVMCQERERERE5LCikGQAjEOaClAaHiUAREREREREDrNGtgLAL3eXuYGI1AIlAERERERERA4LiGsNaCpAaZiUABARERERETksulkHAGLdmgpQGh4lAERERERERA6LjU+m0HBgt7hJ26OBAKVhUQJARERERETkMLvdVjEV4CFNBSgNjBIAIiIiIiIiR8jy80wFWLB/i8mRiNQsJQBERERERESOUBLc3PMmU1MBSsOiBICIiIiIiMgRrFEtAPDP32VuICI1TAkAERERERGRIwTEtQUgonivyZGI1CwlAERERERERI4Q1aw9ALHug7icJSZHI1JzlAAQERERERE5QpP4ZAoMBzaLQdruzWaHI1JjlAAQERERERE5gs1mZb+tKQCHdm80ORqRmqMEgIiIiIiIyJ9k+yUCUHhgq8mRiNQcJQBERERERET+pCQkyfPmkKYClIZDCQAREREREZE/sUS1AiAgL8XkSERqjhIAIiIiIiIifxJUPhVgSarJkYjUHCUARERERERE/iQqyTMVYIw7nbKSIpOjEakZSgCIiIiIiIj8SZO4ZuQbfoenAtxidjgiNUIJABERERERkT+x2qwcsMUBcChVUwFKw6AEgIiIiIiISBWy/JsBUHRQPQCkYVACQEREREREpAqlIcmeN4d2mBqHSE1RAkBERERERKQK1qiWgKYClIZDCQAREREREZEqlE8FGFmyx+RIRGqGEgAiIiIiIiJViE7qAJRPBVhocjQip08JABERERERkSrENEkg3/DHajFI273Z7HBETpsSACIiIiIiIlWw2qzsPzwVYObuTSZHI3L6lAAQERERERE5huzDUwEWH9BUgFL/KQEgIiIiIiJyDKWhyQBYsjQVoNR/SgCIiIiIiIgcgy2qFQD+ebvMDUSkBigBICIiIiIicgyBca0BiCzda3IkIqdPCQAREREREZFjiEkunwowA6emApR6TgkAERERERGRY4iOSSDv8FSAB3dpJgCp35QAEBEREREROQarzcp+ezwAWakbTY5G5PQoASAiIiIiInIcOf6JABQd3GpyJCKnRwkAERERERGR4ygNSQbAekhTAUr9pgSAiIiIiIjIcZRPBRiQn2JyJCKnRwkAERERERGR4wiKbwtAVGmqyZGInB4lAERERERERI6jYipAI5PctN0mRyNy6pQAEBEREREROY7omKass3mSANu+m2ByNCKnTgkAERERERGR47BYLOR0vw2AVrs/p7Qgx+SIRE6NEgAiIiIiIiIn0OvsK9lNHCEUsHHGf8wOR+SUKAEgIiIiIiJyAg4fH3a0uR6A2I3vYbicJkckcvKUABAREREREamG7qNv55ARTBN3Ght//tjscEROmhIAIiIiIiIi1RAaGsKappcC4Fj6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5Zh3usufha/Kxo0bGTduHImJiTgcDmJjY7n88stZv379UeuWP/M+fvx4du/ezZVXXkl0dDT+/v706tWL6dOnH/NntXHjRm688UaSk5NxOBzExMTQv39/XnzxRcrKygBPF32LxcLmzZur3Edqaio2m43mzZtjGMYxj1Vd5WMCPPnkk1Ve/B/J19e3ykcITlX5787xXqczZoCIiDQu6gEgIiJSRz755BPeeecdevXqxTnnnMP27dsrLrgffvhhnn/+eXx9fenduzdxcXGsXr2al19+mW+//ZYFCxYQGxtbsa+srCwGDBjAxo0badKkCWPGjOHQoUM8+OCDbNu2rUbjnjZtGpdffjklJSV069aNvn37kpqayueff8706dOZOXPmUV3iAXbt2kXv3r0JDg5m2LBh7N69m99//50LL7yQmTNnMnLkyErrf/HFF1xzzTWUlJTQvn17xo4dS05ODuvXr+evf/0rN910E2FhYdx6663cc889vPPOO7zwwgtHHfe9997D7XZz0003HTOhUV3p6eksX74cq9XKZZdddlr7OhUDBgyostzlcvHpp5/icrmw2Wx1HJWIiNRbhoiIiJwSwKjO/0qvu+66inWnTJly1PLPP//cAIxOnToZW7durSh3u93G448/bgDGZZddVmmb2267zQCMUaNGGQUFBRXlixcvNoKCggzASEpKqrTNE088YQDG+++/X2WcSUlJR53Pzp07jcDAQCMoKMiYPXt2pWUzZ840fHx8jMTERKOkpKSi/P3336843wceeMBwuVwVy15++WUDMAYOHFhpX1u2bDH8/PwMu91ufPzxx5WWud1u48cffzSKi4sNwzCM7OxsIyAgwIiOjq50XMMwDJfLZTRr1syw2WzG3r17qzzP6px3udmzZxuA0apVq2rtqyrlP4/rrrvuuOsNHjzYAIy5c+eecJ/33HOPARjnnXdepZ/vn4/5xBNPnFrQIiLSIOkRABERkdN0rK7Zu3btqrTe6NGjq7yL/OyzzwLw6aef0qpVq0r7HT9+PN26dePLL78kIyMDgIKCAiZPnozVamXixIkEBARUbNOnTx/uvPPOGju3V155hYKCAp577jmGDx9eadmoUaO4/fbbSU1N5fvvvz9q2+bNm/PPf/4Tq/WPrxt33XUX4eHhLFq0iNLS0oryl19+meLiYm666aajRtC3WCyMHDkSh8MBQGhoKJdffjnp6el88803ldadNWsWu3fvZvTo0TRt2vS0z7/88YuoqKgql0+fPp1x48ZVej344INVrjt58uTjduWfN29etWJ65513eO211+jQoQOffPJJpZ+viIjI8egRABERkdN0rGkAg4KCKn2+4IILjlonLS2N1atX07p16yqfHbdYLPTv359Vq1axfPlyzj77bJYvX05RURF9+vShZcuWR21zxRVX8Pzzz5/i2VQ2a9YsAC666KIqlw8cOJDXXnuNJUuWMHbs2ErLhgwZgq+vb6Uyu91O8+bNWbFiBZmZmcTFxQEwZ84cAG699dZqxXXbbbfx3nvv8fbbb3PppZdWlL/99tsA3HLLLdXaz+lavXo1kydPrlSWlJRUMW7AkVq2bHnMLv3gGQPi4MGDxz3eb7/9xh133EFkZCTTp08nODj41AIXEZFGSQkAERGR01TdaQCbNWt2VFl5L4GtW7ee8Hn18h4A+/btAzwXmlX58+B/p6M8vvj4+GrFdqSEhIQq1y2/aC0pKakoS01NBagyoVGV3r1706NHD+bMmcPOnTtp3rw5Bw8eZPr06SQkJDBq1Khq7edEIiMjgarPD+DRRx/l0UcfBeDAgQMVCY2qDBgw4Li/K0OGDDluAiAlJYWLL74YwzD44osvaNGiRTXOQERE5A9KAIiIiNQRPz+/o8rcbjcATZo04eyzzz7u9se64K8p5bFUVXasXg7lzjjjjKPKartr+m233cYtt9zCu+++yzPPPMPkyZNxOp3ccMMNNTYwXpcuXQDYsWMHubm5hISE1Mh+T1ZBQQEXXHAB6enp/Oc//+Gss84yJQ4REanflAAQERExUfld8qioqGr3JCi/y5ySklLl8mOVl3fHz8/PP2qZy+XiwIEDVca3fft2XnrppYq74bUhMTGRrVu3sn37drp161atba688koefPBB3n//fcaPH88777yD1WrlxhtvrLG4YmJi6NmzJ8uXL+fzzz/npptuqrF9V5dhGFxzzTWsWbOG22+/ndtvv73OYxARkYZBo8aIiIiYKCEhgXbt2rFhwwa2bNlSrW169uyJv78/y5cvZ8eOHUctnzJlSpXblScOqjrO3LlzcTqdR5WPGDECgKlTp1YrtlNVPsDgW2+9Ve1tAgMDufrqq9m3bx8PPfQQW7du5eyzz67yUYvTUT6o3+OPP056enqN7rs6Hn/8caZOncpZZ53Fa6+9VufHFxGRhkMJABEREZM99thjuN1uLr74YlatWnXU8szMzIrB7cAzuOA111yDy+Xi7rvvpqioqGLZsmXLmDhxYpXHGTRoEAAfffRRpRkKdu7cyT333FPlNg888AD+/v48+OCDfP3110ctLykp4csvv2TPnj3VOdVjuvfee/Hz8+Ptt9/ms88+q7TMMAxmz55dacyAcrfddhvgmUUA4Oabbz6tOKpy+eWXc8kll7B//34GDBjAr7/+WuV6v//+e40f+7PPPuOZZ56hRYsWfPHFF9jt6rwpIiKnTv8XERERMdmVV17J+vXr+ec//0nPnj3p1q0bLVu2xDAMtm/fzpo1awgKCqp0cfvcc88xb948ZsyYQcuWLRk0aBBZWVn8/PPP3HrrrbzxxhtHHadly5Zce+21fPDBB3Tr1o1BgwZRWFjIokWLOPfccyksLDzq8YFWrVrx6aefcuWVV3LxxRfTqlUr2rdvT2BgIHv37mXFihUUFBSwcuXKYw76Vx1t2rTh/fff59prr+Xyyy/nqaeeokuXLuTk5LBu3TpSU1PJysqqmAqwXOfOnTnzzDNZuHAhTZo04fzzzz/lGI7n448/JiQkhPfee4/BgweTnJxM165dCQgI4ODBg2zZsoU9e/Zgt9u5/PLLa+y4//jHPwBo2rQpDzzwQJXrPPzww7Rr167GjikiIg2XEgAiIiJe4Nlnn+Xss89m4sSJLFiwgLVr1xISEkJ8fDy33357panuACIiIliwYAGPPfYYU6dOZdq0aTRv3px//etf3H///VUmAMAzTV7Tpk35+OOP+fHHH0lMTOTvf/87Dz/88DFH4B8zZgxr1qxhwoQJzJ49m9mzZ+Pj40PTpk05//zzueiii+jQocNp/wwuv/xyOnTowAsvvMDcuXP56quvCA8Pp3Xr1tx7771HTatYbujQoSxcuJDrr7++1u6Q+/r68u6773LbbbfxzjvvMG/ePH766SdKSkoIDw+nffv23HzzzVx77bU1OguDy+UCYP78+cyfP7/KdcaNG6cEgIiIVIvFMAzD7CBERESkZlksFpKSkip19W+IDMOgffv2bNmyhW3btp3S1HjJycmkpKTQkL4STZo0ieuvv54nnniC8ePHmx2OiIh4CfUAEBERkXrryy+/ZPPmzYwePfqULv6PNG7cOMDTE2HUqFE1EF3de/zxx9m9ezfbtm0zOxQREfFCSgCIiIhIvXPTTTeRnZ3Nd999h81m48knnzztfU6ePBmATp061dsEwLfffsvq1avNDkNERLyUHgEQERFpgBr6IwAWiwW73U7r1q156qmnuOSSS8wOSURExOspASAiIiIiIiLSCFjNDkBEREREREREap8SACIiIiIiIiKNgBIAIiIiIiIiIo2AEgAiIiIiIiIijYASACIiIiIiIiKNgBIAIiIiIiIiIo2AEgAiIiIiIiIijYASACIiIiIiIiKNwP8DJgkyqbsTYiwAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "params.plot(x='freq', y=['sigma_tb', 'sigma_tb_with_con_Xs'],\n", + " title=\"${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters\",\n", + " xlabel='Frequency [GHz]', ylabel='$\\sigma_{T_B}$ [K]',\n", + " label=[atm[atmp.TROPICAL], atm[atmp.TROPICAL] + ' with ${H_2 O}$ ${n_{CS}}$ parameter'], figsize=(12,8))\n", + "plt.grid()" + ] + } + ], + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + }, + "kernelspec": { + "display_name": "Python 3.9.5 64-bit", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.10" + }, + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + } + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/en/main/.doctrees/nbsphinx/notebook_Pressure_Broadening_effect_5_1.png b/en/main/.doctrees/nbsphinx/notebook_Pressure_Broadening_effect_5_1.png new file mode 100644 index 00000000..0c06298a Binary files /dev/null and b/en/main/.doctrees/nbsphinx/notebook_Pressure_Broadening_effect_5_1.png differ diff --git a/en/main/.doctrees/nbsphinx/notebook_Pressure_Broadening_effect_6_0.png b/en/main/.doctrees/nbsphinx/notebook_Pressure_Broadening_effect_6_0.png new file mode 100644 index 00000000..f93880ae Binary files /dev/null and b/en/main/.doctrees/nbsphinx/notebook_Pressure_Broadening_effect_6_0.png differ diff --git a/en/main/.doctrees/nbsphinx/notebook_first_run_11_1.png b/en/main/.doctrees/nbsphinx/notebook_first_run_11_1.png new file mode 100644 index 00000000..c61b467a Binary files /dev/null and b/en/main/.doctrees/nbsphinx/notebook_first_run_11_1.png differ diff --git a/en/main/.doctrees/nbsphinx/notebook_tutorial_12_0.png b/en/main/.doctrees/nbsphinx/notebook_tutorial_12_0.png new file mode 100644 index 00000000..7f858af8 Binary files /dev/null and b/en/main/.doctrees/nbsphinx/notebook_tutorial_12_0.png differ diff --git a/en/main/.doctrees/nbsphinx/notebook_tutorial_21_0.png b/en/main/.doctrees/nbsphinx/notebook_tutorial_21_0.png new file mode 100644 index 00000000..038c7f51 Binary files /dev/null and b/en/main/.doctrees/nbsphinx/notebook_tutorial_21_0.png differ diff --git a/en/main/.doctrees/nbsphinx/notebook_tutorial_23_0.png b/en/main/.doctrees/nbsphinx/notebook_tutorial_23_0.png new file mode 100644 index 00000000..83b94e46 Binary files /dev/null and b/en/main/.doctrees/nbsphinx/notebook_tutorial_23_0.png differ diff --git a/en/main/.doctrees/nbsphinx/notebook_uncertainty_24_0.png b/en/main/.doctrees/nbsphinx/notebook_uncertainty_24_0.png new file mode 100644 index 00000000..6beb8ce4 Binary files /dev/null and b/en/main/.doctrees/nbsphinx/notebook_uncertainty_24_0.png differ diff --git a/en/main/.doctrees/notebook/Pressure_Broadening_effect.doctree b/en/main/.doctrees/notebook/Pressure_Broadening_effect.doctree new file mode 100644 index 00000000..c930cf32 Binary files /dev/null and b/en/main/.doctrees/notebook/Pressure_Broadening_effect.doctree differ diff --git a/en/main/.doctrees/notebook/first_run.doctree b/en/main/.doctrees/notebook/first_run.doctree new file mode 100644 index 00000000..e52b00ef Binary files /dev/null and b/en/main/.doctrees/notebook/first_run.doctree differ diff --git a/en/main/.doctrees/notebook/index.doctree b/en/main/.doctrees/notebook/index.doctree new file mode 100644 index 00000000..c3660146 Binary files /dev/null and b/en/main/.doctrees/notebook/index.doctree differ diff --git a/en/main/.doctrees/notebook/tutorial.doctree b/en/main/.doctrees/notebook/tutorial.doctree new file mode 100644 index 00000000..c6d222f9 Binary files /dev/null and b/en/main/.doctrees/notebook/tutorial.doctree differ diff --git a/en/main/.doctrees/notebook/uncertainty.doctree b/en/main/.doctrees/notebook/uncertainty.doctree new file mode 100644 index 00000000..9a5ec596 Binary files /dev/null and b/en/main/.doctrees/notebook/uncertainty.doctree differ diff --git a/en/main/.doctrees/references.doctree b/en/main/.doctrees/references.doctree new file mode 100644 index 00000000..04fbbfb1 Binary files /dev/null and b/en/main/.doctrees/references.doctree differ diff --git a/en/main/.doctrees/sg_execution_times.doctree b/en/main/.doctrees/sg_execution_times.doctree new file mode 100644 index 00000000..dc4d20ac Binary files /dev/null and b/en/main/.doctrees/sg_execution_times.doctree differ diff --git a/en/main/.nojekyll b/en/main/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/en/main/_downloads/022ea1c8a367f324a3b651e5af565388/plot_bt_igra2.py b/en/main/_downloads/022ea1c8a367f324a3b651e5af565388/plot_bt_igra2.py new file mode 100644 index 00000000..322d7f07 --- /dev/null +++ b/en/main/_downloads/022ea1c8a367f324a3b651e5af565388/plot_bt_igra2.py @@ -0,0 +1,76 @@ +""" +Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation). +================================================================================================================ +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using +# observations from IGRA2 Upper Air Archive and comparison of BT with the extrapoletd profile. + +import numpy as np +from datetime import datetime + +import matplotlib.pyplot as plt +plt.rcParams.update({'font.size': 15}) + +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.climatology import ProfileExtrapolation +from pyrtlib.utils import dewpoint2rh, to_kelvin +from pyrtlib.absorption_model import H2OAbsModel +from pyrtlib.apiwebservices import IGRAUpperAir + +date = datetime(2020, 6, 1, 12) +station = 'SPM00008221' +df_igra2, header = IGRAUpperAir.request_data(date, station) + +df_igra2 = df_igra2[df_igra2.pressure.notna() & + df_igra2.temperature.notna() & + df_igra2.dewpoint.notna() & + df_igra2.height.notna()] + +z, p, t = df_igra2.height.values / 1000, df_igra2.pressure.values, to_kelvin(df_igra2.temperature.values) + +rh = dewpoint2rh(df_igra2.dewpoint, df_igra2.temperature).values + +mdl = 'R21SD' +frq = np.arange(20, 201, 1) +nf = len(frq) + +rte = TbCloudRTE(z, p, t, rh, frq) +rte.init_absmdl('R20') +H2OAbsModel.model = 'R21SD' +H2OAbsModel.set_ll() +df = rte.execute() +df = df.set_index(frq) + +# %% +# Extrapolation of profile +ex = ProfileExtrapolation() +zz, pp, tt, rhh = ex.profile_extrapolation(header.latitude.values[0], 6, z, (p, t, rh)) + +rte = TbCloudRTE(zz, pp, tt, rhh, frq) +rte.init_absmdl('R20') +H2OAbsModel.model = 'R21SD' +H2OAbsModel.set_ll() +dff = rte.execute() +dff = dff.set_index(frq) + +#%% +# Plotting +fig, ax = plt.subplots(1, 1, figsize=(12, 8)) +plt.suptitle("{}, {}, {} - {}".format(header.site_id.values[0], header.latitude.values[0], header.longitude.values[0], header.date.values[0]), y=0.96) +plt.title("IGRA2 UpperAir Radiosonde Archive", fontsize=10, ha='center') +ax.set_xlabel('Frequency [GHz]') +ax.set_ylabel('${T_B}$ [K]') +df.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(header.site_id.values[0], mdl)) +dff.tbtotal.plot(ax=ax, linewidth=2, label='Extrap {} - {}'.format(header.site_id.values[0], mdl)) +ax.grid(True, 'both') +ax.legend() +plt.show() + +#%% +# Difference BT + +df['delta'] = dff.tbtotal - df.tbtotal +df.delta.plot(linewidth=2, xlabel='Frequency [GHz]', ylabel='$\Delta T_B$ [K]', grid=True, figsize=(12, 8)) diff --git a/en/main/_downloads/02efce3111c5e22acb48c487e9499e17/plot_bt_igra2.zip b/en/main/_downloads/02efce3111c5e22acb48c487e9499e17/plot_bt_igra2.zip new file mode 100644 index 00000000..802151ad Binary files /dev/null and b/en/main/_downloads/02efce3111c5e22acb48c487e9499e17/plot_bt_igra2.zip differ diff --git a/en/main/_downloads/04ebb85e301429d7cb4d63349c11cf97/generic_tutorial.ipynb b/en/main/_downloads/04ebb85e301429d7cb4d63349c11cf97/generic_tutorial.ipynb new file mode 100644 index 00000000..b81f555a --- /dev/null +++ b/en/main/_downloads/04ebb85e301429d7cb4d63349c11cf97/generic_tutorial.ipynb @@ -0,0 +1,252 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Generic Example\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use calculate the upwelling brigthness temperature by using R16 and R03 absorption model\nand then plotting them difference.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n\nplt.rcParams.update({'font.size': 15})\nimport matplotlib.ticker as ticker\nfrom matplotlib.ticker import ScalarFormatter\nimport numpy as np" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Import pyrtlib package\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "from pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.utils import ppmv2gkg, mr2rh" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "atm = ['Tropical',\n 'Midlatitude Summer',\n 'Midlatitude Winter',\n 'Subarctic Summer',\n 'Subarctic Winter',\n 'U.S. Standard']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL)\ngkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\nrh = mr2rh(p, t, gkg)[0] / 100\n\nmdl = 'R16'" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing upwelling brightness temperature calculation\n\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Default calculatoin consideres no cloud\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "ang = np.array([90.])\nfrq = np.arange(20, 201, 1)\nnf = len(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Setup matplotlib plot\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\nax.set_xlabel('Frequency [GHz]')\nax.set_ylabel('${T_B}$ [K]')\n\nrte = TbCloudRTE(z, p, t, rh, frq, ang)\nrte.init_absmdl(mdl)\ndf = rte.execute()\n\ndf = df.set_index(frq)\ndf.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))\n\nax.legend()\nplt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Print dataframe\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing calculation for R03 absorption model\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "mdl = 'R03'\nrte.init_absmdl(mdl)\ndf_r03 = rte.execute()\ndf_r03 = df_r03.set_index(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Add brigthness temperature values as new column\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "df['delta'] = df.tbtotal - df_r03.tbtotal" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Difference between R16 and R03 brightness temperature\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\nax.set_xlabel('Frequency [GHz]')\nax.set_ylabel('$\\Delta {T_B}$ [K]')\ndf.delta.plot(ax=ax, figsize=(12,8), label='$\\Delta {T_B}$ (R16-R03)')\nax.legend()\nplt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing downwelling brightness temperature calculation\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\nax.set_xlabel('Frequency [GHz]')\nax.set_ylabel('${T_B}$ [K]')\n\nrte.satellite = False\ndf_from_ground = rte.execute()\n\ndf_from_ground = df_from_ground.set_index(frq)\ndf_from_ground.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))\nax.legend()\nplt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "df_from_ground" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/05da99fceea7871dd6706a0148d79a7e/plot_model_cloudy.ipynb b/en/main/_downloads/05da99fceea7871dd6706a0148d79a7e/plot_model_cloudy.ipynb new file mode 100644 index 00000000..502df70a --- /dev/null +++ b/en/main/_downloads/05da99fceea7871dd6706a0148d79a7e/plot_model_cloudy.ipynb @@ -0,0 +1,50 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Performing Downwelling Brightness Temperature calculation in cloudy condition.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from ground (downwelling) in cloudy condition\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\nfrom matplotlib.ticker import FixedLocator, FormatStrFormatter\nplt.rcParams.update({'font.size': 15})\nimport numpy as np\nnp.seterr('raise')\n\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.utils import ppmv2gkg, mr2rh\n\natm = ['Tropical',\n 'Midlatitude Summer',\n 'Midlatitude Winter',\n 'Subarctic Summer',\n 'Subarctic Winter',\n 'U.S. Standard']\n\nfig, ax = plt.subplots(1, 1, figsize=(12, 8))\n\nz, p, d, t, md = atmp.gl_atm(atmp.MIDLATITUDE_SUMMER)\ngkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\nrh = mr2rh(p, t, gkg)[0] / 100\n\nmdl = 'R19SD'\n\nang = np.array([90.])\nfrq = np.arange(20, 61, 1)\nnf = len(frq)\n\ndenliq = np.zeros(z.shape)\ndenice = np.zeros(z.shape)\ncldh = np.empty((2, 2))\n\nfor i in [False, True]:\n if not i:\n text_plot = 'clear-sky'\n else:\n # build a cloud\n ib = 1\n it = 3\n denliq[ib:it + 1] = 10 * np.ones((it - ib + 1))\n cldh[:, 0] = np.array([z[ib], z[it]])\n ib = 29\n it = 31\n denice[ib:it + 1] = 0.1 * np.ones((it - ib + 1))\n cldh[:, 1] = np.array([z[ib], z[it]])\n text_plot = 'cloudy'\n\n ax.set_xlabel('Frequency (GHz)')\n ax.set_ylabel('BT (K)')\n\n rte = TbCloudRTE(z, p, t, rh, frq, ang)\n rte.satellite = False\n rte.cloudy = i\n rte.init_cloudy(cldh, denice, denliq)\n rte.init_absmdl(mdl)\n df = rte.execute()\n\n df = df.set_index(frq)\n df.tbtotal.plot(x=frq, ax=ax, linewidth=1,\n label='{} - {} ({})'.format(atm[atmp.MIDLATITUDE_SUMMER], mdl, text_plot))\n\nax.grid(True, 'both')\nax.legend()\nplt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/0bc5a3ad7d686f20fe4817135da73cca/plot_brightness_temperature_up.py b/en/main/_downloads/0bc5a3ad7d686f20fe4817135da73cca/plot_brightness_temperature_up.py new file mode 100644 index 00000000..71b5e393 --- /dev/null +++ b/en/main/_downloads/0bc5a3ad7d686f20fe4817135da73cca/plot_brightness_temperature_up.py @@ -0,0 +1,53 @@ +""" +Performing Upwelling Brightness Temperature calculation +======================================================= +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate zenith upwelling brightness temperature +# for six reference atmosphere climatology with the R19SD model. + +import matplotlib.pyplot as plt + +plt.rcParams.update({'font.size': 15}) +import numpy as np + +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.utils import ppmv2gkg, mr2rh + +atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + +fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + +for i in range(0, 6): + z, p, d, t, md = atmp.gl_atm(i) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + mdl = 'R19SD' + + ang = np.array([90.]) + frq = np.arange(20, 61, 1) + nf = len(frq) + + ax.set_xlabel('Frequency (GHz)') + ax.set_ylabel('BT (K)') + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.init_absmdl(mdl) + df = rte.execute() + + df = df.set_index(frq) + df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i])) + +ax.grid(True, 'both') +ax.legend() +ax.set_box_aspect(0.8) +plt.show() diff --git a/en/main/_downloads/175d9284065cb156ebe0323ad6ab3788/plot_weighting_functions.ipynb b/en/main/_downloads/175d9284065cb156ebe0323ad6ab3788/plot_weighting_functions.ipynb new file mode 100644 index 00000000..a838d339 --- /dev/null +++ b/en/main/_downloads/175d9284065cb156ebe0323ad6ab3788/plot_weighting_functions.ipynb @@ -0,0 +1,104 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Computation of Weighting Functions\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the :py:class:`pyrtlib.weighting_functions.WeightingFunctions` method \nto compute the weighting functions for the MWS channels for the U.S. standard atmospheric profile.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import numpy as np\nimport warnings\nwarnings.filterwarnings(\"ignore\", category=UserWarning)\nfrom pyrtlib.weighting_functions import WeightingFunctions\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies_sat\n\nz, p, _, t, md = atmp.gl_atm(atmp.US_STANDARD)\ngkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\nrh = mr2rh(p, t, gkg)[0] / 100\n\nwf = WeightingFunctions(z, p, t, rh)\nwf.frequencies = np.array([50.5, 53.2, 54.35, 54.9, 59.4, 58.825, 58.4])\nwgt = wf.generate_wf()\n\nwf.plot_wf(wgt, 'Downlooking', ylim=[0, 60], legend=True, figsize=(8, 6), dpi=100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As above but with the weighting functions computed in uplooking mode.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "wf.satellite = False\nwgt = wf.generate_wf()\n\nwf.plot_wf(wgt, 'Uplooking', ylim=[0, 10], figsize=(8, 6), dpi=100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The weighting functions can also be computed for a different set of channels.\nThe bandpass values are used to compute the weighting functions for the ATMS channels.\nThe following code compute the weighting functions for the ATMS channels 5-15.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "cf53 = 53.596\ncf57 = 57.290344\nfrq = np.array([52.8, cf53-0.115, cf53+0.115, 54.4, 54.94, 55.5, cf57, \n cf57-0.217, cf57+0.217, \n cf57-0.3222-0.048, cf57-0.3222+0.048, cf57+0.3222-0.048, cf57+0.3222+0.048,\n cf57-0.3222-0.022, cf57-0.3222+0.022, cf57+0.3222-0.022, cf57+0.3222+0.022,\n cf57-0.3222-0.010, cf57-0.3222+0.010, cf57+0.3222-0.010, cf57+0.3222+0.010,\n cf57-0.3222-0.0045, cf57-0.3222+0.0045, cf57+0.3222-0.0045, cf57+0.3222+0.0045])\n\nwf.satellite = True\nwf.frequencies = frq\nwf.bandpass = np.array([1, 2, 1, 1, 1, 1, 2, 4, 4, 4, 4])\nwf.legend_labels = [f'Channel {i+5}' for i in range(len(wf.bandpass))]\nwgt = wf.generate_wf()\n\nwf.plot_wf(wgt, 'ATMS Channels 5-15', ylim=[0, 70], xlim=[0, 0.11], legend=True, figsize=(8, 6), dpi=100)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The weighting functions can also be computed for a different set of frequencies.\nThe following code compute the weighting functions for the MWS channels for a standard tropical atmosphere.\nfor grouped frequencies.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "wf.satellite = True\nwf.frequencies = get_frequencies_sat('MWS')\nwgt = wf.generate_wf()\nwf.plot_wf_grouped(wgt, 'MWS Channels (grouped)', ylim=[0, 60], \n grouped_frequencies=[4, 9, 19, 1, 13],\n grouped_labels=['23-52', '53-55', '57', '89', '164-229'], dpi=350)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/202624dbe27ba1f1bf41654970c45ec6/plot_bt_igra2.ipynb b/en/main/_downloads/202624dbe27ba1f1bf41654970c45ec6/plot_bt_igra2.ipynb new file mode 100644 index 00000000..68b7619e --- /dev/null +++ b/en/main/_downloads/202624dbe27ba1f1bf41654970c45ec6/plot_bt_igra2.ipynb @@ -0,0 +1,104 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using\nobservations from IGRA2 Upper Air Archive and comparison of BT with the extrapoletd profile.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import numpy as np\nfrom datetime import datetime\n\nimport matplotlib.pyplot as plt\nplt.rcParams.update({'font.size': 15})\n\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.climatology import ProfileExtrapolation\nfrom pyrtlib.utils import dewpoint2rh, to_kelvin\nfrom pyrtlib.absorption_model import H2OAbsModel\nfrom pyrtlib.apiwebservices import IGRAUpperAir\n\ndate = datetime(2020, 6, 1, 12)\nstation = 'SPM00008221'\ndf_igra2, header = IGRAUpperAir.request_data(date, station)\n\ndf_igra2 = df_igra2[df_igra2.pressure.notna() & \n df_igra2.temperature.notna() & \n df_igra2.dewpoint.notna() & \n df_igra2.height.notna()]\n\nz, p, t = df_igra2.height.values / 1000, df_igra2.pressure.values, to_kelvin(df_igra2.temperature.values)\n\nrh = dewpoint2rh(df_igra2.dewpoint, df_igra2.temperature).values\n\nmdl = 'R21SD'\nfrq = np.arange(20, 201, 1)\nnf = len(frq)\n\nrte = TbCloudRTE(z, p, t, rh, frq)\nrte.init_absmdl('R20')\nH2OAbsModel.model = 'R21SD'\nH2OAbsModel.set_ll()\ndf = rte.execute()\ndf = df.set_index(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Extrapolation of profile\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "ex = ProfileExtrapolation()\nzz, pp, tt, rhh = ex.profile_extrapolation(header.latitude.values[0], 6, z, (p, t, rh))\n\nrte = TbCloudRTE(zz, pp, tt, rhh, frq)\nrte.init_absmdl('R20')\nH2OAbsModel.model = 'R21SD'\nH2OAbsModel.set_ll()\ndff = rte.execute()\ndff = dff.set_index(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plotting\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12, 8))\nplt.suptitle(\"{}, {}, {} - {}\".format(header.site_id.values[0], header.latitude.values[0], header.longitude.values[0], header.date.values[0]), y=0.96)\nplt.title(\"IGRA2 UpperAir Radiosonde Archive\", fontsize=10, ha='center')\nax.set_xlabel('Frequency [GHz]')\nax.set_ylabel('${T_B}$ [K]')\ndf.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(header.site_id.values[0], mdl))\ndff.tbtotal.plot(ax=ax, linewidth=2, label='Extrap {} - {}'.format(header.site_id.values[0], mdl))\nax.grid(True, 'both')\nax.legend()\nplt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Difference BT\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "df['delta'] = dff.tbtotal - df.tbtotal\ndf.delta.plot(linewidth=2, xlabel='Frequency [GHz]', ylabel='$\\Delta T_B$ [K]', grid=True, figsize=(12, 8))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/2816403560a5dad7d8f103074ca6b1f1/plot_brightness_temperature_uncertainties.py b/en/main/_downloads/2816403560a5dad7d8f103074ca6b1f1/plot_brightness_temperature_uncertainties.py new file mode 100644 index 00000000..782ebd02 --- /dev/null +++ b/en/main/_downloads/2816403560a5dad7d8f103074ca6b1f1/plot_brightness_temperature_uncertainties.py @@ -0,0 +1,79 @@ +""" +Performing sensitivity of spectroscopic parameters +================================================== +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate sensitivity of simulated downwelling brightness temperature +# with a perturbed water vapor absorption parameter (:math:`\gamma_a` air broadening 22 GHz) from [Cimini-2018]_. + +import matplotlib.pyplot as plt +import numpy as np +plt.rcParams.update({'font.size': 15}) + +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.absorption_model import H2OAbsModel, O2AbsModel +from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter +from pyrtlib.utils import ppmv2gkg, mr2rh + +atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + +colors = ["r", "m", "g", "b", "c", "k"] + +fig, ax = plt.subplots(1, 1, figsize=(12, 8)) +ax.set_xlabel('Frequency [GHz]') +ax.set_ylabel('$\Delta {T_B}$ [K]') +for i in range(0, 6): + + z, p, d, t, md = atmp.gl_atm(i) + + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + interp = .1 + frq = np.arange(20, 60 + interp, interp) + + parameters = {**SpectroscopicParameter.water_parameters('R17'), **SpectroscopicParameter.oxygen_parameters('R18')} + parameters['gamma_a'].value[0] = 2.688 + parameters['gamma_a'].uncer[0] = 0.039 + SpectroscopicParameter.set_parameters(parameters) + + rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters) + rte.init_absmdl('R17') + O2AbsModel.model = 'R18' + O2AbsModel.set_ll() + rte.satellite = False + df = rte.execute() + + parameters = AbsModUncertainty.parameters_perturbation(['gamma_a'], 'max', index=0) + rte.set_amu(parameters) + df_gamma = rte.execute() + df['delta_max_gamma_a'] = df_gamma.tbtotal - df.tbtotal + + parameters = AbsModUncertainty.parameters_perturbation(['gamma_a'], 'min', index=0) + rte.set_amu(parameters) + df_gamma = rte.execute() + df['delta_min_gamma_a'] = df_gamma.tbtotal - df.tbtotal + + df = df.set_index(frq) + + df.delta_max_gamma_a.plot(ax=ax, style='--', label='_nolegend_', color=colors[i]) + df.delta_min_gamma_a.plot(ax=ax, label='{}'.format(atm[i]), color=colors[i]) + + ax.legend() + ax.set_box_aspect(0.7) + +ax.grid(True, 'both') +plt.title("Perturbed parameter: $\ H_2O - \gamma_a$") +plt.show() + +# %% +# Solid lines correspond to negative perturbation (value − uncertainty), +# while dashed lines correspond to positive perturbation (value + uncertainty). \ No newline at end of file diff --git a/en/main/_downloads/2ec439d0f6dd1d7a5312982ac34d6724/uncertainty_tutorial.ipynb b/en/main/_downloads/2ec439d0f6dd1d7a5312982ac34d6724/uncertainty_tutorial.ipynb new file mode 100644 index 00000000..86ad2989 --- /dev/null +++ b/en/main/_downloads/2ec439d0f6dd1d7a5312982ac34d6724/uncertainty_tutorial.ipynb @@ -0,0 +1,227 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Uncertainty Example\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the uncertainty module by simulating the downwelling brightness temperature\nand then calculate the uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameter.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n\nplt.rcParams.update({'font.size': 15})\nimport matplotlib.ticker as ticker\nfrom matplotlib.ticker import ScalarFormatter\nimport numpy as np\nimport pandas as pd" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Import pyrtlib package and tools\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.absorption_model import O2AbsModel\nfrom pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies, constants\nfrom pyrtlib.uncertainty import covariance_matrix" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Define spectroscopic parameters to be perturbed and them uncertainties\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "O2_parameters = {\n 'O2S': range(1),\n 'X05': [None],\n 'WB300': [None],\n 'O2gamma': range(34),\n 'Y300': range(34),\n 'O2_V': range(34)\n}\n\nHO2_parameters = {\n 'con_Cf_factr': [None],\n 'con_Cs_factr': [None],\n 'gamma_a': range(1),\n 'S': range(1),\n 'con_Xf': [None],\n 'SR': range(1),\n 'con_Xs': [None]\n}" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "parameters = {**SpectroscopicParameter.oxygen_parameters('R18'),\n **SpectroscopicParameter.water_parameters('R17')}\n\nparameters['O2S'].uncer = parameters['O2S'].value / 100\nparameters['X05'].uncer = 0.05\nparameters['WB300'].uncer = 0.05\nparameters['O2gamma'].uncer[0: 34] = np.array([0.05, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n 0.0138964, 0.01131274, 0.01131274, 0.01453087, 0.01453087,\n 0.01789881, 0.01789881, 0.02116733, 0.02134575, 0.02476584,\n 0.02476584, 0.02839177, 0.02839177, 0.03203582])\nparameters['Y300'].uncer[0: 34] = np.array([0.01, 0.00404133, 0.00502581, 0.00786035, 0.00820458,\n 0.00935381, 0.00809901, 0.0078214, 0.00544132, 0.00460658,\n 0.00225117, 0.00209907, 0.0039399, 0.00484963, 0.00799499,\n 0.00878031, 0.01202685, 0.01261821, 0.01577055, 0.01615187,\n 0.01907464, 0.01926978, 0.0218633, 0.02188287, 0.02416567,\n 0.02401716, 0.02604178, 0.02575469, 0.02762271, 0.02720018,\n 0.02897909, 0.02843003, 0.03019027, 0.02951218])\nparameters['O2_V'].uncer[0: 34] = np.array([0.00288243, 0.04655306, 0.03914166, 0.06110402, 0.0494057,\n 0.05728709, 0.06444876, 0.07279906, 0.06385863, 0.07007177,\n 0.05963384, 0.06373721, 0.11789158, 0.12307213, 0.10151855,\n 0.10427449, 0.08328802, 0.08486523, 0.10130857, 0.10244286,\n 0.15750036, 0.15814743, 0.24421784, 0.24343211, 0.3084326,\n 0.30576201, 0.34568212, 0.34107696, 0.36123446, 0.35507902,\n 0.37305309, 0.36544166, 0.38490936, 0.37583782])\n\nparameters['gamma_a'].uncer[0] = 0.039\nparameters['S'].uncer[0] = 0.043 * 1e-25 * constants('light')[0] * 100\nparameters['con_Xf'].uncer = 0.8\nparameters['SR'].uncer[0] = 0.0014\nparameters['con_Xs'].uncer = 0.6\n\nSpectroscopicParameter.set_parameters(parameters)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)\n\ngkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\nrh = mr2rh(p, t, gkg)[0] / 100" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Use frequencies set of HATPRO Radiometer\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "interp = 0.5\nfrq = sorted(list(set().union(get_frequencies('hat'), np.arange(20, 60 + interp, interp).tolist())))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing uncertainty of brightness temperature\nDefault calculatoin consideres no cloud and no perturbation\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters)\nrte.satellite = False\nrte.init_absmdl('R17')\nO2AbsModel.model = 'R18'\nO2AbsModel.set_ll()\ndf = rte.execute()" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "df_out = pd.DataFrame()\ndf_out['freq'] = frq\ndf_out['tb'] = df.tbtotal" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Calculate Jacobian matrix\n$Cov(T_{b}) = K_{p} \\times Cov(p) \\times K_{p}^T$\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "cnt = 0\nfor k, v in (O2_parameters | HO2_parameters).items():\n for i in v:\n amu_p = AbsModUncertainty.parameters_perturbation([k], 'max', index=i)\n rte.set_amu(amu_p)\n df = rte.execute()\n if k =='O2S':\n parameters[k].uncer = parameters[k].uncer / parameters[k].value * 100\n if k in ['con_Cf_factr', 'con_Cs_factr']:\n parameters[k].uncer = parameters[k[0:6]].value * parameters[k].uncer\n field_name = 'p_{}{}'.format(k, '_' + str(i) if i else '')\n delta_tb = df.tbtotal.values - df_out.tb.values\n if i is not None:\n o = pd.Series(delta_tb / parameters[k].uncer[i], name=field_name)\n else:\n o = pd.Series(delta_tb / parameters[k].uncer, name=field_name)\n df_out = pd.concat([df_out, o], axis=1)\n cnt += 1" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Calculate uncertainty (sigma) for BT\nUsing covariance matrix by [Cimini-2018]_ which identifies 111 parameters (6 for water vapor and 105 for oxygen)\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "params = df_out.copy()\n\nKp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq', 'p_con_Xs'])].values\ncovtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_111), Kp.T)\nsigma_tb = np.sqrt(np.diag(covtb))\nparams['sigma_tb'] = sigma_tb" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Using covariance matrix by [Cimini-2019]_ which add the ${n_{CS}}$ parameter for water vapour \n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq'])].values\ncovtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_112), Kp.T)\nsigma_tb = np.sqrt(np.diag(covtb))\nparams['sigma_tb_with_con_Xs'] = sigma_tb" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "params.plot(x='freq', y=['sigma_tb', 'sigma_tb_with_con_Xs'],\n title=\"${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters\",\n xlabel='Frequency [GHz]', ylabel='$\\sigma_{T_B}$ [K]',\n label=[atmp.atm_profiles()[atmp.TROPICAL], \n atmp.atm_profiles()[atmp.TROPICAL] + ' with ${H_2 O}$ ${n_{CS}}$ parameter'], \n figsize=(12,8))\nplt.grid()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/319349fe95abb6b45635907cfe9f157f/plot_brightness_temperature_uncertainties.zip b/en/main/_downloads/319349fe95abb6b45635907cfe9f157f/plot_brightness_temperature_uncertainties.zip new file mode 100644 index 00000000..0e9fd403 Binary files /dev/null and b/en/main/_downloads/319349fe95abb6b45635907cfe9f157f/plot_brightness_temperature_uncertainties.zip differ diff --git a/en/main/_downloads/3814f535fe6e5618a14ae7c56df52f20/plot_weighting_functions.py b/en/main/_downloads/3814f535fe6e5618a14ae7c56df52f20/plot_weighting_functions.py new file mode 100644 index 00000000..2b919af5 --- /dev/null +++ b/en/main/_downloads/3814f535fe6e5618a14ae7c56df52f20/plot_weighting_functions.py @@ -0,0 +1,67 @@ +""" +Computation of Weighting Functions +================================== +""" + +# %% +# This example shows how to use the :py:class:`pyrtlib.weighting_functions.WeightingFunctions` method +# to compute the weighting functions for the MWS channels for the U.S. standard atmospheric profile. + +import numpy as np +import warnings +warnings.filterwarnings("ignore", category=UserWarning) +from pyrtlib.weighting_functions import WeightingFunctions +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies_sat + +z, p, _, t, md = atmp.gl_atm(atmp.US_STANDARD) +gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) +rh = mr2rh(p, t, gkg)[0] / 100 + +wf = WeightingFunctions(z, p, t, rh) +wf.frequencies = np.array([50.5, 53.2, 54.35, 54.9, 59.4, 58.825, 58.4]) +wgt = wf.generate_wf() + +wf.plot_wf(wgt, 'Downlooking', ylim=[0, 60], legend=True, figsize=(8, 6), dpi=100) + +#%% +# As above but with the weighting functions computed in uplooking mode. + +wf.satellite = False +wgt = wf.generate_wf() + +wf.plot_wf(wgt, 'Uplooking', ylim=[0, 10], figsize=(8, 6), dpi=100) + +#%% +# The weighting functions can also be computed for a different set of channels. +# The bandpass values are used to compute the weighting functions for the ATMS channels. +# The following code compute the weighting functions for the ATMS channels 5-15. + +cf53 = 53.596 +cf57 = 57.290344 +frq = np.array([52.8, cf53-0.115, cf53+0.115, 54.4, 54.94, 55.5, cf57, + cf57-0.217, cf57+0.217, + cf57-0.3222-0.048, cf57-0.3222+0.048, cf57+0.3222-0.048, cf57+0.3222+0.048, + cf57-0.3222-0.022, cf57-0.3222+0.022, cf57+0.3222-0.022, cf57+0.3222+0.022, + cf57-0.3222-0.010, cf57-0.3222+0.010, cf57+0.3222-0.010, cf57+0.3222+0.010, + cf57-0.3222-0.0045, cf57-0.3222+0.0045, cf57+0.3222-0.0045, cf57+0.3222+0.0045]) + +wf.satellite = True +wf.frequencies = frq +wf.bandpass = np.array([1, 2, 1, 1, 1, 1, 2, 4, 4, 4, 4]) +wf.legend_labels = [f'Channel {i+5}' for i in range(len(wf.bandpass))] +wgt = wf.generate_wf() + +wf.plot_wf(wgt, 'ATMS Channels 5-15', ylim=[0, 70], xlim=[0, 0.11], legend=True, figsize=(8, 6), dpi=100) + +#%% +# The weighting functions can also be computed for a different set of frequencies. +# The following code compute the weighting functions for the MWS channels for a standard tropical atmosphere. +# for grouped frequencies. + +wf.satellite = True +wf.frequencies = get_frequencies_sat('MWS') +wgt = wf.generate_wf() +wf.plot_wf_grouped(wgt, 'MWS Channels (grouped)', ylim=[0, 60], + grouped_frequencies=[4, 9, 19, 1, 13], + grouped_labels=['23-52', '53-55', '57', '89', '164-229'], dpi=350) \ No newline at end of file diff --git a/en/main/_downloads/3b4b7162abe309889f886349668ba61d/plot_bt_era5_cloudy_profile.ipynb b/en/main/_downloads/3b4b7162abe309889f886349668ba61d/plot_bt_era5_cloudy_profile.ipynb new file mode 100644 index 00000000..b8b1128e --- /dev/null +++ b/en/main/_downloads/3b4b7162abe309889f886349668ba61d/plot_bt_era5_cloudy_profile.ipynb @@ -0,0 +1,50 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using\nobservations from ERA5 Reanalysis hourly pressure levels dataset in cloudy condition.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\nimport matplotlib.gridspec as gridspec\n\nplt.rcParams.update({'font.size': 15})\nimport numpy as np\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.utils import import_lineshape, kgkg_to_kgm3\nfrom pyrtlib.absorption_model import H2OAbsModel\nfrom pyrtlib.apiwebservices import ERA5Reanalysis\n\n# To request dataset via CDS API\n# date = datetime(2020, 2, 22, 12)\n# nc_file = ERA5Reanalysis.request_data(tempfile.gettempdir(), date, lonlat)\n\nlonlat = (15.13, 37.87)\nnc_file = 'era5_reanalysis-2023-05-16T18:00:00.nc'\ndf_era5 = ERA5Reanalysis.read_data(nc_file, lonlat)\n\nmdl = 'R21SD'\nang = np.array([90.])\nfrq = np.arange(20, 101, 1)\nnf = len(frq)\n\ncldh = np.empty((2, 1))\ncldh[:, 0] = np.array([np.min(df_era5.z), np.max(df_era5.z)])\n\ntotal_mass = 1 - df_era5.ciwc.values - df_era5.clwc.values - df_era5.crwc.values - df_era5.cswc.values\ndenice = df_era5.ciwc.values * (1/total_mass) * kgkg_to_kgm3(df_era5.q.values * (1/total_mass),\n df_era5.p.values, df_era5.t.values) * 1000\ndenliq = df_era5.clwc.values * (1/total_mass) * kgkg_to_kgm3(df_era5.q.values * (1/total_mass),\n df_era5.p.values, df_era5.t.values) * 1000\n\nfig = plt.figure(figsize=(12, 8))\ngs = gridspec.GridSpec(1, 3,\n width_ratios=[3, 1, 1],\n height_ratios=[4],\n hspace=0, wspace=0.4)\nax1 = plt.subplot(gs[:, :-1])\nax2 = plt.subplot(gs[:, 2])\n\nfig.suptitle(\"ERA5 Reanalysis dataset (hourly pressure levels) {0} \\nLon. {1[0]}, Lat. {1[1]}\"\n .format(df_era5.time[0].strftime(format='%Y-%m-%d %H:%M'), lonlat), ha='center')\nax1.set_xlabel('Frequency [GHz]')\nax1.set_ylabel('${T_B}$ [K]')\n\nrte = TbCloudRTE(df_era5.z.values, df_era5.p.values, df_era5.t.values, df_era5.rh.values, frq, ang)\nrte.init_absmdl('R20')\nH2OAbsModel.model = 'R21SD'\nH2OAbsModel.h2oll = import_lineshape('h2oll')\nfor cloudy in [False, True]:\n rte.cloudy = cloudy\n rte.emissivity = 0.6\n rte.init_cloudy(cldh, denice, denliq)\n df = rte.execute()\n df = df.set_index(frq)\n c = '(cloudy)' if cloudy else '(clearsky)'\n df.tbtotal.plot(ax=ax1, linewidth=2, label='{} {}'.format(mdl, c))\n\nax2.set_xlabel('Density [$g/m^3$]')\nax2.set_ylabel('Pressure [hPa]')\nax2.plot(denliq, df_era5.p.values, label='LWC')\nax2.plot(denice, df_era5.p.values, label='IWC')\nax2.invert_yaxis()\n\nax1.legend()\nax2.legend()\n\ngs.tight_layout(fig)\nplt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/3b78f3e9071ebcf22f17fc1a98b3a9b5/plot_log_dependance_tb.zip b/en/main/_downloads/3b78f3e9071ebcf22f17fc1a98b3a9b5/plot_log_dependance_tb.zip new file mode 100644 index 00000000..bb171c99 Binary files /dev/null and b/en/main/_downloads/3b78f3e9071ebcf22f17fc1a98b3a9b5/plot_log_dependance_tb.zip differ diff --git a/en/main/_downloads/3e54be17bdb90f2c77e17ea2d7b12062/generic_tutorial.zip b/en/main/_downloads/3e54be17bdb90f2c77e17ea2d7b12062/generic_tutorial.zip new file mode 100644 index 00000000..45955640 Binary files /dev/null and b/en/main/_downloads/3e54be17bdb90f2c77e17ea2d7b12062/generic_tutorial.zip differ diff --git a/en/main/_downloads/3fef52615596d8c9700760235a75e3ac/plot_bt_wyoming.ipynb b/en/main/_downloads/3fef52615596d8c9700760235a75e3ac/plot_bt_wyoming.ipynb new file mode 100644 index 00000000..32881cc4 --- /dev/null +++ b/en/main/_downloads/3fef52615596d8c9700760235a75e3ac/plot_bt_wyoming.ipynb @@ -0,0 +1,50 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using\nobservations from Wyoming Upper Air Archive.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n\nplt.rcParams.update({'font.size': 15})\nimport numpy as np\nfrom datetime import datetime\n\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.utils import dewpoint2rh, import_lineshape, to_kelvin\nfrom pyrtlib.absorption_model import H2OAbsModel\nfrom pyrtlib.apiwebservices import WyomingUpperAir\n\ndate = datetime(2021, 4, 22, 12)\nstation = 'LIRE'\ndf_w = WyomingUpperAir.request_data(date, station)\n\nz, p, t, q = df_w.height.values / 1000, \\\n df_w.pressure.values, \\\n to_kelvin(df_w.temperature.values), \\\n df_w.mixr.values\n\nrh = dewpoint2rh(df_w.dewpoint, df_w.temperature).values\n\nmdl = 'R21SD'\nang = np.array([90.])\nfrq = np.arange(20, 201, 1)\nnf = len(frq)\n\nrte = TbCloudRTE(z, p, t, rh, frq, ang)\nrte.init_absmdl('R20')\nH2OAbsModel.model = 'R21SD'\nH2OAbsModel.h2oll = import_lineshape('h2oll')\ndf = rte.execute()\ndf = df.set_index(frq)\n\nfig, ax = plt.subplots(1, 1, figsize=(12, 8))\nplt.suptitle(df_w.title[0], y=0.96)\nplt.title(\"Wyoming UpperAir Radiosonde Archive\", fontsize=10, ha='center')\nax.set_xlabel('Frequency [GHz]')\nax.set_ylabel('${T_B}$ [K]')\ndf.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(df_w.station[0], mdl))\nax.grid(True, 'both')\nax.legend()\nplt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/401f89ab366ad326b20c58fc131c1764/plot_brightness_temperature_down.py b/en/main/_downloads/401f89ab366ad326b20c58fc131c1764/plot_brightness_temperature_down.py new file mode 100644 index 00000000..cd160244 --- /dev/null +++ b/en/main/_downloads/401f89ab366ad326b20c58fc131c1764/plot_brightness_temperature_down.py @@ -0,0 +1,54 @@ +""" +Performing Downwelling Brightness Temperature calculation +============================================================== +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate zenith downwelling brightness temperature +# for six reference atmosphere climatology with the R17 model. + +import matplotlib.pyplot as plt + +plt.rcParams.update({'font.size': 15}) +import numpy as np + +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.utils import ppmv2gkg, mr2rh + +atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + +fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + +for i in range(0, 6): + z, p, d, t, md = atmp.gl_atm(i) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + mdl = 'R17' + + ang = np.array([90.]) + frq = np.arange(20, 61, 0.5) + nf = len(frq) + + ax.set_xlabel('Frequency (GHz)') + ax.set_ylabel('BT (K)') + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.satellite = False + rte.init_absmdl(mdl) + df = rte.execute() + + df = df.set_index(frq) + df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i])) + +ax.grid(True, 'both') +ax.legend() +ax.set_box_aspect(0.8) +plt.show() diff --git a/en/main/_downloads/447d328fc54d3086ae0045aeb4d836cd/plot_model_cloudy.py b/en/main/_downloads/447d328fc54d3086ae0045aeb4d836cd/plot_model_cloudy.py new file mode 100644 index 00000000..fbce2ccf --- /dev/null +++ b/en/main/_downloads/447d328fc54d3086ae0045aeb4d836cd/plot_model_cloudy.py @@ -0,0 +1,74 @@ +""" +Performing Downwelling Brightness Temperature calculation in cloudy condition. +============================================================================== +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from ground (downwelling) in cloudy condition + +import matplotlib.pyplot as plt +from matplotlib.ticker import FixedLocator, FormatStrFormatter +plt.rcParams.update({'font.size': 15}) +import numpy as np +np.seterr('raise') + +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.utils import ppmv2gkg, mr2rh + +atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + +fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + +z, p, d, t, md = atmp.gl_atm(atmp.MIDLATITUDE_SUMMER) +gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) +rh = mr2rh(p, t, gkg)[0] / 100 + +mdl = 'R19SD' + +ang = np.array([90.]) +frq = np.arange(20, 61, 1) +nf = len(frq) + +denliq = np.zeros(z.shape) +denice = np.zeros(z.shape) +cldh = np.empty((2, 2)) + +for i in [False, True]: + if not i: + text_plot = 'clear-sky' + else: + # build a cloud + ib = 1 + it = 3 + denliq[ib:it + 1] = 10 * np.ones((it - ib + 1)) + cldh[:, 0] = np.array([z[ib], z[it]]) + ib = 29 + it = 31 + denice[ib:it + 1] = 0.1 * np.ones((it - ib + 1)) + cldh[:, 1] = np.array([z[ib], z[it]]) + text_plot = 'cloudy' + + ax.set_xlabel('Frequency (GHz)') + ax.set_ylabel('BT (K)') + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.satellite = False + rte.cloudy = i + rte.init_cloudy(cldh, denice, denliq) + rte.init_absmdl(mdl) + df = rte.execute() + + df = df.set_index(frq) + df.tbtotal.plot(x=frq, ax=ax, linewidth=1, + label='{} - {} ({})'.format(atm[atmp.MIDLATITUDE_SUMMER], mdl, text_plot)) + +ax.grid(True, 'both') +ax.legend() +plt.show() diff --git a/en/main/_downloads/47560e220557c2b6ecdcc0ad52dbb2c0/plot_water_vapour_profile.py b/en/main/_downloads/47560e220557c2b6ecdcc0ad52dbb2c0/plot_water_vapour_profile.py new file mode 100644 index 00000000..f30385f5 --- /dev/null +++ b/en/main/_downloads/47560e220557c2b6ecdcc0ad52dbb2c0/plot_water_vapour_profile.py @@ -0,0 +1,89 @@ +""" +Water Vapour Absorption Profiles +================================= +""" + +# %% +# This example shows how to use the +# :py:meth:`pyrtlib.rt_equation.RTEquation.clearsky_absorption` method to generate water vapor absorption profil and +# dry air absorption profile using ``R16`` model. + +# %% +import matplotlib.pyplot as plt + +plt.rcParams.update({'font.size': 15}) +import matplotlib.ticker as ticker +from matplotlib.ticker import ScalarFormatter +import numpy as np + +from pyrtlib.rt_equation import RTEquation +from pyrtlib.absorption_model import H2OAbsModel, O2AbsModel, AbsModel +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.utils import ppmv2gkg, mr2rh, import_lineshape, height_to_pressure + +z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL) +frq = np.arange(20, 61, 1) +ice = 0 +gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) +rh = mr2rh(p, t, gkg)[0] / 100 + +e, rho = RTEquation.vapor(t, rh, ice) + +mdl = 'R19SD' +AbsModel.model = mdl +H2OAbsModel.h2oll = import_lineshape('h2oll') +O2AbsModel.o2ll = import_lineshape('o2ll') + +awet = np.zeros((len(frq), len(z))) +adry = np.zeros((len(frq), len(z))) + +for j in range(0, len(frq)): + awet[j, :], adry[j, :] = RTEquation.clearsky_absorption(p, t, e, frq[j]) + +fig, ax = plt.subplots(1, 2, figsize=(12, 12)) +axis_lim = [0, 7] + + +def tick_function_pressure(x): + v = height_to_pressure(x * 1000) + return ["%.2f" % z for z in v] + + +ax[1].yaxis.set_label_position("right") +ax[1].yaxis.tick_right() +ax[1].yaxis.set_major_formatter(ScalarFormatter()) +ax[1].yaxis.set_major_formatter(ticker.FuncFormatter(lambda y, _: '{:g}'.format(y))) + +mask = np.isin(frq, [20, 22, 60]) +freq = np.nonzero(mask) +for i in freq[0]: + ax[0].plot(awet[i, :], z, label='{} GHz - {}'.format(frq[i], mdl)) + ax[1].plot(adry[i, :], z, label='{} GHz - {}'.format(frq[i], mdl)) + +# ax[0].plot(rho, z, label='Vapor density [g/m3]', linestyle='--') + +ax[0].set_xlabel("WV [Np/km]") +ax[1].set_xlabel("DryAir [Np/km]") +ax[1].axes.get_yaxis().set_visible(False) +ax[0].set_ylabel("Altitude [km]") + +ax[0].set_ylim(axis_lim) +ax[1].set_ylim(axis_lim) + +new_tick_locations_pressure = np.arange(0, 120, 1) + +ax3 = ax[0].twinx() +rspine = ax3.spines['left'].set_position(('axes', -0.2)) +ax3.yaxis.set_ticks_position("left") +ax3.yaxis.set_label_position("left") +ax3.set_frame_on(True) +ax3.patch.set_visible(False) +ax3.set_ylabel('Pressure [hPa]') +ax3.set_yticks(new_tick_locations_pressure) +ax3.set_yticklabels(tick_function_pressure(new_tick_locations_pressure)) +ax3.set_ylim(ax[1].get_ylim()) + +ax[0].legend(loc="upper right") +ax[1].legend(loc="upper right") + +fig.tight_layout() diff --git a/en/main/_downloads/4deaa0f82b3fc0a532dd1fcd7d6fe860/plot_weighting_functions.zip b/en/main/_downloads/4deaa0f82b3fc0a532dd1fcd7d6fe860/plot_weighting_functions.zip new file mode 100644 index 00000000..54ded2b6 Binary files /dev/null and b/en/main/_downloads/4deaa0f82b3fc0a532dd1fcd7d6fe860/plot_weighting_functions.zip differ diff --git a/en/main/_downloads/4f9d602b35f4b795ccd8ea3dc435dbc4/plot_bt_wyoming.py b/en/main/_downloads/4f9d602b35f4b795ccd8ea3dc435dbc4/plot_bt_wyoming.py new file mode 100644 index 00000000..e4c2ecc5 --- /dev/null +++ b/en/main/_downloads/4f9d602b35f4b795ccd8ea3dc435dbc4/plot_bt_wyoming.py @@ -0,0 +1,53 @@ +""" +Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations. +============================================================================================= +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using +# observations from Wyoming Upper Air Archive. + +import matplotlib.pyplot as plt + +plt.rcParams.update({'font.size': 15}) +import numpy as np +from datetime import datetime + +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.utils import dewpoint2rh, import_lineshape, to_kelvin +from pyrtlib.absorption_model import H2OAbsModel +from pyrtlib.apiwebservices import WyomingUpperAir + +date = datetime(2021, 4, 22, 12) +station = 'LIRE' +df_w = WyomingUpperAir.request_data(date, station) + +z, p, t, q = df_w.height.values / 1000, \ + df_w.pressure.values, \ + to_kelvin(df_w.temperature.values), \ + df_w.mixr.values + +rh = dewpoint2rh(df_w.dewpoint, df_w.temperature).values + +mdl = 'R21SD' +ang = np.array([90.]) +frq = np.arange(20, 201, 1) +nf = len(frq) + +rte = TbCloudRTE(z, p, t, rh, frq, ang) +rte.init_absmdl('R20') +H2OAbsModel.model = 'R21SD' +H2OAbsModel.h2oll = import_lineshape('h2oll') +df = rte.execute() +df = df.set_index(frq) + +fig, ax = plt.subplots(1, 1, figsize=(12, 8)) +plt.suptitle(df_w.title[0], y=0.96) +plt.title("Wyoming UpperAir Radiosonde Archive", fontsize=10, ha='center') +ax.set_xlabel('Frequency [GHz]') +ax.set_ylabel('${T_B}$ [K]') +df.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(df_w.station[0], mdl)) +ax.grid(True, 'both') +ax.legend() +plt.show() diff --git a/en/main/_downloads/545a8eca745cf80555f2db45658dd22f/plot_brightness_temperature_wO3.zip b/en/main/_downloads/545a8eca745cf80555f2db45658dd22f/plot_brightness_temperature_wO3.zip new file mode 100644 index 00000000..63fba8c5 Binary files /dev/null and b/en/main/_downloads/545a8eca745cf80555f2db45658dd22f/plot_brightness_temperature_wO3.zip differ diff --git a/en/main/_downloads/5cdf3ee321b29fe69773677ccc05d6aa/plot_bt_era5_cloudy_profile.zip b/en/main/_downloads/5cdf3ee321b29fe69773677ccc05d6aa/plot_bt_era5_cloudy_profile.zip new file mode 100644 index 00000000..27c544f2 Binary files /dev/null and b/en/main/_downloads/5cdf3ee321b29fe69773677ccc05d6aa/plot_bt_era5_cloudy_profile.zip differ diff --git a/en/main/_downloads/5d1984891389d40526e3e2f04c46697e/plot_bt_era5.zip b/en/main/_downloads/5d1984891389d40526e3e2f04c46697e/plot_bt_era5.zip new file mode 100644 index 00000000..edc655a4 Binary files /dev/null and b/en/main/_downloads/5d1984891389d40526e3e2f04c46697e/plot_bt_era5.zip differ diff --git a/en/main/_downloads/6b67c96fec0134a078005928be7add25/uncertainty_tutorial.py b/en/main/_downloads/6b67c96fec0134a078005928be7add25/uncertainty_tutorial.py new file mode 100644 index 00000000..9428e190 --- /dev/null +++ b/en/main/_downloads/6b67c96fec0134a078005928be7add25/uncertainty_tutorial.py @@ -0,0 +1,186 @@ +""" +Uncertainty Example +=================== +""" + +# %% +# This example shows how to use the uncertainty module by simulating the downwelling brightness temperature +# and then calculate the uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameter. + +# %% +import matplotlib.pyplot as plt + +plt.rcParams.update({'font.size': 15}) +import matplotlib.ticker as ticker +from matplotlib.ticker import ScalarFormatter +import numpy as np +import pandas as pd + +# %% [markdown] +# Import pyrtlib package and tools +# ________________________________ + +# %% +from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.absorption_model import O2AbsModel +from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies, constants +from pyrtlib.uncertainty import covariance_matrix + +# %% [markdown] +# Define spectroscopic parameters to be perturbed and them uncertainties +# ______________________________________________________________________ + + +# %% +O2_parameters = { + 'O2S': range(1), + 'X05': [None], + 'WB300': [None], + 'O2gamma': range(34), + 'Y300': range(34), + 'O2_V': range(34) +} + +HO2_parameters = { + 'con_Cf_factr': [None], + 'con_Cs_factr': [None], + 'gamma_a': range(1), + 'S': range(1), + 'con_Xf': [None], + 'SR': range(1), + 'con_Xs': [None] +} + +# %% +parameters = {**SpectroscopicParameter.oxygen_parameters('R18'), + **SpectroscopicParameter.water_parameters('R17')} + +parameters['O2S'].uncer = parameters['O2S'].value / 100 +parameters['X05'].uncer = 0.05 +parameters['WB300'].uncer = 0.05 +parameters['O2gamma'].uncer[0: 34] = np.array([0.05, 0.0138964, 0.0138964, 0.0138964, 0.0138964, + 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964, + 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964, + 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964, + 0.0138964, 0.01131274, 0.01131274, 0.01453087, 0.01453087, + 0.01789881, 0.01789881, 0.02116733, 0.02134575, 0.02476584, + 0.02476584, 0.02839177, 0.02839177, 0.03203582]) +parameters['Y300'].uncer[0: 34] = np.array([0.01, 0.00404133, 0.00502581, 0.00786035, 0.00820458, + 0.00935381, 0.00809901, 0.0078214, 0.00544132, 0.00460658, + 0.00225117, 0.00209907, 0.0039399, 0.00484963, 0.00799499, + 0.00878031, 0.01202685, 0.01261821, 0.01577055, 0.01615187, + 0.01907464, 0.01926978, 0.0218633, 0.02188287, 0.02416567, + 0.02401716, 0.02604178, 0.02575469, 0.02762271, 0.02720018, + 0.02897909, 0.02843003, 0.03019027, 0.02951218]) +parameters['O2_V'].uncer[0: 34] = np.array([0.00288243, 0.04655306, 0.03914166, 0.06110402, 0.0494057, + 0.05728709, 0.06444876, 0.07279906, 0.06385863, 0.07007177, + 0.05963384, 0.06373721, 0.11789158, 0.12307213, 0.10151855, + 0.10427449, 0.08328802, 0.08486523, 0.10130857, 0.10244286, + 0.15750036, 0.15814743, 0.24421784, 0.24343211, 0.3084326, + 0.30576201, 0.34568212, 0.34107696, 0.36123446, 0.35507902, + 0.37305309, 0.36544166, 0.38490936, 0.37583782]) + +parameters['gamma_a'].uncer[0] = 0.039 +parameters['S'].uncer[0] = 0.043 * 1e-25 * constants('light')[0] * 100 +parameters['con_Xf'].uncer = 0.8 +parameters['SR'].uncer[0] = 0.0014 +parameters['con_Xs'].uncer = 0.6 + +SpectroscopicParameter.set_parameters(parameters) + + +# %% [markdown] +# Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used. +# ____________________________________________________________________________________________________________________________ + +# %% +z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL) + +gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) +rh = mr2rh(p, t, gkg)[0] / 100 + +# %% [markdown] +# Use frequencies set of HATPRO Radiometer +# ________________________________________ + +# %% +interp = 0.5 +frq = sorted(list(set().union(get_frequencies('hat'), np.arange(20, 60 + interp, interp).tolist()))) + +# %% [markdown] +# Performing uncertainty of brightness temperature +# ________________________________________________ +# Default calculatoin consideres no cloud and no perturbation + +# %% +rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters) +rte.satellite = False +rte.init_absmdl('R17') +O2AbsModel.model = 'R18' +O2AbsModel.set_ll() +df = rte.execute() + +# %% +df_out = pd.DataFrame() +df_out['freq'] = frq +df_out['tb'] = df.tbtotal + +# %% [markdown] +# Calculate Jacobian matrix +# _________________________ +# :math:`Cov(T_{b}) = K_{p} \times Cov(p) \times K_{p}^T` + +# %% +cnt = 0 +for k, v in (O2_parameters | HO2_parameters).items(): + for i in v: + amu_p = AbsModUncertainty.parameters_perturbation([k], 'max', index=i) + rte.set_amu(amu_p) + df = rte.execute() + if k =='O2S': + parameters[k].uncer = parameters[k].uncer / parameters[k].value * 100 + if k in ['con_Cf_factr', 'con_Cs_factr']: + parameters[k].uncer = parameters[k[0:6]].value * parameters[k].uncer + field_name = 'p_{}{}'.format(k, '_' + str(i) if i else '') + delta_tb = df.tbtotal.values - df_out.tb.values + if i is not None: + o = pd.Series(delta_tb / parameters[k].uncer[i], name=field_name) + else: + o = pd.Series(delta_tb / parameters[k].uncer, name=field_name) + df_out = pd.concat([df_out, o], axis=1) + cnt += 1 + +# %% [markdown] +# Calculate uncertainty (sigma) for BT +# ____________________________________ +# Using covariance matrix by [Cimini-2018]_ which identifies 111 parameters (6 for water vapor and 105 for oxygen) + +# %% +params = df_out.copy() + +Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq', 'p_con_Xs'])].values +covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_111), Kp.T) +sigma_tb = np.sqrt(np.diag(covtb)) +params['sigma_tb'] = sigma_tb + +# %% [markdown] +# Using covariance matrix by [Cimini-2019]_ which add the :math:`{n_{CS}}` parameter for water vapour + +# %% +Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq'])].values +covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_112), Kp.T) +sigma_tb = np.sqrt(np.diag(covtb)) +params['sigma_tb_with_con_Xs'] = sigma_tb + +# %% +params.plot(x='freq', y=['sigma_tb', 'sigma_tb_with_con_Xs'], + title="${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters", + xlabel='Frequency [GHz]', ylabel='$\sigma_{T_B}$ [K]', + label=[atmp.atm_profiles()[atmp.TROPICAL], + atmp.atm_profiles()[atmp.TROPICAL] + ' with ${H_2 O}$ ${n_{CS}}$ parameter'], + figsize=(12,8)) +plt.grid() + + diff --git a/en/main/_downloads/6b9efd2e64d4b9ff8ab7da5022dcf1da/plot_log_dependance_tb.ipynb b/en/main/_downloads/6b9efd2e64d4b9ff8ab7da5022dcf1da/plot_log_dependance_tb.ipynb new file mode 100644 index 00000000..ccf59a2f --- /dev/null +++ b/en/main/_downloads/6b9efd2e64d4b9ff8ab7da5022dcf1da/plot_log_dependance_tb.ipynb @@ -0,0 +1,50 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows the logarithmic dependence of monochromatic radiance at 22.235 GHz and 183 GHz\non the water vapor content in the atmosphere. The brigthness temperature are calculated using the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method for the zenith view angle and\nthe following water vapor content: 1/8, 1/4, 1/2, 1, 2, 4, 8 times the water vapor\ncontent of the reference atmosphere. The reference atmosphere is the Tropical atmosphere\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "# Reference: Huang & Bani, 2014. \n\nimport numpy as np\n\nimport matplotlib.pyplot as plt\nimport matplotlib as mpl\nmpl.rcParams[\"axes.spines.right\"] = True\nmpl.rcParams[\"axes.spines.top\"] = True\nplt.rcParams.update({'font.size': 30})\n\n\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.absorption_model import O2AbsModel\nfrom pyrtlib.utils import ppmv2gkg, mr2rh\n\nz, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)\n\ntb_23 = []\ntb_183 = []\ntau_23 = []\ntau_183 = []\nm = [1/8, 1/4, 1/2, 1, 2, 4, 8]\n\nfor i in range(0, 7):\n gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) * m[i]\n rh = mr2rh(p, t, gkg)[0] / 100\n\n # frq = np.arange(20, 201, 1)\n frq = np.array([22.235, 183])\n rte = TbCloudRTE(z, p, t, rh, frq)\n rte.init_absmdl('R22SD')\n O2AbsModel.model = 'R22'\n df = rte.execute()\n df['tau'] = df.tauwet + df.taudry\n tb_23.append(df.tbtotal[0])\n tb_183.append(df.tbtotal[1])\n tau_23.append(df.tau[0])\n tau_183.append(df.tau[1])\n \ntb_023 = np.array(tb_23) - tb_23[3]\ntb_0183 = np.array(tb_183) - tb_183[3]\n\nfig, axes = plt.subplots(2, 2, figsize=(24, 14), sharex=True)\naxes[0, 1].tick_params(axis='both', direction='in', length=10, width=.5)\naxes[0, 1].plot(np.log2(m), tb_0183, linestyle='--', linewidth=3, color='black')\naxes[0, 1].plot(np.log2(m), tb_0183, marker='+', linestyle='None', color='r', ms=20, markeredgewidth=5)\naxes[0, 1].set_title(f\"{frq[1]} GHz\")\naxes[0, 1].grid(True, 'both')\naxes[0, 1].annotate(\"c)\", xy=(0.02, 0.05), xycoords='axes fraction', fontsize=40)\n\naxes[0, 0].set_ylabel('$\\Delta T_B$ [K]')\naxes[0, 0].tick_params(axis='both', direction='in', length=10, width=.5)\naxes[0, 0].plot(np.log2(m), tb_023, linestyle='--', linewidth=3, color='black')\naxes[0, 0].plot(np.log2(m), tb_023, marker='+', linestyle='None', color='r', ms=20, markeredgewidth=5)\naxes[0, 0].set_title(f\"{frq[0]} GHz\")\naxes[0, 0].grid(True, 'both')\naxes[0, 0].annotate(\"a)\", xy=(0.02, 0.05), xycoords='axes fraction', fontsize=40)\n\naxes[1, 1].set_xlabel('$log_2(SF_{q_{H_2O}}))$')\naxes[1, 1].tick_params(axis='both', direction='in', length=10, width=.5)\naxes[1, 1].plot(np.log2(m), tau_183, linestyle='--', linewidth=3, color='black')\naxes[1, 1].plot(np.log2(m), tau_183, marker='+', linestyle='None', color='blue', ms=20, markeredgewidth=5)\naxes[1, 1].grid(True, 'both')\naxes[1, 1].annotate(\"d)\", xy=(0.02, 0.88), xycoords='axes fraction', fontsize=40)\n\naxes[1, 0].set_xlabel('$log_2(SF_{q_{H_2O}})$')\naxes[1, 0].set_ylabel('$\\\\tau$ [Np]')\naxes[1, 0].tick_params(axis='both', direction='in', length=10, width=.5)\naxes[1, 0].plot(np.log2(m), tau_23, linestyle='--', linewidth=3, color='black')\naxes[1, 0].plot(np.log2(m), tau_23, marker='+', linestyle='None', color='blue', ms=20, markeredgewidth=5)\naxes[1, 0].grid(True, 'both')\naxes[1, 0].annotate(\"b)\", xy=(0.02, 0.88), xycoords='axes fraction', fontsize=40)\n\nplt.tight_layout()\n\nplt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/722b2410a6f83867d682b3325a1ef8ce/plot_water_vapour_profile.ipynb b/en/main/_downloads/722b2410a6f83867d682b3325a1ef8ce/plot_water_vapour_profile.ipynb new file mode 100644 index 00000000..1b092028 --- /dev/null +++ b/en/main/_downloads/722b2410a6f83867d682b3325a1ef8ce/plot_water_vapour_profile.ipynb @@ -0,0 +1,50 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Water Vapour Absorption Profiles\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:meth:`pyrtlib.rt_equation.RTEquation.clearsky_absorption` method to generate water vapor absorption profil and\ndry air absorption profile using ``R16`` model.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n\nplt.rcParams.update({'font.size': 15})\nimport matplotlib.ticker as ticker\nfrom matplotlib.ticker import ScalarFormatter\nimport numpy as np\n\nfrom pyrtlib.rt_equation import RTEquation\nfrom pyrtlib.absorption_model import H2OAbsModel, O2AbsModel, AbsModel\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.utils import ppmv2gkg, mr2rh, import_lineshape, height_to_pressure\n\nz, p, d, t, md = atmp.gl_atm(atmp.TROPICAL)\nfrq = np.arange(20, 61, 1)\nice = 0\ngkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\nrh = mr2rh(p, t, gkg)[0] / 100\n\ne, rho = RTEquation.vapor(t, rh, ice)\n\nmdl = 'R19SD'\nAbsModel.model = mdl\nH2OAbsModel.h2oll = import_lineshape('h2oll')\nO2AbsModel.o2ll = import_lineshape('o2ll')\n\nawet = np.zeros((len(frq), len(z)))\nadry = np.zeros((len(frq), len(z)))\n\nfor j in range(0, len(frq)):\n awet[j, :], adry[j, :] = RTEquation.clearsky_absorption(p, t, e, frq[j])\n\nfig, ax = plt.subplots(1, 2, figsize=(12, 12))\naxis_lim = [0, 7]\n\n\ndef tick_function_pressure(x):\n v = height_to_pressure(x * 1000)\n return [\"%.2f\" % z for z in v]\n\n\nax[1].yaxis.set_label_position(\"right\")\nax[1].yaxis.tick_right()\nax[1].yaxis.set_major_formatter(ScalarFormatter())\nax[1].yaxis.set_major_formatter(ticker.FuncFormatter(lambda y, _: '{:g}'.format(y)))\n\nmask = np.isin(frq, [20, 22, 60])\nfreq = np.nonzero(mask)\nfor i in freq[0]:\n ax[0].plot(awet[i, :], z, label='{} GHz - {}'.format(frq[i], mdl))\n ax[1].plot(adry[i, :], z, label='{} GHz - {}'.format(frq[i], mdl))\n\n# ax[0].plot(rho, z, label='Vapor density [g/m3]', linestyle='--')\n\nax[0].set_xlabel(\"WV [Np/km]\")\nax[1].set_xlabel(\"DryAir [Np/km]\")\nax[1].axes.get_yaxis().set_visible(False)\nax[0].set_ylabel(\"Altitude [km]\")\n\nax[0].set_ylim(axis_lim)\nax[1].set_ylim(axis_lim)\n\nnew_tick_locations_pressure = np.arange(0, 120, 1)\n\nax3 = ax[0].twinx()\nrspine = ax3.spines['left'].set_position(('axes', -0.2))\nax3.yaxis.set_ticks_position(\"left\")\nax3.yaxis.set_label_position(\"left\")\nax3.set_frame_on(True)\nax3.patch.set_visible(False)\nax3.set_ylabel('Pressure [hPa]')\nax3.set_yticks(new_tick_locations_pressure)\nax3.set_yticklabels(tick_function_pressure(new_tick_locations_pressure))\nax3.set_ylim(ax[1].get_ylim())\n\nax[0].legend(loc=\"upper right\")\nax[1].legend(loc=\"upper right\")\n\nfig.tight_layout()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/7c04bcb4b680edc1fa6d55e08a3be980/plot_brightness_temperature_up.zip b/en/main/_downloads/7c04bcb4b680edc1fa6d55e08a3be980/plot_brightness_temperature_up.zip new file mode 100644 index 00000000..5225f1ef Binary files /dev/null and b/en/main/_downloads/7c04bcb4b680edc1fa6d55e08a3be980/plot_brightness_temperature_up.zip differ diff --git a/en/main/_downloads/822f794e86b5ec7be5e164309550123f/plot_atmosphere.py b/en/main/_downloads/822f794e86b5ec7be5e164309550123f/plot_atmosphere.py new file mode 100644 index 00000000..21f943cb --- /dev/null +++ b/en/main/_downloads/822f794e86b5ec7be5e164309550123f/plot_atmosphere.py @@ -0,0 +1,85 @@ +""" +Atmospheric Profiles +==================== +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.climatology.AtmosphericProfiles` method to generate temperature and relative humidity profiles + +# %% +import matplotlib.pyplot as plt + +plt.rcParams.update({'font.size': 15}) +import matplotlib.ticker as ticker +from matplotlib.ticker import ScalarFormatter +import numpy as np + +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.utils import ppmv2gkg, mr2rh, height_to_pressure + + +def tick_function(x): + v = x - 273.15 + return ["%.1f" % z for z in v] + + +def tick_function_pressure(p, z, ticks): + values = [] + for tick in ticks: + v = p[np.where(z==tick)] + values.append(v[0]) + return values + + +z, p, d, t, md = atmp.gl_atm(atmp.US_STANDARD) + +gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) +rh = mr2rh(p, t, gkg)[0] / 100 + +fig, ax = plt.subplots(1, 2, figsize=(12, 12)) +ax1 = ax[0].twiny() + +ax[1].yaxis.set_label_position("right") +ax[1].yaxis.tick_right() +ax[1].yaxis.set_major_formatter(ScalarFormatter()) +ax[1].yaxis.set_major_formatter(ticker.FuncFormatter(lambda y, _: '{:g}'.format(y))) + +fig.subplots_adjust(bottom=0.2) + +ax[0].plot(t, z) +ax[1].plot(rh * 100, z) +ax[0].set_xlabel("Temperature [K]") +ax[1].set_xlabel("Relative Humidity [%]") +ax[1].axes.get_yaxis().set_visible(False) +ax[0].set_ylabel("Altitude [km]") + +new_tick_locations_pressure = np.arange(0, 140, 20) +ax3 = ax[0].twinx() +rspine = ax3.spines['left'].set_position(('axes', -0.2)) +ax3.yaxis.set_ticks_position("left") +ax3.yaxis.set_label_position("left") +ax3.set_frame_on(True) +ax3.patch.set_visible(False) +ax3.set_ylabel('Pressure [hPa]') +ax3.set_yticks(new_tick_locations_pressure) +ax3.set_yticklabels(tick_function_pressure(p, z, new_tick_locations_pressure)) +ax3.set_ylim(ax[1].get_ylim()) + +new_tick_locations = np.arange(175, 400, 50) + +ax1.xaxis.set_ticks_position("bottom") +ax1.xaxis.set_label_position("bottom") + +# Offset the twin axis below the host +ax1.spines["bottom"].set_position(("axes", -0.1)) +ax1.set_frame_on(True) +ax1.patch.set_visible(False) + +ax1.spines["bottom"].set_visible(True) + +ax1.set_xticks(new_tick_locations) +ax1.set_xticklabels(tick_function(new_tick_locations)) +ax1.set_xlabel("Temperature [°C]") +ax1.set_xlim(ax[0].get_xlim()) +fig.tight_layout() diff --git a/en/main/_downloads/8d82db7fb51342e1980391e8815cdbc1/plot_brightness_temperature_wO3.py b/en/main/_downloads/8d82db7fb51342e1980391e8815cdbc1/plot_brightness_temperature_wO3.py new file mode 100644 index 00000000..afd220f1 --- /dev/null +++ b/en/main/_downloads/8d82db7fb51342e1980391e8815cdbc1/plot_brightness_temperature_wO3.py @@ -0,0 +1,91 @@ +""" +Performing Downwelling Brightness Temperature calculation with Ozone +==================================================================== +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate downwelling brightness temperature with ozone. + +import matplotlib.pyplot as plt + +plt.rcParams.update({'font.size': 15}) +import numpy as np + +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.absorption_model import H2OAbsModel, O3AbsModel +from pyrtlib.utils import ppmv2gkg, mr2rh, ppmv_to_moleculesm3, constants + +atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + +fig, ax = plt.subplots(1, 1, figsize=(12, 8)) +ax.set_xlabel('Frequency [GHz]') +ax.set_ylabel('${T_B}$ [K]') + +z, p, d, t, md = atmp.gl_atm(atmp.US_STANDARD) # 'U.S. Standard' + +o3n_ppmv = md[:, atmp.O3] +o3n = np.zeros(z.shape) +for k in range(0, len(z)): + o3n[k] = ppmv_to_moleculesm3(o3n_ppmv[k], p[k] * 100.0, t[k]) + +gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) +rh = mr2rh(p, t, gkg)[0] / 100 + +ang = np.array([90.]) +frq = np.arange(20, 201, 1) + +rte = TbCloudRTE(z, p, t, rh, frq, ang, o3n) +rte.init_absmdl('R20') +rte.satellite = False +H2OAbsModel.model = 'R21SD' +H2OAbsModel.set_ll() +O3AbsModel.model = 'R18' +O3AbsModel.set_ll() +df = rte.execute() + +df = df.set_index(frq) +df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.US_STANDARD], 'R21SD')) + +style = dict(size=20, color='gray', ha='center') +ax.text(22, 45, "${H_2O}$", **style) +ax.text(60, 255, "${O_2}$", **style) +ax.text(119, 280, "${O_2}$", **style) +ax.text(142, 100, "${O_3}$", **style) +ax.text(183, 245, "${H_2O}$", **style) + +def ghz_to_mm(ghz): + f = ghz * 1e9 + c = constants('light')[0] + return (c/f) * 1e3 + +def mm_to_ghz(mm): + l = mm / 1e3 + c = constants('light')[0] + return (c/l) / 1e9 + +secax = ax.secondary_xaxis('top', functions=(ghz_to_mm, mm_to_ghz)) +secax.set_xlabel('$\lambda$ [mm]') + +ax.legend() +plt.show() + +# %% +# Compute R21SD model without Ozone and plotting difference +O3AbsModel.model = '' +df_no_o3 = rte.execute() +df_no_o3 = df_no_o3.set_index(frq) +df['delta'] = df.tbtotal - df_no_o3.tbtotal + +fig, ax = plt.subplots(1, 1, figsize=(12,8)) +ax.set_xlabel('Frequency [GHz]') +ax.set_ylabel('$\Delta {T_B}$ [K]') +df.delta.plot(ax=ax, figsize=(12,8), label='$\Delta {T_B}$ (R21SD-R21SD_w03)') +ax.legend() +plt.show() diff --git a/en/main/_downloads/93339629978ad4f5c6de6c48807432b1/plot_brightness_temperature_up.ipynb b/en/main/_downloads/93339629978ad4f5c6de6c48807432b1/plot_brightness_temperature_up.ipynb new file mode 100644 index 00000000..765e945c --- /dev/null +++ b/en/main/_downloads/93339629978ad4f5c6de6c48807432b1/plot_brightness_temperature_up.ipynb @@ -0,0 +1,50 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Performing Upwelling Brightness Temperature calculation\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate zenith upwelling brightness temperature\nfor six reference atmosphere climatology with the R19SD model.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n\nplt.rcParams.update({'font.size': 15})\nimport numpy as np\n\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.utils import ppmv2gkg, mr2rh\n\natm = ['Tropical',\n 'Midlatitude Summer',\n 'Midlatitude Winter',\n 'Subarctic Summer',\n 'Subarctic Winter',\n 'U.S. Standard']\n\nfig, ax = plt.subplots(1, 1, figsize=(12, 8))\n\nfor i in range(0, 6):\n z, p, d, t, md = atmp.gl_atm(i)\n gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n rh = mr2rh(p, t, gkg)[0] / 100\n\n mdl = 'R19SD'\n\n ang = np.array([90.])\n frq = np.arange(20, 61, 1)\n nf = len(frq)\n\n ax.set_xlabel('Frequency (GHz)')\n ax.set_ylabel('BT (K)')\n\n rte = TbCloudRTE(z, p, t, rh, frq, ang)\n rte.init_absmdl(mdl)\n df = rte.execute()\n\n df = df.set_index(frq)\n df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i]))\n\nax.grid(True, 'both')\nax.legend()\nax.set_box_aspect(0.8)\nplt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/ad64ea7d4edfb3c85305cff2764ef435/plot_atmosphere.ipynb b/en/main/_downloads/ad64ea7d4edfb3c85305cff2764ef435/plot_atmosphere.ipynb new file mode 100644 index 00000000..ef73e4e4 --- /dev/null +++ b/en/main/_downloads/ad64ea7d4edfb3c85305cff2764ef435/plot_atmosphere.ipynb @@ -0,0 +1,50 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Atmospheric Profiles\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.climatology.AtmosphericProfiles` method to generate temperature and relative humidity profiles\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n\nplt.rcParams.update({'font.size': 15})\nimport matplotlib.ticker as ticker\nfrom matplotlib.ticker import ScalarFormatter\nimport numpy as np\n\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.utils import ppmv2gkg, mr2rh, height_to_pressure\n\n\ndef tick_function(x):\n v = x - 273.15\n return [\"%.1f\" % z for z in v]\n\n\ndef tick_function_pressure(p, z, ticks):\n values = []\n for tick in ticks:\n v = p[np.where(z==tick)]\n values.append(v[0])\n return values\n\n\nz, p, d, t, md = atmp.gl_atm(atmp.US_STANDARD)\n\ngkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\nrh = mr2rh(p, t, gkg)[0] / 100\n\nfig, ax = plt.subplots(1, 2, figsize=(12, 12))\nax1 = ax[0].twiny()\n\nax[1].yaxis.set_label_position(\"right\")\nax[1].yaxis.tick_right()\nax[1].yaxis.set_major_formatter(ScalarFormatter())\nax[1].yaxis.set_major_formatter(ticker.FuncFormatter(lambda y, _: '{:g}'.format(y)))\n\nfig.subplots_adjust(bottom=0.2)\n\nax[0].plot(t, z)\nax[1].plot(rh * 100, z)\nax[0].set_xlabel(\"Temperature [K]\")\nax[1].set_xlabel(\"Relative Humidity [%]\")\nax[1].axes.get_yaxis().set_visible(False)\nax[0].set_ylabel(\"Altitude [km]\")\n\nnew_tick_locations_pressure = np.arange(0, 140, 20)\nax3 = ax[0].twinx()\nrspine = ax3.spines['left'].set_position(('axes', -0.2))\nax3.yaxis.set_ticks_position(\"left\")\nax3.yaxis.set_label_position(\"left\")\nax3.set_frame_on(True)\nax3.patch.set_visible(False)\nax3.set_ylabel('Pressure [hPa]')\nax3.set_yticks(new_tick_locations_pressure)\nax3.set_yticklabels(tick_function_pressure(p, z, new_tick_locations_pressure))\nax3.set_ylim(ax[1].get_ylim())\n\nnew_tick_locations = np.arange(175, 400, 50)\n\nax1.xaxis.set_ticks_position(\"bottom\")\nax1.xaxis.set_label_position(\"bottom\")\n\n# Offset the twin axis below the host\nax1.spines[\"bottom\"].set_position((\"axes\", -0.1))\nax1.set_frame_on(True)\nax1.patch.set_visible(False)\n\nax1.spines[\"bottom\"].set_visible(True)\n\nax1.set_xticks(new_tick_locations)\nax1.set_xticklabels(tick_function(new_tick_locations))\nax1.set_xlabel(\"Temperature [\u00b0C]\")\nax1.set_xlim(ax[0].get_xlim())\nfig.tight_layout()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/af14f4a433fcac796bd8c7b0cd64d76e/plot_brightness_temperature_wO3.ipynb b/en/main/_downloads/af14f4a433fcac796bd8c7b0cd64d76e/plot_brightness_temperature_wO3.ipynb new file mode 100644 index 00000000..93cc2e5f --- /dev/null +++ b/en/main/_downloads/af14f4a433fcac796bd8c7b0cd64d76e/plot_brightness_temperature_wO3.ipynb @@ -0,0 +1,68 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Performing Downwelling Brightness Temperature calculation with Ozone\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate downwelling brightness temperature with ozone.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n\nplt.rcParams.update({'font.size': 15})\nimport numpy as np\n\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.absorption_model import H2OAbsModel, O3AbsModel\nfrom pyrtlib.utils import ppmv2gkg, mr2rh, ppmv_to_moleculesm3, constants\n\natm = ['Tropical',\n 'Midlatitude Summer',\n 'Midlatitude Winter',\n 'Subarctic Summer',\n 'Subarctic Winter',\n 'U.S. Standard']\n\nfig, ax = plt.subplots(1, 1, figsize=(12, 8))\nax.set_xlabel('Frequency [GHz]')\nax.set_ylabel('${T_B}$ [K]')\n\nz, p, d, t, md = atmp.gl_atm(atmp.US_STANDARD) # 'U.S. Standard'\n\no3n_ppmv = md[:, atmp.O3]\no3n = np.zeros(z.shape)\nfor k in range(0, len(z)):\n o3n[k] = ppmv_to_moleculesm3(o3n_ppmv[k], p[k] * 100.0, t[k])\n\ngkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\nrh = mr2rh(p, t, gkg)[0] / 100\n\nang = np.array([90.])\nfrq = np.arange(20, 201, 1)\n\nrte = TbCloudRTE(z, p, t, rh, frq, ang, o3n)\nrte.init_absmdl('R20')\nrte.satellite = False\nH2OAbsModel.model = 'R21SD'\nH2OAbsModel.set_ll()\nO3AbsModel.model = 'R18'\nO3AbsModel.set_ll()\ndf = rte.execute()\n\ndf = df.set_index(frq)\ndf.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.US_STANDARD], 'R21SD'))\n\nstyle = dict(size=20, color='gray', ha='center')\nax.text(22, 45, \"${H_2O}$\", **style)\nax.text(60, 255, \"${O_2}$\", **style)\nax.text(119, 280, \"${O_2}$\", **style)\nax.text(142, 100, \"${O_3}$\", **style)\nax.text(183, 245, \"${H_2O}$\", **style)\n\ndef ghz_to_mm(ghz):\n f = ghz * 1e9\n c = constants('light')[0]\n return (c/f) * 1e3\n\ndef mm_to_ghz(mm):\n l = mm / 1e3\n c = constants('light')[0]\n return (c/l) / 1e9\n\nsecax = ax.secondary_xaxis('top', functions=(ghz_to_mm, mm_to_ghz))\nsecax.set_xlabel('$\\lambda$ [mm]')\n\nax.legend()\nplt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Compute R21SD model without Ozone and plotting difference\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "O3AbsModel.model = ''\ndf_no_o3 = rte.execute()\ndf_no_o3 = df_no_o3.set_index(frq)\ndf['delta'] = df.tbtotal - df_no_o3.tbtotal\n\nfig, ax = plt.subplots(1, 1, figsize=(12,8))\nax.set_xlabel('Frequency [GHz]')\nax.set_ylabel('$\\Delta {T_B}$ [K]')\ndf.delta.plot(ax=ax, figsize=(12,8), label='$\\Delta {T_B}$ (R21SD-R21SD_w03)')\nax.legend()\nplt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/b3a6f592f21f694fff123c91573fd0db/plot_bt_era5.py b/en/main/_downloads/b3a6f592f21f694fff123c91573fd0db/plot_bt_era5.py new file mode 100644 index 00000000..4d3b04f6 --- /dev/null +++ b/en/main/_downloads/b3a6f592f21f694fff123c91573fd0db/plot_bt_era5.py @@ -0,0 +1,50 @@ +""" +Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations. +=========================================================================================== +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using +# observations from ERA5 Reanalysis hourly pressure levels dataset. + +import matplotlib.pyplot as plt + +plt.rcParams.update({'font.size': 15}) +import numpy as np +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.utils import import_lineshape +from pyrtlib.absorption_model import H2OAbsModel +from pyrtlib.apiwebservices import ERA5Reanalysis + +# To request dataset via CDS API +# date = datetime(2020, 2, 22, 12) +# nc_file = ERA5Reanalysis.request_data(tempfile.gettempdir(), date, lonlat) + +# Tito Scalo, Potenza, Italy +lonlat = (15.8158, 38.2663) +nc_file = 'era5_reanalysis-2023-05-16T18:00:00.nc' +df_era5 = ERA5Reanalysis.read_data(nc_file, lonlat) + +mdl = 'R21SD' +ang = np.array([90.]) +frq = np.arange(20, 201, 1) +nf = len(frq) + +rte = TbCloudRTE(df_era5.z.values, df_era5.p.values, df_era5.t.values, df_era5.rh.values, frq, ang) +rte.init_absmdl('R20') +H2OAbsModel.model = 'R21SD' +H2OAbsModel.h2oll = import_lineshape('h2oll') +df = rte.execute() +df = df.set_index(frq) + +fig, ax = plt.subplots(1, 1, figsize=(12, 8)) +plt.title( + "ERA5 Reanalysis dataset (hourly pressure levels) {}".format(df_era5.time[0].strftime(format='%Y-%m-%d %H:%M')), + ha='center') +ax.set_xlabel('Frequency [GHz]') +ax.set_ylabel('${T_B}$ [K]') +df.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(lonlat, mdl)) +ax.grid(True, 'both') +ax.legend() +plt.show() diff --git a/en/main/_downloads/b8f5bd6af838634d7215d193ff88c036/plot_bt_era5.ipynb b/en/main/_downloads/b8f5bd6af838634d7215d193ff88c036/plot_bt_era5.ipynb new file mode 100644 index 00000000..0465d1e9 --- /dev/null +++ b/en/main/_downloads/b8f5bd6af838634d7215d193ff88c036/plot_bt_era5.ipynb @@ -0,0 +1,50 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using\nobservations from ERA5 Reanalysis hourly pressure levels dataset.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n\nplt.rcParams.update({'font.size': 15})\nimport numpy as np\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.utils import import_lineshape\nfrom pyrtlib.absorption_model import H2OAbsModel\nfrom pyrtlib.apiwebservices import ERA5Reanalysis\n\n# To request dataset via CDS API\n# date = datetime(2020, 2, 22, 12)\n# nc_file = ERA5Reanalysis.request_data(tempfile.gettempdir(), date, lonlat)\n\n# Tito Scalo, Potenza, Italy\nlonlat = (15.8158, 38.2663)\nnc_file = 'era5_reanalysis-2023-05-16T18:00:00.nc'\ndf_era5 = ERA5Reanalysis.read_data(nc_file, lonlat)\n\nmdl = 'R21SD'\nang = np.array([90.])\nfrq = np.arange(20, 201, 1)\nnf = len(frq)\n\nrte = TbCloudRTE(df_era5.z.values, df_era5.p.values, df_era5.t.values, df_era5.rh.values, frq, ang)\nrte.init_absmdl('R20')\nH2OAbsModel.model = 'R21SD'\nH2OAbsModel.h2oll = import_lineshape('h2oll')\ndf = rte.execute()\ndf = df.set_index(frq)\n\nfig, ax = plt.subplots(1, 1, figsize=(12, 8))\nplt.title(\n \"ERA5 Reanalysis dataset (hourly pressure levels) {}\".format(df_era5.time[0].strftime(format='%Y-%m-%d %H:%M')),\n ha='center')\nax.set_xlabel('Frequency [GHz]')\nax.set_ylabel('${T_B}$ [K]')\ndf.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(lonlat, mdl))\nax.grid(True, 'both')\nax.legend()\nplt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/bc82bea3a5dd7bdba60b65220891d9e5/examples_python.zip b/en/main/_downloads/bc82bea3a5dd7bdba60b65220891d9e5/examples_python.zip new file mode 100644 index 00000000..71181aee Binary files /dev/null and b/en/main/_downloads/bc82bea3a5dd7bdba60b65220891d9e5/examples_python.zip differ diff --git a/en/main/_downloads/bebc2d4f7c8bf59c1f6c7fa7b855173d/plot_atmosphere.zip b/en/main/_downloads/bebc2d4f7c8bf59c1f6c7fa7b855173d/plot_atmosphere.zip new file mode 100644 index 00000000..555606d0 Binary files /dev/null and b/en/main/_downloads/bebc2d4f7c8bf59c1f6c7fa7b855173d/plot_atmosphere.zip differ diff --git a/en/main/_downloads/bfa702ab6d073ec1cb94be38c6aeb6a9/plot_bt_era5_cloudy_profile.py b/en/main/_downloads/bfa702ab6d073ec1cb94be38c6aeb6a9/plot_bt_era5_cloudy_profile.py new file mode 100644 index 00000000..b560411e --- /dev/null +++ b/en/main/_downloads/bfa702ab6d073ec1cb94be38c6aeb6a9/plot_bt_era5_cloudy_profile.py @@ -0,0 +1,79 @@ +""" +Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition. +=============================================================================================================== +""" + +# %% +# This example shows how to use the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using +# observations from ERA5 Reanalysis hourly pressure levels dataset in cloudy condition. + +import matplotlib.pyplot as plt +import matplotlib.gridspec as gridspec + +plt.rcParams.update({'font.size': 15}) +import numpy as np +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.utils import import_lineshape, kgkg_to_kgm3 +from pyrtlib.absorption_model import H2OAbsModel +from pyrtlib.apiwebservices import ERA5Reanalysis + +# To request dataset via CDS API +# date = datetime(2020, 2, 22, 12) +# nc_file = ERA5Reanalysis.request_data(tempfile.gettempdir(), date, lonlat) + +lonlat = (15.13, 37.87) +nc_file = 'era5_reanalysis-2023-05-16T18:00:00.nc' +df_era5 = ERA5Reanalysis.read_data(nc_file, lonlat) + +mdl = 'R21SD' +ang = np.array([90.]) +frq = np.arange(20, 101, 1) +nf = len(frq) + +cldh = np.empty((2, 1)) +cldh[:, 0] = np.array([np.min(df_era5.z), np.max(df_era5.z)]) + +total_mass = 1 - df_era5.ciwc.values - df_era5.clwc.values - df_era5.crwc.values - df_era5.cswc.values +denice = df_era5.ciwc.values * (1/total_mass) * kgkg_to_kgm3(df_era5.q.values * (1/total_mass), + df_era5.p.values, df_era5.t.values) * 1000 +denliq = df_era5.clwc.values * (1/total_mass) * kgkg_to_kgm3(df_era5.q.values * (1/total_mass), + df_era5.p.values, df_era5.t.values) * 1000 + +fig = plt.figure(figsize=(12, 8)) +gs = gridspec.GridSpec(1, 3, + width_ratios=[3, 1, 1], + height_ratios=[4], + hspace=0, wspace=0.4) +ax1 = plt.subplot(gs[:, :-1]) +ax2 = plt.subplot(gs[:, 2]) + +fig.suptitle("ERA5 Reanalysis dataset (hourly pressure levels) {0} \nLon. {1[0]}, Lat. {1[1]}" + .format(df_era5.time[0].strftime(format='%Y-%m-%d %H:%M'), lonlat), ha='center') +ax1.set_xlabel('Frequency [GHz]') +ax1.set_ylabel('${T_B}$ [K]') + +rte = TbCloudRTE(df_era5.z.values, df_era5.p.values, df_era5.t.values, df_era5.rh.values, frq, ang) +rte.init_absmdl('R20') +H2OAbsModel.model = 'R21SD' +H2OAbsModel.h2oll = import_lineshape('h2oll') +for cloudy in [False, True]: + rte.cloudy = cloudy + rte.emissivity = 0.6 + rte.init_cloudy(cldh, denice, denliq) + df = rte.execute() + df = df.set_index(frq) + c = '(cloudy)' if cloudy else '(clearsky)' + df.tbtotal.plot(ax=ax1, linewidth=2, label='{} {}'.format(mdl, c)) + +ax2.set_xlabel('Density [$g/m^3$]') +ax2.set_ylabel('Pressure [hPa]') +ax2.plot(denliq, df_era5.p.values, label='LWC') +ax2.plot(denice, df_era5.p.values, label='IWC') +ax2.invert_yaxis() + +ax1.legend() +ax2.legend() + +gs.tight_layout(fig) +plt.show() diff --git a/en/main/_downloads/bfb25f397ea8c806a7f753aa3ee535ee/generic_tutorial.py b/en/main/_downloads/bfb25f397ea8c806a7f753aa3ee535ee/generic_tutorial.py new file mode 100644 index 00000000..2d90249d --- /dev/null +++ b/en/main/_downloads/bfb25f397ea8c806a7f753aa3ee535ee/generic_tutorial.py @@ -0,0 +1,131 @@ +""" +Generic Example +=============== +""" + +# %% +# This example shows how to use calculate the upwelling brigthness temperature by using R16 and R03 absorption model +# and then plotting them difference. + +# %% +import matplotlib.pyplot as plt + +plt.rcParams.update({'font.size': 15}) +import matplotlib.ticker as ticker +from matplotlib.ticker import ScalarFormatter +import numpy as np + +# %% [markdown] +# Import pyrtlib package +# ______________________ + + +# %% +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.utils import ppmv2gkg, mr2rh + +# %% +atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + +# %% [markdown] +# Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used. +# ____________________________________________________________________________________________________________________________ + +# %% +z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL) +gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) +rh = mr2rh(p, t, gkg)[0] / 100 + +mdl = 'R16' + +# %% [markdown] +# Performing upwelling brightness temperature calculation +# _______________________________________________________ + +# %% [markdown] +# Default calculatoin consideres no cloud + +# %% +ang = np.array([90.]) +frq = np.arange(20, 201, 1) +nf = len(frq) + +# %% [markdown] +# Setup matplotlib plot + +# %% +fig, ax = plt.subplots(1, 1, figsize=(12,8)) +ax.set_xlabel('Frequency [GHz]') +ax.set_ylabel('${T_B}$ [K]') + +rte = TbCloudRTE(z, p, t, rh, frq, ang) +rte.init_absmdl(mdl) +df = rte.execute() + +df = df.set_index(frq) +df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl)) + +ax.legend() +plt.show() + +# %% [markdown] +# Print dataframe + +# %% +df + +# %% [markdown] +# Performing calculation for R03 absorption model +# _______________________________________________ + +# %% +mdl = 'R03' +rte.init_absmdl(mdl) +df_r03 = rte.execute() +df_r03 = df_r03.set_index(frq) + +# %% [markdown] +# Add brigthness temperature values as new column + +# %% +df['delta'] = df.tbtotal - df_r03.tbtotal + +# %% +df + +# %% [markdown] +# Difference between R16 and R03 brightness temperature + +# %% +fig, ax = plt.subplots(1, 1, figsize=(12,8)) +ax.set_xlabel('Frequency [GHz]') +ax.set_ylabel('$\Delta {T_B}$ [K]') +df.delta.plot(ax=ax, figsize=(12,8), label='$\Delta {T_B}$ (R16-R03)') +ax.legend() +plt.show() + +# %% [markdown] +# Performing downwelling brightness temperature calculation +# _________________________________________________________ + +# %% +fig, ax = plt.subplots(1, 1, figsize=(12,8)) +ax.set_xlabel('Frequency [GHz]') +ax.set_ylabel('${T_B}$ [K]') + +rte.satellite = False +df_from_ground = rte.execute() + +df_from_ground = df_from_ground.set_index(frq) +df_from_ground.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl)) +ax.legend() +plt.show() + +# %% +df_from_ground \ No newline at end of file diff --git a/en/main/_downloads/c5ff93443edd39a0b18e36ffe2acfb22/plot_brightness_temperature_uncertainties.ipynb b/en/main/_downloads/c5ff93443edd39a0b18e36ffe2acfb22/plot_brightness_temperature_uncertainties.ipynb new file mode 100644 index 00000000..d761f8fa --- /dev/null +++ b/en/main/_downloads/c5ff93443edd39a0b18e36ffe2acfb22/plot_brightness_temperature_uncertainties.ipynb @@ -0,0 +1,57 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Performing sensitivity of spectroscopic parameters \n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate sensitivity of simulated downwelling brightness temperature\nwith a perturbed water vapor absorption parameter ($\\gamma_a$ air broadening 22 GHz) from [Cimini-2018]_.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\nimport numpy as np\nplt.rcParams.update({'font.size': 15})\n\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.absorption_model import H2OAbsModel, O2AbsModel\nfrom pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter\nfrom pyrtlib.utils import ppmv2gkg, mr2rh\n\natm = ['Tropical',\n 'Midlatitude Summer',\n 'Midlatitude Winter',\n 'Subarctic Summer',\n 'Subarctic Winter',\n 'U.S. Standard']\n\ncolors = [\"r\", \"m\", \"g\", \"b\", \"c\", \"k\"]\n\nfig, ax = plt.subplots(1, 1, figsize=(12, 8))\nax.set_xlabel('Frequency [GHz]')\nax.set_ylabel('$\\Delta {T_B}$ [K]')\nfor i in range(0, 6):\n\n z, p, d, t, md = atmp.gl_atm(i)\n\n gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n rh = mr2rh(p, t, gkg)[0] / 100\n\n interp = .1\n frq = np.arange(20, 60 + interp, interp)\n\n parameters = {**SpectroscopicParameter.water_parameters('R17'), **SpectroscopicParameter.oxygen_parameters('R18')}\n parameters['gamma_a'].value[0] = 2.688\n parameters['gamma_a'].uncer[0] = 0.039\n SpectroscopicParameter.set_parameters(parameters)\n \n rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters)\n rte.init_absmdl('R17')\n O2AbsModel.model = 'R18'\n O2AbsModel.set_ll()\n rte.satellite = False\n df = rte.execute()\n \n parameters = AbsModUncertainty.parameters_perturbation(['gamma_a'], 'max', index=0)\n rte.set_amu(parameters)\n df_gamma = rte.execute()\n df['delta_max_gamma_a'] = df_gamma.tbtotal - df.tbtotal\n\n parameters = AbsModUncertainty.parameters_perturbation(['gamma_a'], 'min', index=0)\n rte.set_amu(parameters)\n df_gamma = rte.execute()\n df['delta_min_gamma_a'] = df_gamma.tbtotal - df.tbtotal\n\n df = df.set_index(frq)\n\n df.delta_max_gamma_a.plot(ax=ax, style='--', label='_nolegend_', color=colors[i])\n df.delta_min_gamma_a.plot(ax=ax, label='{}'.format(atm[i]), color=colors[i])\n\n ax.legend()\n ax.set_box_aspect(0.7)\n\nax.grid(True, 'both')\nplt.title(\"Perturbed parameter: $\\ H_2O - \\gamma_a$\")\nplt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Solid lines correspond to negative perturbation (value\u2009\u2212\u2009uncertainty), \nwhile dashed lines correspond to positive perturbation (value\u2009+\u2009uncertainty).\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/d19cff0295d4ead720bdcacad3687347/plot_water_vapour_profile.zip b/en/main/_downloads/d19cff0295d4ead720bdcacad3687347/plot_water_vapour_profile.zip new file mode 100644 index 00000000..c6349939 Binary files /dev/null and b/en/main/_downloads/d19cff0295d4ead720bdcacad3687347/plot_water_vapour_profile.zip differ diff --git a/en/main/_downloads/d3d1892e45f561fc50cf99bd200c8da3/plot_model_cloudy.zip b/en/main/_downloads/d3d1892e45f561fc50cf99bd200c8da3/plot_model_cloudy.zip new file mode 100644 index 00000000..bf07770e Binary files /dev/null and b/en/main/_downloads/d3d1892e45f561fc50cf99bd200c8da3/plot_model_cloudy.zip differ diff --git a/en/main/_downloads/d404a6b59a7bd6581b9b4aca9ea98935/plot_brightness_temperature_down.zip b/en/main/_downloads/d404a6b59a7bd6581b9b4aca9ea98935/plot_brightness_temperature_down.zip new file mode 100644 index 00000000..bda59a32 Binary files /dev/null and b/en/main/_downloads/d404a6b59a7bd6581b9b4aca9ea98935/plot_brightness_temperature_down.zip differ diff --git a/en/main/_downloads/d9eb75cc24ee819676793dda22f68624/plot_bt_wyoming.zip b/en/main/_downloads/d9eb75cc24ee819676793dda22f68624/plot_bt_wyoming.zip new file mode 100644 index 00000000..e8d7d7fc Binary files /dev/null and b/en/main/_downloads/d9eb75cc24ee819676793dda22f68624/plot_bt_wyoming.zip differ diff --git a/en/main/_downloads/db17e8fafa7ced330683b709c5b95c8b/plot_log_dependance_tb.py b/en/main/_downloads/db17e8fafa7ced330683b709c5b95c8b/plot_log_dependance_tb.py new file mode 100644 index 00000000..022650ad --- /dev/null +++ b/en/main/_downloads/db17e8fafa7ced330683b709c5b95c8b/plot_log_dependance_tb.py @@ -0,0 +1,89 @@ +""" +Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz +====================================================================== +""" + +# %% +# This example shows the logarithmic dependence of monochromatic radiance at 22.235 GHz and 183 GHz +# on the water vapor content in the atmosphere. The brigthness temperature are calculated using the +# :py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method for the zenith view angle and +# the following water vapor content: 1/8, 1/4, 1/2, 1, 2, 4, 8 times the water vapor +# content of the reference atmosphere. The reference atmosphere is the Tropical atmosphere + +# Reference: Huang & Bani, 2014. + +import numpy as np + +import matplotlib.pyplot as plt +import matplotlib as mpl +mpl.rcParams["axes.spines.right"] = True +mpl.rcParams["axes.spines.top"] = True +plt.rcParams.update({'font.size': 30}) + + +from pyrtlib.climatology import AtmosphericProfiles as atmp +from pyrtlib.tb_spectrum import TbCloudRTE +from pyrtlib.absorption_model import O2AbsModel +from pyrtlib.utils import ppmv2gkg, mr2rh + +z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL) + +tb_23 = [] +tb_183 = [] +tau_23 = [] +tau_183 = [] +m = [1/8, 1/4, 1/2, 1, 2, 4, 8] + +for i in range(0, 7): + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) * m[i] + rh = mr2rh(p, t, gkg)[0] / 100 + + # frq = np.arange(20, 201, 1) + frq = np.array([22.235, 183]) + rte = TbCloudRTE(z, p, t, rh, frq) + rte.init_absmdl('R22SD') + O2AbsModel.model = 'R22' + df = rte.execute() + df['tau'] = df.tauwet + df.taudry + tb_23.append(df.tbtotal[0]) + tb_183.append(df.tbtotal[1]) + tau_23.append(df.tau[0]) + tau_183.append(df.tau[1]) + +tb_023 = np.array(tb_23) - tb_23[3] +tb_0183 = np.array(tb_183) - tb_183[3] + +fig, axes = plt.subplots(2, 2, figsize=(24, 14), sharex=True) +axes[0, 1].tick_params(axis='both', direction='in', length=10, width=.5) +axes[0, 1].plot(np.log2(m), tb_0183, linestyle='--', linewidth=3, color='black') +axes[0, 1].plot(np.log2(m), tb_0183, marker='+', linestyle='None', color='r', ms=20, markeredgewidth=5) +axes[0, 1].set_title(f"{frq[1]} GHz") +axes[0, 1].grid(True, 'both') +axes[0, 1].annotate("c)", xy=(0.02, 0.05), xycoords='axes fraction', fontsize=40) + +axes[0, 0].set_ylabel('$\Delta T_B$ [K]') +axes[0, 0].tick_params(axis='both', direction='in', length=10, width=.5) +axes[0, 0].plot(np.log2(m), tb_023, linestyle='--', linewidth=3, color='black') +axes[0, 0].plot(np.log2(m), tb_023, marker='+', linestyle='None', color='r', ms=20, markeredgewidth=5) +axes[0, 0].set_title(f"{frq[0]} GHz") +axes[0, 0].grid(True, 'both') +axes[0, 0].annotate("a)", xy=(0.02, 0.05), xycoords='axes fraction', fontsize=40) + +axes[1, 1].set_xlabel('$log_2(SF_{q_{H_2O}}))$') +axes[1, 1].tick_params(axis='both', direction='in', length=10, width=.5) +axes[1, 1].plot(np.log2(m), tau_183, linestyle='--', linewidth=3, color='black') +axes[1, 1].plot(np.log2(m), tau_183, marker='+', linestyle='None', color='blue', ms=20, markeredgewidth=5) +axes[1, 1].grid(True, 'both') +axes[1, 1].annotate("d)", xy=(0.02, 0.88), xycoords='axes fraction', fontsize=40) + +axes[1, 0].set_xlabel('$log_2(SF_{q_{H_2O}})$') +axes[1, 0].set_ylabel('$\\tau$ [Np]') +axes[1, 0].tick_params(axis='both', direction='in', length=10, width=.5) +axes[1, 0].plot(np.log2(m), tau_23, linestyle='--', linewidth=3, color='black') +axes[1, 0].plot(np.log2(m), tau_23, marker='+', linestyle='None', color='blue', ms=20, markeredgewidth=5) +axes[1, 0].grid(True, 'both') +axes[1, 0].annotate("b)", xy=(0.02, 0.88), xycoords='axes fraction', fontsize=40) + +plt.tight_layout() + +plt.show() diff --git a/en/main/_downloads/ef9d941840519be6cf91aa38d4f70fdd/plot_brightness_temperature_down.ipynb b/en/main/_downloads/ef9d941840519be6cf91aa38d4f70fdd/plot_brightness_temperature_down.ipynb new file mode 100644 index 00000000..30b45767 --- /dev/null +++ b/en/main/_downloads/ef9d941840519be6cf91aa38d4f70fdd/plot_brightness_temperature_down.ipynb @@ -0,0 +1,50 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "\n# Performing Downwelling Brightness Temperature calculation\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This example shows how to use the\n:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate zenith downwelling brightness temperature\nfor six reference atmosphere climatology with the R17 model.\n\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false + }, + "outputs": [], + "source": [ + "import matplotlib.pyplot as plt\n\nplt.rcParams.update({'font.size': 15})\nimport numpy as np\n\nfrom pyrtlib.climatology import AtmosphericProfiles as atmp\nfrom pyrtlib.tb_spectrum import TbCloudRTE\nfrom pyrtlib.utils import ppmv2gkg, mr2rh\n\natm = ['Tropical',\n 'Midlatitude Summer',\n 'Midlatitude Winter',\n 'Subarctic Summer',\n 'Subarctic Winter',\n 'U.S. Standard']\n\nfig, ax = plt.subplots(1, 1, figsize=(12, 8))\n\nfor i in range(0, 6):\n z, p, d, t, md = atmp.gl_atm(i)\n gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n rh = mr2rh(p, t, gkg)[0] / 100\n\n mdl = 'R17'\n\n ang = np.array([90.])\n frq = np.arange(20, 61, 0.5)\n nf = len(frq)\n\n ax.set_xlabel('Frequency (GHz)')\n ax.set_ylabel('BT (K)')\n\n rte = TbCloudRTE(z, p, t, rh, frq, ang)\n rte.satellite = False\n rte.init_absmdl(mdl)\n df = rte.execute()\n\n df = df.set_index(frq)\n df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i]))\n\nax.grid(True, 'both')\nax.legend()\nax.set_box_aspect(0.8)\nplt.show()" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} \ No newline at end of file diff --git a/en/main/_downloads/f57b8be9ee391cba7926d78005af3039/uncertainty_tutorial.zip b/en/main/_downloads/f57b8be9ee391cba7926d78005af3039/uncertainty_tutorial.zip new file mode 100644 index 00000000..87ed32be Binary files /dev/null and b/en/main/_downloads/f57b8be9ee391cba7926d78005af3039/uncertainty_tutorial.zip differ diff --git a/en/main/_downloads/fb625db3c50d423b1b7881136ffdeec8/examples_jupyter.zip b/en/main/_downloads/fb625db3c50d423b1b7881136ffdeec8/examples_jupyter.zip new file mode 100644 index 00000000..cea94c2e Binary files /dev/null and b/en/main/_downloads/fb625db3c50d423b1b7881136ffdeec8/examples_jupyter.zip differ diff --git a/en/main/_images/api-1.png b/en/main/_images/api-1.png new file mode 100644 index 00000000..e156c7ad Binary files /dev/null and b/en/main/_images/api-1.png differ diff --git a/en/main/_images/api-2.png b/en/main/_images/api-2.png new file mode 100644 index 00000000..91151c2b Binary files /dev/null and b/en/main/_images/api-2.png differ diff --git a/en/main/_images/api-3.png b/en/main/_images/api-3.png new file mode 100644 index 00000000..2cbcd9f8 Binary files /dev/null and b/en/main/_images/api-3.png differ diff --git a/en/main/_images/api.svg b/en/main/_images/api.svg new file mode 100644 index 00000000..029b91ea --- /dev/null +++ b/en/main/_images/api.svg @@ -0,0 +1,7 @@ + + + + + Svg Vector Icons : http://www.onlinewebfonts.com/icon + + \ No newline at end of file diff --git a/en/main/_images/code.svg b/en/main/_images/code.svg new file mode 100644 index 00000000..aa37e512 --- /dev/null +++ b/en/main/_images/code.svg @@ -0,0 +1,7 @@ + + + + + Svg Vector Icons : http://www.onlinewebfonts.com/icon + + \ No newline at end of file diff --git a/en/main/_images/community.svg b/en/main/_images/community.svg new file mode 100644 index 00000000..d18f33c6 --- /dev/null +++ b/en/main/_images/community.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/en/main/_images/notebook_Pressure_Broadening_effect_5_1.png b/en/main/_images/notebook_Pressure_Broadening_effect_5_1.png new file mode 100644 index 00000000..0c06298a Binary files /dev/null and b/en/main/_images/notebook_Pressure_Broadening_effect_5_1.png differ diff --git a/en/main/_images/notebook_Pressure_Broadening_effect_6_0.png b/en/main/_images/notebook_Pressure_Broadening_effect_6_0.png new file mode 100644 index 00000000..f93880ae Binary files /dev/null and b/en/main/_images/notebook_Pressure_Broadening_effect_6_0.png differ diff --git a/en/main/_images/notebook_first_run_11_1.png b/en/main/_images/notebook_first_run_11_1.png new file mode 100644 index 00000000..c61b467a Binary files /dev/null and b/en/main/_images/notebook_first_run_11_1.png differ diff --git a/en/main/_images/notebook_tutorial_12_0.png b/en/main/_images/notebook_tutorial_12_0.png new file mode 100644 index 00000000..7f858af8 Binary files /dev/null and b/en/main/_images/notebook_tutorial_12_0.png differ diff --git a/en/main/_images/notebook_tutorial_21_0.png b/en/main/_images/notebook_tutorial_21_0.png new file mode 100644 index 00000000..038c7f51 Binary files /dev/null and b/en/main/_images/notebook_tutorial_21_0.png differ diff --git a/en/main/_images/notebook_tutorial_23_0.png b/en/main/_images/notebook_tutorial_23_0.png new file mode 100644 index 00000000..83b94e46 Binary files /dev/null and b/en/main/_images/notebook_tutorial_23_0.png differ diff --git a/en/main/_images/notebook_uncertainty_24_0.png b/en/main/_images/notebook_uncertainty_24_0.png new file mode 100644 index 00000000..6beb8ce4 Binary files /dev/null and b/en/main/_images/notebook_uncertainty_24_0.png differ diff --git a/en/main/_images/shuttle.svg b/en/main/_images/shuttle.svg new file mode 100644 index 00000000..ceadc5e1 --- /dev/null +++ b/en/main/_images/shuttle.svg @@ -0,0 +1,7 @@ + + + + + Svg Vector Icons : http://www.onlinewebfonts.com/icon + + \ No newline at end of file diff --git a/en/main/_images/spectrum_r22.jpeg b/en/main/_images/spectrum_r22.jpeg new file mode 100644 index 00000000..79c99536 Binary files /dev/null and b/en/main/_images/spectrum_r22.jpeg differ diff --git a/en/main/_images/spectrum_r23_r24.png b/en/main/_images/spectrum_r23_r24.png new file mode 100644 index 00000000..7ef6ea91 Binary files /dev/null and b/en/main/_images/spectrum_r23_r24.png differ diff --git a/en/main/_images/sphx_glr_generic_tutorial_001.png b/en/main/_images/sphx_glr_generic_tutorial_001.png new file mode 100644 index 00000000..ccecda37 Binary files /dev/null and b/en/main/_images/sphx_glr_generic_tutorial_001.png differ diff --git a/en/main/_images/sphx_glr_generic_tutorial_002.png b/en/main/_images/sphx_glr_generic_tutorial_002.png new file mode 100644 index 00000000..6a6497c8 Binary files /dev/null and b/en/main/_images/sphx_glr_generic_tutorial_002.png differ diff --git a/en/main/_images/sphx_glr_generic_tutorial_003.png b/en/main/_images/sphx_glr_generic_tutorial_003.png new file mode 100644 index 00000000..f21e12b7 Binary files /dev/null and b/en/main/_images/sphx_glr_generic_tutorial_003.png differ diff --git a/en/main/_images/sphx_glr_generic_tutorial_thumb.png b/en/main/_images/sphx_glr_generic_tutorial_thumb.png new file mode 100644 index 00000000..8fbc2d4b Binary files /dev/null and b/en/main/_images/sphx_glr_generic_tutorial_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_atmosphere_001.png b/en/main/_images/sphx_glr_plot_atmosphere_001.png new file mode 100644 index 00000000..0852866e Binary files /dev/null and b/en/main/_images/sphx_glr_plot_atmosphere_001.png differ diff --git a/en/main/_images/sphx_glr_plot_atmosphere_thumb.png b/en/main/_images/sphx_glr_plot_atmosphere_thumb.png new file mode 100644 index 00000000..4fb6141f Binary files /dev/null and b/en/main/_images/sphx_glr_plot_atmosphere_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_brightness_temperature_down_001.png b/en/main/_images/sphx_glr_plot_brightness_temperature_down_001.png new file mode 100644 index 00000000..3d4957d3 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_brightness_temperature_down_001.png differ diff --git a/en/main/_images/sphx_glr_plot_brightness_temperature_down_thumb.png b/en/main/_images/sphx_glr_plot_brightness_temperature_down_thumb.png new file mode 100644 index 00000000..1de1a5ea Binary files /dev/null and b/en/main/_images/sphx_glr_plot_brightness_temperature_down_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_brightness_temperature_uncertainties_001.png b/en/main/_images/sphx_glr_plot_brightness_temperature_uncertainties_001.png new file mode 100644 index 00000000..c3cad26c Binary files /dev/null and b/en/main/_images/sphx_glr_plot_brightness_temperature_uncertainties_001.png differ diff --git a/en/main/_images/sphx_glr_plot_brightness_temperature_uncertainties_thumb.png b/en/main/_images/sphx_glr_plot_brightness_temperature_uncertainties_thumb.png new file mode 100644 index 00000000..4e068cff Binary files /dev/null and b/en/main/_images/sphx_glr_plot_brightness_temperature_uncertainties_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_brightness_temperature_up_001.png b/en/main/_images/sphx_glr_plot_brightness_temperature_up_001.png new file mode 100644 index 00000000..8f17de63 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_brightness_temperature_up_001.png differ diff --git a/en/main/_images/sphx_glr_plot_brightness_temperature_up_thumb.png b/en/main/_images/sphx_glr_plot_brightness_temperature_up_thumb.png new file mode 100644 index 00000000..46105175 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_brightness_temperature_up_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_brightness_temperature_wO3_001.png b/en/main/_images/sphx_glr_plot_brightness_temperature_wO3_001.png new file mode 100644 index 00000000..7a95a038 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_brightness_temperature_wO3_001.png differ diff --git a/en/main/_images/sphx_glr_plot_brightness_temperature_wO3_002.png b/en/main/_images/sphx_glr_plot_brightness_temperature_wO3_002.png new file mode 100644 index 00000000..33838723 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_brightness_temperature_wO3_002.png differ diff --git a/en/main/_images/sphx_glr_plot_brightness_temperature_wO3_thumb.png b/en/main/_images/sphx_glr_plot_brightness_temperature_wO3_thumb.png new file mode 100644 index 00000000..4b364cdc Binary files /dev/null and b/en/main/_images/sphx_glr_plot_brightness_temperature_wO3_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_bt_era5_001.png b/en/main/_images/sphx_glr_plot_bt_era5_001.png new file mode 100644 index 00000000..0ff7bb9f Binary files /dev/null and b/en/main/_images/sphx_glr_plot_bt_era5_001.png differ diff --git a/en/main/_images/sphx_glr_plot_bt_era5_cloudy_profile_001.png b/en/main/_images/sphx_glr_plot_bt_era5_cloudy_profile_001.png new file mode 100644 index 00000000..ca527372 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_bt_era5_cloudy_profile_001.png differ diff --git a/en/main/_images/sphx_glr_plot_bt_era5_cloudy_profile_thumb.png b/en/main/_images/sphx_glr_plot_bt_era5_cloudy_profile_thumb.png new file mode 100644 index 00000000..2debd23f Binary files /dev/null and b/en/main/_images/sphx_glr_plot_bt_era5_cloudy_profile_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_bt_era5_thumb.png b/en/main/_images/sphx_glr_plot_bt_era5_thumb.png new file mode 100644 index 00000000..e80a179d Binary files /dev/null and b/en/main/_images/sphx_glr_plot_bt_era5_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_bt_igra2_001.png b/en/main/_images/sphx_glr_plot_bt_igra2_001.png new file mode 100644 index 00000000..d0776904 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_bt_igra2_001.png differ diff --git a/en/main/_images/sphx_glr_plot_bt_igra2_002.png b/en/main/_images/sphx_glr_plot_bt_igra2_002.png new file mode 100644 index 00000000..1ac7c442 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_bt_igra2_002.png differ diff --git a/en/main/_images/sphx_glr_plot_bt_igra2_thumb.png b/en/main/_images/sphx_glr_plot_bt_igra2_thumb.png new file mode 100644 index 00000000..0a5cc74b Binary files /dev/null and b/en/main/_images/sphx_glr_plot_bt_igra2_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_bt_wyoming_001.png b/en/main/_images/sphx_glr_plot_bt_wyoming_001.png new file mode 100644 index 00000000..6861055c Binary files /dev/null and b/en/main/_images/sphx_glr_plot_bt_wyoming_001.png differ diff --git a/en/main/_images/sphx_glr_plot_bt_wyoming_thumb.png b/en/main/_images/sphx_glr_plot_bt_wyoming_thumb.png new file mode 100644 index 00000000..dd5ac60d Binary files /dev/null and b/en/main/_images/sphx_glr_plot_bt_wyoming_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_log_dependance_tb_001.png b/en/main/_images/sphx_glr_plot_log_dependance_tb_001.png new file mode 100644 index 00000000..9cd32c3f Binary files /dev/null and b/en/main/_images/sphx_glr_plot_log_dependance_tb_001.png differ diff --git a/en/main/_images/sphx_glr_plot_log_dependance_tb_thumb.png b/en/main/_images/sphx_glr_plot_log_dependance_tb_thumb.png new file mode 100644 index 00000000..f5c5a919 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_log_dependance_tb_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_model_cloudy_001.png b/en/main/_images/sphx_glr_plot_model_cloudy_001.png new file mode 100644 index 00000000..b867a865 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_model_cloudy_001.png differ diff --git a/en/main/_images/sphx_glr_plot_model_cloudy_thumb.png b/en/main/_images/sphx_glr_plot_model_cloudy_thumb.png new file mode 100644 index 00000000..17a279c0 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_model_cloudy_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_water_vapour_profile_001.png b/en/main/_images/sphx_glr_plot_water_vapour_profile_001.png new file mode 100644 index 00000000..1deabe82 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_water_vapour_profile_001.png differ diff --git a/en/main/_images/sphx_glr_plot_water_vapour_profile_thumb.png b/en/main/_images/sphx_glr_plot_water_vapour_profile_thumb.png new file mode 100644 index 00000000..44b5d8ac Binary files /dev/null and b/en/main/_images/sphx_glr_plot_water_vapour_profile_thumb.png differ diff --git a/en/main/_images/sphx_glr_plot_weighting_functions_001.png b/en/main/_images/sphx_glr_plot_weighting_functions_001.png new file mode 100644 index 00000000..ec18ac18 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_weighting_functions_001.png differ diff --git a/en/main/_images/sphx_glr_plot_weighting_functions_002.png b/en/main/_images/sphx_glr_plot_weighting_functions_002.png new file mode 100644 index 00000000..dba920e5 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_weighting_functions_002.png differ diff --git a/en/main/_images/sphx_glr_plot_weighting_functions_003.png b/en/main/_images/sphx_glr_plot_weighting_functions_003.png new file mode 100644 index 00000000..860c5ec3 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_weighting_functions_003.png differ diff --git a/en/main/_images/sphx_glr_plot_weighting_functions_004.png b/en/main/_images/sphx_glr_plot_weighting_functions_004.png new file mode 100644 index 00000000..eebb206b Binary files /dev/null and b/en/main/_images/sphx_glr_plot_weighting_functions_004.png differ diff --git a/en/main/_images/sphx_glr_plot_weighting_functions_thumb.png b/en/main/_images/sphx_glr_plot_weighting_functions_thumb.png new file mode 100644 index 00000000..85d1ca57 Binary files /dev/null and b/en/main/_images/sphx_glr_plot_weighting_functions_thumb.png differ diff --git a/en/main/_images/sphx_glr_uncertainty_tutorial_001.png b/en/main/_images/sphx_glr_uncertainty_tutorial_001.png new file mode 100644 index 00000000..8a809318 Binary files /dev/null and b/en/main/_images/sphx_glr_uncertainty_tutorial_001.png differ diff --git a/en/main/_images/sphx_glr_uncertainty_tutorial_thumb.png b/en/main/_images/sphx_glr_uncertainty_tutorial_thumb.png new file mode 100644 index 00000000..118085db Binary files /dev/null and b/en/main/_images/sphx_glr_uncertainty_tutorial_thumb.png differ diff --git a/en/main/_sources/api.rst.txt b/en/main/_sources/api.rst.txt new file mode 100644 index 00000000..13e513d0 --- /dev/null +++ b/en/main/_sources/api.rst.txt @@ -0,0 +1,262 @@ +============== +API references +============== + +Main class +========== + +The main class which computes brightness temperatures (Tb), mean radiating temperature (Tmr), and integrated absorption (Tau) for +clear or cloudy conditions. Also returns all integrated quantities that the original TBMODEL, Cyber Version, returned ([Schroeder-Westwater-1991]_). + +.. autosummary:: + :toctree: generated/ + + pyrtlib.tb_spectrum.TbCloudRTE + + +Example: + +Compute downwelling (:code:`rte.satellite == False`) brightness temperature for a typical Tropical Atmosphere. + +.. plot:: + :include-source: true + + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.utils import ppmv2gkg, mr2rh + + z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + ang = np.array([90.]) + frq = np.arange(20, 201, 1) + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.init_absmdl('R19SD') + rte.satellite = False + df = rte.execute() + df = df.set_index(frq) + df.tbtotal.plot(figsize=(12,8), xlabel="Frequency [GHz]", ylabel="Brightness Temperature [K]", grid=True) + +Also, it is possible to execute a combination of absorption models. The following example use :code:`R19SD` model for :math:`O_2` and +:code:`R16` for :math:`H_2O`: to compute upwelling brightness temperature using emissivity surface. + +.. plot:: + :include-source: true + + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.absorption_model import H2OAbsModel + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.utils import ppmv2gkg, mr2rh + + z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + ang = np.array([90.]) + frq = np.arange(20, 201, 1) + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.emissivity = 0.9 + rte.init_absmdl('R19SD') + H2OAbsModel.model = 'R16' + H2OAbsModel.set_ll() + df = rte.execute() + df = df.set_index(frq) + df.tbtotal.plot(figsize=(12,8), xlabel="Frequency [GHz]", ylabel="Brightness Temperature [K]", grid=True) + + +Standard Atmospheric Profiles +============================= + +Atmospheric constituent profiles (0-120km) (suplimented with other data) [ANDERSON]_ +This file was partly copied from FASCOD2 routine MLATMB 10/11/87 + +The file contains 6 model profiles: + +* Model 1. Tropical +* Model 2. Midlatitude Summer +* Model 3. Midlatitude Winter +* Model 4. Subarctic Summer +* Model 5. Subarctic Winter +* Model 6. U.S. Standard + +Each of these profile contains data at 50 atmospheric levels: +Altitude (km), Pressure (mb), Density (cm-3), Molec. densities (ppmv): +1(:math:`H_2O`), 2(:math:`CO_2`), 3(:math:`O_3`), 4(:math:`N_2O`), 5(:math:`CO`), 6(:math:`CH_4`), 7(:math:`O_2`) +Plus suplimental profiles where available. + +.. autosummary:: + :toctree: generated/ + + pyrtlib.climatology.AtmosphericProfiles + pyrtlib.climatology.ProfileExtrapolation + + +Example: + +.. code-block:: python + + from pyrtlib.climatology import AtmosphericProfiles as atmp + + z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL) + # index of available profiles + atmp.atm_profiles() + {0: 'Tropical', + 1: 'Midlatitude Summer', + 2: 'Midlatitude Winter', + 3: 'Subarctic Summer', + 4: 'Subarctic Winter', + 5: 'US Standard'} + + +Radiative Transfer Equation +=========================== + +RTE functions called from :py:class:`pyrtlib.rt_equation.RTEquation`: + +* :code:`bright` = compute temperature for the modified Planck radiance +* :code:`cloudy_absorption` = computes cloud (liquid and ice) absorption profiles +* :code:`cloud_integrated_density` = integrates cloud water density of path ds (linear) +* :code:`cloud_radiating_temperature` = computes mean radiating temperature of a cloud +* :code:`clearsky_absorption` = computes clear-sky (:math:`H_2O` and :math:`O_2`) absorption profiles +* :code:`exponential_integration` = integrates (ln) absorption over profile layers +* :code:`planck` = computes modified planck radiance and related quantities +* :code:`ray_tracing` = computes refracted path length between profile levels +* :code:`refractivity` = computes vapor pressure and refractivity profiles +* :code:`vapor` = computes vapor pressure and vapor density + + +.. autosummary:: + :toctree: generated/ + + pyrtlib.rt_equation.RTEquation + + +Absorption Models +================= + +Computes absorption coefficient in atmosphere due to water vapor (:math:`H_2O`), oxygen in air (:math:`O_2`), ozone in air (:math:`O_3`), suspended cloud liquid water droplets and +collision-induced power absorption coefficient (neper/km) in air ("dry continuum", mostly due to :math:`N_2`-:math:`N_2`, but also contributions from :math:`O_2`-:math:`N_2` and :math:`O_2`-:math:`O_2`) + +.. autosummary:: + :toctree: generated/ + + pyrtlib.absorption_model.AbsModel + pyrtlib.absorption_model.H2OAbsModel + pyrtlib.absorption_model.O2AbsModel + pyrtlib.absorption_model.O3AbsModel + pyrtlib.absorption_model.N2AbsModel + pyrtlib.absorption_model.LiqAbsModel + +To get all implemented models use the following code: + +.. code-block:: python + + from pyrtlib.absorption_model import AbsModel + + AbsModel.implemented_models() + {'Oxygen': ['R98', + 'R03', + 'R16', + 'R17', + 'R18', + 'R19', + 'R19SD', + 'R20', + 'R20SD', + 'R22', + 'R23', + 'R24'], + 'WaterVapour': ['R98', + 'R03', + 'R16', + 'R17', + 'R18', + 'R19', + 'R19SD', + 'R20', + 'R20SD', + 'R21SD', + 'R22SD', + 'R23SD', + 'R24'], + 'Ozone': ['R18', 'R22', 'R23']} + +Weighting Functions +=================== + +Computes the weighting functions to assess the vertical sensitivity of the brightness temperature to the atmospheric profile. + +.. note:: + The weighting functions are computed always using last absorption model available. + +.. autosummary:: + :toctree: generated/ + + pyrtlib.weighting_functions.WeightingFunctions + +.. plot:: + :include-source: true + + from pyrtlib.weighting_functions import WeightingFunctions + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies_sat + + z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + wf = WeightingFunctions(z, p, t, rh, .1) + wf.satellite = True + wf.angle = 48. + wf.frequencies = get_frequencies_sat('ICI') + wgt = wf.generate_wf() + + wf.plot_wf_grouped(wgt, '', ylim=[0, 20], + grouped_frequencies=[8, 2, 6, 6, 2], + grouped_labels=['176-190', '240-245', '315-334', '440-455', '659-668']) + + +Utility Functions +================= + +The utils module contains funtions of general utility used in multiple places throughout *pyrtlib*. + +.. autosummary:: + :toctree: generated/ + :template: custom-module-template.rst + + pyrtlib.utils + + +Uncertainty +=========== + +This module has some tool to compute the absorption model sensitivity to the uncertainty of spectroscopic parameters, +with the purpose of identifying the most significant contributions to the total uncertainty of modeled upwelling/downwelling +brightness temperture. + +.. autosummary:: + :toctree: generated/ + + pyrtlib.uncertainty.AbsModUncertainty + pyrtlib.uncertainty.SpectroscopicParameter + +API Web Services +================ +Observations dataset web services which may be used in pyrtlib. +Available datasets are the Wyoming Upper Air Archive (University of Wyoming), NCEI’s Integrated Radiosonde Archive version 2 (IGRA2) or the +ERA5 Reanalysis model data (Copernicus Climate Change Service). See examples to get started to use these services. + +.. note:: + Parts of the code have been reused from the `Siphon `_ library. + +.. autosummary:: + :toctree: generated/ + + pyrtlib.apiwebservices.WyomingUpperAir + pyrtlib.apiwebservices.IGRAUpperAir + pyrtlib.apiwebservices.ERA5Reanalysis + \ No newline at end of file diff --git a/en/main/_sources/examples/generic_tutorial.rst.txt b/en/main/_sources/examples/generic_tutorial.rst.txt new file mode 100644 index 00000000..da13b84f --- /dev/null +++ b/en/main/_sources/examples/generic_tutorial.rst.txt @@ -0,0 +1,858 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/generic_tutorial.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_generic_tutorial.py: + + +Generic Example +=============== + +.. GENERATED FROM PYTHON SOURCE LINES 7-9 + +This example shows how to use calculate the upwelling brigthness temperature by using R16 and R03 absorption model +and then plotting them difference. + +.. GENERATED FROM PYTHON SOURCE LINES 11-18 + +.. code-block:: Python + + import matplotlib.pyplot as plt + + plt.rcParams.update({'font.size': 15}) + import matplotlib.ticker as ticker + from matplotlib.ticker import ScalarFormatter + import numpy as np + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 19-21 + +Import pyrtlib package +______________________ + +.. GENERATED FROM PYTHON SOURCE LINES 24-28 + +.. code-block:: Python + + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.utils import ppmv2gkg, mr2rh + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 29-36 + +.. code-block:: Python + + atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 37-39 + +Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used. +____________________________________________________________________________________________________________________________ + +.. GENERATED FROM PYTHON SOURCE LINES 41-47 + +.. code-block:: Python + + z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + mdl = 'R16' + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 48-50 + +Performing upwelling brightness temperature calculation +_______________________________________________________ + +.. GENERATED FROM PYTHON SOURCE LINES 52-53 + +Default calculatoin consideres no cloud + +.. GENERATED FROM PYTHON SOURCE LINES 55-59 + +.. code-block:: Python + + ang = np.array([90.]) + frq = np.arange(20, 201, 1) + nf = len(frq) + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 60-61 + +Setup matplotlib plot + +.. GENERATED FROM PYTHON SOURCE LINES 63-77 + +.. code-block:: Python + + fig, ax = plt.subplots(1, 1, figsize=(12,8)) + ax.set_xlabel('Frequency [GHz]') + ax.set_ylabel('${T_B}$ [K]') + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.init_absmdl(mdl) + df = rte.execute() + + df = df.set_index(frq) + df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl)) + + ax.legend() + plt.show() + + + + +.. image-sg:: /examples/images/sphx_glr_generic_tutorial_001.png + :alt: generic tutorial + :srcset: /examples/images/sphx_glr_generic_tutorial_001.png + :class: sphx-glr-single-img + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 78-79 + +Print dataframe + +.. GENERATED FROM PYTHON SOURCE LINES 81-83 + +.. code-block:: Python + + df + + + + + + +.. raw:: html + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauiceangle
20298.1100020.0286.9500830.00.1203440.0128520.00.090.0
21297.2456650.0286.3010020.00.1888080.0135200.00.090.0
22296.1535540.0285.0006180.00.2618480.0142540.00.090.0
23296.3402810.0285.6359820.00.2579130.0150610.00.090.0
24297.1584870.0286.7384580.00.2023080.0159490.00.090.0
..............................
196281.7278400.0281.2715110.03.6729750.0254700.00.090.0
197282.2826340.0281.7322020.03.4600000.0256390.00.090.0
198282.7487030.0282.1100040.03.2898480.0258090.00.090.0
199283.1406970.0282.4212000.03.1527100.0259790.00.090.0
200283.4705460.0282.6784630.03.0414240.0261500.00.090.0
+

181 rows × 9 columns

+
+
+
+
+ +.. GENERATED FROM PYTHON SOURCE LINES 84-86 + +Performing calculation for R03 absorption model +_______________________________________________ + +.. GENERATED FROM PYTHON SOURCE LINES 88-93 + +.. code-block:: Python + + mdl = 'R03' + rte.init_absmdl(mdl) + df_r03 = rte.execute() + df_r03 = df_r03.set_index(frq) + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 94-95 + +Add brigthness temperature values as new column + +.. GENERATED FROM PYTHON SOURCE LINES 97-99 + +.. code-block:: Python + + df['delta'] = df.tbtotal - df_r03.tbtotal + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 100-102 + +.. code-block:: Python + + df + + + + + + +.. raw:: html + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauiceangledelta
20298.1100020.0286.9500830.00.1203440.0128520.00.090.00.001587
21297.2456650.0286.3010020.00.1888080.0135200.00.090.0-0.048560
22296.1535540.0285.0006180.00.2618480.0142540.00.090.0-0.142017
23296.3402810.0285.6359820.00.2579130.0150610.00.090.0-0.076094
24297.1584870.0286.7384580.00.2023080.0159490.00.090.00.007044
.................................
196281.7278400.0281.2715110.03.6729750.0254700.00.090.0-0.163239
197282.2826340.0281.7322020.03.4600000.0256390.00.090.0-0.155826
198282.7487030.0282.1100040.03.2898480.0258090.00.090.0-0.148959
199283.1406970.0282.4212000.03.1527100.0259790.00.090.0-0.142665
200283.4705460.0282.6784630.03.0414240.0261500.00.090.0-0.136943
+

181 rows × 10 columns

+
+
+
+
+ +.. GENERATED FROM PYTHON SOURCE LINES 103-104 + +Difference between R16 and R03 brightness temperature + +.. GENERATED FROM PYTHON SOURCE LINES 106-113 + +.. code-block:: Python + + fig, ax = plt.subplots(1, 1, figsize=(12,8)) + ax.set_xlabel('Frequency [GHz]') + ax.set_ylabel('$\Delta {T_B}$ [K]') + df.delta.plot(ax=ax, figsize=(12,8), label='$\Delta {T_B}$ (R16-R03)') + ax.legend() + plt.show() + + + + +.. image-sg:: /examples/images/sphx_glr_generic_tutorial_002.png + :alt: generic tutorial + :srcset: /examples/images/sphx_glr_generic_tutorial_002.png + :class: sphx-glr-single-img + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 114-116 + +Performing downwelling brightness temperature calculation +_________________________________________________________ + +.. GENERATED FROM PYTHON SOURCE LINES 118-130 + +.. code-block:: Python + + fig, ax = plt.subplots(1, 1, figsize=(12,8)) + ax.set_xlabel('Frequency [GHz]') + ax.set_ylabel('${T_B}$ [K]') + + rte.satellite = False + df_from_ground = rte.execute() + + df_from_ground = df_from_ground.set_index(frq) + df_from_ground.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl)) + ax.legend() + plt.show() + + + + +.. image-sg:: /examples/images/sphx_glr_generic_tutorial_003.png + :alt: generic tutorial + :srcset: /examples/images/sphx_glr_generic_tutorial_003.png + :class: sphx-glr-single-img + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 131-131 + +.. code-block:: Python + + df_from_ground + + + + +.. raw:: html + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauiceangle
2038.12874136.134999287.7437660.00.1196540.0128800.00.090.0
2153.63071051.778478287.5231210.00.1832710.0135350.00.090.0
2268.66240866.946561286.8527650.00.2496770.0142540.00.090.0
2368.99593767.297760287.3593340.00.2498660.0150440.00.090.0
2458.55113856.787298288.0545000.00.2016700.0159130.00.090.0
..............................
196290.018674290.011203297.0808770.03.6974740.0249290.00.090.0
197288.150026288.140925296.8588170.03.4869090.0250910.00.090.0
198286.377998286.367374296.6709930.03.3189050.0252550.00.090.0
199284.738957284.726955296.5130820.03.1836920.0254180.00.090.0
200283.252699283.239484296.3809280.03.0741470.0255830.00.090.0
+

181 rows × 9 columns

+
+
+
+
+ + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 15.012 seconds) + + +.. _sphx_glr_download_examples_generic_tutorial.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: generic_tutorial.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: generic_tutorial.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: generic_tutorial.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/index.rst.txt b/en/main/_sources/examples/index.rst.txt new file mode 100644 index 00000000..4c005a71 --- /dev/null +++ b/en/main/_sources/examples/index.rst.txt @@ -0,0 +1,314 @@ +:orphan: + +Gallery example +=============== + +This gallery shows examples of pyrtlib functionality. Community contributions are welcome! + + +.. raw:: html + +
+ +.. thumbnail-parent-div-open + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_generic_tutorial_thumb.png + :alt: + + :ref:`sphx_glr_examples_generic_tutorial.py` + +.. raw:: html + +
Generic Example
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_atmosphere_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_atmosphere.py` + +.. raw:: html + +
Atmospheric Profiles
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_brightness_temperature_down_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_brightness_temperature_down.py` + +.. raw:: html + +
Performing Downwelling Brightness Temperature calculation
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_brightness_temperature_uncertainties_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_brightness_temperature_uncertainties.py` + +.. raw:: html + +
Performing sensitivity of spectroscopic parameters
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_brightness_temperature_up_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_brightness_temperature_up.py` + +.. raw:: html + +
Performing Upwelling Brightness Temperature calculation
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_brightness_temperature_wO3_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_brightness_temperature_wO3.py` + +.. raw:: html + +
Performing Downwelling Brightness Temperature calculation with Ozone
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_bt_era5_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_bt_era5.py` + +.. raw:: html + +
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_bt_era5_cloudy_profile_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_bt_era5_cloudy_profile.py` + +.. raw:: html + +
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_bt_igra2_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_bt_igra2.py` + +.. raw:: html + +
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_bt_wyoming_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_bt_wyoming.py` + +.. raw:: html + +
Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_log_dependance_tb_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_log_dependance_tb.py` + +.. raw:: html + +
Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_model_cloudy_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_model_cloudy.py` + +.. raw:: html + +
Performing Downwelling Brightness Temperature calculation in cloudy condition.
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_water_vapour_profile_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_water_vapour_profile.py` + +.. raw:: html + +
Water Vapour Absorption Profiles
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_plot_weighting_functions_thumb.png + :alt: + + :ref:`sphx_glr_examples_plot_weighting_functions.py` + +.. raw:: html + +
Computation of Weighting Functions
+
+ + +.. raw:: html + +
+ +.. only:: html + + .. image:: /examples/images/thumb/sphx_glr_uncertainty_tutorial_thumb.png + :alt: + + :ref:`sphx_glr_examples_uncertainty_tutorial.py` + +.. raw:: html + +
Uncertainty Example
+
+ + +.. thumbnail-parent-div-close + +.. raw:: html + +
+ + +.. toctree:: + :hidden: + + /examples/generic_tutorial + /examples/plot_atmosphere + /examples/plot_brightness_temperature_down + /examples/plot_brightness_temperature_uncertainties + /examples/plot_brightness_temperature_up + /examples/plot_brightness_temperature_wO3 + /examples/plot_bt_era5 + /examples/plot_bt_era5_cloudy_profile + /examples/plot_bt_igra2 + /examples/plot_bt_wyoming + /examples/plot_log_dependance_tb + /examples/plot_model_cloudy + /examples/plot_water_vapour_profile + /examples/plot_weighting_functions + /examples/uncertainty_tutorial + + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-gallery + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download all examples in Python source code: examples_python.zip ` + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download all examples in Jupyter notebooks: examples_jupyter.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_atmosphere.rst.txt b/en/main/_sources/examples/plot_atmosphere.rst.txt new file mode 100644 index 00000000..1e5ffa51 --- /dev/null +++ b/en/main/_sources/examples/plot_atmosphere.rst.txt @@ -0,0 +1,149 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_atmosphere.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_atmosphere.py: + + +Atmospheric Profiles +==================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-9 + +This example shows how to use the +:py:class:`pyrtlib.climatology.AtmosphericProfiles` method to generate temperature and relative humidity profiles + +.. GENERATED FROM PYTHON SOURCE LINES 11-86 + +.. code-block:: Python + + import matplotlib.pyplot as plt + + plt.rcParams.update({'font.size': 15}) + import matplotlib.ticker as ticker + from matplotlib.ticker import ScalarFormatter + import numpy as np + + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.utils import ppmv2gkg, mr2rh, height_to_pressure + + + def tick_function(x): + v = x - 273.15 + return ["%.1f" % z for z in v] + + + def tick_function_pressure(p, z, ticks): + values = [] + for tick in ticks: + v = p[np.where(z==tick)] + values.append(v[0]) + return values + + + z, p, d, t, md = atmp.gl_atm(atmp.US_STANDARD) + + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + fig, ax = plt.subplots(1, 2, figsize=(12, 12)) + ax1 = ax[0].twiny() + + ax[1].yaxis.set_label_position("right") + ax[1].yaxis.tick_right() + ax[1].yaxis.set_major_formatter(ScalarFormatter()) + ax[1].yaxis.set_major_formatter(ticker.FuncFormatter(lambda y, _: '{:g}'.format(y))) + + fig.subplots_adjust(bottom=0.2) + + ax[0].plot(t, z) + ax[1].plot(rh * 100, z) + ax[0].set_xlabel("Temperature [K]") + ax[1].set_xlabel("Relative Humidity [%]") + ax[1].axes.get_yaxis().set_visible(False) + ax[0].set_ylabel("Altitude [km]") + + new_tick_locations_pressure = np.arange(0, 140, 20) + ax3 = ax[0].twinx() + rspine = ax3.spines['left'].set_position(('axes', -0.2)) + ax3.yaxis.set_ticks_position("left") + ax3.yaxis.set_label_position("left") + ax3.set_frame_on(True) + ax3.patch.set_visible(False) + ax3.set_ylabel('Pressure [hPa]') + ax3.set_yticks(new_tick_locations_pressure) + ax3.set_yticklabels(tick_function_pressure(p, z, new_tick_locations_pressure)) + ax3.set_ylim(ax[1].get_ylim()) + + new_tick_locations = np.arange(175, 400, 50) + + ax1.xaxis.set_ticks_position("bottom") + ax1.xaxis.set_label_position("bottom") + + # Offset the twin axis below the host + ax1.spines["bottom"].set_position(("axes", -0.1)) + ax1.set_frame_on(True) + ax1.patch.set_visible(False) + + ax1.spines["bottom"].set_visible(True) + + ax1.set_xticks(new_tick_locations) + ax1.set_xticklabels(tick_function(new_tick_locations)) + ax1.set_xlabel("Temperature [°C]") + ax1.set_xlim(ax[0].get_xlim()) + fig.tight_layout() + + + +.. image-sg:: /examples/images/sphx_glr_plot_atmosphere_001.png + :alt: plot atmosphere + :srcset: /examples/images/sphx_glr_plot_atmosphere_001.png + :class: sphx-glr-single-img + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 0.211 seconds) + + +.. _sphx_glr_download_examples_plot_atmosphere.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_atmosphere.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_atmosphere.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_atmosphere.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_brightness_temperature_down.rst.txt b/en/main/_sources/examples/plot_brightness_temperature_down.rst.txt new file mode 100644 index 00000000..83983f7f --- /dev/null +++ b/en/main/_sources/examples/plot_brightness_temperature_down.rst.txt @@ -0,0 +1,120 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_brightness_temperature_down.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_brightness_temperature_down.py: + + +Performing Downwelling Brightness Temperature calculation +============================================================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-10 + +This example shows how to use the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate zenith downwelling brightness temperature +for six reference atmosphere climatology with the R17 model. + +.. GENERATED FROM PYTHON SOURCE LINES 10-55 + +.. code-block:: Python + + + import matplotlib.pyplot as plt + + plt.rcParams.update({'font.size': 15}) + import numpy as np + + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.utils import ppmv2gkg, mr2rh + + atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + + fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + + for i in range(0, 6): + z, p, d, t, md = atmp.gl_atm(i) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + mdl = 'R17' + + ang = np.array([90.]) + frq = np.arange(20, 61, 0.5) + nf = len(frq) + + ax.set_xlabel('Frequency (GHz)') + ax.set_ylabel('BT (K)') + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.satellite = False + rte.init_absmdl(mdl) + df = rte.execute() + + df = df.set_index(frq) + df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i])) + + ax.grid(True, 'both') + ax.legend() + ax.set_box_aspect(0.8) + plt.show() + + + +.. image-sg:: /examples/images/sphx_glr_plot_brightness_temperature_down_001.png + :alt: plot brightness temperature down + :srcset: /examples/images/sphx_glr_plot_brightness_temperature_down_001.png + :class: sphx-glr-single-img + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 12.680 seconds) + + +.. _sphx_glr_download_examples_plot_brightness_temperature_down.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_brightness_temperature_down.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_brightness_temperature_down.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_brightness_temperature_down.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_brightness_temperature_uncertainties.rst.txt b/en/main/_sources/examples/plot_brightness_temperature_uncertainties.rst.txt new file mode 100644 index 00000000..c8ef4d63 --- /dev/null +++ b/en/main/_sources/examples/plot_brightness_temperature_uncertainties.rst.txt @@ -0,0 +1,147 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_brightness_temperature_uncertainties.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_brightness_temperature_uncertainties.py: + + +Performing sensitivity of spectroscopic parameters +================================================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-10 + +This example shows how to use the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate sensitivity of simulated downwelling brightness temperature +with a perturbed water vapor absorption parameter (:math:`\gamma_a` air broadening 22 GHz) from [Cimini-2018]_. + +.. GENERATED FROM PYTHON SOURCE LINES 10-77 + +.. code-block:: Python + + + import matplotlib.pyplot as plt + import numpy as np + plt.rcParams.update({'font.size': 15}) + + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.absorption_model import H2OAbsModel, O2AbsModel + from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter + from pyrtlib.utils import ppmv2gkg, mr2rh + + atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + + colors = ["r", "m", "g", "b", "c", "k"] + + fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + ax.set_xlabel('Frequency [GHz]') + ax.set_ylabel('$\Delta {T_B}$ [K]') + for i in range(0, 6): + + z, p, d, t, md = atmp.gl_atm(i) + + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + interp = .1 + frq = np.arange(20, 60 + interp, interp) + + parameters = {**SpectroscopicParameter.water_parameters('R17'), **SpectroscopicParameter.oxygen_parameters('R18')} + parameters['gamma_a'].value[0] = 2.688 + parameters['gamma_a'].uncer[0] = 0.039 + SpectroscopicParameter.set_parameters(parameters) + + rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters) + rte.init_absmdl('R17') + O2AbsModel.model = 'R18' + O2AbsModel.set_ll() + rte.satellite = False + df = rte.execute() + + parameters = AbsModUncertainty.parameters_perturbation(['gamma_a'], 'max', index=0) + rte.set_amu(parameters) + df_gamma = rte.execute() + df['delta_max_gamma_a'] = df_gamma.tbtotal - df.tbtotal + + parameters = AbsModUncertainty.parameters_perturbation(['gamma_a'], 'min', index=0) + rte.set_amu(parameters) + df_gamma = rte.execute() + df['delta_min_gamma_a'] = df_gamma.tbtotal - df.tbtotal + + df = df.set_index(frq) + + df.delta_max_gamma_a.plot(ax=ax, style='--', label='_nolegend_', color=colors[i]) + df.delta_min_gamma_a.plot(ax=ax, label='{}'.format(atm[i]), color=colors[i]) + + ax.legend() + ax.set_box_aspect(0.7) + + ax.grid(True, 'both') + plt.title("Perturbed parameter: $\ H_2O - \gamma_a$") + plt.show() + + + + +.. image-sg:: /examples/images/sphx_glr_plot_brightness_temperature_uncertainties_001.png + :alt: Perturbed parameter: $\ H_2O - \gamma_a$ + :srcset: /examples/images/sphx_glr_plot_brightness_temperature_uncertainties_001.png + :class: sphx-glr-single-img + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 78-79 + +Solid lines correspond to negative perturbation (value − uncertainty), +while dashed lines correspond to positive perturbation (value + uncertainty). + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (3 minutes 3.841 seconds) + + +.. _sphx_glr_download_examples_plot_brightness_temperature_uncertainties.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_brightness_temperature_uncertainties.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_brightness_temperature_uncertainties.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_brightness_temperature_uncertainties.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_brightness_temperature_up.rst.txt b/en/main/_sources/examples/plot_brightness_temperature_up.rst.txt new file mode 100644 index 00000000..2969d901 --- /dev/null +++ b/en/main/_sources/examples/plot_brightness_temperature_up.rst.txt @@ -0,0 +1,119 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_brightness_temperature_up.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_brightness_temperature_up.py: + + +Performing Upwelling Brightness Temperature calculation +======================================================= + +.. GENERATED FROM PYTHON SOURCE LINES 7-10 + +This example shows how to use the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate zenith upwelling brightness temperature +for six reference atmosphere climatology with the R19SD model. + +.. GENERATED FROM PYTHON SOURCE LINES 10-54 + +.. code-block:: Python + + + import matplotlib.pyplot as plt + + plt.rcParams.update({'font.size': 15}) + import numpy as np + + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.utils import ppmv2gkg, mr2rh + + atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + + fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + + for i in range(0, 6): + z, p, d, t, md = atmp.gl_atm(i) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + mdl = 'R19SD' + + ang = np.array([90.]) + frq = np.arange(20, 61, 1) + nf = len(frq) + + ax.set_xlabel('Frequency (GHz)') + ax.set_ylabel('BT (K)') + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.init_absmdl(mdl) + df = rte.execute() + + df = df.set_index(frq) + df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i])) + + ax.grid(True, 'both') + ax.legend() + ax.set_box_aspect(0.8) + plt.show() + + + +.. image-sg:: /examples/images/sphx_glr_plot_brightness_temperature_up_001.png + :alt: plot brightness temperature up + :srcset: /examples/images/sphx_glr_plot_brightness_temperature_up_001.png + :class: sphx-glr-single-img + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 7.780 seconds) + + +.. _sphx_glr_download_examples_plot_brightness_temperature_up.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_brightness_temperature_up.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_brightness_temperature_up.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_brightness_temperature_up.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_brightness_temperature_wO3.rst.txt b/en/main/_sources/examples/plot_brightness_temperature_wO3.rst.txt new file mode 100644 index 00000000..44c42d31 --- /dev/null +++ b/en/main/_sources/examples/plot_brightness_temperature_wO3.rst.txt @@ -0,0 +1,175 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_brightness_temperature_wO3.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_brightness_temperature_wO3.py: + + +Performing Downwelling Brightness Temperature calculation with Ozone +==================================================================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-9 + +This example shows how to use the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate downwelling brightness temperature with ozone. + +.. GENERATED FROM PYTHON SOURCE LINES 9-79 + +.. code-block:: Python + + + import matplotlib.pyplot as plt + + plt.rcParams.update({'font.size': 15}) + import numpy as np + + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.absorption_model import H2OAbsModel, O3AbsModel + from pyrtlib.utils import ppmv2gkg, mr2rh, ppmv_to_moleculesm3, constants + + atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + + fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + ax.set_xlabel('Frequency [GHz]') + ax.set_ylabel('${T_B}$ [K]') + + z, p, d, t, md = atmp.gl_atm(atmp.US_STANDARD) # 'U.S. Standard' + + o3n_ppmv = md[:, atmp.O3] + o3n = np.zeros(z.shape) + for k in range(0, len(z)): + o3n[k] = ppmv_to_moleculesm3(o3n_ppmv[k], p[k] * 100.0, t[k]) + + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + ang = np.array([90.]) + frq = np.arange(20, 201, 1) + + rte = TbCloudRTE(z, p, t, rh, frq, ang, o3n) + rte.init_absmdl('R20') + rte.satellite = False + H2OAbsModel.model = 'R21SD' + H2OAbsModel.set_ll() + O3AbsModel.model = 'R18' + O3AbsModel.set_ll() + df = rte.execute() + + df = df.set_index(frq) + df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.US_STANDARD], 'R21SD')) + + style = dict(size=20, color='gray', ha='center') + ax.text(22, 45, "${H_2O}$", **style) + ax.text(60, 255, "${O_2}$", **style) + ax.text(119, 280, "${O_2}$", **style) + ax.text(142, 100, "${O_3}$", **style) + ax.text(183, 245, "${H_2O}$", **style) + + def ghz_to_mm(ghz): + f = ghz * 1e9 + c = constants('light')[0] + return (c/f) * 1e3 + + def mm_to_ghz(mm): + l = mm / 1e3 + c = constants('light')[0] + return (c/l) / 1e9 + + secax = ax.secondary_xaxis('top', functions=(ghz_to_mm, mm_to_ghz)) + secax.set_xlabel('$\lambda$ [mm]') + + ax.legend() + plt.show() + + + + +.. image-sg:: /examples/images/sphx_glr_plot_brightness_temperature_wO3_001.png + :alt: plot brightness temperature wO3 + :srcset: /examples/images/sphx_glr_plot_brightness_temperature_wO3_001.png + :class: sphx-glr-single-img + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 80-81 + +Compute R21SD model without Ozone and plotting difference + +.. GENERATED FROM PYTHON SOURCE LINES 81-92 + +.. code-block:: Python + + O3AbsModel.model = '' + df_no_o3 = rte.execute() + df_no_o3 = df_no_o3.set_index(frq) + df['delta'] = df.tbtotal - df_no_o3.tbtotal + + fig, ax = plt.subplots(1, 1, figsize=(12,8)) + ax.set_xlabel('Frequency [GHz]') + ax.set_ylabel('$\Delta {T_B}$ [K]') + df.delta.plot(ax=ax, figsize=(12,8), label='$\Delta {T_B}$ (R21SD-R21SD_w03)') + ax.legend() + plt.show() + + + +.. image-sg:: /examples/images/sphx_glr_plot_brightness_temperature_wO3_002.png + :alt: plot brightness temperature wO3 + :srcset: /examples/images/sphx_glr_plot_brightness_temperature_wO3_002.png + :class: sphx-glr-single-img + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 12.127 seconds) + + +.. _sphx_glr_download_examples_plot_brightness_temperature_wO3.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_brightness_temperature_wO3.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_brightness_temperature_wO3.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_brightness_temperature_wO3.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_bt_era5.rst.txt b/en/main/_sources/examples/plot_bt_era5.rst.txt new file mode 100644 index 00000000..3b1eaa7b --- /dev/null +++ b/en/main/_sources/examples/plot_bt_era5.rst.txt @@ -0,0 +1,116 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_bt_era5.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_bt_era5.py: + + +Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations. +=========================================================================================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-10 + +This example shows how to use the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using +observations from ERA5 Reanalysis hourly pressure levels dataset. + +.. GENERATED FROM PYTHON SOURCE LINES 10-51 + +.. code-block:: Python + + + import matplotlib.pyplot as plt + + plt.rcParams.update({'font.size': 15}) + import numpy as np + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.utils import import_lineshape + from pyrtlib.absorption_model import H2OAbsModel + from pyrtlib.apiwebservices import ERA5Reanalysis + + # To request dataset via CDS API + # date = datetime(2020, 2, 22, 12) + # nc_file = ERA5Reanalysis.request_data(tempfile.gettempdir(), date, lonlat) + + # Tito Scalo, Potenza, Italy + lonlat = (15.8158, 38.2663) + nc_file = 'era5_reanalysis-2023-05-16T18:00:00.nc' + df_era5 = ERA5Reanalysis.read_data(nc_file, lonlat) + + mdl = 'R21SD' + ang = np.array([90.]) + frq = np.arange(20, 201, 1) + nf = len(frq) + + rte = TbCloudRTE(df_era5.z.values, df_era5.p.values, df_era5.t.values, df_era5.rh.values, frq, ang) + rte.init_absmdl('R20') + H2OAbsModel.model = 'R21SD' + H2OAbsModel.h2oll = import_lineshape('h2oll') + df = rte.execute() + df = df.set_index(frq) + + fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + plt.title( + "ERA5 Reanalysis dataset (hourly pressure levels) {}".format(df_era5.time[0].strftime(format='%Y-%m-%d %H:%M')), + ha='center') + ax.set_xlabel('Frequency [GHz]') + ax.set_ylabel('${T_B}$ [K]') + df.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(lonlat, mdl)) + ax.grid(True, 'both') + ax.legend() + plt.show() + + + +.. image-sg:: /examples/images/sphx_glr_plot_bt_era5_001.png + :alt: ERA5 Reanalysis dataset (hourly pressure levels) 2023-05-16 18:00 + :srcset: /examples/images/sphx_glr_plot_bt_era5_001.png + :class: sphx-glr-single-img + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 4.539 seconds) + + +.. _sphx_glr_download_examples_plot_bt_era5.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_bt_era5.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_bt_era5.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_bt_era5.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_bt_era5_cloudy_profile.rst.txt b/en/main/_sources/examples/plot_bt_era5_cloudy_profile.rst.txt new file mode 100644 index 00000000..797633ef --- /dev/null +++ b/en/main/_sources/examples/plot_bt_era5_cloudy_profile.rst.txt @@ -0,0 +1,152 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_bt_era5_cloudy_profile.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_bt_era5_cloudy_profile.py: + + +Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition. +=============================================================================================================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-10 + +This example shows how to use the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using +observations from ERA5 Reanalysis hourly pressure levels dataset in cloudy condition. + +.. GENERATED FROM PYTHON SOURCE LINES 10-80 + +.. code-block:: Python + + + import matplotlib.pyplot as plt + import matplotlib.gridspec as gridspec + + plt.rcParams.update({'font.size': 15}) + import numpy as np + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.utils import import_lineshape, kgkg_to_kgm3 + from pyrtlib.absorption_model import H2OAbsModel + from pyrtlib.apiwebservices import ERA5Reanalysis + + # To request dataset via CDS API + # date = datetime(2020, 2, 22, 12) + # nc_file = ERA5Reanalysis.request_data(tempfile.gettempdir(), date, lonlat) + + lonlat = (15.13, 37.87) + nc_file = 'era5_reanalysis-2023-05-16T18:00:00.nc' + df_era5 = ERA5Reanalysis.read_data(nc_file, lonlat) + + mdl = 'R21SD' + ang = np.array([90.]) + frq = np.arange(20, 101, 1) + nf = len(frq) + + cldh = np.empty((2, 1)) + cldh[:, 0] = np.array([np.min(df_era5.z), np.max(df_era5.z)]) + + total_mass = 1 - df_era5.ciwc.values - df_era5.clwc.values - df_era5.crwc.values - df_era5.cswc.values + denice = df_era5.ciwc.values * (1/total_mass) * kgkg_to_kgm3(df_era5.q.values * (1/total_mass), + df_era5.p.values, df_era5.t.values) * 1000 + denliq = df_era5.clwc.values * (1/total_mass) * kgkg_to_kgm3(df_era5.q.values * (1/total_mass), + df_era5.p.values, df_era5.t.values) * 1000 + + fig = plt.figure(figsize=(12, 8)) + gs = gridspec.GridSpec(1, 3, + width_ratios=[3, 1, 1], + height_ratios=[4], + hspace=0, wspace=0.4) + ax1 = plt.subplot(gs[:, :-1]) + ax2 = plt.subplot(gs[:, 2]) + + fig.suptitle("ERA5 Reanalysis dataset (hourly pressure levels) {0} \nLon. {1[0]}, Lat. {1[1]}" + .format(df_era5.time[0].strftime(format='%Y-%m-%d %H:%M'), lonlat), ha='center') + ax1.set_xlabel('Frequency [GHz]') + ax1.set_ylabel('${T_B}$ [K]') + + rte = TbCloudRTE(df_era5.z.values, df_era5.p.values, df_era5.t.values, df_era5.rh.values, frq, ang) + rte.init_absmdl('R20') + H2OAbsModel.model = 'R21SD' + H2OAbsModel.h2oll = import_lineshape('h2oll') + for cloudy in [False, True]: + rte.cloudy = cloudy + rte.emissivity = 0.6 + rte.init_cloudy(cldh, denice, denliq) + df = rte.execute() + df = df.set_index(frq) + c = '(cloudy)' if cloudy else '(clearsky)' + df.tbtotal.plot(ax=ax1, linewidth=2, label='{} {}'.format(mdl, c)) + + ax2.set_xlabel('Density [$g/m^3$]') + ax2.set_ylabel('Pressure [hPa]') + ax2.plot(denliq, df_era5.p.values, label='LWC') + ax2.plot(denice, df_era5.p.values, label='IWC') + ax2.invert_yaxis() + + ax1.legend() + ax2.legend() + + gs.tight_layout(fig) + plt.show() + + + +.. image-sg:: /examples/images/sphx_glr_plot_bt_era5_cloudy_profile_001.png + :alt: ERA5 Reanalysis dataset (hourly pressure levels) 2023-05-16 18:00 Lon. 15.13, Lat. 37.87 + :srcset: /examples/images/sphx_glr_plot_bt_era5_cloudy_profile_001.png + :class: sphx-glr-single-img + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + /home/runner/work/pyrtlib/pyrtlib/pyrtlib/tb_spectrum.py:221: UserWarning: It seems that TbCloudRTE.cloudy attribute is not set to True. Sets it to True for running model in cloudy condition. + warnings.warn("It seems that TbCloudRTE.cloudy attribute is not set to True. " + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 4.233 seconds) + + +.. _sphx_glr_download_examples_plot_bt_era5_cloudy_profile.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_bt_era5_cloudy_profile.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_bt_era5_cloudy_profile.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_bt_era5_cloudy_profile.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_bt_igra2.rst.txt b/en/main/_sources/examples/plot_bt_igra2.rst.txt new file mode 100644 index 00000000..a0430a60 --- /dev/null +++ b/en/main/_sources/examples/plot_bt_igra2.rst.txt @@ -0,0 +1,206 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_bt_igra2.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_bt_igra2.py: + + +Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation). +================================================================================================================ + +.. GENERATED FROM PYTHON SOURCE LINES 7-10 + +This example shows how to use the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using +observations from IGRA2 Upper Air Archive and comparison of BT with the extrapoletd profile. + +.. GENERATED FROM PYTHON SOURCE LINES 10-47 + +.. code-block:: Python + + + import numpy as np + from datetime import datetime + + import matplotlib.pyplot as plt + plt.rcParams.update({'font.size': 15}) + + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.climatology import ProfileExtrapolation + from pyrtlib.utils import dewpoint2rh, to_kelvin + from pyrtlib.absorption_model import H2OAbsModel + from pyrtlib.apiwebservices import IGRAUpperAir + + date = datetime(2020, 6, 1, 12) + station = 'SPM00008221' + df_igra2, header = IGRAUpperAir.request_data(date, station) + + df_igra2 = df_igra2[df_igra2.pressure.notna() & + df_igra2.temperature.notna() & + df_igra2.dewpoint.notna() & + df_igra2.height.notna()] + + z, p, t = df_igra2.height.values / 1000, df_igra2.pressure.values, to_kelvin(df_igra2.temperature.values) + + rh = dewpoint2rh(df_igra2.dewpoint, df_igra2.temperature).values + + mdl = 'R21SD' + frq = np.arange(20, 201, 1) + nf = len(frq) + + rte = TbCloudRTE(z, p, t, rh, frq) + rte.init_absmdl('R20') + H2OAbsModel.model = 'R21SD' + H2OAbsModel.set_ll() + df = rte.execute() + df = df.set_index(frq) + + + + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + /home/runner/work/pyrtlib/pyrtlib/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (14) or minimum pressure value lower than 10 hPa (20.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa + warnings.warn(f"Number of levels too low ({len(self.p)}) or " + + + + +.. GENERATED FROM PYTHON SOURCE LINES 48-49 + +Extrapolation of profile + +.. GENERATED FROM PYTHON SOURCE LINES 49-59 + +.. code-block:: Python + + ex = ProfileExtrapolation() + zz, pp, tt, rhh = ex.profile_extrapolation(header.latitude.values[0], 6, z, (p, t, rh)) + + rte = TbCloudRTE(zz, pp, tt, rhh, frq) + rte.init_absmdl('R20') + H2OAbsModel.model = 'R21SD' + H2OAbsModel.set_ll() + dff = rte.execute() + dff = dff.set_index(frq) + + + + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + /home/runner/work/pyrtlib/pyrtlib/pyrtlib/climatology/extrapolation.py:511: RuntimeWarning: overflow encountered in exp + 14.3542 * np.exp(-0.4174 * h - 0.02290 * h**2 + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 60-61 + +Plotting + +.. GENERATED FROM PYTHON SOURCE LINES 61-72 + +.. code-block:: Python + + fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + plt.suptitle("{}, {}, {} - {}".format(header.site_id.values[0], header.latitude.values[0], header.longitude.values[0], header.date.values[0]), y=0.96) + plt.title("IGRA2 UpperAir Radiosonde Archive", fontsize=10, ha='center') + ax.set_xlabel('Frequency [GHz]') + ax.set_ylabel('${T_B}$ [K]') + df.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(header.site_id.values[0], mdl)) + dff.tbtotal.plot(ax=ax, linewidth=2, label='Extrap {} - {}'.format(header.site_id.values[0], mdl)) + ax.grid(True, 'both') + ax.legend() + plt.show() + + + + +.. image-sg:: /examples/images/sphx_glr_plot_bt_igra2_001.png + :alt: SPM00008221, 40.4653, -3.5797 - 2020-06-01T12:00:00.000000000, IGRA2 UpperAir Radiosonde Archive + :srcset: /examples/images/sphx_glr_plot_bt_igra2_001.png + :class: sphx-glr-single-img + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 73-74 + +Difference BT + +.. GENERATED FROM PYTHON SOURCE LINES 74-77 + +.. code-block:: Python + + + df['delta'] = dff.tbtotal - df.tbtotal + df.delta.plot(linewidth=2, xlabel='Frequency [GHz]', ylabel='$\Delta T_B$ [K]', grid=True, figsize=(12, 8)) + + + +.. image-sg:: /examples/images/sphx_glr_plot_bt_igra2_002.png + :alt: plot bt igra2 + :srcset: /examples/images/sphx_glr_plot_bt_igra2_002.png + :class: sphx-glr-single-img + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 7.631 seconds) + + +.. _sphx_glr_download_examples_plot_bt_igra2.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_bt_igra2.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_bt_igra2.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_bt_igra2.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_bt_wyoming.rst.txt b/en/main/_sources/examples/plot_bt_wyoming.rst.txt new file mode 100644 index 00000000..0ea25067 --- /dev/null +++ b/en/main/_sources/examples/plot_bt_wyoming.rst.txt @@ -0,0 +1,126 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_bt_wyoming.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_bt_wyoming.py: + + +Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations. +============================================================================================= + +.. GENERATED FROM PYTHON SOURCE LINES 7-10 + +This example shows how to use the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from satellite (upwelling) using +observations from Wyoming Upper Air Archive. + +.. GENERATED FROM PYTHON SOURCE LINES 10-54 + +.. code-block:: Python + + + import matplotlib.pyplot as plt + + plt.rcParams.update({'font.size': 15}) + import numpy as np + from datetime import datetime + + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.utils import dewpoint2rh, import_lineshape, to_kelvin + from pyrtlib.absorption_model import H2OAbsModel + from pyrtlib.apiwebservices import WyomingUpperAir + + date = datetime(2021, 4, 22, 12) + station = 'LIRE' + df_w = WyomingUpperAir.request_data(date, station) + + z, p, t, q = df_w.height.values / 1000, \ + df_w.pressure.values, \ + to_kelvin(df_w.temperature.values), \ + df_w.mixr.values + + rh = dewpoint2rh(df_w.dewpoint, df_w.temperature).values + + mdl = 'R21SD' + ang = np.array([90.]) + frq = np.arange(20, 201, 1) + nf = len(frq) + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.init_absmdl('R20') + H2OAbsModel.model = 'R21SD' + H2OAbsModel.h2oll = import_lineshape('h2oll') + df = rte.execute() + df = df.set_index(frq) + + fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + plt.suptitle(df_w.title[0], y=0.96) + plt.title("Wyoming UpperAir Radiosonde Archive", fontsize=10, ha='center') + ax.set_xlabel('Frequency [GHz]') + ax.set_ylabel('${T_B}$ [K]') + df.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(df_w.station[0], mdl)) + ax.grid(True, 'both') + ax.legend() + plt.show() + + + +.. image-sg:: /examples/images/sphx_glr_plot_bt_wyoming_001.png + :alt: 16245 LIRE Pratica Di Mare Observations at 12Z 22 Apr 2021, Wyoming UpperAir Radiosonde Archive + :srcset: /examples/images/sphx_glr_plot_bt_wyoming_001.png + :class: sphx-glr-single-img + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + /home/runner/work/pyrtlib/pyrtlib/pyrtlib/apiwebservices/wyomingupperair.py:147: FutureWarning: The 'delim_whitespace' keyword in pd.read_csv is deprecated and will be removed in a future version. Use ``sep='\s+'`` instead + df = pd.read_csv(tabular_data, header=None, skiprows=5, delim_whitespace=True, usecols=[0, 1, 2, 3, 4, 5], names=col_names) + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 14.256 seconds) + + +.. _sphx_glr_download_examples_plot_bt_wyoming.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_bt_wyoming.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_bt_wyoming.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_bt_wyoming.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_log_dependance_tb.rst.txt b/en/main/_sources/examples/plot_log_dependance_tb.rst.txt new file mode 100644 index 00000000..6014e0d9 --- /dev/null +++ b/en/main/_sources/examples/plot_log_dependance_tb.rst.txt @@ -0,0 +1,155 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_log_dependance_tb.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_log_dependance_tb.py: + + +Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz +====================================================================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-12 + +This example shows the logarithmic dependence of monochromatic radiance at 22.235 GHz and 183 GHz +on the water vapor content in the atmosphere. The brigthness temperature are calculated using the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method for the zenith view angle and +the following water vapor content: 1/8, 1/4, 1/2, 1, 2, 4, 8 times the water vapor +content of the reference atmosphere. The reference atmosphere is the Tropical atmosphere + +.. GENERATED FROM PYTHON SOURCE LINES 12-90 + +.. code-block:: Python + + + # Reference: Huang & Bani, 2014. + + import numpy as np + + import matplotlib.pyplot as plt + import matplotlib as mpl + mpl.rcParams["axes.spines.right"] = True + mpl.rcParams["axes.spines.top"] = True + plt.rcParams.update({'font.size': 30}) + + + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.absorption_model import O2AbsModel + from pyrtlib.utils import ppmv2gkg, mr2rh + + z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL) + + tb_23 = [] + tb_183 = [] + tau_23 = [] + tau_183 = [] + m = [1/8, 1/4, 1/2, 1, 2, 4, 8] + + for i in range(0, 7): + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) * m[i] + rh = mr2rh(p, t, gkg)[0] / 100 + + # frq = np.arange(20, 201, 1) + frq = np.array([22.235, 183]) + rte = TbCloudRTE(z, p, t, rh, frq) + rte.init_absmdl('R22SD') + O2AbsModel.model = 'R22' + df = rte.execute() + df['tau'] = df.tauwet + df.taudry + tb_23.append(df.tbtotal[0]) + tb_183.append(df.tbtotal[1]) + tau_23.append(df.tau[0]) + tau_183.append(df.tau[1]) + + tb_023 = np.array(tb_23) - tb_23[3] + tb_0183 = np.array(tb_183) - tb_183[3] + + fig, axes = plt.subplots(2, 2, figsize=(24, 14), sharex=True) + axes[0, 1].tick_params(axis='both', direction='in', length=10, width=.5) + axes[0, 1].plot(np.log2(m), tb_0183, linestyle='--', linewidth=3, color='black') + axes[0, 1].plot(np.log2(m), tb_0183, marker='+', linestyle='None', color='r', ms=20, markeredgewidth=5) + axes[0, 1].set_title(f"{frq[1]} GHz") + axes[0, 1].grid(True, 'both') + axes[0, 1].annotate("c)", xy=(0.02, 0.05), xycoords='axes fraction', fontsize=40) + + axes[0, 0].set_ylabel('$\Delta T_B$ [K]') + axes[0, 0].tick_params(axis='both', direction='in', length=10, width=.5) + axes[0, 0].plot(np.log2(m), tb_023, linestyle='--', linewidth=3, color='black') + axes[0, 0].plot(np.log2(m), tb_023, marker='+', linestyle='None', color='r', ms=20, markeredgewidth=5) + axes[0, 0].set_title(f"{frq[0]} GHz") + axes[0, 0].grid(True, 'both') + axes[0, 0].annotate("a)", xy=(0.02, 0.05), xycoords='axes fraction', fontsize=40) + + axes[1, 1].set_xlabel('$log_2(SF_{q_{H_2O}}))$') + axes[1, 1].tick_params(axis='both', direction='in', length=10, width=.5) + axes[1, 1].plot(np.log2(m), tau_183, linestyle='--', linewidth=3, color='black') + axes[1, 1].plot(np.log2(m), tau_183, marker='+', linestyle='None', color='blue', ms=20, markeredgewidth=5) + axes[1, 1].grid(True, 'both') + axes[1, 1].annotate("d)", xy=(0.02, 0.88), xycoords='axes fraction', fontsize=40) + + axes[1, 0].set_xlabel('$log_2(SF_{q_{H_2O}})$') + axes[1, 0].set_ylabel('$\\tau$ [Np]') + axes[1, 0].tick_params(axis='both', direction='in', length=10, width=.5) + axes[1, 0].plot(np.log2(m), tau_23, linestyle='--', linewidth=3, color='black') + axes[1, 0].plot(np.log2(m), tau_23, marker='+', linestyle='None', color='blue', ms=20, markeredgewidth=5) + axes[1, 0].grid(True, 'both') + axes[1, 0].annotate("b)", xy=(0.02, 0.88), xycoords='axes fraction', fontsize=40) + + plt.tight_layout() + + plt.show() + + + +.. image-sg:: /examples/images/sphx_glr_plot_log_dependance_tb_001.png + :alt: 22.235 GHz, 183.0 GHz + :srcset: /examples/images/sphx_glr_plot_log_dependance_tb_001.png + :class: sphx-glr-single-img + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 1.254 seconds) + + +.. _sphx_glr_download_examples_plot_log_dependance_tb.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_log_dependance_tb.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_log_dependance_tb.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_log_dependance_tb.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_model_cloudy.rst.txt b/en/main/_sources/examples/plot_model_cloudy.rst.txt new file mode 100644 index 00000000..c47d24c4 --- /dev/null +++ b/en/main/_sources/examples/plot_model_cloudy.rst.txt @@ -0,0 +1,147 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_model_cloudy.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_model_cloudy.py: + + +Performing Downwelling Brightness Temperature calculation in cloudy condition. +============================================================================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-9 + +This example shows how to use the +:py:class:`pyrtlib.tb_spectrum.TbCloudRTE` method to calculate brightness temperature from ground (downwelling) in cloudy condition + +.. GENERATED FROM PYTHON SOURCE LINES 9-75 + +.. code-block:: Python + + + import matplotlib.pyplot as plt + from matplotlib.ticker import FixedLocator, FormatStrFormatter + plt.rcParams.update({'font.size': 15}) + import numpy as np + np.seterr('raise') + + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.utils import ppmv2gkg, mr2rh + + atm = ['Tropical', + 'Midlatitude Summer', + 'Midlatitude Winter', + 'Subarctic Summer', + 'Subarctic Winter', + 'U.S. Standard'] + + fig, ax = plt.subplots(1, 1, figsize=(12, 8)) + + z, p, d, t, md = atmp.gl_atm(atmp.MIDLATITUDE_SUMMER) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + mdl = 'R19SD' + + ang = np.array([90.]) + frq = np.arange(20, 61, 1) + nf = len(frq) + + denliq = np.zeros(z.shape) + denice = np.zeros(z.shape) + cldh = np.empty((2, 2)) + + for i in [False, True]: + if not i: + text_plot = 'clear-sky' + else: + # build a cloud + ib = 1 + it = 3 + denliq[ib:it + 1] = 10 * np.ones((it - ib + 1)) + cldh[:, 0] = np.array([z[ib], z[it]]) + ib = 29 + it = 31 + denice[ib:it + 1] = 0.1 * np.ones((it - ib + 1)) + cldh[:, 1] = np.array([z[ib], z[it]]) + text_plot = 'cloudy' + + ax.set_xlabel('Frequency (GHz)') + ax.set_ylabel('BT (K)') + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + rte.satellite = False + rte.cloudy = i + rte.init_cloudy(cldh, denice, denliq) + rte.init_absmdl(mdl) + df = rte.execute() + + df = df.set_index(frq) + df.tbtotal.plot(x=frq, ax=ax, linewidth=1, + label='{} - {} ({})'.format(atm[atmp.MIDLATITUDE_SUMMER], mdl, text_plot)) + + ax.grid(True, 'both') + ax.legend() + plt.show() + + + +.. image-sg:: /examples/images/sphx_glr_plot_model_cloudy_001.png + :alt: plot model cloudy + :srcset: /examples/images/sphx_glr_plot_model_cloudy_001.png + :class: sphx-glr-single-img + + +.. rst-class:: sphx-glr-script-out + + .. code-block:: none + + /home/runner/work/pyrtlib/pyrtlib/pyrtlib/tb_spectrum.py:221: UserWarning: It seems that TbCloudRTE.cloudy attribute is not set to True. Sets it to True for running model in cloudy condition. + warnings.warn("It seems that TbCloudRTE.cloudy attribute is not set to True. " + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 2.609 seconds) + + +.. _sphx_glr_download_examples_plot_model_cloudy.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_model_cloudy.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_model_cloudy.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_model_cloudy.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_water_vapour_profile.rst.txt b/en/main/_sources/examples/plot_water_vapour_profile.rst.txt new file mode 100644 index 00000000..64cd263f --- /dev/null +++ b/en/main/_sources/examples/plot_water_vapour_profile.rst.txt @@ -0,0 +1,153 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_water_vapour_profile.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_water_vapour_profile.py: + + +Water Vapour Absorption Profiles +================================= + +.. GENERATED FROM PYTHON SOURCE LINES 7-10 + +This example shows how to use the +:py:meth:`pyrtlib.rt_equation.RTEquation.clearsky_absorption` method to generate water vapor absorption profil and +dry air absorption profile using ``R16`` model. + +.. GENERATED FROM PYTHON SOURCE LINES 12-90 + +.. code-block:: Python + + import matplotlib.pyplot as plt + + plt.rcParams.update({'font.size': 15}) + import matplotlib.ticker as ticker + from matplotlib.ticker import ScalarFormatter + import numpy as np + + from pyrtlib.rt_equation import RTEquation + from pyrtlib.absorption_model import H2OAbsModel, O2AbsModel, AbsModel + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.utils import ppmv2gkg, mr2rh, import_lineshape, height_to_pressure + + z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL) + frq = np.arange(20, 61, 1) + ice = 0 + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + e, rho = RTEquation.vapor(t, rh, ice) + + mdl = 'R19SD' + AbsModel.model = mdl + H2OAbsModel.h2oll = import_lineshape('h2oll') + O2AbsModel.o2ll = import_lineshape('o2ll') + + awet = np.zeros((len(frq), len(z))) + adry = np.zeros((len(frq), len(z))) + + for j in range(0, len(frq)): + awet[j, :], adry[j, :] = RTEquation.clearsky_absorption(p, t, e, frq[j]) + + fig, ax = plt.subplots(1, 2, figsize=(12, 12)) + axis_lim = [0, 7] + + + def tick_function_pressure(x): + v = height_to_pressure(x * 1000) + return ["%.2f" % z for z in v] + + + ax[1].yaxis.set_label_position("right") + ax[1].yaxis.tick_right() + ax[1].yaxis.set_major_formatter(ScalarFormatter()) + ax[1].yaxis.set_major_formatter(ticker.FuncFormatter(lambda y, _: '{:g}'.format(y))) + + mask = np.isin(frq, [20, 22, 60]) + freq = np.nonzero(mask) + for i in freq[0]: + ax[0].plot(awet[i, :], z, label='{} GHz - {}'.format(frq[i], mdl)) + ax[1].plot(adry[i, :], z, label='{} GHz - {}'.format(frq[i], mdl)) + + # ax[0].plot(rho, z, label='Vapor density [g/m3]', linestyle='--') + + ax[0].set_xlabel("WV [Np/km]") + ax[1].set_xlabel("DryAir [Np/km]") + ax[1].axes.get_yaxis().set_visible(False) + ax[0].set_ylabel("Altitude [km]") + + ax[0].set_ylim(axis_lim) + ax[1].set_ylim(axis_lim) + + new_tick_locations_pressure = np.arange(0, 120, 1) + + ax3 = ax[0].twinx() + rspine = ax3.spines['left'].set_position(('axes', -0.2)) + ax3.yaxis.set_ticks_position("left") + ax3.yaxis.set_label_position("left") + ax3.set_frame_on(True) + ax3.patch.set_visible(False) + ax3.set_ylabel('Pressure [hPa]') + ax3.set_yticks(new_tick_locations_pressure) + ax3.set_yticklabels(tick_function_pressure(new_tick_locations_pressure)) + ax3.set_ylim(ax[1].get_ylim()) + + ax[0].legend(loc="upper right") + ax[1].legend(loc="upper right") + + fig.tight_layout() + + + +.. image-sg:: /examples/images/sphx_glr_plot_water_vapour_profile_001.png + :alt: plot water vapour profile + :srcset: /examples/images/sphx_glr_plot_water_vapour_profile_001.png + :class: sphx-glr-single-img + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 1.503 seconds) + + +.. _sphx_glr_download_examples_plot_water_vapour_profile.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_water_vapour_profile.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_water_vapour_profile.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_water_vapour_profile.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/plot_weighting_functions.rst.txt b/en/main/_sources/examples/plot_weighting_functions.rst.txt new file mode 100644 index 00000000..026b4831 --- /dev/null +++ b/en/main/_sources/examples/plot_weighting_functions.rst.txt @@ -0,0 +1,186 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/plot_weighting_functions.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_plot_weighting_functions.py: + + +Computation of Weighting Functions +================================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-9 + +This example shows how to use the :py:class:`pyrtlib.weighting_functions.WeightingFunctions` method +to compute the weighting functions for the MWS channels for the U.S. standard atmospheric profile. + +.. GENERATED FROM PYTHON SOURCE LINES 9-27 + +.. code-block:: Python + + + import numpy as np + import warnings + warnings.filterwarnings("ignore", category=UserWarning) + from pyrtlib.weighting_functions import WeightingFunctions + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies_sat + + z, p, _, t, md = atmp.gl_atm(atmp.US_STANDARD) + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + wf = WeightingFunctions(z, p, t, rh) + wf.frequencies = np.array([50.5, 53.2, 54.35, 54.9, 59.4, 58.825, 58.4]) + wgt = wf.generate_wf() + + wf.plot_wf(wgt, 'Downlooking', ylim=[0, 60], legend=True, figsize=(8, 6), dpi=100) + + + + +.. image-sg:: /examples/images/sphx_glr_plot_weighting_functions_001.png + :alt: Downlooking + :srcset: /examples/images/sphx_glr_plot_weighting_functions_001.png + :class: sphx-glr-single-img + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 28-29 + +As above but with the weighting functions computed in uplooking mode. + +.. GENERATED FROM PYTHON SOURCE LINES 29-35 + +.. code-block:: Python + + + wf.satellite = False + wgt = wf.generate_wf() + + wf.plot_wf(wgt, 'Uplooking', ylim=[0, 10], figsize=(8, 6), dpi=100) + + + + +.. image-sg:: /examples/images/sphx_glr_plot_weighting_functions_002.png + :alt: Uplooking + :srcset: /examples/images/sphx_glr_plot_weighting_functions_002.png + :class: sphx-glr-single-img + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 36-39 + +The weighting functions can also be computed for a different set of channels. +The bandpass values are used to compute the weighting functions for the ATMS channels. +The following code compute the weighting functions for the ATMS channels 5-15. + +.. GENERATED FROM PYTHON SOURCE LINES 39-57 + +.. code-block:: Python + + + cf53 = 53.596 + cf57 = 57.290344 + frq = np.array([52.8, cf53-0.115, cf53+0.115, 54.4, 54.94, 55.5, cf57, + cf57-0.217, cf57+0.217, + cf57-0.3222-0.048, cf57-0.3222+0.048, cf57+0.3222-0.048, cf57+0.3222+0.048, + cf57-0.3222-0.022, cf57-0.3222+0.022, cf57+0.3222-0.022, cf57+0.3222+0.022, + cf57-0.3222-0.010, cf57-0.3222+0.010, cf57+0.3222-0.010, cf57+0.3222+0.010, + cf57-0.3222-0.0045, cf57-0.3222+0.0045, cf57+0.3222-0.0045, cf57+0.3222+0.0045]) + + wf.satellite = True + wf.frequencies = frq + wf.bandpass = np.array([1, 2, 1, 1, 1, 1, 2, 4, 4, 4, 4]) + wf.legend_labels = [f'Channel {i+5}' for i in range(len(wf.bandpass))] + wgt = wf.generate_wf() + + wf.plot_wf(wgt, 'ATMS Channels 5-15', ylim=[0, 70], xlim=[0, 0.11], legend=True, figsize=(8, 6), dpi=100) + + + + +.. image-sg:: /examples/images/sphx_glr_plot_weighting_functions_003.png + :alt: ATMS Channels 5-15 + :srcset: /examples/images/sphx_glr_plot_weighting_functions_003.png + :class: sphx-glr-single-img + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 58-61 + +The weighting functions can also be computed for a different set of frequencies. +The following code compute the weighting functions for the MWS channels for a standard tropical atmosphere. +for grouped frequencies. + +.. GENERATED FROM PYTHON SOURCE LINES 61-67 + +.. code-block:: Python + + + wf.satellite = True + wf.frequencies = get_frequencies_sat('MWS') + wgt = wf.generate_wf() + wf.plot_wf_grouped(wgt, 'MWS Channels (grouped)', ylim=[0, 60], + grouped_frequencies=[4, 9, 19, 1, 13], + grouped_labels=['23-52', '53-55', '57', '89', '164-229'], dpi=350) + + +.. image-sg:: /examples/images/sphx_glr_plot_weighting_functions_004.png + :alt: MWS Channels (grouped) + :srcset: /examples/images/sphx_glr_plot_weighting_functions_004.png + :class: sphx-glr-single-img + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (0 minutes 9.727 seconds) + + +.. _sphx_glr_download_examples_plot_weighting_functions.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: plot_weighting_functions.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: plot_weighting_functions.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: plot_weighting_functions.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/examples/sg_execution_times.rst.txt b/en/main/_sources/examples/sg_execution_times.rst.txt new file mode 100644 index 00000000..ff04faf3 --- /dev/null +++ b/en/main/_sources/examples/sg_execution_times.rst.txt @@ -0,0 +1,79 @@ + +:orphan: + +.. _sphx_glr_examples_sg_execution_times: + + +Computation times +================= +**09:08.777** total execution time for 15 files **from examples**: + +.. container:: + + .. raw:: html + + + + + + + + .. list-table:: + :header-rows: 1 + :class: table table-striped sg-datatable + + * - Example + - Time + - Mem (MB) + * - :ref:`sphx_glr_examples_uncertainty_tutorial.py` (``uncertainty_tutorial.py``) + - 04:31.371 + - 0.0 + * - :ref:`sphx_glr_examples_plot_brightness_temperature_uncertainties.py` (``plot_brightness_temperature_uncertainties.py``) + - 03:03.841 + - 0.0 + * - :ref:`sphx_glr_examples_generic_tutorial.py` (``generic_tutorial.py``) + - 00:15.012 + - 0.0 + * - :ref:`sphx_glr_examples_plot_bt_wyoming.py` (``plot_bt_wyoming.py``) + - 00:14.256 + - 0.0 + * - :ref:`sphx_glr_examples_plot_brightness_temperature_down.py` (``plot_brightness_temperature_down.py``) + - 00:12.680 + - 0.0 + * - :ref:`sphx_glr_examples_plot_brightness_temperature_wO3.py` (``plot_brightness_temperature_wO3.py``) + - 00:12.127 + - 0.0 + * - :ref:`sphx_glr_examples_plot_weighting_functions.py` (``plot_weighting_functions.py``) + - 00:09.727 + - 0.0 + * - :ref:`sphx_glr_examples_plot_brightness_temperature_up.py` (``plot_brightness_temperature_up.py``) + - 00:07.780 + - 0.0 + * - :ref:`sphx_glr_examples_plot_bt_igra2.py` (``plot_bt_igra2.py``) + - 00:07.631 + - 0.0 + * - :ref:`sphx_glr_examples_plot_bt_era5.py` (``plot_bt_era5.py``) + - 00:04.539 + - 0.0 + * - :ref:`sphx_glr_examples_plot_bt_era5_cloudy_profile.py` (``plot_bt_era5_cloudy_profile.py``) + - 00:04.233 + - 0.0 + * - :ref:`sphx_glr_examples_plot_model_cloudy.py` (``plot_model_cloudy.py``) + - 00:02.609 + - 0.0 + * - :ref:`sphx_glr_examples_plot_water_vapour_profile.py` (``plot_water_vapour_profile.py``) + - 00:01.503 + - 0.0 + * - :ref:`sphx_glr_examples_plot_log_dependance_tb.py` (``plot_log_dependance_tb.py``) + - 00:01.254 + - 0.0 + * - :ref:`sphx_glr_examples_plot_atmosphere.py` (``plot_atmosphere.py``) + - 00:00.211 + - 0.0 diff --git a/en/main/_sources/examples/uncertainty_tutorial.rst.txt b/en/main/_sources/examples/uncertainty_tutorial.rst.txt new file mode 100644 index 00000000..110f3d4b --- /dev/null +++ b/en/main/_sources/examples/uncertainty_tutorial.rst.txt @@ -0,0 +1,367 @@ + +.. DO NOT EDIT. +.. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. +.. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: +.. "examples/uncertainty_tutorial.py" +.. LINE NUMBERS ARE GIVEN BELOW. + +.. only:: html + + .. note:: + :class: sphx-glr-download-link-note + + :ref:`Go to the end ` + to download the full example code. + +.. rst-class:: sphx-glr-example-title + +.. _sphx_glr_examples_uncertainty_tutorial.py: + + +Uncertainty Example +=================== + +.. GENERATED FROM PYTHON SOURCE LINES 7-9 + +This example shows how to use the uncertainty module by simulating the downwelling brightness temperature +and then calculate the uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameter. + +.. GENERATED FROM PYTHON SOURCE LINES 11-19 + +.. code-block:: Python + + import matplotlib.pyplot as plt + + plt.rcParams.update({'font.size': 15}) + import matplotlib.ticker as ticker + from matplotlib.ticker import ScalarFormatter + import numpy as np + import pandas as pd + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 20-22 + +Import pyrtlib package and tools +________________________________ + +.. GENERATED FROM PYTHON SOURCE LINES 24-31 + +.. code-block:: Python + + from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.absorption_model import O2AbsModel + from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies, constants + from pyrtlib.uncertainty import covariance_matrix + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 32-34 + +Define spectroscopic parameters to be perturbed and them uncertainties +______________________________________________________________________ + +.. GENERATED FROM PYTHON SOURCE LINES 37-56 + +.. code-block:: Python + + O2_parameters = { + 'O2S': range(1), + 'X05': [None], + 'WB300': [None], + 'O2gamma': range(34), + 'Y300': range(34), + 'O2_V': range(34) + } + + HO2_parameters = { + 'con_Cf_factr': [None], + 'con_Cs_factr': [None], + 'gamma_a': range(1), + 'S': range(1), + 'con_Xf': [None], + 'SR': range(1), + 'con_Xs': [None] + } + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 57-94 + +.. code-block:: Python + + parameters = {**SpectroscopicParameter.oxygen_parameters('R18'), + **SpectroscopicParameter.water_parameters('R17')} + + parameters['O2S'].uncer = parameters['O2S'].value / 100 + parameters['X05'].uncer = 0.05 + parameters['WB300'].uncer = 0.05 + parameters['O2gamma'].uncer[0: 34] = np.array([0.05, 0.0138964, 0.0138964, 0.0138964, 0.0138964, + 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964, + 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964, + 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964, + 0.0138964, 0.01131274, 0.01131274, 0.01453087, 0.01453087, + 0.01789881, 0.01789881, 0.02116733, 0.02134575, 0.02476584, + 0.02476584, 0.02839177, 0.02839177, 0.03203582]) + parameters['Y300'].uncer[0: 34] = np.array([0.01, 0.00404133, 0.00502581, 0.00786035, 0.00820458, + 0.00935381, 0.00809901, 0.0078214, 0.00544132, 0.00460658, + 0.00225117, 0.00209907, 0.0039399, 0.00484963, 0.00799499, + 0.00878031, 0.01202685, 0.01261821, 0.01577055, 0.01615187, + 0.01907464, 0.01926978, 0.0218633, 0.02188287, 0.02416567, + 0.02401716, 0.02604178, 0.02575469, 0.02762271, 0.02720018, + 0.02897909, 0.02843003, 0.03019027, 0.02951218]) + parameters['O2_V'].uncer[0: 34] = np.array([0.00288243, 0.04655306, 0.03914166, 0.06110402, 0.0494057, + 0.05728709, 0.06444876, 0.07279906, 0.06385863, 0.07007177, + 0.05963384, 0.06373721, 0.11789158, 0.12307213, 0.10151855, + 0.10427449, 0.08328802, 0.08486523, 0.10130857, 0.10244286, + 0.15750036, 0.15814743, 0.24421784, 0.24343211, 0.3084326, + 0.30576201, 0.34568212, 0.34107696, 0.36123446, 0.35507902, + 0.37305309, 0.36544166, 0.38490936, 0.37583782]) + + parameters['gamma_a'].uncer[0] = 0.039 + parameters['S'].uncer[0] = 0.043 * 1e-25 * constants('light')[0] * 100 + parameters['con_Xf'].uncer = 0.8 + parameters['SR'].uncer[0] = 0.0014 + parameters['con_Xs'].uncer = 0.6 + + SpectroscopicParameter.set_parameters(parameters) + + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 95-97 + +Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used. +____________________________________________________________________________________________________________________________ + +.. GENERATED FROM PYTHON SOURCE LINES 99-104 + +.. code-block:: Python + + z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL) + + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + rh = mr2rh(p, t, gkg)[0] / 100 + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 105-107 + +Use frequencies set of HATPRO Radiometer +________________________________________ + +.. GENERATED FROM PYTHON SOURCE LINES 109-112 + +.. code-block:: Python + + interp = 0.5 + frq = sorted(list(set().union(get_frequencies('hat'), np.arange(20, 60 + interp, interp).tolist()))) + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 113-116 + +Performing uncertainty of brightness temperature +________________________________________________ +Default calculatoin consideres no cloud and no perturbation + +.. GENERATED FROM PYTHON SOURCE LINES 118-125 + +.. code-block:: Python + + rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters) + rte.satellite = False + rte.init_absmdl('R17') + O2AbsModel.model = 'R18' + O2AbsModel.set_ll() + df = rte.execute() + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 126-130 + +.. code-block:: Python + + df_out = pd.DataFrame() + df_out['freq'] = frq + df_out['tb'] = df.tbtotal + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 131-134 + +Calculate Jacobian matrix +_________________________ +:math:`Cov(T_{b}) = K_{p} \times Cov(p) \times K_{p}^T` + +.. GENERATED FROM PYTHON SOURCE LINES 136-155 + +.. code-block:: Python + + cnt = 0 + for k, v in (O2_parameters | HO2_parameters).items(): + for i in v: + amu_p = AbsModUncertainty.parameters_perturbation([k], 'max', index=i) + rte.set_amu(amu_p) + df = rte.execute() + if k =='O2S': + parameters[k].uncer = parameters[k].uncer / parameters[k].value * 100 + if k in ['con_Cf_factr', 'con_Cs_factr']: + parameters[k].uncer = parameters[k[0:6]].value * parameters[k].uncer + field_name = 'p_{}{}'.format(k, '_' + str(i) if i else '') + delta_tb = df.tbtotal.values - df_out.tb.values + if i is not None: + o = pd.Series(delta_tb / parameters[k].uncer[i], name=field_name) + else: + o = pd.Series(delta_tb / parameters[k].uncer, name=field_name) + df_out = pd.concat([df_out, o], axis=1) + cnt += 1 + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 156-159 + +Calculate uncertainty (sigma) for BT +____________________________________ +Using covariance matrix by [Cimini-2018]_ which identifies 111 parameters (6 for water vapor and 105 for oxygen) + +.. GENERATED FROM PYTHON SOURCE LINES 161-168 + +.. code-block:: Python + + params = df_out.copy() + + Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq', 'p_con_Xs'])].values + covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_111), Kp.T) + sigma_tb = np.sqrt(np.diag(covtb)) + params['sigma_tb'] = sigma_tb + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 169-170 + +Using covariance matrix by [Cimini-2019]_ which add the :math:`{n_{CS}}` parameter for water vapour + +.. GENERATED FROM PYTHON SOURCE LINES 172-177 + +.. code-block:: Python + + Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq'])].values + covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_112), Kp.T) + sigma_tb = np.sqrt(np.diag(covtb)) + params['sigma_tb_with_con_Xs'] = sigma_tb + + + + + + + + +.. GENERATED FROM PYTHON SOURCE LINES 178-187 + +.. code-block:: Python + + params.plot(x='freq', y=['sigma_tb', 'sigma_tb_with_con_Xs'], + title="${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters", + xlabel='Frequency [GHz]', ylabel='$\sigma_{T_B}$ [K]', + label=[atmp.atm_profiles()[atmp.TROPICAL], + atmp.atm_profiles()[atmp.TROPICAL] + ' with ${H_2 O}$ ${n_{CS}}$ parameter'], + figsize=(12,8)) + plt.grid() + + + + + +.. image-sg:: /examples/images/sphx_glr_uncertainty_tutorial_001.png + :alt: ${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters + :srcset: /examples/images/sphx_glr_uncertainty_tutorial_001.png + :class: sphx-glr-single-img + + + + + + +.. rst-class:: sphx-glr-timing + + **Total running time of the script:** (4 minutes 31.371 seconds) + + +.. _sphx_glr_download_examples_uncertainty_tutorial.py: + +.. only:: html + + .. container:: sphx-glr-footer sphx-glr-footer-example + + .. container:: sphx-glr-download sphx-glr-download-jupyter + + :download:`Download Jupyter notebook: uncertainty_tutorial.ipynb ` + + .. container:: sphx-glr-download sphx-glr-download-python + + :download:`Download Python source code: uncertainty_tutorial.py ` + + .. container:: sphx-glr-download sphx-glr-download-zip + + :download:`Download zipped: uncertainty_tutorial.zip ` + + +.. only:: html + + .. rst-class:: sphx-glr-signature + + `Gallery generated by Sphinx-Gallery `_ diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.__init__.rst.txt new file mode 100644 index 00000000..6913f263 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.AbsModel.\_\_init\_\_ +=============================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.AbsModel.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.AbsModel.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.implemented_models.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.implemented_models.rst.txt new file mode 100644 index 00000000..7205d7bf --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.implemented_models.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.AbsModel.implemented\_models +====================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.AbsModel.implemented_models + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.AbsModel.implemented_models.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.rst.txt new file mode 100644 index 00000000..43458c6f --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.rst.txt @@ -0,0 +1,37 @@ +pyrtlib.absorption\_model.AbsModel +================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. autoclass:: AbsModel + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~AbsModel.__init__ + ~AbsModel.implemented_models + ~AbsModel.set_ll + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~AbsModel.model + + + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.AbsModel.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.set_ll.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.set_ll.rst.txt new file mode 100644 index 00000000..9d4cb6b4 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.AbsModel.set_ll.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.AbsModel.set\_ll +========================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.AbsModel.set_ll + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.AbsModel.set_ll.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.__init__.rst.txt new file mode 100644 index 00000000..46d80900 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.H2OAbsModel.\_\_init\_\_ +================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.H2OAbsModel.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.H2OAbsModel.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.rst.txt new file mode 100644 index 00000000..75e5bedd --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.H2OAbsModel.h2o\_absorption +===================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.H2OAbsModel.h2o_absorption + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.rst.txt new file mode 100644 index 00000000..2617361c --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.H2OAbsModel.h2o\_continuum +==================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.H2OAbsModel.h2o_continuum + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.rst.txt new file mode 100644 index 00000000..aa139e98 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.H2OAbsModel.h2o\_continuum\_mwl24 +=========================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24 + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.rst.txt new file mode 100644 index 00000000..1d51f2b7 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.H2OAbsModel.implemented\_models +========================================================= + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.H2OAbsModel.implemented_models + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.H2OAbsModel.implemented_models.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.rst.txt new file mode 100644 index 00000000..74addf7b --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.rst.txt @@ -0,0 +1,41 @@ +pyrtlib.absorption\_model.H2OAbsModel +===================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. autoclass:: H2OAbsModel + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~H2OAbsModel.__init__ + ~H2OAbsModel.h2o_absorption + ~H2OAbsModel.h2o_continuum + ~H2OAbsModel.h2o_continuum_mwl24 + ~H2OAbsModel.implemented_models + ~H2OAbsModel.set_ll + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~H2OAbsModel.h2oll + ~H2OAbsModel.model + + + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.H2OAbsModel.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.rst.txt new file mode 100644 index 00000000..0f3165f2 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.H2OAbsModel.set\_ll +============================================= + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.H2OAbsModel.set_ll + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.H2OAbsModel.set_ll.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.__init__.rst.txt new file mode 100644 index 00000000..c98e22e7 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.LiqAbsModel.\_\_init\_\_ +================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.LiqAbsModel.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.LiqAbsModel.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.rst.txt new file mode 100644 index 00000000..bc3893af --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.LiqAbsModel.implemented\_models +========================================================= + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.LiqAbsModel.implemented_models + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.LiqAbsModel.implemented_models.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.rst.txt new file mode 100644 index 00000000..0d76ad4a --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.LiqAbsModel.liquid\_water\_absorption +=============================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.rst.txt new file mode 100644 index 00000000..de133154 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.rst.txt @@ -0,0 +1,38 @@ +pyrtlib.absorption\_model.LiqAbsModel +===================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. autoclass:: LiqAbsModel + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~LiqAbsModel.__init__ + ~LiqAbsModel.implemented_models + ~LiqAbsModel.liquid_water_absorption + ~LiqAbsModel.set_ll + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~LiqAbsModel.model + + + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.LiqAbsModel.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.rst.txt new file mode 100644 index 00000000..0d64adb6 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.LiqAbsModel.set\_ll +============================================= + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.LiqAbsModel.set_ll + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.LiqAbsModel.set_ll.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.__init__.rst.txt new file mode 100644 index 00000000..0860a2bf --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.N2AbsModel.\_\_init\_\_ +================================================= + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.N2AbsModel.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.N2AbsModel.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.rst.txt new file mode 100644 index 00000000..2d5d18c4 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.N2AbsModel.implemented\_models +======================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.N2AbsModel.implemented_models + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.N2AbsModel.implemented_models.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.rst.txt new file mode 100644 index 00000000..e32d7ef8 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.N2AbsModel.n2\_absorption +=================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.N2AbsModel.n2_absorption + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.N2AbsModel.n2_absorption.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.rst.txt new file mode 100644 index 00000000..55766c25 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.N2AbsModel.n2\_absorption\_mwl24 +========================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24 + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.rst.txt new file mode 100644 index 00000000..986f7326 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.rst.txt @@ -0,0 +1,39 @@ +pyrtlib.absorption\_model.N2AbsModel +==================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. autoclass:: N2AbsModel + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~N2AbsModel.__init__ + ~N2AbsModel.implemented_models + ~N2AbsModel.n2_absorption + ~N2AbsModel.n2_absorption_mwl24 + ~N2AbsModel.set_ll + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~N2AbsModel.model + + + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.N2AbsModel.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.set_ll.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.set_ll.rst.txt new file mode 100644 index 00000000..14542296 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.N2AbsModel.set_ll.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.N2AbsModel.set\_ll +============================================ + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.N2AbsModel.set_ll + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.N2AbsModel.set_ll.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.__init__.rst.txt new file mode 100644 index 00000000..03f27163 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.O2AbsModel.\_\_init\_\_ +================================================= + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.O2AbsModel.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O2AbsModel.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.rst.txt new file mode 100644 index 00000000..22ba5ea0 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.O2AbsModel.implemented\_models +======================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.O2AbsModel.implemented_models + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O2AbsModel.implemented_models.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.rst.txt new file mode 100644 index 00000000..b9c0c442 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.O2AbsModel.o2\_absorption +=================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.O2AbsModel.o2_absorption + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O2AbsModel.o2_absorption.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.rst.txt new file mode 100644 index 00000000..f85a992e --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.rst.txt @@ -0,0 +1,39 @@ +pyrtlib.absorption\_model.O2AbsModel +==================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. autoclass:: O2AbsModel + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~O2AbsModel.__init__ + ~O2AbsModel.implemented_models + ~O2AbsModel.o2_absorption + ~O2AbsModel.set_ll + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~O2AbsModel.model + ~O2AbsModel.o2ll + + + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O2AbsModel.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.set_ll.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.set_ll.rst.txt new file mode 100644 index 00000000..e389eee2 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O2AbsModel.set_ll.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.O2AbsModel.set\_ll +============================================ + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.O2AbsModel.set_ll + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O2AbsModel.set_ll.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.__init__.rst.txt new file mode 100644 index 00000000..7d8e14a7 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.O3AbsModel.\_\_init\_\_ +================================================= + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.O3AbsModel.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O3AbsModel.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.rst.txt new file mode 100644 index 00000000..0f079ddb --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.O3AbsModel.implemented\_models +======================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.O3AbsModel.implemented_models + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O3AbsModel.implemented_models.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.rst.txt new file mode 100644 index 00000000..025d3c3d --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.O3AbsModel.o3\_absorption +=================================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.O3AbsModel.o3_absorption + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O3AbsModel.o3_absorption.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.rst.txt new file mode 100644 index 00000000..14cf125e --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.rst.txt @@ -0,0 +1,39 @@ +pyrtlib.absorption\_model.O3AbsModel +==================================== + +.. currentmodule:: pyrtlib.absorption_model + +.. autoclass:: O3AbsModel + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~O3AbsModel.__init__ + ~O3AbsModel.implemented_models + ~O3AbsModel.o3_absorption + ~O3AbsModel.set_ll + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~O3AbsModel.model + ~O3AbsModel.o3ll + + + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O3AbsModel.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.set_ll.rst.txt b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.set_ll.rst.txt new file mode 100644 index 00000000..c1063ede --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.absorption_model.O3AbsModel.set_ll.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.absorption\_model.O3AbsModel.set\_ll +============================================ + +.. currentmodule:: pyrtlib.absorption_model + +.. automethod:: pyrtlib.absorption_model.O3AbsModel.set_ll + + + + + +.. include:: gallery_backreferences/pyrtlib.absorption_model.O3AbsModel.set_ll.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.rst.txt new file mode 100644 index 00000000..050c7121 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.apiwebservices.ERA5Reanalysis.\_\_init\_\_ +================================================== + +.. currentmodule:: pyrtlib.apiwebservices + +.. automethod:: pyrtlib.apiwebservices.ERA5Reanalysis.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.rst.txt new file mode 100644 index 00000000..5d1eabf8 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.apiwebservices.ERA5Reanalysis.read\_data +================================================ + +.. currentmodule:: pyrtlib.apiwebservices + +.. automethod:: pyrtlib.apiwebservices.ERA5Reanalysis.read_data + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.rst.txt new file mode 100644 index 00000000..77067389 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.apiwebservices.ERA5Reanalysis.request\_data +=================================================== + +.. currentmodule:: pyrtlib.apiwebservices + +.. automethod:: pyrtlib.apiwebservices.ERA5Reanalysis.request_data + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.rst.txt new file mode 100644 index 00000000..b970c14a --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.ERA5Reanalysis.rst.txt @@ -0,0 +1,31 @@ +pyrtlib.apiwebservices.ERA5Reanalysis +===================================== + +.. currentmodule:: pyrtlib.apiwebservices + +.. autoclass:: ERA5Reanalysis + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~ERA5Reanalysis.__init__ + ~ERA5Reanalysis.read_data + ~ERA5Reanalysis.request_data + + + + + + + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.ERA5Reanalysis.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.rst.txt new file mode 100644 index 00000000..a7ef293e --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.apiwebservices.IGRAUpperAir.\_\_init\_\_ +================================================ + +.. currentmodule:: pyrtlib.apiwebservices + +.. automethod:: pyrtlib.apiwebservices.IGRAUpperAir.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.IGRAUpperAir.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.rst.txt new file mode 100644 index 00000000..dbf3de62 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.apiwebservices.IGRAUpperAir.request\_data +================================================= + +.. currentmodule:: pyrtlib.apiwebservices + +.. automethod:: pyrtlib.apiwebservices.IGRAUpperAir.request_data + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.IGRAUpperAir.request_data.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.IGRAUpperAir.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.IGRAUpperAir.rst.txt new file mode 100644 index 00000000..704908b8 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.IGRAUpperAir.rst.txt @@ -0,0 +1,30 @@ +pyrtlib.apiwebservices.IGRAUpperAir +=================================== + +.. currentmodule:: pyrtlib.apiwebservices + +.. autoclass:: IGRAUpperAir + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~IGRAUpperAir.__init__ + ~IGRAUpperAir.request_data + + + + + + + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.IGRAUpperAir.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.rst.txt new file mode 100644 index 00000000..55632c42 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.apiwebservices.WyomingUpperAir.\_\_init\_\_ +=================================================== + +.. currentmodule:: pyrtlib.apiwebservices + +.. automethod:: pyrtlib.apiwebservices.WyomingUpperAir.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.WyomingUpperAir.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.rst.txt new file mode 100644 index 00000000..fc05a719 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.apiwebservices.WyomingUpperAir.get\_stations +==================================================== + +.. currentmodule:: pyrtlib.apiwebservices + +.. automethod:: pyrtlib.apiwebservices.WyomingUpperAir.get_stations + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.rst.txt new file mode 100644 index 00000000..ce5d8440 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.apiwebservices.WyomingUpperAir.request\_data +==================================================== + +.. currentmodule:: pyrtlib.apiwebservices + +.. automethod:: pyrtlib.apiwebservices.WyomingUpperAir.request_data + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.WyomingUpperAir.request_data.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.rst.txt b/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.rst.txt new file mode 100644 index 00000000..644d706c --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.apiwebservices.WyomingUpperAir.rst.txt @@ -0,0 +1,31 @@ +pyrtlib.apiwebservices.WyomingUpperAir +====================================== + +.. currentmodule:: pyrtlib.apiwebservices + +.. autoclass:: WyomingUpperAir + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~WyomingUpperAir.__init__ + ~WyomingUpperAir.get_stations + ~WyomingUpperAir.request_data + + + + + + + + + + + +.. include:: gallery_backreferences/pyrtlib.apiwebservices.WyomingUpperAir.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.__init__.rst.txt new file mode 100644 index 00000000..d5774467 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.AtmosphericProfiles.\_\_init\_\_ +==================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.AtmosphericProfiles.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.AtmosphericProfiles.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.rst.txt new file mode 100644 index 00000000..ba160add --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.AtmosphericProfiles.atm\_profiles +===================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.AtmosphericProfiles.atm_profiles + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.rst.txt new file mode 100644 index 00000000..c9298bbf --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.AtmosphericProfiles.gl\_atm +=============================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.AtmosphericProfiles.gl_atm + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.AtmosphericProfiles.gl_atm.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.rst.txt new file mode 100644 index 00000000..6ec209ba --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.AtmosphericProfiles.gl\_atm\_minor +====================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.rst.txt new file mode 100644 index 00000000..68d2bc25 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.AtmosphericProfiles.gl\_atm\_trace +====================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.rst.txt new file mode 100644 index 00000000..2c00c7f1 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.AtmosphericProfiles.rst.txt @@ -0,0 +1,89 @@ +pyrtlib.climatology.AtmosphericProfiles +======================================= + +.. currentmodule:: pyrtlib.climatology + +.. autoclass:: AtmosphericProfiles + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~AtmosphericProfiles.__init__ + ~AtmosphericProfiles.atm_profiles + ~AtmosphericProfiles.gl_atm + ~AtmosphericProfiles.gl_atm_minor + ~AtmosphericProfiles.gl_atm_trace + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~AtmosphericProfiles.AIR + ~AtmosphericProfiles.C2CL2F4 + ~AtmosphericProfiles.C2CL3F3 + ~AtmosphericProfiles.C2CLF5 + ~AtmosphericProfiles.C2H2 + ~AtmosphericProfiles.C2H6 + ~AtmosphericProfiles.CCL2F2 + ~AtmosphericProfiles.CCL3F + ~AtmosphericProfiles.CCL4 + ~AtmosphericProfiles.CCLF3 + ~AtmosphericProfiles.CF4 + ~AtmosphericProfiles.CH3CL + ~AtmosphericProfiles.CH4 + ~AtmosphericProfiles.CHCLF2 + ~AtmosphericProfiles.CHCl2F + ~AtmosphericProfiles.CLO + ~AtmosphericProfiles.CLONO2 + ~AtmosphericProfiles.CO + ~AtmosphericProfiles.CO2 + ~AtmosphericProfiles.COF2 + ~AtmosphericProfiles.H2CO + ~AtmosphericProfiles.H2O + ~AtmosphericProfiles.H2O2 + ~AtmosphericProfiles.H2S + ~AtmosphericProfiles.HBR + ~AtmosphericProfiles.HCL + ~AtmosphericProfiles.HCN + ~AtmosphericProfiles.HF + ~AtmosphericProfiles.HI + ~AtmosphericProfiles.HNO3 + ~AtmosphericProfiles.HNO4 + ~AtmosphericProfiles.HOCL + ~AtmosphericProfiles.MIDLATITUDE_SUMMER + ~AtmosphericProfiles.MIDLATITUDE_WINTER + ~AtmosphericProfiles.N2 + ~AtmosphericProfiles.N2O + ~AtmosphericProfiles.N2O5 + ~AtmosphericProfiles.NH3 + ~AtmosphericProfiles.NO + ~AtmosphericProfiles.NO2 + ~AtmosphericProfiles.O2 + ~AtmosphericProfiles.O3 + ~AtmosphericProfiles.OCS + ~AtmosphericProfiles.OH + ~AtmosphericProfiles.PH3 + ~AtmosphericProfiles.SF6 + ~AtmosphericProfiles.SO2 + ~AtmosphericProfiles.SUBARCTIC_SUMMER + ~AtmosphericProfiles.SUBARCTIC_WINTER + ~AtmosphericProfiles.TROPICAL + ~AtmosphericProfiles.US_STANDARD + + + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.AtmosphericProfiles.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.__init__.rst.txt new file mode 100644 index 00000000..1a437bfc --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.ProfileExtrapolation.\_\_init\_\_ +===================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.ProfileExtrapolation.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.pressure.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.pressure.rst.txt new file mode 100644 index 00000000..fee3dab9 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.pressure.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.ProfileExtrapolation.pressure +================================================= + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.ProfileExtrapolation.pressure + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.pressure.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.rst.txt new file mode 100644 index 00000000..28dbf791 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.ProfileExtrapolation.profile\_extrapolation +=============================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.rst.txt new file mode 100644 index 00000000..154dcfdc --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.rst.txt @@ -0,0 +1,43 @@ +pyrtlib.climatology.ProfileExtrapolation +======================================== + +.. currentmodule:: pyrtlib.climatology + +.. autoclass:: ProfileExtrapolation + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~ProfileExtrapolation.__init__ + ~ProfileExtrapolation.pressure + ~ProfileExtrapolation.profile_extrapolation + ~ProfileExtrapolation.standard_pressure + ~ProfileExtrapolation.standard_temperature + ~ProfileExtrapolation.standard_water_vapour_density + ~ProfileExtrapolation.standard_water_vapour_pressure + ~ProfileExtrapolation.temperature + ~ProfileExtrapolation.water_vapour_density + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~ProfileExtrapolation.height + + + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.rst.txt new file mode 100644 index 00000000..9a8ce569 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.ProfileExtrapolation.standard\_pressure +=========================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.ProfileExtrapolation.standard_pressure + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.rst.txt new file mode 100644 index 00000000..d4a63c37 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.ProfileExtrapolation.standard\_temperature +============================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.ProfileExtrapolation.standard_temperature + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.rst.txt new file mode 100644 index 00000000..557aaff5 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.ProfileExtrapolation.standard\_water\_vapour\_density +========================================================================= + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.rst.txt new file mode 100644 index 00000000..4cb8f175 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.ProfileExtrapolation.standard\_water\_vapour\_pressure +========================================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.temperature.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.temperature.rst.txt new file mode 100644 index 00000000..6809ba39 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.temperature.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.ProfileExtrapolation.temperature +==================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.ProfileExtrapolation.temperature + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.temperature.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.rst.txt b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.rst.txt new file mode 100644 index 00000000..2c365bd6 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.climatology.ProfileExtrapolation.water\_vapour\_density +=============================================================== + +.. currentmodule:: pyrtlib.climatology + +.. automethod:: pyrtlib.climatology.ProfileExtrapolation.water_vapour_density + + + + + +.. include:: gallery_backreferences/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.__init__.rst.txt new file mode 100644 index 00000000..6b602f4d --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.\_\_init\_\_ +============================================ + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.bright.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.bright.rst.txt new file mode 100644 index 00000000..7a31ddeb --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.bright.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.bright +====================================== + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.bright + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.bright.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.rst.txt new file mode 100644 index 00000000..4ec9b539 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.clearsky\_absorption +==================================================== + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.clearsky_absorption + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.clearsky_absorption.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.rst.txt new file mode 100644 index 00000000..7373c7b1 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.cloud\_integrated\_density +========================================================== + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.cloud_integrated_density + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.rst.txt new file mode 100644 index 00000000..aa70bcb2 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.cloud\_radiating\_temperature +============================================================= + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.rst.txt new file mode 100644 index 00000000..54ce1fe4 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.cloudy\_absorption +================================================== + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.cloudy_absorption + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.cloudy_absorption.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.exponential_integration.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.exponential_integration.rst.txt new file mode 100644 index 00000000..6d7509ca --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.exponential_integration.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.exponential\_integration +======================================================== + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.exponential_integration + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.exponential_integration.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.planck.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.planck.rst.txt new file mode 100644 index 00000000..75623687 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.planck.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.planck +====================================== + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.planck + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.planck.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.ray_tracing.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.ray_tracing.rst.txt new file mode 100644 index 00000000..1a995947 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.ray_tracing.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.ray\_tracing +============================================ + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.ray_tracing + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.ray_tracing.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.refractivity.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.refractivity.rst.txt new file mode 100644 index 00000000..3447a964 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.refractivity.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.refractivity +============================================ + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.refractivity + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.refractivity.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.rst.txt new file mode 100644 index 00000000..83efd7bd --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.rst.txt @@ -0,0 +1,39 @@ +pyrtlib.rt\_equation.RTEquation +=============================== + +.. currentmodule:: pyrtlib.rt_equation + +.. autoclass:: RTEquation + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~RTEquation.__init__ + ~RTEquation.bright + ~RTEquation.clearsky_absorption + ~RTEquation.cloud_integrated_density + ~RTEquation.cloud_radiating_temperature + ~RTEquation.cloudy_absorption + ~RTEquation.exponential_integration + ~RTEquation.planck + ~RTEquation.ray_tracing + ~RTEquation.refractivity + ~RTEquation.vapor + + + + + + + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.vapor.rst.txt b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.vapor.rst.txt new file mode 100644 index 00000000..6cfee4cc --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.rt_equation.RTEquation.vapor.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.rt\_equation.RTEquation.vapor +===================================== + +.. currentmodule:: pyrtlib.rt_equation + +.. automethod:: pyrtlib.rt_equation.RTEquation.vapor + + + + + +.. include:: gallery_backreferences/pyrtlib.rt_equation.RTEquation.vapor.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.rst.txt new file mode 100644 index 00000000..ec440f98 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.tb\_spectrum.TbCloudRTE.\_\_init\_\_ +============================================ + +.. currentmodule:: pyrtlib.tb_spectrum + +.. automethod:: pyrtlib.tb_spectrum.TbCloudRTE.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.tb_spectrum.TbCloudRTE.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.rst.txt b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.rst.txt new file mode 100644 index 00000000..97b4d3ad --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.tb\_spectrum.TbCloudRTE.execute +======================================= + +.. currentmodule:: pyrtlib.tb_spectrum + +.. automethod:: pyrtlib.tb_spectrum.TbCloudRTE.execute + + + + + +.. include:: gallery_backreferences/pyrtlib.tb_spectrum.TbCloudRTE.execute.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.rst.txt b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.rst.txt new file mode 100644 index 00000000..cbc27e02 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.tb\_spectrum.TbCloudRTE.init\_absmdl +============================================ + +.. currentmodule:: pyrtlib.tb_spectrum + +.. automethod:: pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl + + + + + +.. include:: gallery_backreferences/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.rst.txt b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.rst.txt new file mode 100644 index 00000000..aaa66ace --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.tb\_spectrum.TbCloudRTE.init\_cloudy +============================================ + +.. currentmodule:: pyrtlib.tb_spectrum + +.. automethod:: pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy + + + + + +.. include:: gallery_backreferences/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.rst.txt b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.rst.txt new file mode 100644 index 00000000..4fa530ce --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.rst.txt @@ -0,0 +1,40 @@ +pyrtlib.tb\_spectrum.TbCloudRTE +=============================== + +.. currentmodule:: pyrtlib.tb_spectrum + +.. autoclass:: TbCloudRTE + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~TbCloudRTE.__init__ + ~TbCloudRTE.execute + ~TbCloudRTE.init_absmdl + ~TbCloudRTE.init_cloudy + ~TbCloudRTE.set_amu + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~TbCloudRTE.emissivity + ~TbCloudRTE.satellite + + + + + + + +.. include:: gallery_backreferences/pyrtlib.tb_spectrum.TbCloudRTE.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.rst.txt b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.rst.txt new file mode 100644 index 00000000..bc7b5120 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.tb\_spectrum.TbCloudRTE.set\_amu +======================================== + +.. currentmodule:: pyrtlib.tb_spectrum + +.. automethod:: pyrtlib.tb_spectrum.TbCloudRTE.set_amu + + + + + +.. include:: gallery_backreferences/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.rst.txt new file mode 100644 index 00000000..a856980a --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.uncertainty.AbsModUncertainty.\_\_init\_\_ +================================================== + +.. currentmodule:: pyrtlib.uncertainty + +.. automethod:: pyrtlib.uncertainty.AbsModUncertainty.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.AbsModUncertainty.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.rst.txt new file mode 100644 index 00000000..4e912111 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.uncertainty.AbsModUncertainty.parameters\_perturbation +============================================================== + +.. currentmodule:: pyrtlib.uncertainty + +.. automethod:: pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.rst.txt new file mode 100644 index 00000000..889fb3d0 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.rst.txt @@ -0,0 +1,31 @@ +pyrtlib.uncertainty.AbsModUncertainty +===================================== + +.. currentmodule:: pyrtlib.uncertainty + +.. autoclass:: AbsModUncertainty + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~AbsModUncertainty.__init__ + ~AbsModUncertainty.parameters_perturbation + ~AbsModUncertainty.uncertainty_propagation + + + + + + + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.AbsModUncertainty.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.rst.txt new file mode 100644 index 00000000..00a8c03f --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.uncertainty.AbsModUncertainty.uncertainty\_propagation +============================================================== + +.. currentmodule:: pyrtlib.uncertainty + +.. automethod:: pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.rst.txt new file mode 100644 index 00000000..fa86f942 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.uncertainty.SpectroscopicParameter.\_\_init\_\_ +======================================================= + +.. currentmodule:: pyrtlib.uncertainty + +.. automethod:: pyrtlib.uncertainty.SpectroscopicParameter.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.SpectroscopicParameter.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.rst.txt new file mode 100644 index 00000000..d6d29889 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.uncertainty.SpectroscopicParameter.oxygen\_parameters +============================================================= + +.. currentmodule:: pyrtlib.uncertainty + +.. automethod:: pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.rst.txt new file mode 100644 index 00000000..b59addb0 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.uncertainty.SpectroscopicParameter.ozono\_parameters +============================================================ + +.. currentmodule:: pyrtlib.uncertainty + +.. automethod:: pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.rst.txt new file mode 100644 index 00000000..8c262193 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.rst.txt @@ -0,0 +1,43 @@ +pyrtlib.uncertainty.SpectroscopicParameter +========================================== + +.. currentmodule:: pyrtlib.uncertainty + +.. autoclass:: SpectroscopicParameter + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~SpectroscopicParameter.__init__ + ~SpectroscopicParameter.oxygen_parameters + ~SpectroscopicParameter.ozono_parameters + ~SpectroscopicParameter.set_parameters + ~SpectroscopicParameter.water_parameters + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~SpectroscopicParameter.name + ~SpectroscopicParameter.refer + ~SpectroscopicParameter.units + ~SpectroscopicParameter.value + ~SpectroscopicParameter.uncer + + + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.SpectroscopicParameter.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.rst.txt new file mode 100644 index 00000000..10b5b9ba --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.uncertainty.SpectroscopicParameter.set\_parameters +========================================================== + +.. currentmodule:: pyrtlib.uncertainty + +.. automethod:: pyrtlib.uncertainty.SpectroscopicParameter.set_parameters + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.rst.txt b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.rst.txt new file mode 100644 index 00000000..04039e21 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.uncertainty.SpectroscopicParameter.water\_parameters +============================================================ + +.. currentmodule:: pyrtlib.uncertainty + +.. automethod:: pyrtlib.uncertainty.SpectroscopicParameter.water_parameters + + + + + +.. include:: gallery_backreferences/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.atmospheric_tickness.rst.txt b/en/main/_sources/generated/pyrtlib.utils.atmospheric_tickness.rst.txt new file mode 100644 index 00000000..02920a3f --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.atmospheric_tickness.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.atmospheric\_tickness +=================================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.atmospheric_tickness + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.atmospheric_tickness.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.constants.rst.txt b/en/main/_sources/generated/pyrtlib.utils.constants.rst.txt new file mode 100644 index 00000000..24717d05 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.constants.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.constants +======================= + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.constants + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.constants.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.dewpoint2rh.rst.txt b/en/main/_sources/generated/pyrtlib.utils.dewpoint2rh.rst.txt new file mode 100644 index 00000000..73112a5f --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.dewpoint2rh.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.dewpoint2rh +========================= + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.dewpoint2rh + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.dewpoint2rh.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.dilec12.rst.txt b/en/main/_sources/generated/pyrtlib.utils.dilec12.rst.txt new file mode 100644 index 00000000..4abb46bd --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.dilec12.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.dilec12 +===================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.dilec12 + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.dilec12.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.e2mr.rst.txt b/en/main/_sources/generated/pyrtlib.utils.e2mr.rst.txt new file mode 100644 index 00000000..9da1c4f3 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.e2mr.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.e2mr +================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.e2mr + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.e2mr.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.esice_goffgratch.rst.txt b/en/main/_sources/generated/pyrtlib.utils.esice_goffgratch.rst.txt new file mode 100644 index 00000000..b833a95c --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.esice_goffgratch.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.esice\_goffgratch +=============================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.esice_goffgratch + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.esice_goffgratch.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.eswat_goffgratch.rst.txt b/en/main/_sources/generated/pyrtlib.utils.eswat_goffgratch.rst.txt new file mode 100644 index 00000000..c7ad9982 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.eswat_goffgratch.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.eswat\_goffgratch +=============================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.eswat_goffgratch + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.eswat_goffgratch.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.gas_mass.rst.txt b/en/main/_sources/generated/pyrtlib.utils.gas_mass.rst.txt new file mode 100644 index 00000000..a00626f6 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.gas_mass.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.gas\_mass +======================= + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.gas_mass + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.gas_mass.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.get_frequencies.rst.txt b/en/main/_sources/generated/pyrtlib.utils.get_frequencies.rst.txt new file mode 100644 index 00000000..7d201c4c --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.get_frequencies.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.get\_frequencies +============================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.get_frequencies + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.get_frequencies.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.get_frequencies_sat.rst.txt b/en/main/_sources/generated/pyrtlib.utils.get_frequencies_sat.rst.txt new file mode 100644 index 00000000..c8cf9b11 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.get_frequencies_sat.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.get\_frequencies\_sat +=================================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.get_frequencies_sat + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.get_frequencies_sat.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.height_to_pressure.rst.txt b/en/main/_sources/generated/pyrtlib.utils.height_to_pressure.rst.txt new file mode 100644 index 00000000..6b9705d7 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.height_to_pressure.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.height\_to\_pressure +================================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.height_to_pressure + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.height_to_pressure.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.import_lineshape.rst.txt b/en/main/_sources/generated/pyrtlib.utils.import_lineshape.rst.txt new file mode 100644 index 00000000..fe01f171 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.import_lineshape.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.import\_lineshape +=============================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.import_lineshape + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.import_lineshape.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.kgkg_to_kgm3.rst.txt b/en/main/_sources/generated/pyrtlib.utils.kgkg_to_kgm3.rst.txt new file mode 100644 index 00000000..e99bc43c --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.kgkg_to_kgm3.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.kgkg\_to\_kgm3 +============================ + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.kgkg_to_kgm3 + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.kgkg_to_kgm3.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.mr2e.rst.txt b/en/main/_sources/generated/pyrtlib.utils.mr2e.rst.txt new file mode 100644 index 00000000..3f555eea --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.mr2e.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.mr2e +================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.mr2e + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.mr2e.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.mr2rh.rst.txt b/en/main/_sources/generated/pyrtlib.utils.mr2rh.rst.txt new file mode 100644 index 00000000..780e87d6 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.mr2rh.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.mr2rh +=================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.mr2rh + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.mr2rh.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.mr2rho.rst.txt b/en/main/_sources/generated/pyrtlib.utils.mr2rho.rst.txt new file mode 100644 index 00000000..19cf08ea --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.mr2rho.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.mr2rho +==================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.mr2rho + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.mr2rho.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.ppmv2gkg.rst.txt b/en/main/_sources/generated/pyrtlib.utils.ppmv2gkg.rst.txt new file mode 100644 index 00000000..7702ad3d --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.ppmv2gkg.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.ppmv2gkg +====================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.ppmv2gkg + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.ppmv2gkg.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.ppmv_to_moleculesm3.rst.txt b/en/main/_sources/generated/pyrtlib.utils.ppmv_to_moleculesm3.rst.txt new file mode 100644 index 00000000..fd3f9b17 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.ppmv_to_moleculesm3.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.ppmv\_to\_moleculesm3 +=================================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.ppmv_to_moleculesm3 + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.ppmv_to_moleculesm3.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.pressure_to_height.rst.txt b/en/main/_sources/generated/pyrtlib.utils.pressure_to_height.rst.txt new file mode 100644 index 00000000..3febe21f --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.pressure_to_height.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.pressure\_to\_height +================================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.pressure_to_height + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.pressure_to_height.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.rho2mr.rst.txt b/en/main/_sources/generated/pyrtlib.utils.rho2mr.rst.txt new file mode 100644 index 00000000..a733a4d2 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.rho2mr.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.rho2mr +==================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.rho2mr + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.rho2mr.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.rho2rh.rst.txt b/en/main/_sources/generated/pyrtlib.utils.rho2rh.rst.txt new file mode 100644 index 00000000..fdcdbd8d --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.rho2rh.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.rho2rh +==================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.rho2rh + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.rho2rh.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.rst.txt b/en/main/_sources/generated/pyrtlib.utils.rst.txt new file mode 100644 index 00000000..647fee44 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.rst.txt @@ -0,0 +1,59 @@ +pyrtlib.utils +============= + +.. automodule:: pyrtlib.utils + + + + + + + + .. rubric:: Functions + + .. autosummary:: + :toctree: + + atmospheric_tickness + constants + dewpoint2rh + dilec12 + e2mr + esice_goffgratch + eswat_goffgratch + gas_mass + get_frequencies + get_frequencies_sat + height_to_pressure + import_lineshape + kgkg_to_kgm3 + mr2e + mr2rh + mr2rho + ppmv2gkg + ppmv_to_moleculesm3 + pressure_to_height + rho2mr + rho2rh + satmix + satvap + tk2b_mod + to_celsius + to_kelvin + virtual_temperature + + + + + + + + + + + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.satmix.rst.txt b/en/main/_sources/generated/pyrtlib.utils.satmix.rst.txt new file mode 100644 index 00000000..e9f03bdd --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.satmix.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.satmix +==================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.satmix + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.satmix.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.satvap.rst.txt b/en/main/_sources/generated/pyrtlib.utils.satvap.rst.txt new file mode 100644 index 00000000..03c6a8d4 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.satvap.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.satvap +==================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.satvap + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.satvap.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.tk2b_mod.rst.txt b/en/main/_sources/generated/pyrtlib.utils.tk2b_mod.rst.txt new file mode 100644 index 00000000..207bcf7d --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.tk2b_mod.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.tk2b\_mod +======================= + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.tk2b_mod + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.tk2b_mod.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.to_celsius.rst.txt b/en/main/_sources/generated/pyrtlib.utils.to_celsius.rst.txt new file mode 100644 index 00000000..bb420def --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.to_celsius.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.to\_celsius +========================= + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.to_celsius + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.to_celsius.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.to_kelvin.rst.txt b/en/main/_sources/generated/pyrtlib.utils.to_kelvin.rst.txt new file mode 100644 index 00000000..90b1ef66 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.to_kelvin.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.to\_kelvin +======================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.to_kelvin + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.to_kelvin.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.utils.virtual_temperature.rst.txt b/en/main/_sources/generated/pyrtlib.utils.virtual_temperature.rst.txt new file mode 100644 index 00000000..f0bd7517 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.utils.virtual_temperature.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.utils.virtual\_temperature +================================== + +.. currentmodule:: pyrtlib.utils + +.. autofunction:: pyrtlib.utils.virtual_temperature + + + + + +.. include:: gallery_backreferences/pyrtlib.utils.virtual_temperature.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.rst.txt b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.rst.txt new file mode 100644 index 00000000..cb7e4f88 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.weighting\_functions.WeightingFunctions.\_\_init\_\_ +============================================================ + +.. currentmodule:: pyrtlib.weighting_functions + +.. automethod:: pyrtlib.weighting_functions.WeightingFunctions.__init__ + + + + + +.. include:: gallery_backreferences/pyrtlib.weighting_functions.WeightingFunctions.__init__.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.rst.txt b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.rst.txt new file mode 100644 index 00000000..30a96aa9 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.weighting\_functions.WeightingFunctions.generate\_wf +============================================================ + +.. currentmodule:: pyrtlib.weighting_functions + +.. automethod:: pyrtlib.weighting_functions.WeightingFunctions.generate_wf + + + + + +.. include:: gallery_backreferences/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.rst.txt b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.rst.txt new file mode 100644 index 00000000..231775ae --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.weighting\_functions.WeightingFunctions.plot\_wf +======================================================== + +.. currentmodule:: pyrtlib.weighting_functions + +.. automethod:: pyrtlib.weighting_functions.WeightingFunctions.plot_wf + + + + + +.. include:: gallery_backreferences/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.rst.txt b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.rst.txt new file mode 100644 index 00000000..d7a88275 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.rst.txt @@ -0,0 +1,12 @@ +pyrtlib.weighting\_functions.WeightingFunctions.plot\_wf\_grouped +================================================================= + +.. currentmodule:: pyrtlib.weighting_functions + +.. automethod:: pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped + + + + + +.. include:: gallery_backreferences/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.examples \ No newline at end of file diff --git a/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.rst.txt b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.rst.txt new file mode 100644 index 00000000..37a6ec07 --- /dev/null +++ b/en/main/_sources/generated/pyrtlib.weighting_functions.WeightingFunctions.rst.txt @@ -0,0 +1,39 @@ +pyrtlib.weighting\_functions.WeightingFunctions +=============================================== + +.. currentmodule:: pyrtlib.weighting_functions + +.. autoclass:: WeightingFunctions + :show-inheritance: + + + + .. rubric:: Methods + + .. autosummary:: + :toctree: + :recursive: + + ~WeightingFunctions.__init__ + ~WeightingFunctions.generate_wf + ~WeightingFunctions.plot_wf + ~WeightingFunctions.plot_wf_grouped + + + + + + .. rubric:: Attributes + + .. autosummary:: + + ~WeightingFunctions.frequencies + ~WeightingFunctions.satellite + + + + + + + +.. include:: gallery_backreferences/pyrtlib.weighting_functions.WeightingFunctions.examples \ No newline at end of file diff --git a/en/main/_sources/index.rst.txt b/en/main/_sources/index.rst.txt new file mode 100644 index 00000000..41d04374 --- /dev/null +++ b/en/main/_sources/index.rst.txt @@ -0,0 +1,291 @@ +.. .. image:: ../../resources/logo/logo_large_new.png +.. :width: 600 + +.. pyrtlib documentation master file, created by sphinx-quickstart on Fri Mar 19 09:49:16 2021. + You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. + + +PyRTlib documentation +===================== + +PyRTlib allows to simulate and calculate radiometric parameters and estimting propogation parameters using as input meteorological data. +Some meteorological dataset are built-in in PyRTlib which can be download and used directly in PyRTlib. It considers atmospheric profiles from both radiosounding observations (RAOB) and model reanalysis (ERA5). +RAOB profiles come from Wyoming Upper Air Archive (University of Wyoming) and NCEI’s Integrated Radiosonde Archive version 2 (IGRA2) by the National Climatic Data Center (NCDC) of the National Oceanic and Atmospheric Administration (NOAA). + +PyRTlib also allows to quantify absorption model uncertainty due to uncertainty in the underlying spectroscopic parameters. [Cimini-2018]_ +The approach is applied to a widely used microwave absorption model [Rosenkranz-2017]_, on which PyRTlib is based, and radiative transfer calculations at any frequencies range, +which are commonly exploited for atmospheric sounding by microwave radiometer (MWR). + +.. grid:: 2 2 2 2 + :gutter: 4 + :padding: 0 0 2 2 + :class-container: sd-text-center + + .. grid-item-card:: Getting started + :img-top: _static/shuttle.svg + :class-card: intro-card + :shadow: md + + +++ + + .. button-link:: installation.html + :ref-type: ref + :click-parent: + :color: primary + :expand: + + To the getting started guides + + .. grid-item-card:: API reference + :img-top: _static/api.svg + :class-card: intro-card + :shadow: md + + +++ + + .. button-link:: api.html + :ref-type: ref + :click-parent: + :color: primary + :expand: + + To the API references + + .. grid-item-card:: Gallery example + :img-top: _static/code.svg + :class-card: intro-card + :shadow: md + + +++ + + .. button-link:: examples/index.html + :ref-type: ref + :click-parent: + :color: primary + :expand: + + To the Gallery example page + + .. grid-item-card:: Community example + :img-top: _static/community.svg + :class-card: intro-card + :shadow: md + + +++ + + .. button-link:: notebook/index.html + :ref-type: ref + :click-parent: + :color: primary + :expand: + + To the Community example page + +.. pyrtlib is a python tool that provides a set of calsses and methods for simulating ........ + +The source code for pyrtlib python package is hosted on `github +`_. + +.. note:: + The software is intended as an educational tool with limited ranges of + applicability, so no guarantees are attached to any of the codes. + +.. .. cssclass:: image-pyrtlib + +.. .. image:: ../../resources/spectrum_r22.jpeg + :width: 600 +.. .. image:: ../../resources/r98_r22.jpeg + :width: 600 + +Quick start +----------- + +.. code-block:: python + + from pyrtlib.tb_spectrum import TbCloudRTE + from pyrtlib.climatology import AtmosphericProfiles as atmp + from pyrtlib.utils import mr2rh, ppmv2gkg + +Atmospheric profile definition: + +.. code-block:: python + + z, p, _, t, md = atmp.gl_atm(atmp.MIDLATITUDE_SUMMER) + + +Units conversion: + +.. code-block:: python + + gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) + +Relative humidity of :math:`H_2O` (water vapor) + +.. code-block:: python + + rh = mr2rh(p, t, gkg)[0] / 100 + +Deifinition of angles and frequencies: + +.. code-block:: python + + ang = np.array([90.]) + frq = np.arange(20, 1001, 1) + +Initialize parameters for main execution: + +.. code-block:: python + + rte = TbCloudRTE(z, p, t, rh, frq, ang) + +Set absorption model: + +.. code-block:: python + + rte.init_absmdl('R22SD') + +Execute model by computing upwelling radiances: + +.. code-block:: python + + df = rte.execute() + df.tbtotal + 0 293.119811 + 1 292.538088 + 2 291.736672 + 3 291.913658 + 4 292.493971 + ... + 976 230.179993 + 977 231.435965 + 978 232.592915 + 979 233.666322 + 980 234.667522 + Name: tbtotal, Length: 981, dtype: float64 + +Preview of the output dataframe (see :py:meth:`pyrtlib.tb_spectrum.TbCloudRTE.execute` for more info): + +.. list-table:: + :widths: 25 25 25 25 25 25 25 25 + :header-rows: 1 + + * - tbtotal + - tbatm + - tmr + - tmrcld + - tauwet + - taudry + - tauliq + - tauice + * - 293.119811 + - 0.0 + - 282.644145 + - 0.0 + - 0.085189 + - 0.012949 + - 0.0 + - 0.0 + * - 292.538088 + - 0.0 + - 282.188067 + - 0.0 + - 0.135297 + - 0.013615 + - 0.0 + - 0.0 + * - ... + - ... + - ... + - ... + - ... + - ... + - ... + - ... + * - 234.667522 + - 0.0 + - 234.667522 + - 0.0 + - 474.835275 + - 0.329120 + - 0.0 + - 0.0 + +Plotting result: + +.. image:: ../../resources/spectrum_r22.jpeg + + +Plotting of upwelling :math:`\Delta T_b` using the last two absorption models available in PyRTlib for six reference atmosphere climatology. + +.. image:: ../../resources/spectrum_r23_r24.png + +Cite as +------- + +Please cite us: + +Larosa, S., Cimini, D., Gallucci, D., Nilo, S. T., and Romano, F.: PyRTlib: an educational Python-based library for non-scattering atmospheric microwave radiative transfer computations, Geosci. Model Dev., 17, 2053–2076, https://doi.org/10.5194/gmd-17-2053-2024, 2024. + +Larosa, S., Cimini, D., Gallucci, D., Nilo, S. T., & Romano, F. (2024). PyRTlib: a python package for non-scattering line-by-line microwave Radiative Transfer simulations.. Zenodo. https://doi.org/10.5281/zenodo.8219145 + +Installation +------------ + +.. toctree:: + :maxdepth: 2 + + installation + +API References +-------------- + +.. toctree:: + :maxdepth: 2 + + api + +Gallery Example +--------------- + +.. toctree:: + :maxdepth: 2 + + examples/index + +Community Example +----------------- + +.. toctree:: + :maxdepth: 2 + + notebook/index + + +References +---------- + +.. toctree:: + :maxdepth: 1 + + references + +Indices and search +------------------ + +* :ref:`genindex` +* :ref:`search` + +.. |build-docs-action| image:: https://github.com/SatCloP/pyrtlib/workflows/build-docs-action/badge.svg + :target: https://github.com/SatCloP/pyrtlib/actions/workflows/build_docs.yml + +.. |run-python-tests| image:: https://github.com/SatCloP/pyrtlib/workflows/run-python-tests/badge.svg + :target: https://github.com/SatCloP/pyrtlib/actions/workflows/ci.yml + +.. |license| image:: https://img.shields.io/github/license/slarosa/pyrtlib.svg + :target: https://github.com/SatCloP/pyrtlib/blob/main/LICENSE.md + +.. |GitHub commit| image:: https://img.shields.io/github/last-commit/slarosa/pyrtlib + :target: https://github.com/SatCloP/pyrtlib/commits/main + +.. |codecov| image:: https://codecov.io/gh/slarosa/pyrtlib/branch/main/graph/badge.svg?token=7DV4B4U1OZ + :target: https://codecov.io/gh/slarosa/pyrtlib \ No newline at end of file diff --git a/en/main/_sources/installation.rst.txt b/en/main/_sources/installation.rst.txt new file mode 100644 index 00000000..e2731692 --- /dev/null +++ b/en/main/_sources/installation.rst.txt @@ -0,0 +1,172 @@ +Installation instructions +========================= + +pyrtlib can be installed on any computer supporting Python 3.8 (or higher). +The actual installation procedure depends on the operating system. The +instructions below are for Ubuntu and MacOS. + +Python Installation (ubuntu) +---------------------------- + +.. code-block:: console + + $ sudo apt update && sudo apt upgrade + $ sudo apt install python3 python3-pip + + +Python Installation (macos) +---------------------------- + +Python3 installation via Homebrew + +.. code-block:: console + + $ brew install python3 + +Python3 can also be installed by downloading the installer from `Python Releases for Mac OS X `_. + +Installing PyRTlib via PyPi +---------------------------- +pyrtlib can be installed via pip from PyPI. To install the package using the following command: + +.. code-block:: console + + $ pip install pyrtlib + +.. note:: + + To get an up-to-date + version of pyrtlib, download it directly from `GitHub `_. + + +Virtual Environment +------------------- + +To install virtualenv via pip run: + +.. code-block:: console + + $ pip3 install virtualenv + + +Create a new virtual environment and activate it: + +.. code-block:: console + + $ virtualenv -p python3 + + +Activate the virtualenv: + +.. code-block:: console + + $ source /bin/activate + + +Deactivate the virtualenv: + +.. code-block:: console + + $ deactivate + + +Installing PyRTlib from source +------------------------------ + +Download latest release of pyrtlib source from this `link `_. + +.. code-block:: console + + $ tar zxvf pyrtlib.tar.gz + $ cd pyrtlib + $ /bin/python3 setup.py install + +pyrtlib is now ready to be used from that virtual environment. For a quickly test run the following command into the terminal app + +.. code-block:: console + + $ /python3 /pyrtlib/hello_spectrum.py + +if pyrtlib has been properly installed you should see something like + +.. code-block:: console + + $ /python3 /pyrtlib/hello_spectrum.py + Progress: |██████████████████████████████████████████████████| 100.0% Complete + Hello Spectrum! + + tbtotal tbatm tmr tmrcld tauwet taudry tauliq tauice + 18.7000 298.689123 0.0 286.716080 0.0 0.069040 0.012013 0.0 0.0 + 23.8000 297.014923 0.0 286.634107 0.0 0.214403 0.015643 0.0 0.0 + 31.4000 298.285354 0.0 285.140186 0.0 0.076330 0.025881 0.0 0.0 + 50.3000 290.594440 0.0 274.191598 0.0 0.124585 0.316968 0.0 0.0 + 52.6100 278.442378 0.0 267.163248 0.0 0.134824 0.924593 0.0 0.0 + 53.2400 270.032638 0.0 262.487813 0.0 0.137720 1.458056 0.0 0.0 + 53.7500 259.296109 0.0 255.080703 0.0 0.140096 2.219325 0.0 0.0 + 89.0000 295.336793 0.0 286.913337 0.0 0.370017 0.047366 0.0 0.0 + 115.5503 283.409636 0.0 274.910320 0.0 0.634700 0.435743 0.0 0.0 + 116.6503 273.105313 0.0 265.583070 0.0 0.647756 0.864176 0.0 0.0 + 117.3503 258.382394 0.0 253.279983 0.0 0.656168 1.551855 0.0 0.0 + 117.5503 251.887074 0.0 247.840191 0.0 0.658587 1.892017 0.0 0.0 + 119.9503 252.319901 0.0 248.289379 0.0 0.688148 1.857808 0.0 0.0 + 120.1503 258.829337 0.0 253.792452 0.0 0.690658 1.519190 0.0 0.0 + 120.8503 273.470564 0.0 266.281272 0.0 0.699499 0.837028 0.0 0.0 + 121.9503 283.508571 0.0 275.765375 0.0 0.713579 0.414934 0.0 0.0 + 164.7750 287.382258 0.0 285.293882 0.0 1.912160 0.019109 0.0 0.0 + 166.2250 286.768856 0.0 284.923583 0.0 2.061262 0.019146 0.0 0.0 + 174.9100 279.316272 0.0 279.136791 0.0 4.721552 0.019642 0.0 0.0 + 177.2100 274.918510 0.0 274.902966 0.0 7.354952 0.019836 0.0 0.0 + 178.4100 271.637064 0.0 271.635743 0.0 9.944304 0.019946 0.0 0.0 + 179.9100 265.916650 0.0 265.916645 0.0 15.761551 0.020091 0.0 0.0 + 181.3100 258.183942 0.0 258.183942 0.0 26.052880 0.020233 0.0 0.0 + 185.3100 258.248076 0.0 258.248076 0.0 26.149293 0.020672 0.0 0.0 + 186.7100 265.558982 0.0 265.558979 0.0 16.344414 0.020837 0.0 0.0 + 188.2100 270.889844 0.0 270.889228 0.0 10.732092 0.021020 0.0 0.0 + 189.4100 273.904425 0.0 273.897462 0.0 8.196430 0.021170 0.0 0.0 + 191.7100 277.820891 0.0 277.740367 0.0 5.586945 0.021468 0.0 0.0 + + PyRTlib successfully installed + + +Build and run the Docker image +=============================== + +To build docker image it is necessary to download the latest pyrtlib release from this `link `_ and then run the following command from you prefer terminal. + +.. code-block:: console + + $ tar zxvf pyrtlib.tar.gz + $ cd pyrtlib + +From within pyrtlib folder run the following docker command to build the docker image + +.. code-block:: console + + $ docker build --pull --rm -f "Dockerfile" -t pyrtlib:latest "." + $ docker run --rm -it pyrtlib:latest + +To test run the example script from within the docker image + +.. code-block:: console + + $ root@993587e5fea9:/home/dev/pyrtlib# python3 hello_spectrum.py + +My first run with PyRTlib (Colab Notebook) +========================================== + +To run the example script in a Google Colab Notebook, you can use the following code: + +.. code-block:: console + + !pip install pyrtlib + !python3 hello_spectrum.py + +.. note:: + + The example script is available at `this link `_. + +.. code-block:: console + + !wget https://raw.githubusercontent.com/SatCloP/pyrtlib/main/pyrtlib/hello_spectrum.py + !python3 hello_spectrum.py + diff --git a/en/main/_sources/notebook/Pressure_Broadening_effect.ipynb.txt b/en/main/_sources/notebook/Pressure_Broadening_effect.ipynb.txt new file mode 100644 index 00000000..91dbfc36 --- /dev/null +++ b/en/main/_sources/notebook/Pressure_Broadening_effect.ipynb.txt @@ -0,0 +1,259 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Example by Loretta-Pearl-Poku" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This notebook example was created by [Loretta-Pearl-Poku](https://github.com/Loretta-Pearl-Poku)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The code highlights the fluctuations in the downwelling brightness temperature at high resolution and high pressure levels explaining the broadening effect of oxygen line mixing. Also the fluctuations in the downwelling brightness temperature in the V-band (50 - 70 GHz) at high resolution." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "GvOSln_QzdCn", + "outputId": "d626e99c-6a88-40b4-cfe3-0ff5b845e78f" + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/usr/local/lib/python3.10/dist-packages/pyrtlib/apiwebservices/erafive.py:19: UserWarning: Module CDSAPI must be installed to download ERA5 Reanalysis dataset.\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import datetime\n", + "import numpy as np\n", + "plt.rcParams.update({'font.size': 15})\n", + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh\n", + "from pyrtlib.apiwebservices import WyomingUpperAir\n", + "from pyrtlib.utils import import_lineshape\n", + "from pyrtlib.absorption_model import H2OAbsModel" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "fQLIqiPM0L84", + "outputId": "e054ef95-fd04-4d63-fbf6-4bc86113cc22" + }, + "outputs": [ + { + "data": { + "text/plain": [ + "{'pressure': 'hPa',\n", + " 'height': 'meter',\n", + " 'temperature': 'degC',\n", + " 'dewpoint': 'degC',\n", + " 'rh': '%',\n", + " 'mixr': 'g/kg',\n", + " 'station': None,\n", + " 'station_number': None,\n", + " 'time': None,\n", + " 'latitude': 'degrees',\n", + " 'longitude': 'degrees',\n", + " 'elevation': 'meter'}" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "date = datetime.datetime(2023, 6, 12, 12)\n", + "station = 'DIAP' #Abidgan\n", + "df = WyomingUpperAir.request_data(date, station)\n", + "df.attrs['units']" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 824 + }, + "id": "gyPSA8xCzwGN", + "outputId": "22b7fb19-4de3-42b2-a8b4-5b17f66903ee" + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/usr/local/lib/python3.10/dist-packages/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (65) or minimum pressure value lower than 10 hPa (50.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa\n", + " warnings.warn(f\"Number of levels too low ({len(self.p)}) or \"\n", + "/usr/local/lib/python3.10/dist-packages/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (23) or minimum pressure value lower than 10 hPa (50.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa\n", + " warnings.warn(f\"Number of levels too low ({len(self.p)}) or \"\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA2EAAALOCAYAAAAgMRuwAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAD8TElEQVR4nOzdd3wUdf7H8dem904JhN57R6QIIh0sIIoFBeztFPFsd/oT23l28fTOCvZKsQLSpBelCUjvHZKQ3pOd3x9DVkIKKbuZTfJ+Ph55QGbmO/vZb2Z357PfZjMMw0BEREREREQqhYfVAYiIiIiIiNQkSsJEREREREQqkZIwERERERGRSqQkTEREREREpBIpCRMREREREalESsJEREREREQqkZIwERERERGRSqQkTEREREREpBIpCRMREREREalESsJExGmmTp2KzWZjwIABVodimYMHD2Kz2bDZbBw8eNDqcArIj2vp0qVWh1Lpzpw5w/3330+zZs3w9fV11EViYqLjmMOHDzNp0iQaNmyIj48PNpuNsLAwy2IWqWwlvUfU5PePknz00UfYbDYaN27s1PNOnDgRm83GxIkTnXpecR9eVgcgMnXqVJ5++ulC2319fYmKiqJr166MHz+ea665BpvNZkGEIlKV5eXlcdlll7F582YAgoKCCA8PB8DDw/wuMikpiT59+nD06FEAQkND8fPzIzQ01JKYARITE3njjTcAmDx5shJCEZFqREmYuJU6deo4/p+UlMSxY8c4duwYP/74Ix999BFz5szB19fXwghFqq5WrVoBEBAQYHEklWvhwoVs3rwZb29vlixZQt++fQsd8+WXX3L06FHCw8NZvXo1rVu3tiDSghITEx1fUE2cOFFJmFiqpr5/XEhoaCitWrWifv36Tj1vdHQ0rVq1Ijo62qnnFfehJEzcysmTJx3/t9vt7NixgwcffJCFCxcyb948nnjiCV5++WULIxSpunbu3Gl1CJbYunUrAB07diwyATv3mIEDB7pFAibibmrq+8eFjB49mtGjRzv9vC+88AIvvPCC088r7kNjwsRteXh40K5dO3744QeaN28OwLvvvktubq7FkYlIVZKeng6Y3RArcoyIiIizKAkTt+fn58c111wDQEpKiuPbuPMnQNi3bx933HEHTZo0wdfXt9AgWbvdzueff86IESOoU6cOPj4+1KpViyFDhvDll19iGEaRj5+bm8t7773HgAEDiIqKwtvbm8jISFq1asW4ceP48MMPiyz39ddfM3z4cOrUqYO3tzdhYWG0aNGCK664grfffpvMzMwCxw8YMACbzcbUqVOLrYuSJr44t3xOTg6vvvoq3bt3JywsrMjB1Nu2beOOO+6gRYsWBAQEEBQURMeOHfnnP/9JXFxcsTGUxTfffEP//v2JiIggMDCQbt268dZbb5GXl1fk8ecORDYMgw8++IC+ffsSGRmJzWbjo48+KnD80qVLueaaa6hfv75jDOFll13GjBkzin2MnJwcfvjhB+644w66d+9OdHQ0Pj4+1K5dm6FDh5Z4LeQ7duwYd955Jw0aNMDX15eYmBgmTZrE3r17S1Uv2dnZ/Pe//+XSSy8lKioKHx8f6taty5VXXsm8efOKLXfuwPiUlBSeeOIJWrdujb+/P5GRkYwaNYp169aVqvy5zn8tnTp1igceeIAmTZrg5+dHnTp1uO666y74TfihQ4e49dZbiYmJKVQvzpiwpKz1ln895b+mli1b5oghf3v+6yb/2vr4448LHHP+NVfe95F8O3bs4N5776Vt27YEBwcTFBREq1atuO6665g1axZ2ux0wX89NmjRxlGvSpEmBuMoz+c3Jkyd5+OGHadeuHYGBgQQGBtKuXTseeeQRTp06VWQZZ10bF5KUlMQzzzxD165dCQkJwd/fnxYtWnD33Xezf//+Qse/+OKL2Gw2fHx8+O2334o859y5c/Hw8MBms/H5558DMH/+fGw2G15eXhw/frzEmPr161fsxAgVvdateg+oCFe/f1T0tVWcxo0bO17L6enpTJ06lTZt2hAQEEC9evW46aabOHDggOP4uLg4Hn30UVq2bIm/vz9169bltttuK/Y1UtzEHKtXr8bLywubzcbrr79eZNmjR486Pt9uv/32AvtKmpjj3M97wzB4//33ueiiiwgJCSE4OJiLL76Yzz77rMR6ycnJ4bXXXqNz584EBgYSERHBgAEDmDlzZqHHEBcxRCz21FNPGYBR0uX49ttvO45ZtWqVYRiGceDAAce2zz//3AgKCjIAIyAgwAgMDDQaNWrkKB8fH29ccskljuMBIzQ0tMDvV1xxhZGVlVXgcXNzc43BgwcXKufr61tg2/kmTZpUYH9QUJAREBBQYNuBAwcKlOnfv78BGE899dQF66p/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XXc5btjyv7A415EjRxxfPtx7773FxlCea+NC8hMib29vY+vWrYX2JycnG40bNzYAY+TIkYX2z5071/HFzkcffWQYhmG88MILjnOe+8VcvtOnTztaOIp6H8zMzHRcr+e/D1X0Wrf6PeBCKpqElecaqchrqzTykzB/f/8i/2YffvihI7Y6deoYcXFxhY558skni/1cKCkJMwzDOHr0qBEZGWkAxsSJEw3DMIyVK1c6em4U9YWfYZQuCQOMJUuWFNqfmZnpuG967rnnCuw7dOiQo/W9uNbgcz+LlYS5jsaEidtKTExk8eLFDBw40NF3/4EHHnCs63Ou++67r9gB9fljtu6+++5i1/zp1q0b7dq1Izs7m19//dWxPX9K6HNnbbyQ/DKxsbHFjktypXbt2nH55ZcXuW/WrFkkJibSpUsXhg4dWuQxXl5eXH/99QD88ssv5Y7j//7v/4rc/vDDD+Pv709ubi6zZs0q8pjw8HDuvPPOIvctXLiQM2fOABTbV/2ee+5xTOv7xRdflCnukSNHArBv375Cf/evvvoKgGuuuYY2bdoUKlu3bl3uuuuuYs+dfy1OmTIFb2/vIo+56qqrCAkJIS4ujg0bNhR5zB133EHt2rULbe/QoYNjHNGWLVuKjaMkDz30EP7+/oW2Dx8+HB8fH+CvmQTzffvttwCMGzfOMYnOuaKiorj77rvLFQ84r94qoiLvIzNnziQlJQVvb29ee+21Sl3v0DAMvvnmGwDuuusu6tatW+iYmJgYx3Wbf40XpTzXxoV8/fXXAIwdO5b27dsX2h8cHMwjjzwCwLx580hKSir02A8++CBgfg589tlnjveef/3rX3Tv3r3QOWvVqsXVV18NwHvvvVdo/5w5c4iLi8Pf35+bbrqpwL6KXutV4T2gIspzjVTktVUWV199dZF/s3M/C++44w4iIyOLPWbfvn2kpaWV6XHr16/P9OnTAXP82P/+9z9uuOEG8vLyGDVqFPfff3+ZzneuPn36cOmllxba7uvr64j5/Osgf+xpQECA47VzvieffLLcMUnpKQkTt3LuwPPw8HAGDRrk+BAaP348//znP4ss16dPnyK35+XlsXbtWsC8Ya9bt26xP7t27QLMAdf5RowYgc1m44cffmD48OF8+eWXFxzMfdlll+Hn58emTZvo168fH374YYFBv65WXF0ArFq1CjAnByipLp555hmgYF2URYMGDYr8sAMICQmhW7duAKxfv77IY3r06OH4wD5ffpkGDRrQsmXLIo/x9PRk4MCBxT5GSkoKL7/8Mv3796d27dr4+Pg4rrtz18DJX7gXzIH0505jXpzi9h07dsxRn7feemuxdR8dHU1qaipQfP1fdNFFxT5+vXr1AByJalkVd24vLy9q1apV6NzZ2dn8+eefAPTv37/Y85ZnIglwbr2VV0XfR1avXg2YN5KVvebPgQMHHH+vQYMGFXvc4MGDAYiPjy/2/aqs18aFZGdnO24QSxOb3W5n48aNhfa/8MILdO3aldTUVG666SZycnIYMmQIDz30ULHnzE86f/zxx0ITLrz//vsAXHvttQXWZqvotV5V3gMqoqzXSEVfW2XRs2fPIrefuz5pjx49LnhMYmJimR/7iiuu4L777gPMLwkPHz5MdHQ0M2bMKPO5zlWe6yD/NdS9e3cCAwOLLNusWTMaNGhQodjkwrROmLiVc9/o8me769KlCzfeeGOR3/bkK+obQTDffLKysgBISEgoVQz5U1UD9O3blxdffJEnnniC+fPnM3/+fMD85njQoEHcfPPNheJq1qwZH3zwAXfddRdr1qxhzZo1gPnt66WXXsoNN9zAFVdc4bJvw4urC8CRQGZmZhaanbEo59ZFWVxo0cr8/adPny5yf0nPIb/MhR4jJiamyMfYvXs3l112WYEEKyAggLCwMEcra/5N2bnfeJ45c8axPEJJj53/uOc7N3kv7eyTxdV/cHBwsWW8vMy39ZycnFI9RkXPfebMGUeLb/6HflHKu5CpM+utvCr6PpLfotqoUSOnxlUa517/pb1uT58+XWBmxnzOvu7OvXbKEtv5fHx8+Pjjj+nQoQNgLp6bP8tlcS655BLatm3L9u3bmTFjBo899hgAe/fudbS0nN8aX9Frvaq8B1REed4/KvLackZs+XGV9pjy1usrr7zCnDlzOHbsGADTp08nKiqqXOfKV57rIDY2Fij5GgbzOj5y5EiF4pOSqSVM3MrJkycdP4cOHWLDhg188MEHJSZgYLZ8FOXc7oDz5s3DMMdBlvhzfhe3hx9+mAMHDvD6669z1VVXUbt2bY4ePcpHH33EwIEDueaaawq9yd14440cOnSId955h3HjxtGgQQNiY2P55ptvuOqqq+jfvz/Jycnlq6QLKK4u4K/6GDduXKnqorxTiVdUSc+hoiZNmsTRo0dp3Lgx3377LfHx8aSlpXH69GlOnjzp+IAEyj0lclHOvRZ37NhRqvovampid+aKLxbcod4q+j5Smd0Pa6pzuxUmJyezefPmC5bJbw374IMPHK/1/P+3b9+eiy++uNiy5fmbusO17G6c8RldVfz8888FPl+WLVtmYTR6X3IHSsKkWouMjHR8G1SRLkr16tVj8uTJzJkzh1OnTrFlyxZuu+02wBzv8b///a9QmYiICO68806++uorDh8+zN69e3nsscew2WysWLGi0AdJfpwltVCdPx6irPLHgzi7u9b5zv2gKWl/SS1exckvc25LVlHy95/7GEeOHHF0Dfvyyy8ZO3YsERERBcoVN/4vIiLCkRyW9PyK23fuWBxX139lOrdeSuqqe6FrojjuUG8VfR+prNddUc69/kt6zZy7rzyvy/I499qpSGw//fQT//nPfwDo2LEjhmEwYcKEYtd1ynfzzTcTEBDAvn37WLJkCTk5OY514Yoak1rRa90drmV346zPaHd35MgRxz1Dx44dAXjppZdYsmRJpceS3y30QkMryvueLaWnJEyqNW9vb0c/8B9//NFp5+3QoQPvv/++Y/zVwoULL1imWbNmvPDCC9xwww1FlgkPDwcosfm/ootw5se7YcMGTpw4UaFzleTIkSPs27evyH0pKSmOcX5FDZq/kPwyR48eZffu3UUek5eX5+hSdG4f/3PrtkuXLkWWXbRoUZHbfXx8HB+eJQ0ML+5DtXHjxo5uSs68Fq3m4+NDu3btAAot4nqukvaVxB3qraLvI7179wbM8Ylled2dOwlReVtlmzRp4viiYfHixcUel3/dR0ZGFtkV0RXOfU2VJjYPDw+6du1aYN+JEyeYNGkSYLZyL1++nMaNG3P69GkmTJhQYr2FhoY6JiF67733HOPD/P39GT9+fJHxVuRad4dr2d246jPaneTl5XHjjTeSkJBA27ZtWbt2LaNHj8Zut3PTTTcRHx9fqfHkv4bWr19f7CQj+/fvV1fESqAkTKq9O+64A4C5c+cyd+7cEo89fwBrfl/14uTPAnXuzVJ5ygB06tQJMGckLOqNccmSJY7xZeV1zTXXEBYWRk5ODlOmTCnxBsVut5drAHK+Z599tsjtr776KhkZGXh5eTlmKCuLwYMHO2avKq5byrvvvuv4li//JgsoMPPW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ZGTg008/xfTp0zFlyhRkZGSgR48eiIyMRG5uLrZt24aqqips3769yUIc3ujevTsWLFiAm2++GdOmTcOzzz6LPn36wGw2Y/fu3cjJyUFZWVl9mXq3888/H8OHD8e6deuQmJiIyZMnt/rao0aNgl6vxy+//NLkMZ988gkMBgPef/99jB49Gp06dULfvn2h0+lQUFCAAwcO4MSJE4iIiMC0adNaHUNT/va3vwEAkpOT8eCDD3o85rHHHqsvSQ8Aa9euhd1ux6RJk3wWBxFRMGFPGBER+cTzzz+P1atXY8qUKTh58iS++uorrFq1Cg6HA7NmzcLXX3/d4PiYmBisXbsWs2bNghACX331FbKzs/Hiiy/ijTfeaPI68+fPx2OPPQaDwYAffvgBx44dw+OPP45PP/20yXOuvPJK7Nq1C/fccw9kMhmysrKwYsUKFBYWYvLkyfj888/Rs2fPc26DadOmYcuWLbjxxhthNpuxdOlSbN26FR07dsTcuXMblfx3Gzt2LADglltu8aqn6Gx6vR433HADDh061GRvmEqlwnvvvYdNmzbhzjvvhFqtxk8//YQlS5Zg9+7d6Nq1K5555hkcPHgQL774YqtjaIrD4QAA/Pbbb/jggw88/pw9l2/RokUA2tYrSEQUCmRCCCF1EERERGeTyWRIT09vtGB0uBFCoEePHjhw4AAOHTrUbNn25uzYsQP9+/fH7Nmzm01ig11NTQ2Sk5PRvXt3bNy4UepwiIj8gj1hREREElqyZAn279+PiRMntjkBA1wFLK699lq8//779Ys3h6L//Oc/KC8vxz/+8Q+pQyEi8hv2hBERUVAK956w22+/HeXl5fjmm29QV1eHjRs3YuDAgef0mocPH0aPHj1w77334uWXX/ZRpIFTU1ODLl26oH///vj222+lDoeIyG+YhBERUVAK9yRMJpMhIiIC3bp1w7PPPoupU6dKHRIREQUIkzAiIiIiIqIA4pwwIiIiIiKiAGISRkREREREFEBMwoiIiIiIiAKISRgREREREVEAMQkjIiIiIiIKICZhREREREREAcQkjIiIiIiIKICYhBEREREREQXQ/wNaj7Hij/HnsQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#WyomingUpperAir.get_stations(region = 'africa')\n", + "date = datetime.datetime(2023, 6, 12, 12)\n", + "station = 'DIAP' #Abidgan\n", + "df = WyomingUpperAir.request_data(date, station)\n", + "df.attrs['units']\n", + "\n", + "fig, ax = plt.subplots(1, 1, figsize=(12, 8))\n", + "mdl = 'R17'\n", + "ang = np.array([90.])\n", + "frq = np.arange(50, 70, 0.1)\n", + "nf = len(frq)\n", + "ax.set_xlabel('Frequency (GHz)')\n", + "ax.set_ylabel('BT (K)')\n", + "\n", + "pressure = df.pressure.values[42:65]\n", + "rh = df.rh.values[42:65]/100\n", + "height = df.height.values[42:65]/1000\n", + "temp = df.temperature.values[42:65]+273\n", + "\n", + "'''\n", + "pressure = df.pressure.values\n", + "rh = df.rh.values/100\n", + "height = df.height.values/1000\n", + "temp = df.temperature.values+273\n", + "'''\n", + "\n", + "rte1 = TbCloudRTE(df.height.values/1000, df.pressure.values, df.temperature.values+273, df.rh.values/100, frq, ang)\n", + "rte1.satellite = False\n", + "rte1.init_absmdl(mdl)\n", + "\n", + "rte = TbCloudRTE(height, pressure, temp, rh, frq, ang)\n", + "rte.satellite = False\n", + "rte.init_absmdl(mdl)\n", + "\n", + "\n", + "df1 = rte1.execute()\n", + "df = rte.execute()\n", + "\n", + "df = df.set_index(frq)\n", + "df1 = df1.set_index(frq)\n", + "\n", + "df.tbtotal.plot(ax=ax, linewidth=1,label=('200-50'))\n", + "df1.tbtotal.plot(ax=ax,linewidth=1,label=('1000-50'),linestyle='--')\n", + "\n", + "ax.grid(True, 'both')\n", + "ax.legend()\n", + "ax.set_title('Pressure broadening effect on oxygen line mixing')\n", + "ax.set_box_aspect(0.8)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 708 + }, + "id": "P1kBgWxM0Cti", + "outputId": "e65ad5fd-87fd-40cb-8d11-7ca703dfa60b" + }, + "outputs": [ + { + "data": { + "image/png": "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IEwIIYQQQgghjiAJwoQQQgghhBDiCJIgTAghhBBCCCGOIAnChBBCCCGEEOIIkiBMCCGEEEIIIY4gCcKEEEIIIYQQ4giSIEwIIYQQQgghjiAJwoQQ4gSnaVqPP7Nnz/6iT1EkYdu2bVitVu64446423zyySfceOONjBw5kvT0dKxWK/n5+Zxxxhn84he/YPfu3d1e8+ijj6JpGtdff32Px589ezaapvH+++/36fw9Hg+FhYWcd955fXq9EEIcC8xf9AkIIYQ4Olx33XUxHx8xYsQRPhNxKH7wgx9gtVq58847uz3n9/u55ZZbeOihhwAoLy9n9uzZpKSkUFNTwyeffMK7777LPffcw6OPPsqCBQuO9OnjcDi48847+e53v8u7777L6aeffsTPQQghDjcJwoQQQgDhTIc4tn366acsXLiQ2267jdzc3G7PX3PNNTz77LMMGzaMBx54gFmzZnV6PhgM8vLLL3P33XezY8eOI3Xa3dx0003ce++9/OAHP2D58uVf2HkIIcThIuWIQgghxHHib3/7GwDXXnttt+eefvppnn32WQoLC/noo4+6BWAAZrOZSy+9lJUrV3LJJZcc7tONy+FwMG/ePFasWMHq1au/sPMQQojDRYIwIYQQCbn++uujc33efPNN5syZQ0ZGBpqm0dDQEN3ujTfe4Pzzzyc3NxebzcagQYP47ne/y8GDB2Put66ujltvvZWioiLsdjujRo3iD3/4A0opNE2jvLy80/b33HMPmqbFzdyVl5ejaVrM5zZu3Mj1119PaWkpNpuN/Px85s+fz/r167ttG5kDdc8997Bnzx4WLFhAbm4uDoeDKVOm8PLLL8cdq40bN/Jf//VflJeXY7PZyMvLY/r06fzud78jGAwCMGbMGDRNY/PmzTH3UVFRgclkYuDAgSil4h4roqWlhaeffpqhQ4cyefLkbs//7ne/A+CnP/1pzCxZR1arlTFjxvR6zERFrp2efrrOIYuUQv7jH//ot/MQQoijhZQjCiGESMqTTz7Jgw8+yJQpUzj33HPZvn17NOi56667+PWvf43VamXq1KkUFhayZs0a7r//fl566SWWLFlCfn5+dF/19fXMmDGDjRs3UlBQwMUXX0xdXR23334727Zt69fzfuGFF5g/fz4+n48JEyYwbdo0KioqeOaZZ3j55Zd5/fXXY2aHdu3axdSpU0lNTeWMM85gz549LFu2jEsuuYTXX3+duXPndtr+2Wef5ctf/jI+n4+RI0dy6aWX0tjYyPr167njjju44YYbyMjI4MYbb+S2227jwQcf5Le//W234z788MMYhsENN9wQN6jsaPHixbS0tMRspFJTU8OqVavQdZ2rrroq8UHrJzNmzIj5eCgU4qmnniIUCmEymTo9d+qpp2KxWHj11VePxCkKIcSRpYQQQpzQAJXIn4Prrrsuuu3TTz/d7flnnnlGAWrMmDFq69at0ccNw1A/+clPFKCuuuqqTq+56aabFKDOOecc1draGn18+fLlyuVyKUANGDCg02vuvvtuBahHHnkk5nkOGDCg2/vZuXOnSklJUS6XSy1atKjTc6+//rqyWCyqtLRU+Xy+6OOPPPJI9P1+73vfU6FQKPrc/fffrwA1c+bMTvvasmWLstvtymw2qyeeeKLTc4ZhqDfffFN5vV6llFINDQ3K6XSq3NzcTsdVSqlQKKTKysqUyWRS+/bti/k+u/r+97+vAPWPf/yj23OLFi1SgBoyZEhC+4olMh7XXXddj9uddtppClDvvfder/u87bbbFKAuuOCCTuMbMXnyZAWoHTt29PGshRDi6CTliEIIIYD4rep37drVabvzzz8/Zjbl5z//OQBPPfUUQ4YM6bTfe+65hwkTJrBw4UJqa2sBaG1t5bHHHkPXdf785z/jdDqjrznppJP4xje+0W/v7X//939pbW3ll7/8JWeeeWan58455xxuvvlmKioqYmZdBg4cyC9+8Qt0vf1P5q233kpmZiYff/wxfr8/+vj999+P1+vlhhtu6NZZUNM05s6di81mAyA9PZ358+dTU1PDiy++2Gnbt956iz179nD++edTVFSU0Htcu3YtAMOHD+/2XKQUNCcnJ+ZrX375Za6//vpOP7fffnvMbR977LEeywoXL16c0Pk++OCD/PGPf2TUqFE8+eSTncY3ItKZ87PPPkton0IIcayQckQhhBBA/Bb1Lper078vuuiibttUV1ezZs0ahg4dGnMukaZpTJ8+nc8++4xVq1Zx9tlns2rVKjweDyeddBKDBw/u9pqrr76aX//61318N5299dZbAFx22WUxn585cyZ//OMfWbFiBZdeemmn52bPno3Vau30mNlsZuDAgXz66accPHiQwsJCAN5++20AbrzxxoTO66abbuLhhx/mgQce4Iorrog+/sADDwDw9a9/PaH9QPh3AJCZmZnwayLWrFnDY4891umxAQMGROeRdTR48OC45YUQnhNYVVXV4/E+/PBDbrnlFrKzs3n55ZdJTU2NuV1WVhYQLqcUQojjiQRhQgghgMRb1JeVlXV7LJIt27p1a6/zlyKZsMrKSiB8sx9L14YchyJyfsXFxQmdW0clJSUxt40EDj6fL/pYRUUFQMygMpapU6cyadIk3n77bXbu3MnAgQOpqqri5ZdfpqSkhHPOOSeh/QA0NjZ2Oq+OsrOzgdjvD+BHP/oRP/rRjwA4cOBANKiMZcaMGT1eK7Nnz+4xCNu9ezfz5s1DKcWzzz7LoEGD4m6blpYG0KnxixBCHA8kCBNCCJEUu93e7THDMAAoKCjg7LPP7vH18YKu/hI5l1iPxcv2RZx88sndHotVJtefbrrpJr7+9a/z0EMP8bOf/YzHHnuMQCDAV7/61W7NKnqSnp4OQHNzc7fnxo0bB8COHTtoamqKBjdHWmtrKxdddBE1NTX89a9/Zc6cOT1uHwksMzIyjsDZCSHEkSNBmBBCiEMWyRbl5OQknFGLZFt2794d8/l4j0dKA1taWro9FwqFOHDgQMzz2759O/fdd180K3Q4lJaWsnXrVrZv386ECRMSes2CBQu4/fbbeeSRR7jnnnt48MEH0XWd//qv/0rq2Hl5eUC45X+s5yZPnsyqVat45plnuOGGG5Lad39QSvHlL3+ZtWvXcvPNN3PzzTf3+pr6+nqAXlvqCyHEsUYacwghhDhkJSUljBgxgg0bNrBly5aEXjN58mQcDgerVq1ix44d3Z5/+umnY74uErzFOs57771HIBDo9vhZZ50FwPPPP5/QufVVpOlHMmtbpaSkcM0111BZWcmdd97J1q1bOfvss2OWffZk/PjxAHHXHYs02vjJT37yhcyx+slPfsLzzz/PnDlz+OMf/5jQazZu3AiQcEArhBDHCgnChBBC9Isf//jHGIbBvHnzYnazO3jwYLThBIQbfnz5y18mFArxzW9+E4/HE31u5cqV/PnPf455nMhaXo8//ninzo07d+7ktttui/ma733vezgcDm6//Xb+85//dHve5/OxcOFC9u7dm8hbjevb3/42drudBx54gH//+9+dnlNKsWjRok5zyCJuuukmINxdEeBrX/ta0seeOXMmAJ988knM5+fPn8/ll1/O/v37mTFjBh988EHM7ZYtW5b0sXvz73//m5/97GcMGjSIZ599FrO590Icr9fL559/TmlpKQMHDuz3cxJCiC+SlCMKIYToFwsWLGD9+vX84he/YPLkyUyYMIHBgwejlGL79u2sXbsWl8vVKcD45S9/yeLFi3nttdcYPHgws2bNor6+nnfffZcbb7yRv/zlL92OM3jwYK699lr++c9/MmHCBGbNmoXb7ebjjz/mvPPOw+12dytlHDJkCE899RQLFixg3rx5DBkyhJEjR5KSksK+ffv49NNPaW1tZfXq1XEbcSRi2LBhPPLII1x77bXMnz+fe++9l3HjxtHY2Mi6deuoqKigvr4+2qY+YuzYsZx66qksXbqUgoICLrzwwqSPPWvWLFwuF++//37cbZ544gnS0tJ4+OGHOe200ygvL2f8+PE4nU6qqqrYsmULe/fuxWw2M3/+/KTPIZ4f/vCHABQVFfG9730v5jZ33XVXtCU9wJIlSwgEApx//vn9dh5CCHG0kEyYEEKIfvPzn/+cxYsXM2/ePA4cOMALL7zAe++9RygU4uabb+all17qtH1WVhZLlizh5ptvRinFCy+8wJ49e/jVr37Fn/70p7jHeeCBB7jrrrtIS0vjzTffZNeuXfzgBz/gqaeeivuaiy++mLVr13LLLbegaRqLFi3i1Vdfpbq6mgsvvJBnnnmGUaNGHfIYzJ8/n5UrV3LNNdfQ2NjIc889x6pVqygrK+O+++7r1vI/4vTTTwfgK1/5SkKZoq5cLhdXX30127Zti5sNs1qtPPTQQ6xYsYKvf/3r2Gw23nnnHRYuXMi6desYPHgwP/3pT9m6dSu/+tWvkj6HeEKhEAAfffQRjz32WMyfrnP5nnzySaBvWUEhhDjaaUop9UWfhBBCCBGLpmkMGDCg24LRxxulFCNHjmTLli1s27atx7btPfnss8+YOHEit956a49B7NHO4/FQVFTEsGHDWL58+Rd9OkII0e8kEyaEEEJ8wRYuXMjmzZs577zz+hyAQbiBxRVXXMHDDz8cXbz5WPT3v/+dhoYGfvnLX37RpyKEEIeFZMKEEEIctY73TNgNN9xAQ0MDr7zyCsFgkOXLlzN58uRD2uf27dsZOXIkt912G7/73e/66UyPHI/Hw6BBg5g4cSKvvfbaF306QghxWEgQJoQQ4qh1vAdhmqZhNpsZOnQo9957L5dffvkXfUpCCCGOAAnChBBCCCGEEOIIkjlhQgghhBBCCHEESRAmhBBCCCGEEEeQBGFCCCGEEEIIcQRJECaEEEIIIYQQR5AEYUIIIYQQQghxBEkQJoQQQgghhBBHkARhQgghhBBCCHEESRAmhBBCCCGEEEeQBGFCCCGEEEIIcQT9P2f4DWTD63j8AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "atm = ['Tropical',\n", + " 'Midlatitude Summer',\n", + " 'Midlatitude Winter',\n", + " 'Subarctic Summer',\n", + " 'Subarctic Winter',\n", + " 'U.S. Standard']\n", + "\n", + "\n", + "fig, ax = plt.subplots(1, 1, figsize=(12, 8))\n", + "\n", + "for i in range(0, 6):\n", + " z, p, d, t, md = atmp.gl_atm(i)\n", + " gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + " rh = mr2rh(p, t, gkg)[0] / 100\n", + "\n", + " mdl = 'R19SD'\n", + "\n", + " ang = np.array([90.])\n", + " frq = np.arange(50, 70, 0.1)\n", + " nf = len(frq)\n", + "\n", + " ax.set_xlabel('Frequency (GHz)')\n", + " ax.set_ylabel('BT (K)')\n", + "\n", + " rte = TbCloudRTE(z, p, t, rh, frq, ang)\n", + " rte.init_absmdl(mdl)\n", + " df = rte.execute()\n", + "\n", + " df = df.set_index(frq)\n", + " df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i]))\n", + "\n", + "ax.grid(True, 'both')\n", + "ax.legend()\n", + "ax.set_title('Upwelling Brightness Temperature calculation from 50 to 70 GHz')\n", + "ax.set_box_aspect(0.8)\n", + "plt.show()" + ] + } + ], + "metadata": { + "colab": { + "provenance": [] + }, + "kernelspec": { + "display_name": "Python 3", + "name": "python3" + }, + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/en/main/_sources/notebook/first_run.ipynb.txt b/en/main/_sources/notebook/first_run.ipynb.txt new file mode 100644 index 00000000..c5f208d9 --- /dev/null +++ b/en/main/_sources/notebook/first_run.ipynb.txt @@ -0,0 +1,142 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/SatCloP/pyrtlib/blob/main/docs/source/notebook/first_run.ipynb)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# My first test with PyRTlib" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Installing PyRTlib via pip. Note that the following command will also install all requirements to execute properly PyRTlib package. It is possible to test development version by installing the package directly from github repository.\n", + "```console\n", + "!pip install https://github.com/SatCloP/pyrtlib/archive/refs/heads/dev.zip\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "!pip install pyrtlib" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Import necessary packages to perform and plotting your first spectrum in PyRTlib." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "# This requires jupyter-matplotlib a.k.a. ipympl.\n", + "# ipympl can be install via pip or conda.\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "plt.rcParams.update({'font.size': 15})\n", + "import numpy as np" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Load standard climnatology and utils functions necessary to run the code." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from pyrtlib.absorption_model import O2AbsModel\n", + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The following code allows to performing spectra for one typical climatologies (Tropical) at 90° elevation angles. Please refer to the PyRTlib documentation for more details on how to use the library." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)\n", + "\n", + "gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + "rh = mr2rh(p, t, gkg)[0] / 100\n", + "\n", + "frq = np.arange(20, 1001, 1)\n", + "\n", + "rte = TbCloudRTE(z, p, t, rh, frq)\n", + "rte.init_absmdl('R22SD')\n", + "O2AbsModel.model = 'R22'\n", + "O2AbsModel.set_ll()\n", + "df = rte.execute()\n", + "df = df.set_index(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plotting zenith upwelling brigthness temperature." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "df.tbtotal.plot(figsize=(25, 8), linewidth=3, xlabel=\"Frequency [GHz]\", ylabel=\"Brightness Temperature [K]\", grid=True)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.10" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/en/main/_sources/notebook/index.rst.txt b/en/main/_sources/notebook/index.rst.txt new file mode 100644 index 00000000..07eeaace --- /dev/null +++ b/en/main/_sources/notebook/index.rst.txt @@ -0,0 +1,10 @@ +.. _uncert_example: + +================= +Community example +================= + +.. toctree:: + :maxdepth: 3 + + Pressure_Broadening_effect diff --git a/en/main/_sources/notebook/tutorial.ipynb.txt b/en/main/_sources/notebook/tutorial.ipynb.txt new file mode 100644 index 00000000..49257869 --- /dev/null +++ b/en/main/_sources/notebook/tutorial.ipynb.txt @@ -0,0 +1,909 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Generic example" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Import python package for plotting." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'divide': 'warn', 'over': 'warn', 'under': 'ignore', 'invalid': 'warn'}" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# This requires jupyter-matplotlib a.k.a. ipympl.\n", + "# ipympl can be install via pip or conda.\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "plt.rcParams.update({'font.size': 15})\n", + "import matplotlib.ticker as ticker\n", + "from matplotlib.ticker import ScalarFormatter\n", + "import numpy as np\n", + "np.seterr('raise')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Import pyrtlib package" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "atm = ['Tropical',\n", + " 'Midlatitude Summer',\n", + " 'Midlatitude Winter',\n", + " 'Subarctic Summer',\n", + " 'Subarctic Winter',\n", + " 'U.S. Standard']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL)\n", + "gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + "rh = mr2rh(p, t, gkg)[0] / 100\n", + "\n", + "mdl = 'R16'" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing upwelling brightness temperature calculation" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Default calculatoin consideres no cloud" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "ang = np.array([90.])\n", + "frq = np.arange(20, 201, 1)\n", + "nf = len(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Setup matplotlib plot" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAABAQAAAKzCAYAAACJeN8YAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAADQoUlEQVR4nOzdd3wb9f0/8NfpdFq2JMfbcZzh7EF2AiEJCSuEMsIIBb7l20AYXwrlRxhllLZJSym0jELLKGXTAm2BEMqGACGD7L2XncR2Em9Llm3Nu98fspSYOI6HrLuTXs/Hw48kGqePkkh39773EBRFUUBEREREREREScWg9gKIiIiIiIiIKP4YECAiIiIiIiJKQgwIEBERERERESUhBgSIiIiIiIiIkhADAkRERERERERJiAEBIiIiIiIioiTEgAARERERERFREmJAgIiIiIiIiCgJGdVeQKKTZRmHDx+G3W6HIAhqL4eIiIiIiIgSnKIoqK+vR8+ePWEwnDwPgAGBbnb48GEUFBSovQwiIiIiIiJKMiUlJejVq9dJ72dAoJvZ7XYA4X8Ih8Oh8mqIiIiIiIgo0bndbhQUFETPR0+GAYFuFikTcDgcDAgQERERERFR3JyqbJ1NBYmIiIiIiIiSEAMCREREREREREmIAQEiIiIiIiKiJMSAABEREREREVESYkCAiIiIiIiIKAkxIEBERERERESUhDh2kIiIiIiIukUgEEAoFFJ7GUS6JooiJEnqlm3rJiDw1FNPYfny5di6dSsqKirg9XqRm5uLadOm4Re/+AVOO+20Vp/3+uuv4/nnn8eOHTtgMplwxhln4Fe/+hXOPPPMk77WihUr8Mgjj2DVqlXw+/0YNmwYfv7zn+OnP/1pd709IiIiIqKE4Xa7UVVVBZ/Pp/ZSiBKC2WxGZmYmHA5HTLcrKIqixHSL3SQzMxMNDQ0YOXIk8vPzAQDbt2/Hnj17IEkSFi5ciIsvvrjFc+bNm4dnnnkGVqsVM2bMgNfrxddffw1FUfDee+/hsssuO+F13n//fVx99dWQZRlnnXUWMjMz8fXXX6Ourg733HMPnnjiiQ6t2+12w+l0wuVyxfwfj4iIiIhIa9xuN8rKypCamgqn0wlJkiAIgtrLItIlRVEQCATgcrng8XiQn5/frvPK9p6H6iYgsGLFCowbNw4Wi6XF7c8//zxuv/125OTkoLS0FEZjOOlh8eLFOP/885GRkYGVK1di4MCBAICVK1di+vTpsNlsKC4uRlpaWnRbNTU16NevH9xuN95//31cccUVAIDy8nJMmTIF+/btw7fffovp06e3e90MCBARERFRMikqKoIkSejVqxcDAUQxoigKSktLEQgEUFhYeMrHt/c8VDdNBSdPnnxCMAAAbrvtNvTv3x/l5eXYsWNH9PannnoKAPCrX/0qGgwAgEmTJuHWW29FXV0dXnnllRbbevnll+F2uzFr1qxoMAAAcnJy8Kc//QkA8OSTT8b0fRERERERJYpAIACfzwen08lgAFEMCYIAp9MJn8+HQCAQs+3qJiDQlkiDBZPJBABoamrCN998AwCYPXv2CY+P3PbRRx+1uP2TTz456XMuuugiWCwWLF68GF6vN3aLJyIiIiJKEJEGgt3VAI0omUU+V7Fs1Kn7gMA//vEP7N69GwMHDoxmAuzevRs+nw9ZWVno1avXCc8ZO3YsAGDLli0tbt+8eXOL+49nMpkwYsQIeL1e7NmzJ9Zvg4iIiIgoYTA7gCj2uuNzpZspAxGPP/44tm/fjoaGBuzcuRPbt29Hz5498c4770AURQDAoUOHAKDVYAAApKSkIC0tDbW1taivr4fdbofb7YbL5Wrzeb169cK6detw8OBBjBw5stXH+Hy+Ft1U3W53p98rERERERERUXfRXUDgiy++wNdffx39c58+ffDmm29i3Lhx0ds8Hg8AwGaznXQ7KSkpqKuriwYEIs9p63kpKSkAgPr6+pNu99FHH8Vvf/vb9r0ZIiIiIiIiIpXormRg8eLFUBQFtbW1WLp0KQYOHIhp06bhkUceUXtpAIAHH3wQLpcr+lNSUqL2koiIiIiIiIhOoLuAQERaWhqmTp2KTz/9FOPGjcOvf/1rrF27FgCQmpoKAGhsbDzp8xsaGgAAdru9xXPaet4Pn9Mas9kMh8PR4oeIiIiIiJKLIAgd+unbt6/aS8aBAwcgCEKHxqzHSrz+Dl5//fUT/u4lSULPnj1xxRVXYOnSpSd97vr16/HYY4/hiiuuiI7VbG9dfyAQwNNPP42JEyfC4XAgNTUVgwYNwty5c1FWVhart9dhuisZ+CFJknD11Vdj/fr1+OijjzBhwgT07t0bAFBaWtrqcxoaGlBXV4cePXpET+4dDkd0TmNpaSmGDRt2wvMi2+vTp083vRsiIiIiIkoEc+bMOeG25cuXY//+/Rg1ahRGjx7d4r7MzMw4rYwAoH///pgyZQqA8Pnhpk2b8MEHH2DRokV4+eWXMXfu3BOe8/DDD+PDDz/s8GvV1NRgxowZWL9+PfLy8nDeeecBAPbt24fXXnsNc+fORX5+ftfeUCfpPiAAHPvwVFZWAgAGDx4Ms9mMyspKlJWVnfCXu2HDBgA4oTHgqFGjsHTpUmzYsOGEgEAgEMC2bdtgsVgwaNCg7norRERERESUAF5//fUTbrv++uuxf/9+XHbZZViwYEHc13Qq+fn52LlzZ5u92BLFlClTWvwbybKM++67D08++STuvvtuXH311dEechGTJk3CyJEjMWHCBEyYMAF9+/Zt0VC+NYqiYPbs2Vi/fj3mz5+PX/3qVzAaj52GFxUVqZpVrtuSgeN99913AMJRHgCwWq0455xzAADvvvvuCY9/7733AACXXHJJi9svuuiiFvcf7+OPP4bX68V5550Hi8USu8UTERERERFpgCRJGDJkSDTjOpkYDAY88sgj0azxVatWnfCY+++/H7/73e9wySWXIDc3t13bfffdd/Htt9/iqquuwoIFC1oEAwCgsLBQ1ewQXQQEVqxYgc8//xyyLLe4PRAI4K9//Sv+8Y9/wGq14uqrr47ed/fddwMAfv/732Pv3r3R21euXIkXX3wRaWlpuPHGG1ts76abboLD4cCHH36IhQsXRm+vqKjAfffdBwC45557Yv7+iIiIiIgoeUXq2hcsWIA9e/bgmmuuQU5ODgwGAxYtWhR93Kefforzzz8fPXr0gMViweDBg/HAAw+grq7uhG0uWLAAgiDg9ddfx+rVq3HBBRcgLS0NDocD559/fqsnvKfqIbB69Wpcc801yM/Ph9lsRl5eHs4991y89NJLLR63adMm3HfffRg3bhyysrJgNptRWFiI2267DYcPH+7KX1W3MpvNGDBgAIDwOWAsRP5u7rjjjphsL9Z0UTKwd+9e3HDDDcjMzMS4ceOQkZGBqqoqbN26FUeOHIHFYsHrr7+OgoKC6HPOO+883HnnnXjmmWcwevRonH/++fD7/fjqq6+gKApee+01pKWltXid9PR0vPrqq/jxj3+M2bNnY/r06cjIyMDixYtRV1eHu+++W5UGG0RERERElPh2796NCRMmICMjA2effTZqa2shSRKA8HjzX/7ylzAajZg2bRoyMzOxYsUK/PGPf8QHH3yApUuXIicn54Rtfv/99/i///s/DBgwABdeeCH27duHxYsXY+nSpfjoo48wY8aMdq3tmWeewd133w1ZljFu3DicddZZqKqqwpYtW/CLX/wCN998c/Sxjz32GN5//32MHDkyWqe/adMmvPDCC1i0aBHWrVuHnj17xuBvLPYiI+azs7O7vK1AIIDly5fDaDRi4sSJ2LJlC959911UVFQgPz8fs2bNwqhRo7r8Ol2i6EBRUZHyy1/+Upk8ebKSl5enSJKkpKSkKMOHD1fuuOMOZe/evSd97muvvaaMGzdOsdlsSlpamjJz5kxlxYoVbb7e8uXLlZkzZyppaWmKzWZTxo8fr7z++uudWrvL5VIAKC6Xq1PPJyIiIiLSi6amJmXHjh1KU1OT2kvRpDlz5igAlPnz57e4/bXXXlMAKACUn//850owGGxx/5o1axSDwaCkpqYqq1atit7u9XqVq666SgGgXHnllS2eM3/+/Og2H3roIUWW5eh9zz//vAJAycvLUxobG6O3FxcXKwCUadOmtdjWd999pwiCoNjtdmXx4sUt7gsEAsonn3zS4rZvvvlGOXr0aIvbQqGQ8tvf/lYBoNxwww0n/N0AUPr06XPC7bEW+bueM2fOCfft2bNHEUVRSUtLUzwezym3ZTablbZOqXft2qUAUHJycpRHH31UMRgM0X8TAIogCMq8efPavfaOfL7aex6qiwyBfv364ZFHHunUc6+//npcf/31HXrO5MmT8dlnn3Xq9YiIiIiIqHVN/hD2V3rUXka79c9KhdUkxu31srKy8Mc//hGi2PI1n332WciyjDvuuAOnn3569Haz2Yxnn30WH3/8MT744AOUlJS0yJoGwhPSIuUDET/72c/wxhtvYPXq1Xj//fdx3XXXtbmuxx57DIqi4KGHHsK5557b4j6j0Ygf/ehHLW47++yzT9iGwWDAb37zG/z973/Hf//737b/IuKsoaEB69ati6b1v/DCCyc0FOyM2tpaAEB1dTUefPBB3HbbbbjnnnvgdDrx4Ycf4o477sDTTz+NAQMG4Pbbb+/y63WGLgIClPhkWcH+Sg+KqxpwxOVt/mnCUZcXHl8QTf4QGv0hNPiD8AXlcEztOAYDYDaKsEgGmI0izEYDUi1GpFklOI/7cVglpNlM0T+np5iQ67Qg1cyPAhEREVF321/pwcV/Xa72Mtrt4zumYES+M26vd95557Xa4X/ZsmUAgJ/85Ccn3JednY0ZM2bgww8/xIoVK3DNNde0uP/KK688oZEdAFx77bVYvXo1li1b1mZAIBgMYsmSJQCAW265pd3vpbq6Gv/973+xbds21NXVIRQKAQin0VdXV6Ompgbp6ent3l6svfHGG3jjjTda3GY2m/HFF1+cEPTorEgPvGAwiAsvvBDPPfdc9L65c+fC6/Xi9ttvx6OPPsqAAKnr5WVF8PiCmHdefEYqegMhrC6uwYaDtdhwqBabSupQ7w0CACRRQK7TgjynFbkOCwZajbCZjLCZRNhMIsxGEccFOAEAwZACX1CGPyjDFwzBG5BR7w2grimAwy4vdh2th6spAFdTAI3+0AnrSTUbkeu0INdhQY7DgjynBTnNf85zWtAnwwa7RYrHXw0RERFRwuqflYqP75ii9jLarX9Walxf72Td/SON+Pr27dvq/ZHby8rKTrivT58+bT7nVE3+qqur0dTUhPT0dPTo0aPNx0a88847uOWWW+DxnDwbpL6+vtMBgUWLFrVothjR2qjHk+nfv3+0v0F1dTWWLVsGl8uFOXPmYM2aNTHpcZCaeuz/zw033HDC/ddffz1uv/12lJWVYd++fdGGhvHEgAABAHxBGU8v3otchwXXTOy+MSPFVQ14a9VBvLu+FK6mANJsEsYUpOGWqYUY26cHBuakIjPFDINBOPXGOskflKPBgWqPD0fdXpS7w1kJ5W4viqs8WLm/ChX1PgTlY6kImalmFGamoG+mDf0yU9Gv+dc+GTZYpPilkhERERHpldUkxvWKu950dry58MOrZSo6ePBgtGT76aefxkUXXYT8/HxYrVYAwJlnnomVK1dCUZQ2ttK2TZs2nXB1H+hYQGDKlCktHu9yuXDhhRdi5cqVuOWWW/Dxxx93en0RxwdjWgvm2Gw2ZGdno6KiAhUVFQwIkHpum94fh+ua8NCibchxWHD2kK531YxQFAVf7ijHP1YexPJ9VUizSbh6QgGuGtcLA7JT4/4FZjIakGU3I8tuxoDsk0d9ZVlBVYMPh+u8OFjdgKLKBhyobsCuo/X4bOtR1PvCGQ2CAPR0WjEgOxVD8xwYmmfH0DwHCjNTYBR1MdmTiIiIiDSsZ8+eKC4uxsGDBzFs2LAT7j9w4AAAID8//4T7Dh482Oo2I7ef6kp4ZmYmrFYrampqUFdXd8Kkth/69NNP4ff7ce+99+LOO+884f6ioqI2n98eCxYswIIFC7q8neM5nU689dZbGDp0KD755BMsXboUZ511Vpe32a9fPxQXF0f7CRxPluXoyMjjswniiQEBAhCOKv5u1ghU1Ptw21sb8K9bzsCogrQub7emwY/73tuMxTsrMLZ3Gp768Sj86LQ8XVxRNxgEZNstyLZbMPoHfxeKoqC6wY/iqgYUV4WDBXvL6/HfTWX423deAOHAw7A8B0YXpGFkLydGFaShX0ZKt2Y/EBEREVHimTp1KoqLi/HOO+/g4YcfbnFfZWUlvvjiCwiCgMmTJ5/w3IULF+JPf/rTCY0K//WvfwFANG3+ZERRxPTp0/HZZ5/h73//O+677742Hx858e3Vq9cJ9y1duhTl5eVtPl9N/fr1w6233opnnnkGv//97/Hll192eZuXXnopnnnmGSxZsuSEEY+rVq2C3++H1WrF4MGDu/xancHLlxQlGgT85ZoxGJJnx9zX1+JgdUOXtvf9/ipc+MxSrD9Yi5d+Oh4Lb5uMK8b20kUw4FQEQUBmqhkT+qbjx+ML8MCFQ/DK9RPw/YPnYtNvzse/bjkDD8wcgr4ZNizdU4m7/7MZ5z75HUb/7kvc+PpavPjdfmw8VItASFb7rRARERGRxt1+++0wGAz4y1/+gnXr1kVv9/v9uOOOO9DU1IQrrrjihAkDQDh74Le//W2L2/7+979j5cqVyMnJwZVXXnnK17///vshCAIeeeQRfPvtty3uCwaD+PTTT6N/HjQo3JPsn//8Jxoajp1PlJWV4dZbb23fG1bRAw88AKvViq+++gpr167t8vbmzZsHk8mEZ599FqtWrYreXlVVhXnz5gEI9xcwm81dfq3OYIYAtWA1iXhlzgRc+cL3mPPqGrz/szORkdqx/5yBkIxnFu/Fc0v24Yx+Gfjz1aOR6+xcPZQepdlMOKMwA2cUZkRvczUFsLXUhQ2HarGmuAZPL96LpkAIVknEhH7pmDYoC9MGZaF/VoqmasCIiIiISH0TJ07Eww8/jIceegiTJk3C9OnTkZmZiRUrVqCkpAQDBw5s0cH+eDfffDMee+wxLFy4ECNHjsS+ffuwdu1aSJKE119/vdWpBj80bdo0/OlPf8J9992Hc845B+PHj8fAgQNRVVWFzZs3w+fzRVPfL730UgwfPhzr1q3DgAEDMHnyZHi9Xnz77bcYPXo0zjzzTHz//fex/OuJqdzcXNx6663485//jD/84Q/44IMPovd98sknLTI0/H4/AOCMM86I3vbrX/8aF110UfTPffv2xQsvvICbbroJZ511FiZNmgSn04nvv/8e1dXVGDt2LP74xz/G4Z21jhkCdIL0FBPeuGEi6r1B/OK9LR1q+NHgC+InL6/GC9/tx70zBuOfN52eVMGAk3FaJUwZmIn/d+5A/POm07FlwQx8cNuZuPO8gVAUBX/8bBfOe+o7TPnjt/jlB1uxZHcF/EFmDxARERFR2C9/+Ut8/PHHmDZtGtauXYuFCxfCbDbjvvvuw+rVq5GTk9Pq884880x89913yM3Nxccff4ydO3fi3HPPxZIlSzBz5sx2v/69996L7777DpdffjkOHTqE9957D9u2bcNpp52GJ598Mvo4k8mEZcuW4Wc/+xksFkv0Ne+44w589dVXkCTtT+66//77YbPZ8OGHH2L79u3R2ysrK7F69eroT+Q86fjbKisrT9je3Llz8c033+Ccc87Bli1b8OWXXyI7OxsLFizA0qVLVesfAACC0pX2jnRKbrcbTqcTLpcLDodD7eV0yDe7yjH39XV45PIR+MnprY8rOZ43EMJNb6zDppI6vHbDBEzoq95cUb1p9AexuqgG3+2pxLe7K3CwuhFOq4Tzh+XgR6flYvKATJiN+i+1ICIiosTm9XpRXFyMfv36dbpjPsXGggUL8Nvf/havvfZatOs/6VtHPl/tPQ9lyQCd1DlDcvCT03vj4Y934IzCjDbnsAZDMv7fOxux9kAN3pg7kcGADrKZjDh7SDbOHpKN+cow7DxSj8+2HcEnW4/gvfWlcFiMuGxMPn48voCjeoiIiIiIKCYYEKA2PXTRUKzcX427/r0J7//sTEitjNGTZQX3vb8F3+yqwN9/Oq5F7Tx1nCAIGNbTgWE9Hbj7/EHYU+7Bok1leG99Kd5ceRAj8h24ekJvzBrdEw6L9lOuiIiIiIhIm9hDgNpkMxnx9DWjseOwG3/5eu8J9yuKgt99vAMfbCzDkz8ehXOGtF67RJ0jCAIG59px/8whWPnAOXjpp+OR67Bg/ofbcOaj3+APn+5Eudur9jKJiIiIiEiH2EOgm+m5h8Dxnv1mL576ag/+83+TMLJXGraW1WFVUQ2W763CyqLqdvcZoNg46vLi9e8P4K1VB+ELyrh8TD5umVbYZlkHERERUXdjDwGi7tMdPQQYEOhmiRIQCMkKrn5xJXaX1yMQkuENyEgxiRjfNx2Xj8nHZWPy1V5iUnJ7A3h79SG8urwYlR4fLhudj/tmDkae06r20oiIiCgJMSBA1H3YVJBUIxoE/Pnq0fjz4j0YlufAxH7pGJbngLGVngIUPw6LhFun9ccNk/vi3XWleHrxHny27QhuOas/bp1WCJuJH3EiIiIiImodzxao3QrSbXjqx6PVXga1wmwUcd0ZfTBrdE88v2Q//vbdfvxrzSHcN3MIrhybD0EQ1F4iERERERFpDC/vEiUQu0XC/TOH4Ou7p2Fiv3Tc++5mzHltLRsPEhERUVyxKpko9rrjc8WAAFECKki34dn/GYvXbpiAnUfcuODppfhs6xG1l0VEREQJThRFAEAgEFB5JUSJJ/K5inzOYoElA0QJ7OzB2fhi3ll46IOt+NlbG3DF2HwsuHQ4HBZJ7aURxUwgJKMpEILXH0JToPmn+ff+oAxFAWRFgayEG6Qqzb8P36ZAUcJ9UiI/xuivBhgMgNFggGgQYDYaYJEMMBtFWCQRFskAiyRCYi8VIqIoSZJgNpvhcrlgt9tZtkgUI4qiwOVywWw2Q5JidyzPKQPdLFGmDJC+KYqChRvKMP+/25GeYsLrN0xAIUcUksYoioK6xgCOur2oafC3+Klt9KO6wY/a4/7c6Auf9AdldXdjokGAxRgODlhNIlLNRqSYjUg97if8ZxGpFiNSzRIcViPSrCak2SQ4rRKcNgl2s5EHzkSUENxuN8rKypCamgqn0wlJkvj9RtRJiqIgEAjA5XLB4/EgPz+/XeeVHDuoEQwIkJaU1DTihtfXosrjw8s/HY/xfdPVXhIlmWBIRkltE4oqPSiqbEBxdQNKa5twuK4JZbVNaAqEWjxeEgWkp5jQw2ZCRmr418ifU81GWEwirFLzj6n5pLz5xNzafPVeNAgQBMAgCBAFAQZBgGDAsd8L4cyBoKw0/yqHfw2FMwiCzb/3B2V4gyF4AyF4A3LzryF4gzJ8zb9v9IfQ4AvC44v8euynwReExxuExx9Ea3te0SDAYTEizWaC0yqhh01CRqoZGakmZKaEf81INSMjxYQsuxk9bCaYjMxOICJtcrvdqKqqgs/nU3spRAnBbDYjMzOz3eeUDAhoBAMCpDWuxgBu+cc6bCypw9NXj8aPTstTe0mUoFyNAWw/7ML2w25sP+zCjiNuFFc1IBAK73askoi+mSko6GFFzzQrevWwIj/NihynBZkpZvRIkZCagFfNZVmBxx+EqzGAusYAXE0B1DX5o793NQVQ2+BHbWMA1Q0+VHv8qPb40OAPnbAtp1VCjsOMHIcFuQ4Lcp2WFr/PdpiRmWKGwZBYf4dEpB+BQACh0InfX0TUfqIodrhMgAEBjWBAgLTIFwzh3ne34OMth/HQj4bixin9Eu6ki+JLURSU1jZh7YEarCkO/xRVNQAALJIBQ/McGN7TgcE5dhRmpaIwKwU5dgtPVDugyR+KBghqGvyo8vhQ6fGh3OVFuduHo24vyt1eVNT7EDqujMJoEJCXZkFBDxsKetjQq4cVBek2FKRbUdDDhiy7mZ9/IiKiBNPe81A2FSRKQmajiGeuHo38NCt+/8lOuJoCuGfGYLWXRTrjDYTw/f4qfLWjAkv3VKKsrgkAMDjHjjMHZOCOcwfgtHwn+mWmQuSJf5dZTSJ6mWzo1cPW5uNCsoJqTzhAcNQVDhKU1jWhtKYJO4+68eWOo6htPNb922w0oFcPK/pkpKB/VgoGZKeGf7LscNrYgJSIiCiRMSBAlKQMBgEPXDgETquEP36+C9kOC/73jD5qL4s0zuML4tOtR/Dl9nIs31cJb0BG3wwbLhiei0n9MzC+Tw/0SDGpvcykJhoEZDssyHZYMLJX64/x+IIorW1ESU0TSmoaUVLbiIPVjfhiezleXl4c7XGQmWrGgOzmIEFWKgbm2DE0z4F0/hsTERElBAYEiJLcrdMKUe72Yv6H25BjN2PG8Fy1l0QaI8sKVhVX4711pfhs21F4gyGM79MDd503COcOzUH/rBSmnOtMqtmIIbkODMk9MYXQGwihqLIB+yo92Ffhwf4KD9YW1+I/a0vhD8kAgJ5OC4bnOzG8pwOn5TsxpncPBgmIiIh0iD0Euhl7CJAehGQFt7+1AUv2VODtm8/A2N491F4SaYDbG8A/Vx3E26sPobS2Cf0yUzB7XC9cMTYfeU6r2sujOAuGZBysacSOw+5oo8htZa5o+UG/zBSM7d0DY/uk4fR+6eiflcpAERERkUrYVFAjGBAgvfAGQrju5dXYX+nB+z87E4VZqWoviVRS7fHhtRUH8MbKA/AFZMwa3RNXTyjAuD49eIJHLUSaSW44VIsNB2ux/lAtdh6pR0hWkG03Y8qATExu/sl1WtReLhERUdJgQEAjGBAgPalr9OPKF76HPyTjv7dPYS14kqny+PDct/vwzppDMAgCfnJ6b9w0tRA5Dp7IUfs1+IJYd7AW3++rwvJ9VdhxxA1FAYb3dOCC4bmYOSIXA7OZPUBERNSdGBDQCAYESG9Kaxtx8V+X46yBWfjLtWPUXg7FQUhW8Pbqg3j8i90AgBsm98P1Z/ZlQIhioqbBjxX7qvDljnJ8u6sCHl8Q/TJTMHNELq4a14vZSERERN2AAQGNYECA9GjRxjLM+/cm/O26cZg5gk0GE9mmkjr8etE2bC1z4erxBbj/wiFsDkfdxhcM4ft91fh821F8vv0oXE0BnN4vHddO7I2ZI3JhkUS1l0hERJQQGBDQCAYESI8URcEt/1iPjYdq8eVd03iCmICa/CH8/pMdeHvNIQzNdeDhy0ZgXB82k6T48QZC+GL7Ubyz5hBWFdXAaZVw9YQC3Dy1EFl2s9rLIyIi0jUGBDSCAQHSqwq3F+f/eSmmDWLpQKI5UNWAW/+5HgerG3H/zMG47ow+MIoGtZdFSay4qgH/WnMIb68+hKCs4H8n9cH/nVWIjFQGBoiIiDqDAQGNYECA9IylA4nnqx3luPs/m5CZasbfrhuHwbl2tZdEFFXX6Mcry4vx2ooDCMkKfnpmH9w2bQCcNkntpREREekKAwIawYAA6RlLBxJHSFbw1Fe78dy3+zFjWA6e+PEoOCw8ySJtqm3w4+XlRXh9xQGkmI149IrTcO7QHLWXRUREpBvtPQ9ljigRnZQgCHjkshEIhBQs+O92tZdDneQLhnDLm+vwwpL9uH/mELz4v+MYDCBN65Fiwi8uGIKv75mO4T0duPGNdbj7P5vgagyovTQiIqKEwoAAEbUp22HBQz8aiv9uPowdh91qL4c6yB+Ucds/N2DZviq8ev0E/Gx6f85/J93IdVrw6vUT8KfZI/HV9nLMePo7fLOrXO1lERERJQyWDHQzlgxQIgiGZEx/YgnG9O6Bv7LBoG4EQjJuf2sDluyuxEtzxmPaoCy1l0TUaYfrmvDAwq1YuqcSD144BP83rb/aS0pIsqyg0uNDTYMfdY0BuJrCv7q9AfgCMvwhGf6gDF9QhqwoEIBokNEgCDBLBliMIqwmA6ySCIskwmoSYZXCPxaTiFSzEWlWCU6bBLORoyaJiLpDe89DjXFcExHplFE04NZp/fGbD7fh7vMHoV9mitpLolMIhmTc+a+N+HZ3BV7833EMBpDu9Uyz4o0bJuDJL/fg0c92wdUUwC8uGMyMl07yB2XsOOLGpkO12FvhQUltE0prGlFa1wR/UG7xWEEAUk1GmCUDTKIBJmP4x9D8d68ogAIFshLeblMgBK8/hMZACCG57etOVklEmk2C0yqhh82ENJvU/GcTMlNNyLKbkZVqRpbdjMxUM9JsEv/NiYhiiAEBImqX2eN64Zmv9+LF7/bjsStHqr0cakMwJOOu/2zGl9vL8cJ143DOEDZjo8QgCALuvWAwnFYJj3y6E66mAH43awREA08QTyUYkrGyqBrf7KrAppI6bC9zwx+SYRINKMxKQUG6DdMHZ6Mg3YqCHjZk2s1Is4ZPzu0WqdN/x4HQsQBBUyD84/EG4WoKoK4xgLqmAFyNftQd9+fDdU2oafSjqt6PpkCoxfYkUUBGSjhAkGU3I8dhRq7Dirw0C3o6j/1qNTHzgIioPRgQIKJ2sUgibp7aD49/sRt3njcQeU6r2kuik3jss134dOsRPPc/Y3H+MAYDKPHcfFYhnFYJDyzcArc3iCevGgWTkW2RfkiWFaw9UIOPthzGZ1uPorrBj/w0K8b37YFLR/XE6II0DOvp6Na0fUk0QBINnW5k2uALosrjQ2V9+Cf6++Zft5W58dWOclR5/C2el2aTkOe0Is9pQZ7Tgp5pkd9b0TPNglynheUKRERgQICIOuB/Tu+D577dj5eWFuM3lwxTeznUim92lePl5cX41UVDMXNErtrLIeo2P55QALvFiDv/tQm+QAh/u24cDMwUABDOBvjPulI8+81eHHZ5kZ9mxexxvXDxyJ4Yke/QVcp9itmIFLMRfTLaLlXzBkIod3txuM6LI64mHHE1/1rnxYZDdfhk6xHUHTelQhCAPIcFBek29I78ZNhQkG5Dn3Qb0lNMuvp7IiLqLAYEiKjdUs1GXH9mX/x9aRFuP7s/MlLNai+JjnPU5cW9727BuUOyceOUfmovh6jbXXhaHiTRgJveXIdXVxTjpqmFai9JVYqi4IvtR/GnL3ajqLIBs0b3xE8n9cWYgrSED5ZYJBF9MlLaDBw0+oM46vLiiMuL0tpGHKppxKGaJuyp8ODrXRWoaTiWZZBiEk8aLChIt0ESmZFCRImBAQEi6pDrz+yLl5YV4fXvD+CeGYPVXg41C8kK5v17IyRRwONXjeKVLUoa5w3LwS1nFeKPn+/C6f0ycFovp9pLUsWGQ7V4+OMd2HioDmcNysJfrhmDEfnJ+XdxMjaTEYVZqSjMSm31/npvACU1TThU04iSmkYcrGnAoZomfL2rAqW1jQiEwg0SjQYBvTNsKMxMRf+sFBRmpYS3m5nCzAIi0h0GBIioQ3qkmPCT03vj9e8P4JazCmHvZF0oxdZz3+7DmuIavH3zGUhPMam9HKK4unfGYKzcX4073tmAj//fVKSak+vw5r31pXjg/S0YkmfHWzedjskDMtVeki7ZLRKG9ZQwrOeJ47lCsoKjbi8OVDWgqNKD/ZUNKKpqwCdbj6CsrgmRId5OqxQOEGSmojArpTlgkIo+GTb2LCAiTRIURWl7Hgx1SXvnPxLpSbnbi6l//BZ3zxiEWzkLXHVrimtwzd9X4o5zBuKu8wepvRwiVRRXNeDivyzDBSNy8dSPR6u9nLhQFAVPL96LZ77ei2smFODhy0YwlV0F3kAIB6obUFQZDhYUVTZgf3PgoN4bBACIBgH9MlMwOMeOwbnNPzl29E63JXw5BxGpo73nockVQieimMhxWDBzRC7+u+kwAwIqc3sDuPNfGzG+bzruOGeA2sshUk2/zBQ8fNkI3P2fzZg6MBOXj+ml9pK6lT8o44H3t2DhxjLcN3MwfjatP1PVVWKRRAzJdWBIbssDbkVRUOXxo6jSg32VHuw5Wo9dR+uxYkVVtMGhVRIxKCcVg5oDBUNyHRiUm4qsVDP/PYkoLhgQIKJOOXdoNv67+TCOurzIdVrUXk7SemlpEWoa/HjvZ2fCyCuDlOSuGNsLy/ZW4VcfbMOYgh7om9l2Z3q9cjUF8H//WIcNB+vw12vH4JJRPdVeErVCEARk2c3IsptxemFG9HZFUVBZ78Ouo/XYfbQeu8vDgYL/bj4MX1AGAKSnmDAoJxVDch0Yke/EiHwHBmSl8nueiGKOAQEi6pRpg7IgGgR8s6sC/3N6b7WXk5Qq6314eVkxrp/cF/lpVrWXQ6QJD182AmsP1ODRz3bixf8dr/ZyYk5RFNz1703YeaQeb918Oib0TVd7SdRBgiAg22FBtsOCswZlRW8PyQoO1TRi91E3dh2tx57yeny3pxKvf38AAGA2GjA0z4HTmgMEw3s6MSjHDpORQQIi6jwGBIioU9JsJozr3YMBARU9+81eSKKA26axVIAoItVsxO1nD8AvP9iKokrPSTvK69U7a0rwza4KvHr9eAYDEkykz0C/zBTMHJEXvb3eG8COw25sLXNh+2E3VhVV463VByErgEk0YHCuHaMKnBhT0ANjeqehX2YKyw2IqN0YECCiTjtnaDaeWbwX3kAIFondk+PpUHUj3l5zCHedPwhOGyc9EB3v8jH5ePLLPXh5eTH+cPlpai8nZg5UNeDhj3fg2om9cc6QHLWXQ3Fit0g4vTCjRdlBoz+InUfc2FbmxpZSF1YV1eCfqw4BANJsEkYXpEUDBKMK0uC0cj9BRK1jQICIOu3cIdl47LNdWFVUjemDs9VeTlL58+I96GEz4YYz+6m9FCLNsUgirj+zD/7yzT7cdd4gZNnNai+py4IhGXf/ZxOyHWb86qKhai+HVGYzGTGuTzrG9TmWJeJqCmBzSR02HqrDxpJavLqiGK7F4eaFA7JTMa53D5xemI7TCzNYZkZEUQwIEFGnDchORa8eVnyzq4IBgTjaecSNRZvK8PCsEbCamJlB1JrrzuiD55fsx5srD+CeGYPVXk6X/e27/dhUUod3b52EFDMP3+hETquEswZlRfsSKIqC4qoGbDxUhw2HarH+YC3+va4EAFCQbsXp/TJwRmEGTu+XjoJ0m5pLJyIVcY9CRJ0mCALOHZKNxTsr8NtLFdYsxskTX+xG73Qbrp5QoPZSiDQrzWbC1RMK8ObKg7h1Wn9dn0RvK3Ph6cV78bPp/VtcESZqiyAIKMxKRWFWKq4cFx7DWdPgx5riGqwqqsbq4hq8v6EUigLkp1lxemE6zijMwFkDszg9iCiJ6HfvSESacPaQbLyx8iD2VngwKMeu9nIS3toDNfh6VwX+cu0YSBw/RdSmG6f0w5srD+I/60pww2R9ltd4AyHM+/cmDM61485zB6m9HNK59BQTZo7IxcwRuQCAusZIgKAGq4ur8cHGMigKMCTXjmmDszB9UDbG9+3B/Q1RAmNAgIi65IzCDFglEV/vrGBAIA6e+nIPhuU5cPFpead+MFGS69XDhotOy8Mry4vxv2f00eUM90+2HMG+Cg8+nzeV4+Uo5tJsJswYnosZw8MBgtoGP5btq8KS3RV4f30pXvyuCKlmIyYPyMC0QdmYPjgLPdl/gCihMCBARF1ikURMGZiJb3dV4GfT+6u9nIRWUtOIlUXV+PPVo2AwsDyDqD1uOasQF/91OT7ddhSXjuqp9nI67N9rS3Bm/wwMyXWovRRKAj1STLh0VE9cOqonZFnBjiNuLNldgSW7K/GrRVshK8CgnFScMyQHFwzPwaheadwfEekcAwJE1GXnDMnGQx9sRV2jH2k2k9rLSVgfbTkMi2TAjGG5ai+FSDdG5DsxZUAm/r50Py4ZmaerXif7KjxYc6AGf7l2jNpLoSRkMAgYke/EiHwnfn7OQLgaA1i+rwrf7q7Af9aV4G/f7Ueuw4IZw3NwwfBcnN4vXZdZOETJjgEBIuqyswdnQ1aA7/ZUYtbofLWXk7D+u+kwzh+Wq+vmaERquOWsQvz01TXYcKgO4/r0UHs57fafdSVIs0mYMSxH7aUQwWmTcNHIPFw0Mg/BkIx1B2vx+baj+HL7Uby58iAyUkz40Wl5uGRUT4zv04OZA0Q6waNKIuqyXKcFw3s68M2uCgYEusmuo27sOlqPexNgfBpRvE0ekAmHxYhleyt1ExDwB2W8v74UV4zpBYvE8aKkLUbRgDMKw2ML518yDFtKXfh4y2F8vOUI/rHqIHIdFlw8Mg9XjuuFoXksdyHSMgYEiCgmzm2eNhAMyUwZ7Ab/3XQ4OmOaiDpGNAg4ozAD3++rxrzz1F5N+yzeWY7qBj+umcjxoqRtgiBgVEEaRhWk4cELh2L9oVp8vPkwPthYhpeXF2N4TweuHNsLs0b3REaqWe3lEtEP8KidiGLinKE5cDUFsKmkTu2lJBxFUfDhpsP40Wl57DJO1ElTBmZiY0ktGnxBtZfSLv9aW4KxvdM4vYV0xWAQMKFvOn47awRW/fJcvPTT8ejVw4pHP9uJ0//wNW79x3os21sJWVbUXioRNWOGABHFxGn5TphEA7YfdmN833S1l5NQ1h+sRVldEy4brb8O6URacWb/TARCCtYcqMHZg7PVXk6bSmoasWxvJf54xUi1l0LUaZJowPnDcnD+sBzUNPjx4aYy/GtNCf73lTXom2HD/5zeG7PHFSA9hc2IidTES01EFBOiQUCfDBuKKj1qLyXhfLjpMPKcFkxgoIWo0/pnpSDHYcb3+6rUXsopvbu+FCkmIy4amaf2UohiIj3FhBsm98Pn86bivVsnYXRBGp74Yg/O+MPX+MW7m7HrqFvtJRIlLWYIEFHMFGaloKiqQe1lJJRASMYnW4/gqnG92LGZqAsEQcDkAZlYsa9a7aW0KSQreHddCS4Z1ZMTRSjhCIKA8X3TMb5vOn5ziR//XluCN74/gHfXl2LqwEzcPLUQUwdm6mo8KJHeMUOAiGKmX2YqiioZEIil5fuqUNPgx6UsFyDqssn9M7HjiBvVHp/aSzmppXsqccTlxbVsJkgJLj3FhJ9N749l95+Np68ejZoGP3766hpc+MwyfLT5MELsM0AUFwwIEFHMFGal4LCrCd5ASO2lJIz/bjqMAdmpGMaxTURdNnlAJgBgZZF2swT+tfYQhuY5cFq+U+2lEMWFJBpw2Zh8fHzHFLxz8xnIdlhwxzsbccHTS/HhpjIGBoi6GQMCRBQz/bNSoCjAgWpmCcRCkz+EL7YfxaxRPZk+SRQDuU4L+melaLZsIBiSsXRPFWaN5meeko8gCJjUPwNvzp2ID247E73TbbjzX5tw/lPf4cNNZZxMQNRNGBAgopjpl5kKACwbiJHFO8vR6A9h1uh8tZdClDDCfQS02Vhwf2UDmgIhjC5IU3spRKoa07sHXr1+Av7788kozErBnf/ahEufW66LpqBEesOAABHFTHqKCWk2iZMGYmT53ioMybWjd4ZN7aUQJYwz+2fiUE0jSmoa1V7KCbaU1kEQgOE9WSJEBAAje6Xh5TkT8O6tkyCJBvzPy6tx/WtrsPtovdpLI0oYDAgQUUwVZnLSQKxsLq3DmN5pai+DKKFMKsyAQQC+36+9K41by1wozEyB3SKpvRQiTZnQNx0Lf3Ymnv/JWBRXNeDCZ5biV4u2wtUUUHtpRLrHgAARxRQnDcRGkz+EvRUenJafpvZSiBKK0ybhtHynJvsIbC1zYWSvNLWXQaRJgiDgR6fl4au7puGhi4Zh0cbDOPfJJfhgYykUhf0FiDqLAQEiiqnCrBQUVXq4c+6iHUfcCMkKRvZip3GiWDtzQCa+31+lqe+pQEjGjsNuThcgOgWT0YAbp/TD4run4fTCDNz17834n5dWY18FyxWJOoMBASKKqcLMFLi9QdQ0+NVeiq5tLa2DSTRgUI5d7aUQJZwpAzJR5fFjd7l26pD3lnvgC8oMAhK1U67Tguf+ZyzemDsRh11NuPCZpXhhyX6OKSTqIAYEiCimCrOaJw2wj0CXbClzYWieHSYjv6aJYm1cnx4wGQ2aKhvYWlYHgwAMY0NBog6ZNigLX8w7C3On9MOfvtiFq19ciUPV2msaSqRVPNIkopjqk2GDIICTBrpoa6kLp/FKIVG3sEgixvfpoanxg1tKXRiQnQqbyaj2Uoh0xyKJePDCofj3LZNw1O3FzGeW4p01hzRVFkSkVQwIEFFMWSQR+WlWZgh0QYMviH2VHoxkQ0GibjOpMANrD9Ro5oRha5mLTUSJumhiv3R8Pu8sXDKyJx5cuBU3v7kerkZOIiBqCwMCRBRzhVmcNNAV28pcUBRgZAEzBIi6S//sVNR7g6jTwMmCPyhj15F69g8gioFUsxF/nD0Sf//fcVhTXI1Lnl2OnUfcai+LSLMYECCimCvMTGHJQBdsLXPBIhkwoLkfAxHFXu90GwDgUI36tcZ7yuvhD8ksEyKKoRnDc/HxHVORajbi8udX4IONpWoviUiTGBAgopgrzErBoZpGBEOy2kvRpS2lLgzv6YRR5Fc0UXcp0FBAYEupC6JBwLA8NhQkiqXeGTYsvO1MXHRaT9z1782Y/+E2+IM8NiE6Ho82iSjmCjNTEQgpKK1tUnspuhSuJeaVQqLu5LRKcFolTQQEtpbVYVCOHRZJVHspRAnHIol44qqR+P1lI/D2mkP46aur4faqXypEpBUMCBBRzPXLSgEAFFWxbKCjXE0BFFc1sJaYKA76ZNhQooGAwJZSF0YyCEjUbQRBwHVn9MHbN5+BnUfq8eO/rcRRl1ftZRFpAgMCRBRzeQ4LLJKBjQU7YXuZCwAYECCKg4J0m+oZAt5ACLuP1rN/AFEcTOibjvdunQR3UwBXPL8Ce8vr1V4SkeoYECCimDMYBPTLTOXowU7YUuZCiklEv0w2FCTqbr01EBDYdbQeQVlhmRBRnAzMsWPhbZPhsEq48oXvsaa4Ru0lEamKAQEi6hacNNA5W0rrMCLfCdEgqL0UooTXO92Gw3VNqjYZ21paB0kUMCTPrtoaiJJNrtOC/9w6CcN6OnDdK6vx7e4KtZdEpBoGBIioWxRmpaCYGQIdtqXUxXIBojjpnW6DrACH69RrgLql1IXBuXaYjWwoSBRPDouEN+ZOxFkDs/B//1iPZXsr1V4SkSoYECCiblGYlYJytw8eX1DtpehGTYMfpbVNOK1XmtpLIUoKvTUwejA8VSRNtdcnSmZmo4jnfjIGk/tn4KY31uH7/VVqL4ko7hgQIKJuEamBL2ZjwXbbGmkoyFpiorjIc1ogGgTVAgJN/hD2VniYFUSkIrNRxAvXjcPEfum48fV17ClASYcBASLqFoUcPdhhW0vrYLcY0SfDpvZSiJKCUTQgP82q2ujBHUfcCLGhIJHqLJKIl346HmN6p+GG19Zg/cFatZdEFDcMCBBRt3BYJGSmmjl6sAMi/QMEgQ0FieJFzUkDW0vrYDIaMCiHDQWJ1GaRRLw8ZzyG5ztx/WtrOJKQkgYDAkTUbQozUzh6sAO2lrkwkv0DiOKqQMWAwO5yDwZkpcJk5OEYkRbYTEa8Mmc8ejqtmPvGWlR7fGoviTQo0f5fcA9ERN0mPGmAJQPtUVHvxRGXl/0DiOKsd7oNh6oboShK3F+7st6HXKcl7q9LRCdnt0h45frxaPLLuOUf6+ENhNReEmmAoihYU1yD295aj9P/8HVCZZAwIEBE3aZfZgqKKhtUOdDWm30V4cDJoFymDhPFU+90G+p9QbiaAnF/7UqPD5mppri/LhG1rVcPG1766ThsK3Phvve28DgmiXkDIby7rgQX/3U5fvziSuw6Wo/5lwxDzzSr2kuLGaPaCyCixJXfw4pGfwj1viAcFknt5WhahTucfpbr4NVConiKNPE8VNOINFt8T86r6n2YMiAjrq9JRO0zpncPPPnjUfj52xtRmJWCeecNUntJFEfeQAhvrT6EF5bsR5XHh7MHZ+G+uRMxdUAmDIbE6vXEgAARdZs0a/jg2tUYYEDgFCrqvbCbjUgx82uZKJ4K0o8FBOLZw0NRlOYMAXPcXpOIOubikT1RXNmAJ7/ag8KsVFw6qqfaS6Ju5guG8J+1JXj2232o8vhx5dh83DqtPwqzUtVeWrfhkScRdZs0WzgI4GoKoEDltWhduduHbAdPDIjizWmV4LRKcW8sWO8Lwh+UkWXn555Iy35+zgDsq/Tggfe3YERPR0KfGCYzRVGwcEMZnvpqDw67mnDZ6Hz8v3MHol9mitpL63YMCBBRt3FawwGBusb41+bqTbnbi2w7ywWI1BBpLBhPlfXhMiFmCBBpmyAI+MPlp2FLqQt3vLMRC287E2ajqPayKIZ2H63Hrxdtw5oDNbhwRC7emDsBA7KTp6cTmwoSUbdxNmcI1DX5VV6J9lW4fchhhgCRKnqrMHqwqjkgwAwBIu1LMRvx12vHYG+5B499tkvt5VCMeHxBPPLJDvzoL8tQ1eDDWzedjheuG5dUwQCAGQJE1I3sZiNEg8AMgXYor/diTO80tZdBlJQK0m3YXFoX19es9DAgQKQnI/KdeODCIfjdxzswuX8mzhuWo/aSqAu+21OJ+9/bgromP+4+fxBumtovaTM/mCFARN1GEAQ4rZIq47z0RFGUcMkAJwwQqaJ3ug2H65oQCMlxe82qeh9MRgPsbCRKpBs3TO6Lc4dk4xfvbcZRl1ft5VAn+IIh/P7jHZjz6hoMzEnFV3dNw+1nD0jaYADAgAARdbM0q4S6RpYMtMXtDcIbkFkyQKSS3uk2yApwuK4pbq9Z6fEhK9UMQUis8VVEiUwQBDx+1SiYjAbc+a+NCMmK2kuiDiiq9ODKF77HGysP4FcXDcUbN0yMTppJZgwIEFG3ctoklgycQmV9+CpDDjMEiFTR+7jRg/FSWe9DJssFiHQnPcWEp68egzUHavDK8iK1l0Pt9O66Elz81+Vo9IXwwW2TcdPUQhgMDMgCDAgQUTdLs0qoY8lAm8rd4VriHE4ZIFJFXpoFokGIa0CgyuNHFicMEOnSpP4ZuP7MvvjzV3tREueGpNQxIVnB7z/egV+8twUXnZaHj+6YghH5TrWXpSkMCBBRt0qzmeBihkCbyt3hDIFslgwQqUISDeiZZol7hkCW3RS31yOi2LpnxmCk2ST85sNtUBSWDmhRkz+E295aj1dXFGPBJcPw+FWjkMK+LSdgQICIupXTKnHs4CmUu31wWIywSMnb0IZIbb3TbXG90lfV3EOAiPQp1WzEby8djm93V+LTrUfVXg79QGW9D9e8tApL91Th7/87HtdP7qf2kjRLFwGBxsZGLFq0CDfeeCMGDx4Mi8WClJQUjBo1Cr/73e/g8Xhafd7hw4fx85//HAMGDIDZbIbNZsPIkSMxf/581NfXn/T1PvroI0ybNg0OhwMOhwPTp0/HJ5980l1vjyihpbGHwCmVu73sH0Ckst7pKXHLEFAUBVUe9hAg0rsZw3MxY1gOFny0nROVNGRveT0ue24FjtQ14d1bJ3FE5CnoIiDw9ttv4/LLL8err74KURRx6aWXYurUqSguLsb8+fMxYcIEVFRUtHjO3r17MXr0aDz33HMIhUK4+OKLcfbZZ6OkpAS/+93vcMYZZ8Dlcp3wWk8//TQuvfRSfP/995g8eTLOOeccrFmzBhdffDGeffbZeL1looSRxrGDp1RRz4AAkdp6p9twqDo+AQFXUwCBkMIMAaIE8NtZw9HoC+LxL3apvRRCOBhw9d9XIdVsxKLbJ7NfQDvoIiAgSRJuueUW7NixAzt27MB//vMffP7559i9ezfGjBmDXbt2Yd68eS2ec//996OyshK33XYb9u3bh/fffx+ffPIJDhw4gDPOOAM7duzAU0891eI5u3fvxr333guz2YylS5fis88+w6JFi7Bp0yZkZGTgrrvuwr59++L4zon0L81mgi8owxsIqb0UzSp3+9g/gEhlvdNtcHuDcel5UlkfbiTKDAEi/ctzWnHvBYPx1upDWH+wVu3lJLWiSg/+5+XVyLab8a9bzkDPNKvaS9IFXQQE5syZgxdffBFDhw5tcXteXh6ee+45AMDChQvh9x+rU166dCkA4Ne//jVE8VhdrtPpxH333QcAWLt2bYvtPfPMMwiFQrj11lsxadKk6O2DBg3CQw89hGAwiGeeeSa2b44owTltEgCwbKANzBAgUl88Rw9WesIBAWYIECWGn07qi9Pynfjlwq0IhmS1l5OUDlU34n9eWg2nVcI/bzodPVLYtLW9dBEQaMuoUaMAAD6fD9XV1dHbzeZT72QzMjJa/DnSJ2D27NknPDZy20cffdTptRIlI6e1OSDAxoKtUhQF5W4fcnilkEhVkYDAwZqGbn+tSIZAFj/3RAlBNAh45LLTsLu8Hu+tL1V7OUmnrK4J//PyKlgkA96+6XRkMtjaIboPCBQVFQEIlxWkp6dHb58xYwYA4OGHH0YodCxV2eVy4U9/+hMAYO7cudHb6+rqcOjQIQDAmDFjTnidgoICZGZm4uDBg3C73bF/I0QJKs3KDIG2uJoC8AdlZDNDgEhVTpsEh8UYnwyBeh+sksjxV0QJ5LReTlwyqieeXryXZZJxVOH24icvrQIAvH3zGTye6gTdBwQiKfwzZ85skRXw6KOP4rTTTsPzzz+PAQMGYPbs2bj44ovRt29fHDhwAP/85z9x9tlnRx8fCQb06NEDKSkprb5Wr169AAAHDx7srrdDlHDSbOGULQYEWlfuDl8pzGEPASLVFaTbUFLT1O2vU+XxMzuAKAHdc/4gVHl8eOP7A2ovJSl4AyHc/I/1aAqE8M7N7BnQWboOTX/66ad45ZVXIEkSHn744Rb35ebmYsmSJbj22mvx5Zdf4sCBA9H7rrjiCowbN67F4yOjC20220lfLxIoaGtkoc/ng8/ni/6Z2QSU7ByW8NeMiyUDrSp3ewEA2XZGtInUlp5iQl1j939XVdb7kJnK+laiRNM3MwXXTCzA80v245qJvaNlkxR7iqLg14u2YecRN967dRIK0k9+Dkdt022GwK5du3DddddBURQ8/vjj0V4CEVu2bMGoUaOwe/dufPjhh6itrUVpaSmefvppfPbZZ5g8eTJ2794d83U9+uijcDqd0Z+CgoKYvwaRnhhFA+wWIzMETiIaEGCGAJHqHBYJ9d5gt79OlcfHDAGiBPX/zhkIf1DGi9/tV3spCe2N7w/g3fWleOyK0zCyV5ray9E1XQYEysrKMHPmTNTW1uLuu+/GnXfe2eL+QCCA2bNn4/Dhw1i4cCEuvfRSpKWlIT8/H3feeSd+//vfo6amBr/5zW+iz0lNTQUANDaevHawoSHcaMhut5/0MQ8++CBcLlf0p6SkpCtvlSghpNkk1DUxINCainofetgkmI3iqR9MRN3KbjGi3hufsYNsekWUmLIdFsyd0hevrihGRXPQn2Jr5f5qPPzJTtw4pR+uGNtL7eXonu4CAjU1NZgxYwYOHjyIG264AU888cQJj1m1ahX27t2Lfv36YezYsSfcf9VVVwE4NpoQAHr37g0AqK2tjZ74/1BpabhraJ8+fU66PrPZDIfD0eKHKNmlWU3MEDiJCjdHDhJphd1iRL2PGQJE1DW3nNUfZqOIv3yzV+2lJJzS2kbc/vYGnFGYjgcvHKL2chKCrgICHo8HF154IXbs2IErrrgCL730EgRBOOFxkRN3p9PZ6nYit9fW1kZvS0tLiwYFNm7ceMJzSkpKUFVVhT59+vAkn6iD0mwSewicRLnbx464RBqRau7+kgFZVlDd4GeGAFECc1ol3H52f/xrTQkOVHX/KNNk4Q2EcMub65FiFvHstWNhFHV1KqtZuvlb9Pl8mDVrFtasWYMLLrgA77zzDkSx9RTb3NxcAMDu3btbbQC4du1aAEDfvn1b3H7RRRcBAN57770TnhO57ZJLLun0eyBKVk6rBBdLBlpVXu9FNq8UEmlCPEoGahv9CMkKMwSIEtxPJ/VFlt2Mp77ao/ZSEsafF+/BvgoPXrxuPHqksDFrrOgiIBAKhXDttdfim2++wdSpU7Fw4UKYTCf/TzBp0iRkZ2ejoaEBP//5z1t0/T98+DDuuusuAMDs2bNbPO/OO++EKIr429/+hlWrVkVv37t3Lx555BEYjcYT+hUQ0aml2SSWDJxEhdvHkYNEGmG3GOENyAiE5G57jUpP+JiEAQGixGaRRPxsen98svUISmtP3qOM2mfDoVq8tLQI884fiGE9ma0dS7oYO/jss8/igw8+AABkZmbitttua/VxTzzxBDIzM2GxWPDiiy/iqquuwptvvomvv/4a48ePR1NTE1auXIn6+nqMHTsWDzzwQIvnDx48GI8//jjuvvtuTJ06Feeffz5MJhO+/PJLNDU14S9/+QsGDBjQ7e+XKNGwh0DrZFlBRT17CBBphb15TKrHG+y2q0+V9c0BAZYMECW82eN64ckv9+C1FQfw64uHqb0c3fIGQrj33c04rVcabplaqPZyEo4uAgLH1/pHAgOtWbBgATIzMwEAl112GdasWYMnnngCS5cuxaeffgqTyYSBAwfixz/+MebNmwer1XrCNu666y4MGDAAjz/+OJYtWwYAGD9+PO677z5cfPHFMX5nRMkh3EOAAYEfqm30IxBSkG1nQIBIC+yW8Mzw+m4MCFQ1ZwiwhwBR4rOZjPjJ6b3x5sqDuPO8gXA0f8dQxzz55W6U1jbh0/83jn0DuoEuAgILFizAggULOvy8MWPG4K233urw8y655BL2CiCKIYdVgscXRCAkQ+IXeVS5O3xiwJIBIm2IZAi4u7GPQGW9D6lmI6wmjholSgZzzuyLl5YV4d9rSnDzWby63VHrD9bg5eXFuH/mEAzIPvnod+o8HpkTUbdLs4Yj4swSaKmiPjyfmCUDRNoQyRDwdOPowSqPn/0DiJJIjsOCS0fl47UVxQh2Y3+SRNTkD+Hed7dgVK803MxSgW7DgAARdbs0Wzj1ln0EWqpwM3WYSEtSzeEMge4cPVhZ70NmKrtjEyWTG6f0w2GXF59uO6r2UnTlqa92o6yuCU9cNQqi4cRR8xQbDAgQUbdLs0UyBPwqr0Rbyt1eZKSYYDLyq5hICyIlA905erDK42OGAFGSGdbTgSkDMvHysiIoiqL2cnShqNKD11YcwJ3nDsSA7FS1l5PQeBRKRN0uUjLADIGWyuu9yGa5AJFmWCQRJtHQrSUD4QwBBgSIks2NU/thS6kLaw/UnvrBhD9+vgvZdjNunNJP7aUkPAYEiKjbORgQaFW528eGgkQaY7cYu7VkoMrj48hBoiQ0fVAWBman4qVlRWovRfPWHqjBF9vLce8Fg2GR2IC1uzEgQETdziKJsEoi6thUsIUKtxc5HDlIpCmpFmO3TRkIhmRUN/iRyZIBoqQjCAJumtoPi3eWo7iqQe3laJaiKPjDpzsxvKcDl43OV3s5SYEBASKKizSbBFcjewgcjxkCRNrTnRkCNQ1+KAqYIUCUpGaNzkcPmwlvrTqo9lI067NtR7HxUB1++aOhMLCRYFwwIEBEceG0Shw7eBxZVlDp8bGHAJHG2M0SPN0UEKj0hCeLsKkgUXKySCJmje6JRZsOcwRhK/xBGX/8fBemD87C5AGZai8naTAgQERxkWaTWDJwnOoGP0KygmyeGBBpSqrF2G1TBirrm0eN8nNPlLSuHNsLVR4flu6tVHspmvPW6oMoqWnEgxcOVXspSYUBASKKizSriU0Fj1Pu9gIAcpghQKQp3VkyUOUJl01lppq6ZftEpH3DezowJNeO99eXqb0UTXE1BfCXr/fiqnEFGJxrV3s5SYUBASKKC2YItFRRz4AAkRY5LFK3BQQq631wWIwwG9k1myhZCYKAK8bm46ud5XDxQknUK8uL0RQI4e4Zg9ReStJhQICI4sLJpoItlLt9EAReKSTSGrvFCI+vuzIEfOwfQES4bHQ+giEZH289rPZSNMEbCOEfKw/gmgm9eaFEBQwIEFFcOK3MEDheuduLzFQzjCK/hom0JNXcfWMHK+t9yOSEAaKkl+2w4KxBWXh/fanaS9GE9zeUwtUUwNzJ/dReSlLikSgRxUWa1QRXUwCyrKi9FE3gyEEibbJbJHh8wW75rmKGABFFXDm2FzYcqkNRpUftpahKlhW8srwYFwzPRe8Mm9rLSUoMCBBRXKTZJCgKuq02V28q673IsTMtjkhr7BYjFAVoDIRivm1mCBBRxPnDcmC3GLFwQ3I3F/x2dwWKKhtw01RmB6iFAQEiios0qwQAqGtiHwEgnCGQzQwBIs2xW4wA0C2jByuZIUBEzSySiItH5uGDjWVJnT358rJijC5Iw9jePdReStJiQICI4sJpaw4IsKMugPCUgSxmCBBpzrGAQGyzmfxBGXWNAQYEiCjqyrG9UFbXhFVF1WovRRXbylxYWVSNm6cWQhAEtZeTtBgQIKK4SLOFu+mzsWCYuykIZ3PWBBFph90S/lzGOkOgusEHAMhiyQARNRvXpwf6Ztjw3obkbC74yvJi5KdZccHwHLWXktQYECCiuIiUDLgYEEBIVtAUCCHVzFnkRFrTXRkCVfXhcilmCBBRhCAIuGJsL3y+7SgaumncqVYddXnx0ebDuGFyX05cUhn/9okoLmwmEZIowNXIHgIN/vBOP8VsVHklRPRDqebuCQhEMgR6pJhiul0i0rdZo3ui0R/Csr1Vai8lrl7//gCskoirJxSovZSkx4AAEcWFIAhwWk3sIQBErwIwIECkPSkmIwQh9gEBb/PUApvEzCAiOqZPRgoGZKfi653lai8lbhp8Qby9+iCumVgQLdMi9TAgQERxk2aT2EMAxwICqQwIEGmOwSAg1WyMeQ8Bb0AGEO4sTkR0vHOHZOPb3RVJM23g821H4fYG8dNJfdVeCoEBASKKozSrxAwBAB5f+EphiokBASItclgkeGJczxvJEDAbeehFRC2dOzQHVR4/NpXWqb2UuFi0qQwT+6WjIN2m9lIIDAgQURyl2SS4mthDgBkCRNoWzhCIfUDAZDTAYOBoLSJqaWzvNKTZJHyzs0LtpXS7inovVuyrwuVj8tVeCjVjQICI4sbBDAEAx2qTUzhlgEiT7BYj3LEuGQjKsLJcgIhaYRQNOHtwNhYnQR+BjzYfgdFgwI9G5Km9FGrGgAARxU2a1cQeAmBTQSKts1uM8HRDhoBF4mEXEbXu3KHZ2HW0HqW1jWovpVst2liGs4dkwWljM0Gt4J6JiOImzcYMASA8dtBoEFhLTKRRdosU85KBpkCIDQWJ6KTOGpQFo0HAt7sSt2xgX4UHW8tcuGw0ywW0hEejRBQ3kR4CipIcXXRPxuMLIsVshCCwlphIi1ItRtT7Yhu89AVkWIwMCBBR6xwWCRP7pWNxAvcR+HBTGewWI84ekq32Uug4DAgQUdw4rRICIQWN/pDaS1FVgy/IhoJEGma3dE9TQZYMEFFbzh2ag5X7q6OlhYlEURQs2lSGH43IY7aUxnDPRERxk2YzAQBcSd5HoMEXYkNBIg1zWKRu6SFg5kEwEbXhvKHZ8IdkLN9XpfZSYm7DoVqU1DThMk4X0BwGBIgobtKs4QYyyd5HIFIyQETa1D1jB2VeFSOiNvXJSEH/rBR8nYDTBhZtPIw8pwWn90tXeyn0AwwIEFHcpDV3lK1r8qu8EnWxZIBI2+wWI/whGd5A7MqbvMEQrCwZIKJTOG9oDr7ZVQlZTpx+S/6gjI+3HMalo3vCYGD/JK3hnomI4ibN2lwywAwBpJgYECDSKrslHLyMZZaAl1MGiKgdzh2agyqPD5tL69ReSsws3VOJ2sYApwtoFAMCRBQ3dosRggDUJX0PAZYMEGmZ3RL+fHpi2NiriVMGiKgdxvZOQ5pNwjcJNH5w0aYyDMm1Y2ieQ+2lUCsYECCiuDEYBDitUtL3EGjwhZDKpoJEmhUp6an3xu67yscpA0TUDkbRgLMHZydMQMAXDOGbXRW4ZFRPtZdCJ8E9ExHFVZpVSvoeAmwqSKRtDpYMEJGKJvXPwI4j7oSYyrT+QC0a/SGcPThb7aXQSTAgQERx5bRKSd9DoMEfRKqFAQEirYqUDMQ2ICBz7CARtcvEvulQlPCoPr37bk8lsuxmDM2zq70UOgkGBIgorpw2E0sGOGWASNNSLbEvGfAGWTJARO3TJ8OGzFQz1hbXqL2ULvtuTyWmDcqCIHC6gFZxz0REcWW3GFHvS96AgC8YQiCkcMoAkYZJogEWyRDzkgErMwSIqB0EQcDEfj2w7oC+MwSOurzYdbQeZw3KUnsp1AYGBIgorqySCG9AVnsZqmnwheeas4cAkbbZLVLMAgKKosAbkNlDgIjabULfdGwqrYMvGFJ7KZ22dE8lBAGYOiBT7aVQGxgQIKK4skoimvz63bl1VUPzGDOWDBBpm91ihCdG2Uy+YDgIypIBImqvCX3T4Q/K2FLqUnspnfbdnkqM6pWGHikmtZdCbeCeiYjiyiIZ4NVxtLurInPNUzh2kEjT7GZjzDIEvIHwd57FyM89EbXPkFw7Us1GrD2gzz4CwZCM5fuqMI3lAprHgAARxZVVEuFlhgAzBIg0LpYlA5EyKZYMEFF7GUUDxvRO021jwc2lLriaApg2mAEBrWNAgIjiymIS0RRI3oDAsQwBBgSItMxuMcIdoykDkQwBM0sGiKgDJvZNx7qDtZBlRe2ldNh3eyrhtEoY1StN7aXQKXDPRERxZTGyqSDAgACR1oV7CMQoQ6C5TIoZAkTUEeP7pqPeG8Tu8nq1l9Jh3+2pxNSBmRANHDeodQwIEFFcWZszBBRFf9HuWIiUDKSYeGJApGWp5tiXDHDsIBF1xOiCNEiigHU66yNQ0+DHltI6jhvUCQYEiCiuIgfEka7bycbjC8IiGWAU+fVLpGV2ixH1MS4ZYIYAEXWE1SRiRL4Taw7Uqr2UDlm2txKKAjYU1AkekRJRXEXGbnmTtI9Agy/IhoJEOmC3GOGJUYZAUzQgwMMuIuqYiX3Tsba4RleZlUv3VGFIrh05DovaS6F24J6JiOIqcoUsWRsLevxB9g8g0gGHRUKDP4RQDJp5+Th2kIg6aULfdBx1e1Fa26T2UtpFlhV8t6eS0wV0hAEBIoqrSMlAU5KOHmzwBZFiYkCASOtSLeHPaSyyBDh2kIg6a1yfHgCAtTrpI7DzqBtVHh/LBXSEAQEiiqvIAXGyThpo8IVYMkCkA/bmgEAsRg9Gxw4aedhFRB3TI8WEQTmpWKuTPgLf7amEzSRifJ90tZdC7cQ9ExHFldWU5CUDviBSzLxKSKR1dosEADEZPegNhGAyGmDg+C0i6oTxfdN1kyGwtrgG4/umw8QAqG7wX4qI4soazRBIzoBAg489BIj0IJLJE4vRg96gDAsPjomokyb2Tce+Cg9qGvxqL6VNiqJgU0kdxhSkqb0U6gDunYgorsxJPmXAwykDRLrgsEQCArEpGYhkRxERddT4vuE+Aus0niVwsLoRtY0BjOmdpvZSqAMYECCiuLIm+5QBZggQ6UIsSwaaAiE2FCSiTuvVw4Y8pwXrD2q7j8CmkjoAwGhmCOgKAwJEFFcWThlgQIBIByySAUaDAHcMSgZ8AZkjB4moS4b3dGLHEbfay2jTxkO16JeZgjSbSe2lUAcwIEBEcSWJ4YNsbzCZpwzwxIBI6wRBQKrFGLOSAYvEQy4i6rxheXbs1HhAgP0D9Il7JyKKO6skwpuEGQKKoqDBzwwBIr2wW4yxaSoYCMHMkgEi6oKheQ5UefyoqPeqvZRWeQMh7Djixmj2D9AdBgSIKO4sJjEpewg0+kNQFLCpIJFO2M0SPDEJCMjsIUBEXTI0zwEA2HmkXuWVtG77YTcCIQVjCnqovRTqIAYEiCjuLJIhKacMNDQ3J0sxMSBApAf2WJUMBEMcO0hEXdI73YYUk6jZsoFNJXUwGw0YkmdXeynUQdw7EVHcWaXkzBCIdCtnyQCRPsSyZIBjB4moKwwGAYNz7dil0YDAxkO1OC3fCUnk6aXe8F+MiOLOIolJmiEQfs8sGSDSB7tFiklAoIlTBogoBobmOTRbMrCppI7jBnWKAQEiirtwQCD5pgwcyxDgiQGRHtgtRtT7YjF2kFMGiKjrhuY5sL/SA19QWxdVKut9KK1tYkNBneLeiYjiziqJaErCKQORHgLMECDSh1RzLMcOMhBIRF0zNM+BoKxgb7lH7aW0sKmkDgAwpjcbCuoRAwJEFHcWyZCUPQQa/OwhQKQnsSoZ8AZkjh0koi4bkmuHIEBzjQU3ldQiy25GT6dF7aVQJzAgQERxZ03SHgIeXxCCANjYXIxIF+wWIzy+IBRF6dJ2vEGWDBBR16WYjeiTbtNcH4GNh+owpiANgiCovRTqBO6diCjurKbkDAg0+IJIMRm5wyTSCbvFiJCsdDmjyRsIsakgEcVEuLGgdjIEQrKCLaUu9g/QMQYEiCjuzMZkHTsYYkNBIh2xW8LlPV0pG1AUBd6AzLGDRBQTQ/Mc2HnU3eXMpVjZV+GBxxfkhAEdY0CAiOIunCGQfFMGGnxB9g8g0hG7RQKALjUW9AXD33UsGSCiWBia50BdYwBH3V61lwIg3D/AIAAje6WpvRTqJO6diCjurFJyZgg0+IKwMyBApBuxyBCIlEexZICIYmFonh2AdhoLbiqpw6AcOyco6RgDAkQUdxbJAG8Sjh30MEOASFeOZQh0JSAQyRBgQICIui4/zQqHxaiZxoIbD9VhDPsH6BoDAkQUd1ZJhDeYfAEBlgwQ6UuqKfx5bfB1PUPAzJIBIooBQRAwJM+BHRrIEPD4gthTXs/+ATrHvRMRxZ1FEhEIKQiEkquPQIMvxJQ6Ih2RjOGJIP4ufFdFgp/MECCiWBmmkUkD28pckBVgdEEPtZdCXcCAABHFXeTAONlGD4ZLBnhSQKQXkhg+TAqEOt/NO1oywB4CRBQjQ/PsOFDVgCaVyy93H62HSTSgf1aKquugrmFAgIjizhoNCCRZhoCfJQNEemI0hDMEgl3IEIgcsHPsIBHFytA8B2QF2F2ubh+BvRX1KMxKgVHkKaWe8V+PiOIucmCcbBkCDb5gtCaZiLRPEARIotCl8qZjJQM85CKi2BiUY4dBUH/SwJ5yDwZkp6q6Buo67p2IKO4iB8bJNnqQUwaI9EcSDV0qGfBx7CARxZhFElGYlap6QGBfhQeDcuyqroG6jgEBIoq7ZOwhEAzJ8AZkNhUk0hmjoYsZAhw7SETdYKjKjQWrPD7UNPgxkBkCuseAABHFXaSHgNrNcOKpofm9MkOASF9MRkMXAwLNYweNPOQiotgZmmfHriP1UJTOZzB1xd5yDwBgYA4DAnrHvRMRxV3kSlkylQxE5phzygCRvhgNXSsZ8AZCMBkNMDQ3KCQiioWheQ7U+4IorW1S5fX3VtRDEgX0yeCEAb1jQICI4i4ZpwxEAgIsGSDSF8nY1aaCMizMDiCiGBvcXLu/t0KdSQN7yz3ol5kSHc9K+sV/QSKKu2ScMuCJZggwIECkJ5JoQFDufIZAkz/EkYNEFHO5DgvMRgMOVDWq8vp7yusxkA0FEwIDAkQUd5Fa2mQqGfAwQ4BIlySDAf5g18YOsqEgEcWawSCgT4YNB6obVHn9fRUeNhRMEAwIEFHcCYIAi2RIqgyBBmYIEOlSV0sGfAGZIweJqFv0yUjBger4ZwhUe3yobvBz5GCCYECAiFRhlcQkyxCITBngiQGRnhgNBgS72FTQIvFwi4hir19mCg6qkCGwt6J5wgAzBBIC91BEpAqLJMKbTGMHfUFIogAzrxQS6YpJ7PrYQTNLBoioG/TJsKG0tqlL31GdsbfCA6NBQN9MThhIBAwIEJEqrJIIbxfqcvXG4wuyXIBIh4yigEAXmgp6AzJ7CBBRt+ibkYKQrMR99ODe8npOGEgg/FckIlWYJRFNSZYhkGJiQIBIbyTRgEBXmwpy7CARdYPIFfp4NxbcW+5h/4AEwj0UEanCmoRNBTlhgEh/wmMHOx8Q4NhBIuoueQ4LTEYDDlTFOSBQUY8B7B+QMBgQICJVWE3J11SQDQWJ9EcSBfi70lQwyCkDRNQ9DAYBvdNtOBjHSQM1DX5UefwYmMOAQKJgQICIVGExikmXIcAeAkT609WSAR+nDBBRN+qbkRLXkoG95fUAwJKBBMI9FBGpwmIS4Q0kT1PBBj9LBoj0yCgKXSoZCI8dZIYAEXWPvhm2uJYMRCcMZHDCQKJgQICIVGGVkq1kgBkCRHpkEg1dKxkIyBw7SETdpm9mSlxHD+4tr0ffzBSY2Cw1YfBfkohUYZEMSTdlgBkCRPojiQYEu3Cg7Q2yZICIuk/fjBQEZQWH6+IzenBvhQcD2VAwoXAPRUSqsEoivMFkCgiwqSCRHhlFoUtX3ryBEJsKElG36ZNhAwAUx6lsYE+5BwPZPyChMCBARKqwSiK8SZQhwJIBIn0yiQYEOlkyoCgKvAGZYweJqNv0TLPCJBriMmmgtsGPKo+PGQIJhgEBIlKFOYl6CCiKwpIBIp3qSoaAr3k6AUsGiKi7iAYBBenWuEwa2FvhAcAJA4mGeygiUoVVSp4pA76gjKCsIMXEgACR3kiiodMBgchoVZYMEFF36puREpdJA3sr6iEaBPTNtHX7a1H8MCBARKqwmsIZAorS+e7detHgCwIASwaIdCjcVLBz31ORoCfHDhJRd+qbmRKXkoG95R70zbDBzCBnQmFAgIhUEUmhjaTUJrIGX/gqIUsGiPRHEgX4u5ghYGbJABF1o74ZNhyqaezSRJT22FtRj4HZLBdINNxDEZEqrM1XzLw66iNQVtfUqbE+nmiGACPqRHrTpZKB5kkqzBAgou7UJzp60Nutr7On3INBOWwomGgYECAiVUQOkPXUWPDhj3bgkU92dvh5Df5wQIAZAkT6Y4xFyQDTa4moG/XLTAGAbm0s2OALorLeh35ZKd32GqQOBgSISBXRgICORg82BkJobD6574hIhkCqhQEBIr0xiQKCstKpfieR7zeOHSSi7pTntEAShW4NCJTWhjMkC3qwoWCiYUCAiFRxrGRAPz0EQnJ4WkBHsakgkX4ZDeFDpUAnsgSOlQzwcIuIuo9RNKCghw0HqrqvsWBJTXjbvRgQSDjcQxGRKiJXzPRUMhCSlU6lDkcDAhw7SKQ7kjESEOh48NLHsYNEFCfhSQPdmSHQCJPRgGy7udteg9TBgAARqSJygKynpoIhWUGoExkCHl8IVkmEaBC6YVVE1J1MYvhz25lgIMcOElG89MmwobgbAwIltU3olWaFgccyCUcXAYHGxkYsWrQIN954IwYPHgyLxYKUlBSMGjUKv/vd7+DxeE763EAggKeffhoTJ06Ew+FAamoqBg0ahLlz56KsrKzV52zfvh1XXXUVsrKyYLVacdppp+Hpp5+GLOsntZlI6yym8NePngICQVlBsBPfAw2+IMsFiHQqUjLQmdGD0bGDRl0cbhGRjvXNSEFJTWOnLly0R2ltI/J7WLtl26QuXeyh3n77bVx++eV49dVXIYoiLr30UkydOhXFxcWYP38+JkyYgIqKihOeV1NTg0mTJuGuu+5CaWkpzjvvPMyYMQMWiwWvvfYaiouLT3jOypUrMWHCBLz33nsoLCzEpZdeiqqqKtx111245pprOtVUiIhOZNXhlIHOZgg0+IJI5chBIl3qSsmANxCCyWjgFTUi6nZ9M1MQCCmdGo/cHiU1TShIZ/+ARKSLS1aSJOGWW27BvHnzMHTo0OjtR44cwUUXXYSNGzdi3rx5ePvtt6P3KYqC2bNnY/369Zg/fz5+9atfwWg89naLiorgcDhavE4gEMBPfvITNDU14amnnsJdd90FAPB4PJgxYwbeffdd/OhHP8L111/fvW+YKAnoccpAZ6PuHmYIEOmWZOhCyUBQhoXZAUQUB30zwifrB6obuuXEvaS2ERePyov5dkl9uthLzZkzBy+++GKLYAAA5OXl4bnnngMALFy4EH6/P3rfu+++i2+//RZXXXUVFixY0CIYAACFhYXIzMxscdsHH3yA4uJijBo1KhoMAIDU1FQ8++yzAIAnn3wypu+NKFlJogFGgwBvUD+lOJ1tKtjkD8HGsWNEuhTJEOhMyUCTP8SRg0QUF/lpVhgNAg5Ux37SgKspgHpvkCMHE5QuAgJtGTVqFADA5/Ohuro6evtLL70EALjjjjvava1PPvkEADB79uwT7hs7diwKCwuxbds2HDhwoAsrJqIIqyTCq6MMgc72EPAFZZjZZZxIlyQxfKjUmc++NxhiQ0EiigujaEBBug0Hq2LfWDAycpAlA4lJ9zmsRUVFAMJlBenp6QDCqf/Lly+H0WjExIkTsWXLFrz77ruoqKhAfn4+Zs2aFQ0kHG/z5s0Awif/rRk7diyKioqwZcsW9O3bt3veEFESMUuirnoIyLICuRN9RLyBEOeQE+mUsblkIBDs+GffF5A5cpCI4qZPhg0HumHSQGltuC9BLzYVTEi6Dwg888wzAICZM2fCbA7PxSwqKoLX60VOTg7+/Oc/46GHHmoxIWDBggW488478ec//7nFtg4dOgQA6NWrV6uvFbn94MGDJ12Pz+eDz+eL/tntdnfiXRElB6vJoLspA50JCPiCMpxWqRtWRETdzdSFkgEGA4konvpmpGD5vqqYb7e0thFWSURGiinm2yb16Xov9emnn+KVV16BJEl4+OGHo7fX1tYCAKqrq/Hggw/i1ltvxf79+1FVVYVXXnkFVqsVTz/9dLT/QERkfKHN1no6TEpKCgCgvr7+pGt69NFH4XQ6oz8FBQVdeo9Eicxi1FeGQGenDHgDIZh5UkCkS8ZoU8HOBQTMLBkgojjpnW5DSU1jzKeildQ0oiDdCkHgxJREpNsj1F27duG6666Doih4/PHHW5QARLIBgsEgLrzwQjz33HMoLCxERkYG5s6di8cffxxA+OQ91h588EG4XK7oT0lJScxfgyhRWE2izjIEZAQ7ERBgDwEi/Yr0EAh0ZspAQGYPASKKmzynBb6gjNrGQEy3W1rbhF5sKJiwdBkQKCsrw8yZM1FbW4u7774bd955Z4v7U1NTo7+/4YYbTnh+ZGxgWVkZ9u3bd8LzGhtb787Z0BCuybHb7Sddm9lshsPhaPFDRK2zSCK8AT1NGejc6EGmDRPpVzQg0Nmmghw7SERxkpcWrvE/4mqK6XZLahtRwP4BCUt3e6mamhrMmDEDBw8exA033IAnnnjihMf06dMn+vvWmv/ZbDZkZ2cDACoqKqK39+7dGwBQWlra6mtHbj9++0TUeRZJRJOOpgyEZBmBTqQNM0OASL8kMdJUkGMHiUjb8pwWAMCROm/MtqkoCjMEEpyuAgIejwcXXnghduzYgSuuuAIvvfRSq7UsTqcT/fr1A3Csn8DxZFlGXV0dgJbZBJGygw0bNrT6+pHbR44c2aX3QURhVsmgqx4CwS70EGCGAJE+ScYulAwEOWWAiOInM9UMo0HAEXfsAgI1DX40+kMoSGeGQKLSzRGqz+fDrFmzsGbNGlxwwQV45513IIon38leeumlAIAlS5accN+qVavg9/thtVoxePDg6O0XXXQRAOC999474TkbN25EUVERRowYwZGDRDFilfTVQ0CWFfYQIEoykiF8qBTsRMmAj8FAIooj0SAgx2HBkbrYlQyUREcOMkMgUeliLxUKhXDttdfim2++wdSpU7Fw4UKYTG2PvZg3bx5MJhOeffZZrFq1Knp7VVUV5s2bByDcXyAyqhAALr/8cvTr1w+bN29uMZKwoaEBt99+OwDgnnvuieE7I0puFp0FBJghQJR8IiUD/k6UDIQ/+wwGElH85DktOOqKXYZAaW24t1oBAwIJy6j2Atrj2WefxQcffAAAyMzMxG233dbq45544glkZmYCCPcOeOGFF3DTTTfhrLPOwqRJk+B0OvH999+juroaY8eOxR//+McWz5ckCf/85z9x3nnn4e6778a///1v9OnTB8uWLcORI0cwe/ZszJkzp3vfLFESsUj6HDuoKEq7R+8oisIMASIdEyNjBzsVDJQ5dpCI4irXacHhGDYVLKlpgt1ihNMmxWybpC26CAgc3wcgEhhozYIFC6IBAQCYO3cuCgsL8dhjj2H16tVoampCYWEh7rjjDtx7771ISUk5YRtnnnkm1q5di/nz52PJkiXYvHkz+vfvj1/84he48847OX+TKIbCYwf1M2UgckIQkhUYxfZ9F/iaryoyQ4BInwRBgEk0dKqhqDfI7CAiiq+eaVZsK3PFbHultY0sF0hwuggILFiwAAsWLOjUc6dPn47p06d36DnDhw9vtY8AEcWWxaifDAH5uKuDQVlBey/4RwICzBAg0i9JFDrXVDAQYlNBIoqrXIcFR1zeDmUztqWktokjBxMcw9ZEpBqryQCvTsYOBn8QEGgvX3PAg1cJifTL2IkMAUVR4A3IHDtIRHGV57TAF5RR2xiIyfZKaxpRkM4MgUTGI1QiUo1VEuEN6iMgcHwzwVAHrhQyQ4BI/yTRgEAHmwqyXIiI1JCXFr6afyQGfQRkWUFpXRN6MUMgoXEvRUSqMUsiAiGlU7W58RZSjs8QaP96vcwQINI9SRQQ6GBTwehnn8FAIoqjPKcFAHCkruuTBio9PviDMicMJDgeoRKRaqzN3bf1MHrw+KyAjowePHaVkCcFRHoldaJkINIwlZ99IoqnzFQzjAYBR9xdDwiU1DSPHGTJQEJjQICIVHMsIKD9DIHjswI60kMgEuwwG/l1S6RXRlFAsMMBgebPPrODiCiORIOAHIcFR+q6XjJQWhveBksGEhv3UkSkGoueMgSUzmUI8Cohkf6Fxw52sGQgGCkX4mefiOIrz2nBUVdsMgTSU0xIMetiMB11EgMCRKQaqyn8FaSH0YOhzk4ZCDJDgEjvJNEAfwczBJr87CFAROrIdYZHD3ZVaS0bCiYDHqESkWr0lCEQPO7qYEdShyMZAmZeJSTSrc6VDIQfz7GDRBRveU5LTKYMlNQ2sqFgEuhQ/sebb74Zsxf+6U9/GrNtEZE+RQICkStpWsYMAaLkJXWpZICffSKKrzynFUdcXiiKAkEQOr2dktpGnNbLGcOVkRZ1KCBw/fXXd+k/1fEYECCiaFPBDs73VkNXewgwIECkX5IodHjKgI9jB4lIJXlOC3xBGbWNAaSnmDq1jWBIxpE6L3oxQyDhdbhDxKhRozBr1qxOv+CiRYuwZcuWTj+fiBKHNUkyBMxGQ8yCqUQUfxw7SER6kpcWrvs/4mrqdEDgqNuLoKyggD0EEl6HAwKjR4/G/PnzO/2CBw4cYECAiADot4dASO5YDwGeEBDpW6dKBjhylIhUkue0AACO1HkxvGfnUv4jIwcL0pkhkOg6tJdyOByw2br2n8JqtcLhcHRpG0SUGCIHynoICMjK8U0FO54hQET61ZmSAW8gBJPRAIOB2UFEFF+ZqWYYDQKOuDs/aaCkphEAkJ/GDIFE16EMgbq6ui6/4PPPP4/nn3++y9shIv0zGASYjQZdjB0MdrJkgBkCRPrXmZKBpoAMC4OBRKQC0SAgx2HBkbrOTxooqW1Ctt3MY5gk0KE9VVlZWadf6IEHHuj0c4kocVlNoi4CAseXCXSmhwAR6ZfRYOhQZhAQzhDgyEEiUkuu04Kjrs5nCJTWNqIX+wckhQ4dpZ599tk4evRoh1/k9ttvx+OPP97h5xFR4rNKYrT5lpaxhwBR8jIZO1EyEAzxs09EqslzWnCkCwGBoy4verJcICl0KCCwb98+nH322SgvL2/X4xVFwZw5c/DCCy8gNTW1UwskosRmkURd9BAIsYcAUdIyGjreVNAXkDlykIhUEw4IdL5koNztRbbdEsMVkVZ16Cj1qquuwu7du3HOOeegoqKizccGg0FcddVV+Mc//oEePXrgq6++6tJCiSgxWSRRd2MHQx0pGWCGAJHudW7sYAgWicFAIlJHntOKIy4vFKVjwcyICrcPOQ5zjFdFWtShPdXbb7+NK6+8Ejt37sS5556LqqqqVh/n9XpxySWXYOHChcjOzsa3336LiRMnxmTBRJRYrJJBFxkCnW0qyAwBIv2TOlMyEAjBzGAgEakkz2mBLyijtjHQ4ec2+oOo9wWR42CGQDLo0FGqKIr417/+hcsvvxzbt2/Hueeei+rq6haP8Xg8uOCCC/DFF1+gV69eWLp0KUaOHBnTRRNR4rBI+mgqKHcyQ4A9BIj0T+pEyQA/+0Skprzm+v/OlA1UuH0AgGxmCCSFDl+2EkUR//73vzFr1ixs3boV559/PmprawEANTU1OOecc7Bs2TL0798fy5Ytw6BBg2K+aCJKHFad9BA4PiugI1cKmSFApH+dGzsY4thBIlJNnjN8df9IXccbC5a7w89hhkBy6NSeymg04t1338Wll16KTZs24fzzz8eOHTswbdo0rFu3DsOHD8eyZcvQp0+fWK+XiBKMxaSPKQOd7SHgDchMGybSOaModKhUCODYQSJSV2aqGUaDgCPuTgQE6sMZAgwIJIdOh64jQYGLL74YGzZswMiRI7F9+3aMHTsWS5YsQW5ubizXSUQJymLUR8kAewgQJS+TaEAg2NGxg5wyQETqEQ0CchwWHO1UyYAXKSYRqWZjN6yMtKZLR6mSJOH999/HRRddBFmWMWXKFHz77bfIyMiI1fqIKMFZTQZdTBlgDwGi5CWJAvwdLBnwccoAEaks12npdMkAswOSR4fCPqJ48oNaQRCwYsUKpKWlnfT+YDDYocURUeKzSiK8Qe0HBCJZASbR0OEMAZ4UEOmbsYOfeyAydpDBQCJST57TgiOuzgQEfMiys6FgsuhQQKCzcyy7+lwiSlwWSYRXBxkCITl8ddBsNER/3x7egAwz04aJdM0kGhCSFciyAoNBaNdz2D+EiNSW57RgW5mrw89jhkBy6VBAQO7AQTARUXvoZexgSAYEAZCMzBAgSjZGMRwECMgyzIb2neR7+dknIpXlOa044vJCURQIQvuCmQBQUe/DyF7OblwZaQn3VESkqvDYQe0HG0OyDKNBgGgQEGznPHJFUZghQJQAJDF8uBRo52cfAJr8ITYVJCJV5Tkt8AVl1DYGOvS8CmYIJBUGBIhIVZEMAa2XFQVlBaJBgNHQ/vFjkSZkvEpIpG9SJEOgA5MGgrICEyeMEJGK8tKsAIAjHZg04PEF0eAPIZsBgaTRoT1VTU0NGhsbu/SCjY2NqKmp6dI2iChxWE3hryFfB0d6xVtIViAK4QyB9vYQiGQ+MEOASN+iGQLt/OwrioKQrMDYzn4DRETdIc8ZPqnvyKSBcnf4sTlsKpg0OhQQyMrKwh133NGlF7z99tuRnZ3dpW0QUeKwNjfd8mq8j0CoExkCvubpCcwQINK3jpYMRL4jjCI/+0SknsxUM4wGAUfcnQgIMEMgaXRoT6UoSkzSerWeGkxE8RPpwq31xoJBWYFRNIQzBNp5UuBjhgBRQog0FQyG2pchEOkzwgwBIlKTaBCQ47DgaAdKBircPgBAtoMZAsmiQ1MGAGD58uWYO3dup19w+fLlnX4uESWeSIZAk8ZHD4ZkBQZBgNHQ/ikDkawHZggQ6ZspmiHQzoBAc2mByIAAEaks12npcMmA3WyEzdTh00TSqQ7/S+/btw/79u3r0ot2ZOwFESW2YyUD2u8hYDQIMIpC9GD/VCJ9EZghQKRvxg6WDISag4aRZoRERGrJtptRUe9r9+PL3T5mBySZDgUEvv322+5aBxElKYtOSgaO7yEQYoYAUVKJThloZ4ZAJHAgGvjZJyJ15Tgs2F9Z1e7Hl9dz5GCy6VBAYNq0ad21DiJKUnppKhjuIRCeMhBsbw8BZggQJYSOlgxEgobsIUBEasvqYIZAhduLXj1s3bgi0hqGrolIVZbmsYNaDwiEZBlicw8BZggQJZeOlgxEyoqMLBkgIpVl282oawxEJx+dSkU9SwaSDY9SiUhV+ikZCDcIEzs0dpAZAkSJoKMlA8FoyQADAkSkruzm9P/KdmQJKIqCcrcXOXaWDCQTBgSISFX6mTIgh3sIiB3vIWBmhgCRrknNGQLtLRcKRpsK8rNPROrKtoev9renbMDtDcIbkNlDIMlwT0VEqpJEA0SDoPmSgWBzU8FwhkBHpwzwq5ZIzyIn9v4O9hBghgARqS0aEHCfOiBQ4Q6PJ2TJQHLhUSoRqc5iNERPnrVKVprHDhoM7b5K6A2EYDYaOGqVSOeMHZ4y0NxDgAEBIlJZD5sJRoOAinrvKR9b3hw0YMlAcmFAgIhUZ5ZEzQcEgqFjYwc70kOA2QFE+mfqYMnAsSkD/PwTkboMBiE8aaAdGQLlzBBIStxTEZHqLEYDfBovGQjJCowGA8QO9hCINE0kIv3qaMkApwwQkZZk283tyxCo98JplXjskmQYECAi1ZklEV6tZwjICgwGNGcItL+HABsKEumfaBAgCB1oKsgpA0SkIdkOS7uaCla4fchhdkDSifmRanl5ORSlfTtMIiIg3HRP8xkCSnOGgKGDGQIcOUiUECTR0O4eApHvCIklA0SkAdkdKBnghIHkE7M91YoVK5CXl4eePXsiPT0dzz33HABg8+bN+NWvfoV7770X7777LuR2XlkjouShhx4CoU72EGDaHVFikAxC+5sKRqYMsGSAiDQg297ODIF6H7LZUDDpGGO1oXvvvRdOpxPz589HWVkZHnroIQSDQdx///0wGAwwGo146qmnMGXKFHz55ZewWPifjYjCzEaDjsYOGjqUIcCmgkSJQTIaEGh3U0FOGSAi7ch2mFHd4EMwJMMonvy4pNztxen90uO4MtKCmB2pbt26FY899hhuvfVWPPzww3j55Zfxi1/8Atdeey3cbjfcbje+/vpr7Nq1C48++misXpaIEoBZJ2MHRYMASRTafVLADAGixNGRkoFIDwEGBIhIC7LtZigKUN3gP+ljFEVBhduHbDt7CCSbmAUEGhsb0bNnz+ifZ8yYgWAwiBtuuAFGYzgR4eyzz8ZDDz2Ef//737F6WSJKABYdlAwEZQVGg9DcQ6CdTQWZIUCUMCSDgGC7pwxw7CARaUekDKCtPgJ1jQH4QzJ7CCShmO6pBOFYJDwlJQUAkJqa2uIxY8aMwYEDB2L5skSkc3ooGQjJMnsIECUxyWiAv71TBiIBAfYQICINyG6eHNDW6MHy5vuyGRBIOjHrIQAAf/jDHzBlyhSMGDECgwYNAtAySAAAZrMZgUAgli9LRDpnNmo/QyDUyR4CWalMvSNKBMYOZAhEsog4dpCItCAjxQRBAMrbyBCI3Mexg8mnQwGBQCAASZJave/666/Htm3bMH/+fDQ2NkYDATfffDPGjh2L4cOHY/jw4fB4PF1fNRElFLNkgC+o9QyB46YMdKCHgJkZAkQJoSM9BALsIUBEGmIUDchMNbedIeAO35fFHgJJp0MBAbvdjnvvvRe///3vT7jv1Vdfjf6+qKgIW7duxbZt27Bt2zZ8//33eOONN6KZAT/MGiCi5GYxivAFtJ0h0LKHAKcMECUbSWx/yUDkO4IZAkSkFdl2c5ujByvcXqSnmGA28kJGsulQQMDv9+Pw4cOnfFxhYSEKCwsxa9as6G3BYBC7du3Cli1bsH379o6vlIgSllkywKuTDAFJZA8BomQkiR1rKmg0CLwAQkSakW03t9lUsKKeEwaSVUx7CLT5QkYjRowYgREjRsTrJYlIJ8xGg+YzBI7vIRBs55QBZggQJY6OjR2UmR1ARJqSbbdg11H3Se8vd3vZUDBJ8UiViFSnh7GDIVmB0WCA0SAg1IEeAswQIEoMkmhAoJ3ZQSFZgSTyEIuItCPb0XbJQLnbhxxmCCQl7q2ISHV6GDsYjGYItL9kgBkCRIlDEgUE2hm4DIQUZggQkaZk282orPdBPskxTIXbixxmCCSlDh+plpSUYNu2bQgGg92xHiJKQpGxg4rSvhNtNciRKQNi+5oKKorCDAGiBGLsQMlASJY5YYCINCXLbkFQVlDb6D/hPllWUFHv48jBJNXhHgLffPMNRo0aBUmSMGTIEIwaNQojR46M/pqdnd0d6ySiBGaRwrFJf0jWbHfblhkCpz4p8IdkKAqYIUCUIExi+zOZgrICo8iAABFpR3bzyX5FvQ8ZqS1P/Gsa/QjKCnsIJKkOBwSys7NhNptx6NAhbNmyBVu2bGnRRTc7O7tFgGDUqFEYOnQojMa49S8kIp2JBAG8Ae0GBELNXcONBgGyEo6mG9q4AuhtbpLIDAGixCCJAvztLBkIhsI9R4iItCIyQaCi3oeheS3vK3d7AYAlA0mqw2fpF154IV599VW4XK5oQGDz5s3YsmULtm3bhvLycnz11Vf46quvooGCSDbBpk2bYr1+IkoAkavovmAIgKTuYk4iKMswCEL0ID8oKzC1ERDwNY9RZIYAUWIwioZ29w9hhgARaU1Wc0AgcvJ/vMg4QpYMJKdOX7Z3Op2YOnUqpk6dGr1NURTs27cvGiCI/Hrw4EFs3bo1JgsmosQTuYqu5dGDIRnhDIHmg/xT9RHwMUOAKKF0ZOxgSObYQSLSFrNRRA+bhMpWJg0UVzXAJBqQmcqAQDKKaR6/IAgYOHAgBg4ciNmzZ0dvd7vd2LJlSyxfiogSiFmKZAhoOSAgQxSF6EF+uI/AyU/2oxkCEjMEiBJBR0oGAiGFTQWJSHOy7RZUtJIhsKa4BqMKnByXmqTi8q/ucDgwZcqUeLwUEelQJK1ey6MHg8f1EABOnSEQ7SGg0Z4IRNQxUgdKBsI9R3hgTUTaku0wo+IHGQKKomDNgRqc3i9DpVWR2jq0t+rTp0+LBoJERLEQLRnQcIaALCswCALE43oItIUZAkSJxSgK7S4ZYA8BItKiLPuJAYG9FR7UNPhxRiEDAsmqQyUDxcXF8PtPnF1JRNQVLZsKahMzBIiSm0k0IBhqZ1PBEHsIEJH2ZNstWHugpsVtq4uqYTQIGNsnTZ1Fkeo6fOnKZDJ1xzqIKIlFRg1qu6mgAlE0HNdDgBkCRMlEEg3wt7upoAKJJQNEpDHZdjMq3D4oyrFjmFVFNRjZywmbiSPikxX3VkSkOr1kCIjCsSkDwVOcGDBDgCixGEXhlJ/7iICsMEOAiDQn22GGLyjD7Q0CCPcPWF1cjdNZLpDUGBAgItVpvYeA3JwNEC4ZYA8BomRkEg0ItLNkICTL7CFARJqT47AAACrrw5MG9lc2oMrjx+n90tVcFqmMR6pEpDqTxqcMRE7+RcOxsYPt7SEQyX4gIn0zGoR2lwwEOXaQiDQo224GAFS4w40FVxdXQzQIGN+XAYFkxiNVIlKdaBAgiYJmMwQiJ/9G8VhTwVM1F/MFQjAbDZzMQpQgJKOh3SUDQVmJTiQhItKKbHs4QyAyaWB1UQ1G5DuRamb/gGTGvRURaYLFKGq2qWCouflOeOxgOzMEgjKzA4gSiCQaICun/uwD4YCAxJIBItIYq0mE3WxEudsb7R9wBssFkh6PVolIE8ySQbMlA6HQcT0EIk0F5baDF76AHO2NQET6FznBD7QjSyAkc+wgEWlTlsOMinofDlY3otztw+mFDAgkOwYEiEgTzEZRsyUDkZN/0XCsZODUGQIhNhQkSiCSGP48tycgEGAPASLSqGx7OCCwurgaBgHsH0AMCBCRNpglg2bHDoaOayoYmTJwqm7jvoDMkYNECaS9n30g/J1hFHmIRUTak223oMLtxaqiGgzr6YDDIqm9JFIZ91ZEpAlazhCI9BDo0JQBZggQJRSTMdJQ9NTfU0GZGQJEpE3ZdjMq631YXVSN0/tlqL0c0gC2lCQiTTAbtdtDIBjtIWDoWA8BZggQJYxIhkB7Rg8GQ+whQETalO0w40B1A2QFOJ0NBQnMECAijbBIBu1mCMjMECBKdpEeAqcaOQqEvx8klgwQkQblOCyQFUAQgIkMCBAYECAijTDrYOzg8T0EgqcICDBDgCixREoG2tdUkBkCRKRNWXYzAGBIrgNpNpPKqyEtYECAiDTBbDTAq4Omgu3NEPAxQ4AooXSkZCDEHgJEpFHZdgsAlgvQMTxaJSJNsEjazRA41kPg2NjBU10lZIYAUWLpSMlAUFai/UaIiLSkZ5oFdosR5w3NUXsppBFsKkhEmmA26mTsoMgeAkTJSBLbXzIQDCkQDfz8E5H22ExGbPrNDJY1URT3VkSkCWbJAK9GMwQ620PAzAwBooQRyRAItDNDQOLBNhFpFIMBdDwGBIhIE8xGUcMZAuFAhdEgILIPZYYAUXKRjJGAQHt6CMgQWTJAREQ6wKNVItIELY8djNQMiwYBghDuI3CqDAFvIMQeAkQJJHLFPyi3r2SATQWJiEgPGBAgIk0IZwhoMyBwfMlA5NfQqZoKBmVmCBAlkEjJgD/YzqaC7CFAREQ6wL0VEWmC2WiAN6DVkoGWAQFmCBAlH2MHmgqGOGWAiIh0ggEBItIEi6TdDIHIyX/kip94ioCAoijMECBKMNGxg+0oGQjIMpt2ERGRLvBolYg0wWw0wB+UoSinTseNt1BzD4FIBrAkGtpsKugPyVAUMEOAKIFEpwycomRAlhUoCiCxZICIiHSAeysi0oTI1XQtZglEegi0yBBoY/RY5D1YJAYEiBKF2DxlJHCKDIHI/cwQICIiPWBAgIg0IXI13RfQYECglR4CoTZOCiK9EMxGfsUSJRJJNCBwiqBl5PuCPQSIiEgPeLRKRJpwLENAe40Fj/UQaJ4yILbdQyAS1GCGAFFikUQDAm1kBwEn9hwhIiLSMu6tiEgTzM0ZAl4NZgjIJ2QItN1DIBLUYFNBosQiicIpSwYi5UQsGSAiIj3g0SoRaYJFBxkCkQP8U00ZiAQ12FSQKLEYRcMpmwpGphBILBkgIiIdYECAiDQhkiGgyaaCkSZhwrEeAsE2ZpEzQ4AoMZlEwynHDv6w5wgREZGW8WiViDQh0oAv0pBPS0IyIAiAIVIy0N4eAswQIEookijA30YwEDhWMsAeAkREpAfcWxGRJkQa8Gk1Q8B43NU+8RQ9BLzMECBKSO0rGeCUASIi0g8erRKRJkQyBLTaQ+D49F/jKXoIMEOAKDFJ7SoZCN9vZMkAERHpAAMCRKQJ0R4CGpwyEJKVFum/okFghgBREpJEAYFTlAwEOGWAiIh0hEerRKQJkZNnrwYzBEKyguOP7dubIRDJeiCixCCJhugJ/8lEgoWSyM8/ERFpH/dWRKQJ0ZIBDWYIBGUFRrFlhkBbUwa8gRBMRgMEgVcIiRJJ+zIEmqeSMEOAiIh0gAEBItIEQRBgMho02lSwZQ+BcB1xGxkCQRkWZgcQJRxJNESnCJxMJEOAPQSIiEgPeMRKRJphNho0OnZQgSgcP2XgFD0EAjLMEhsKEiUaSTSceuxgdMoAD7GIiEj7uLciIs2wSKIuMgRO2UMgGIKFDQWJEo7RcOqSgUgGATMEiIhID3jESkSaYTYaNDt28PiZ4uEMgbZ6CMjRqQlElDgk46lLBiJjCY//ziAiItIqXQQEGhsbsWjRItx4440YPHgwLBYLUlJSMGrUKPzud7+Dx+Np13bOO+88CIIAQRBQWlp60setWLECP/rRj5Ceno7U1FRMnDgRb775ZqzeDhGdRLhkQIsZAvKJGQJtnBQwQ4AoMUkG4ZQlA5FyIjYVJCIiPdDFEevbb7+Nyy+/HK+++ipEUcSll16KqVOnori4GPPnz8eECRNQUVHR5jZef/11fP3116fs+v3+++9j2rRp+PzzzzFy5EjMnDkTe/fuxZw5c3DvvffG8m0R0Q+ESwa0lyEQkvGDHgKGU/cQYIYAUcIJNxU81ZSBSMmALg6xiIgoyelibyVJEm655Rbs2LEDO3bswH/+8x98/vnn2L17N8aMGYNdu3Zh3rx5J31+ZWUl7rnnHsyYMQO9e/c+6eNqamowd+5chEIhvPfee1iyZAnee+897Nq1CwMGDMCTTz6JJUuWxP4NEhGA5pIBnWQIBNhDgCjpSEZD9IT/ZKJTBlgyQEREOqCLI9Y5c+bgxRdfxNChQ1vcnpeXh+eeew4AsHDhQvj9/lafP2/ePDQ2NuL5559v83VefvlluN1uzJo1C1dccUX09pycHPzpT38CADz55JNdeStE1AazUZtNBX/YQ8AosocAUTKS2tNUMNJDgCUDRESkA7oICLRl1KhRAACfz4fq6uoT7v/888/x9ttv46GHHkL//v3b3NYnn3wCAJg9e/YJ91100UWwWCxYvHgxvF5vDFZORD9kkbQ5dlBWWo4dZA8BouQkiYZ2TxlgDwEiItID3R+xFhUVAQiXFaSnp7e4r6GhAT/72c8wZMgQ3Hfffafc1ubNmwEAY8eOPeE+k8mEESNGwOv1Ys+ePTFYORH9kGYzBEItxw6eqoeALyDDwgwBooRjFNtfMiCxhwAREemA7vdWzzzzDABg5syZMJvNLe77zW9+gwMHDuBvf/sbTCZTm9txu91wuVwAgF69erX6mMjtBw8e7OqyiagVZkmbYwdDstKiQVi4ZKCNpoLBEMzMECBKOCZROHVTQVmGIAAGZggQEZEOGNVeQFd8+umneOWVVyBJEh5++OEW923YsAHPPPMM5syZg2nTpp1yW8ePLrTZbK0+JiUlBQBQX19/0u34fD74fL7on91u9ylfm4jCtDp2MCj/MENAQPAUGQLsIUCUeCTRAH87MgTYP4CIiPRCt5ewdu3aheuuuw6KouDxxx+P9hIAgFAohJtuuglpaWl44okn4rquRx99FE6nM/pTUFAQ19cn0rPw2EHtBQRCinLClAFmCBAlH2M7ewhw5CAREemFLvdYZWVlmDlzJmpra3H33XfjzjvvbHH/008/jY0bN+JPf/oTMjMz27XN1NTU6O8bGxtbfUxDQwMAwG63n3Q7Dz74IFwuV/SnpKSkXa9PRM1jB7VYMnBCD4G2O42zhwBRYpLaUTIQlGVmCBARkW7ormSgpqYGM2bMwMGDB3HDDTe0mgHw0UcfQRAEvPHGG3jzzTdb3Hf06FEAwFVXXQWz2YwHHngAM2fOhMPhgNPphMvlQmlpKYYNG3bCdktLSwEAffr0Oen6zGbzCb0MiKh9zEYRPo2WDBx/gC+JbTcVZIYAUWKS2tFU8IdjSomIiLRMVwEBj8eDCy+8EDt27MAVV1yBl156CYLQ+k5XURQsXbr0pNtatWoVAOD666+P3jZq1CgsXboUGzZsOCEgEAgEsG3bNlgsFgwaNKjrb4aITmDRaFNBWel4DwFmCBAlHkk0ICDLUBTlpMcf4YwiBgSJiEgfdLPH8vl8mDVrFtasWYMLLrgA77zzDkSx9QPuJUuWQFGUVn8iV/dLSkqgKEqLgMBFF10EAHjvvfdO2ObHH38Mr9eL8847DxaLJfZvkIh0kyHQVg8BRVGYIUCUoIyiAEVBmxlCATYVJCIiHdHFEWsoFMK1116Lb775BlOnTsXChQtPOUawM2666SY4HA58+OGHWLhwYfT2iooK3HfffQCAe+65J+avS0RhZskArwYzBEKy3EqGQOuBi0BIgaKAGQJECcgkhg+b2soQCskySwaIiEg3dFEy8Oyzz+KDDz4AAGRmZuK2225r9XFPPPFEu5sItiY9PR2vvvoqfvzjH2P27NmYPn06MjIysHjxYtTV1eHuu+/G9OnTO719ImqbxSgiEFIQ+sGYP7WFu4a3L0MgEtBghgBR4pGaAwL+kAyL1HrQ74cZRURERFqmi4BAbW1t9PeRwEBrFixY0KWAAABceeWVWLp0KX7/+99j1apV8Pv9GDZsGH7+859jzpw5Xdo2EbUtchLtD8qwmrRzhV1WFBhaZAgYTnqFMFLywAwBosQTufIfaGM8ajCkrYAmERFRW3QREFiwYAEWLFgQk20dOHDglI+ZPHkyPvvss5i8HhG1n9kYDgj4giFNBQRa6yEQqSP+4YG/N8AMAaJE1b6SASWaSUBERKR13GMRkWaYm1NwvRprLBg+8T/2dRm5SthaHwFf85XDk6UTE5F+RT77/rYyBH7Qc4SIiEjLGBAgIs04PkNAS8IBgWN/jhzst9ZHIJohYOTXK1GikdqRIfDDniNERERaxiNWItIMc3Pdva+Nq29qCMkKjMdnCBhOflLADAGixBUJCARCbWUIKDCyZICIiHSCeywi0gxLc9195Cq7VgR/0CsgmiEQaiUgwAwBooQltadkIMSSASIi0g8esRKRZmg5Q0D8QVNBgBkCRMmmXSUDshINHBAREWkdAwJEpBnRHgKabCp4XIZAG00F2UOAKHFFTvTbKhn4YRNSIiIiLeMei4g0w6zRkoFQK2MHgXDzsB9ihgBR4mpPD4EAmwoSEZGOMCBARJoROYnWWsnAD8eIRZoKtjVlwMSmYkQJxxgNCJy8ZCAkywwIEBGRbvCIlYg0Q7tjBwFROC4gILbdQ8BkNMDAEwKihBMtGWirqaCsRL8jiIiItI4BASLSDJNogCAAXs31EJCjfQOA46YMnCRDgP0DiBKTKdpUsK0pA+whQERE+sE9FhFphiAIMBsNmssQCJ6sh0ArJwW+oMz+AUQJKlIy4G+zZECBxAwhIiLSCQYEiEhTzP+/vTuPkqI+9/j/6b1nGGZYlR0RXDAuBJd4IyAxUUESF9S4RANGophrjEeN19yfCiFqFjEGf8bfTVzAJIJRcAnuqGgUNEaM+4ILsqM47LP0dFd9f3/0VDM9vc0Ms1R1v1/ncA5UV3VX21bVt556nucbDLiuh4BlG/l9Lc8QiIY4tQLFyCkZSORpKti85wgAAG7GqBWAq0SCfldOOxjM0lQwW2OxWMJWJEiGAFCMQv7CswzQQwAA4CUEBAC4SjQUUL3LSgYs2yjQZNYAMgSA0uT3+xTw+/LOMpCwTCpoCACA23HFAuAqbswQaN5DIJU2nKOHABkCQPEKBXwFMgQoGQAAeAcBAQCuEgm5q6mg3ZgFEKCHAAAlywYKlQyEKBkAAHgEo1YArhINBlw17WDCCQhk6SGQyBoQIEMAKGahoD9vyYBlM+0gAMA7uGIBcBW3ZQg4WQBNm4SlMgSyNhUkQwAoZkF/gZIBK73ECAAAN2PUCsBV3DbtoGWSN/1Npx10BvvZMgRiZAgARS0U8CuRr6mgbTPLAADAMwgIAHCVaMiv+riLMgQaB/5Nn/gF8jYVJEMAKGaFmgo2n6YUAAA3Y9QKwFXcliHg3PSn9xDI11SQDAGgmIUCfjXkCQjELXoIAAC8gysWAFeJBP2uCghk6yGQaiqYo4dAhAwBoGgVKhmwmGUAAOAhjFoBuEok6FfMTSUDeXoIkCEAlJ5CJQMJ207LKAIAwM0ICABwlWjIZSUDqR4Cu0+Xfr9PPl+OpoL0EACKWiiQf9pBZhkAAHgJo1YAruK6DIHGm/7mT/yCfp+sLE0FyRAAilswT4aAMUYJ2ygYYHgFAPAGrlgAXCXisgwBp2SgeUAg4PdlPCU0xpAhABS5ZIZA9nNUrgAiAABuxagVgKtEgi6bdjBnhoA/o4dA3DKyjcgQAIpYOE/JgFNGRFNBAIBXEBAA4CpuyxDY3UOgWUAg4MvoIRBLJAMZZAgAxStfycDuACLnAACAN3DFAuAqkaBfCdsokaeLd2dqTQ+B+njy32QIAMUrFPArkaV/iJQ7gAgAgFsREADgKtFQ8mbaLVkC+XoIkCEAlJ5QwK94IlfJQPK8RUAAAOAVjFoBuEokmDwtuSYgkGOAn62HABkCQPELBXyK58gQcM4JQXoIAAA8goAAAFfZHRBwR2NBJwWYDAEAkhTMM8tAnB4CAACP4YoFwFWckgHnaXtXy1UyEPT7MvocOPvsfAcAxSecp2TAagwghigZAAB4BAEBAK7itgyBXE0F82UION8BQPHJVzLg9BBofr4AAMCtGLUCcBWn/j7mkgwB56Y/2CwFOBjI7CEQI0MAKHr5SgYS9BAAAHgMAQEAruLU37umqWCOHgJBMgSAkhQK+FO9RZrbPe0g5wAAgDdwxQLgKpFUDwGXlAzkmXbQsrLPMkCGAFC8Qn5fngwBSgYAAN5CQACAq7hv2sHWZwiEA5xagWIVCvrVkOP85JwTQpwDAAAewRULgKu4rang7h4CWTIE7MxZBsJBv/w8HQSKVijgzwgGOnIFEAEAcCsCAgBcxW3TDtq5MgQCvtSc445YwqJ/AFDkQoHcJQPO8uYBRAAA3IqRKwBXCfp98vvclyGQ2UPAn7WHAP0DgOIWCvgVt4yMycwSsJhlAADgMQQEALiKz+dTJBhwzbSDTllAwJc+wA/l6CFAhgBQ3Jyn//EsMw3kmqYUAAC34ooFwHWiIb/qXZQh4Pcpoy9Arh4CZAgAxc2ZCaUhS9lAIsc0pQAAuBUBAQCu46YMAds2WQf3wUBmhkB9nAwBoNhFG4/xbFOjOkHCECUDAACPYOQKwHUiIb9rph1M5AgIBPz+VL2wI5YgQwAodk6GQLZzVK6eIwAAuBUBAQCuEw0GXNNU0LJN1nrgYJYeAmQIAMUvX4aAUzJADwEAgFdwxQLgOpGQ3zXTDlqNPQSaC/h9SjSrISZDACh+u6dGzRIQYJYBAIDHEBAA4DqRoN81GQIJ2ygYyJ4h0LxkgAwBoPhFQsljPGvJQGOQMEjJAADAIxi5AnCdaCjgmh4CViuaCpIhABS/aDB/hkDA75PPR0AAAOANBAQAuE4k6Fcsy2C7KyRsk/VpXzBbU0EyBICily9DIFcAEQAAt2LkCsB1IkH3ZAjYtpE/y9O+QJamgmQIAMXPyRDIFrSMWzblAgAATyEgAMB1IiG/Yi5pKpjsIZAtQ4AeAkApiuaZdtDKkVEEAIBbMXIF4DqRYED1LmkqaNl21hTggN+neJZZBiJkCABFLZJv2sEcTUgBAHArrloAXCfZQ8AdGQKWLQWylAzkyhCIhjitAsXM7/cpHMg+NWrCoocAAMBbGLkCcJ1IyD3TDubOEPBn7SEQCZIhABS7XFOjWratEAEBAICHEBAA4DrRYCDr07eukLOHQCA9Q8AYQ4YAUCIioeznqIRtFMhyvgAAwK0YuQJwHTdlCNjGKODPPFUG/T4lmvQQSNhGthEZAkAJiOY4RyWnKWVoBQDwDq5aAFzHTdMOJiyjbA/8As16CDgNxsgQAIpfJJi7hwCzDAAAvISRKwDXST59c0dAwMrxxC/o96X1EHD2lwwBoPhFQ4Ecswxk7zkCAIBbERAA4DqRYECWbTKm9esKCTt71/BAIL2pIBkCQOlINhXM3kMgxLSDAAAP4aoFwHWceb4LZQk8/vZGfbZ5V4fui2WyBwScaQeNSQYFyBAASkeuDAGLaQcBAB5DQACA60RDyZvqWJYBd1OzHntPi95Y16H7kmuA7yxz+giQIQCUjmgoe5+TuG3TQwAA4CmMXAG4jpMhUFcgIFDbYKmuoWPLCpJdwzMH+KHGToNO2QAZAkDpSDYVzJIhkGOaUgAA3IqAAADXKQsnb6qzdfFuqj5uqb6Dpye0c5QMOFMRkiEAlJ5oKKBYtlkGmHYQAOAxXLUAuE5ZY8lAXUPum/24ZStumaxP6dpTrqaCTtYAGQJA6Uk2Fcwyy4DFLAMAAG8hIADAdZwMgXwlA85r2Z7StScrxzRizXsIxMgQAEpGsqlg5rnHsk2qnAgAAC9g5ArAdVIZAnkCAvWN2QMdniFgZe8hkMoQaJwakQwBoHREQjkyBHJkFAEA4FYEBAC4TrmTIdCQyLmOEyzojB4C/jwZAolmPQSchogAilckmD1DIBlA5BwAAPAOrloAXCfaggyB2lSGQFfNMtC8qaCtcMCfNXgAoLhEc2YI2MwyAADwFAICAFwnEvTL71PeKQVTGQIdXDJg2SY1o0BTzTMEYglLEfoHACUhV4aARckAAMBjGL0CcB2fz6eyUEC1eUoGOquHgJUjQyCYaipoN+6HTf8AoEREQ37VJywZY9KWxy2jECUDAAAP4aoFwJXKwoG8N/u7MwQ6epaB7E/8smUIMMMAUBqiwYCMSQYAmrJsowAlAwAAD2H0CsCVysKBVJ+AbJzXstXxtqdcXcOdxmEJa3cPARoKAqXBKQ9q3tQ0btlZM4oAAHArRq8AXKksFMjbVLAzMwSyDfCzZwhQMgCUgmhjeVCs2fkneb5gaAUA8A6uWgBcqSyUv2TAeS1f0KA9WHb2aQedTuLpPQQ4pQKlIJUh0Oz8Y9mGWQYAAJ7C6BWAKxUqGahrfM2yjeJWx2UJFGoq6JQMxBI2GQJAiXCO9eYlS3HbZpYBAICnEBAA4EploUDqpj+bpsGCjpxpIJFjgO+kBVu200OAkgGgVDglA81LlizLKERAAADgIQQEALhSWTh/D4GmQYCO7CNg2creQyDQvIcAJQNAqXBKBppnCCSbkHIeAAB4B1ctAK5UFgrmzRCoi3dOhoBl29l7CPidHgJkCAClJldTwQQ9BAAAHkNAAIArlYX9+WcZaLDkaxx3d+TUg4kCsww4/QvIEABKR65pBxNMOwgA8BhGrwBcqdC0g7VxS5XRkKSOLhnIngLcPEMgRoYAUDJy9hCwDU0FAQCeQkAAgCuVhfOXDNQ3WOrVLZz8e4eWDBhlywB2Bv30EABKT64eAnHbKBTgPAAA8A6uWgBcqVCGQF3cUo/yTsoQyDLAdwb9TXsIRMgQAEqCE/wjQwAA4HUEBAC4Unk4kDa1YHN1cUs9yzs+Q6BQDwEyBIDS4/P5FAn6FWty7jHGyMpxvgAAwK0YvQJwpbJQQA0JO/UEvrm6hiYZAh3UVNBu/OxsT/wCPqeHQPIJIbMMAKUlEvSrPrE7Q8AJDgYpGQAAeAhXLQCuFA07Tbuy3+zXxS31SmUIdEzJgDPAd27+m/L7ffL7yBAASlU0FEibdtAJXpIhAADwEkavAFypvPFpe66ygboGS92jIfl9HVcykBrg55hXPOj3K2EZxa1kJgMZAkDpiIYCadlJzhSk9BAAAHgJAQEArlTWggyB8nAgOSjvoIBAws4/wA/4fUrYRrHGtGEyBIDSEQn60849TgAxlCOACACAGzF6BeBKztP2XDMN1DVYinZwQKAxHpC1ZEBKpgZbtp36fDIEgNIRDQVSwUCpSYmRn6EVAMA7uGoBcKXycO6SgbhlK2EblYUCigb9HdhDIH+GQDBAhgBQqppnCCQseggAALyH0SsAVypzMgSyBAScrIGOLhko1EMg4PfLsgwZAkAJyswQSP491/kCAAA3IiAAwJXy9RCobwwSlIUCGY292pNl8qcAB50eAnEyBIBSEw35FcvSQ4CmggAAL2H0CsCVyvKUDNQ1eSIfDXVgyYCVe9pBKTnwt2yTCkiQIQCUjkgwkHbuiVtOU0GGVgAA7+CqBcCVyvI0FXSCBGWdVDKQr4dA3LbJEABKUCTkVyxBhgAAwNsYvQJwpVDAr6DflzUgkNlDoKOaChbqIeBL9hAgQwAoOZkZAo09BAgIAAA8hIAAANcqCwdU15DIWJ7eQyD9KV17sht7CPjzTDuY7CGQ/HwyBIDS0fzck2pCyrSDAAAP4aoFwLXKQgHVNWQ+/U/rIRDsuJKBQtOIBf1+WU2mHSRDACgdzbOTCmUUAQDgRgQEALhWWTig2nhmhkDTHgKRDiwZaEkPgYS9e9pBMgSA0hEJpmcIJBpLBughAADwEkavAFyrLBRIlQc05WQIlKVmGejoaQfzzTJgK5awFQ745edGACgZzTMEnABiiJIBAICHcNUC4Fpl4UDWpoL1cUvhoF8Bvy85KO+gHgKWnb9JWNDvU8JKZghEQpxOgVISCaYHI52SgQAlAwAAD2EEC8C1ysOBVHlAU3UNVmpawmiwA2cZsApnCCSbCtqKBOkfAJSSaCigWMKWacwkShQIIAIA4EYEBAC4Vlkoe8PA2qYBgU4oGcjVNdxpKlifsBQlQwAoKU7PEKepaKEmpAAAuBEjWACuFQ3lLhkoDwdS63RYQKAxBThXSXAyQ8BuzBDgdAqUEmdWEScgwLSDAAAv4qoFwLVylgzErdRgPBryK26Z1GC8PSUKDPBDAV+TDAFKBoBS4mQFxRoDknGmHQQAeBABAQCuVRYKqC5XD4EmGQKSOiRLwGpVDwFOp0ApcfqGOD1MnCakTDsIAPASRrAAXCsaztFDIN60h0AHBgQKTDu4u4eATYYAUGJSGQKNs5zE6SEAAPAgTwQEamtr9cgjj+jCCy/UAQccoGg0qm7duumwww7TrFmztGvXrrT1bdvWSy+9pKuvvlqHH364unfvrkgkouHDh2v69OlatWpV3s9btmyZTjrpJPXq1UsVFRU66qij9Je//KUjvyKALMpDwawlA/XZMgQS7T/TgFOGkC9DIG7ZisUtMgSAEpOZIZD/fAEAgBt5YgQ7f/58nXbaabrnnnsUCAR08skna+zYsVq1apVmzJihI488Ul9++WVq/c8++0zjxo3TzTffrA0bNui4447TpEmTFIvF9Kc//UmHHXaYXn755ayftWjRIh177LF66qmndOihh2rChAn6+OOPNWXKFF111VWd9ZUBSCoL+7M2FaxrmiHQeCPeERkCu3sI5MoQ8JEhAJSo5hkCCdso6PfJ5yMgAADwDk8EBEKhkC666CK9//77ev/99/XAAw/oqaee0kcffaSvf/3r+vDDD3X55Zen1vf5fDr++OP13HPPacOGDXr00Uf10EMP6dNPP9XUqVO1c+dO/eAHP1A8Hk/7nC1btuhHP/qRLMvSwoUL9cILL2jhwoX68MMPNWLECN1yyy164YUXOvfLAyUsZw+BTioZsFuQIZDsIUCGAFBqmmcIJCyb7AAAgOd4YgQ7ZcoU/elPf9LIkSPTlvfv319//OMfJUkPPfSQGhoaJEnDhw/XM888o+OOOy4tUh+JRHTHHXeoqqpKa9as0fLly9Pe76677tKOHTt0yimnaPLkyanle++9t373u99Jkm655ZYO+Y4AMpWFg0rYRnErvRwge1PB9i8ZSBQICAQDZAgApSoSSs9OsmyjUMATwyoAAFI8f+U67LDDJEmxWEzV1dUF1y8rK9P+++8vSdqwYUPaa48//rgk6YwzzsjYbtKkSYpGo3r22WdVX1+/p7sNoAWcLIDmZQN18aYBgfSpv9pTqmt4jhTgoN+vhEWGAFCKnCBgrLF/ScI2ZAgAADzH8yPYzz77TFKyrKBXr14F17dtW6tXr5Yk9evXL+21t956S5I0evTojO3C4bAOPvhg1dfXa+XKlXu62wBaoCycPEU1Lxuoa8hSMpDomB4Cfp/kz1MyYNlGMTIEgJITada/JGHZzDAAAPAczwcE5syZI0maMGGCIpFIwfUXLFigL7/8Un379tU3v/nN1PIdO3Zo+/btkqRBgwZl3dZZ7gQUsonFYtqxY0faHwBtUxYKSsoSEEhrKthxJQN2gSd+Qb9PCZtZBoBSFA745fOlZwgEAwQEAADe4ukR7BNPPKG7775boVBIv/rVrwquv3bt2lTzwVmzZqUFEJpOXVheXp51+27dukmSdu7cmfMzfv3rX6uqqir1Z/DgwS35KgCycMoCMkoGGixFG19rXsfbngqlAAcCyaaC9QlbETIEgJLi8/kUDQbSeggE/Z4eVgEASpBnr1wffvihzjvvPBljdPPNN6d6CeRSU1OjyZMn66uvvtKpp56q6dOnd8h+/eIXv9D27dtTf9auXdshnwOUAicLoLZJhkDcspWwjcobX4sEk0/pOiJDoNAAP+j30UMAKGGRkD+VIRC3yBAAAHhPsKt3oC3Wr1+vCRMmaOvWrbriiiv0s5/9LO/68XhcZ555pl5//XWNGTNG8+fPz1inoqIi9ffa2lpVVlZmrFNTUyNJ6t69e87PikQiLSpdAFBYeThzSkEnW8DJHvD5fIoE/R2SIWAVyhDw+5llAChh6RkCTDsIAPAezz3S2rJli0444QStXr1aF1xwgWbPnp13fdu2NWXKFD355JMaNWqUFi9erLKysoz1KisrVVVVJUlat25d1vdylg8dOnQPvwWAlnBuspv2EKhv/HtZkxvwaCiQUVbQHgqVDIT8PsUSlizbkCEAlKBIyJ9qaBq3DE0FAQCe46kR7K5duzRx4kS9//77mjx5su688075ckwH5vjpT3+qBQsWaP/999fTTz+tHj165FzXKTt44403Ml6Lx+N69913FY1GU9MWAuhYToZAbZObfad8oOkT+Wgw0EHTDhbuIVATy9wfAKUhee5JlgzQQwAA4EWeuXLFYjGdcsopeu2113TiiSdqwYIFCgTyD8CvvfZa3XHHHRoyZIiWLFmivfbaK+/6kyZNkiQtXLgw47XHHntM9fX1+s53vqNoNNr2LwKgxVJTCjZklgw4wYLken7VJ9q/h0DCzv/EL+j3qcGy0/YVQOmIhvyKNWYIMMsAAMCLPBEQsCxL55xzjp5//nmNHTtWDz30kMLhcN5tbr31Vt14443q16+fnn32WQ0ZMqTg50ybNk2VlZV69NFH9dBDD6WWf/nll7r66qslSVdeeeWefRkALRbw+xQO+tPKAZr3EJCSN+Md0UPAto38ebKQAk2eBlIyAJSeSJMMgYRFDwEAgPd4oqng7bffrocffliS1KdPH/3kJz/Jut7s2bPVp08fvfnmm6kb92HDhunGG2/Muv60adM0ZsyY1L979eqle+65R9///vd1xhlnaPz48erdu7eeffZZbdu2TVdccYXGjx/fvl8OQF7l4UDaLAO5egh01LSD+Z74Nc0eIEMAKD1NewhYtlGIkgEAgMd4IiCwdevW1N+dwEA2M2fOVJ8+fbRt2zYZYyRJr7zyil555ZWs648fPz4tICBJp59+uv75z3/qhhtu0KuvvqqGhgYddNBBuvTSSzVlypR2+DYAWqOsWcPArD0EQv4OmnYw/xO/pq+RIQCUnkgwkDr3FGpCCgCAG3kiIDBz5kzNnDmzxeuPHz8+FRBoi2OOOUZPPvlkm7cH0H7KQgHVNSRS/87eQ6BjMgQsWwV7CDTdBwClJRrya2ttgyQpYdv0EAAAeA6PtAC4Wlk4kLWHQPNZBjqiqaBl23l7CAQD9BAASlkyGOn0EGDaQQCA9zCCBeBqyQyB3Tf79XFL4aA/LTU3WTJADwEAnSsS3D3LQHKaUoZVAABv4coFwNWSGQK7SwZqG6y0hoJS8mY81iElA/kH+PQQAEpb0wyBuG0UomQAAOAxjGABuFoyQ6BJyUCDldY/QEoflLcnyzbKN74nQwAobZHg7uykQk1IAQBwIwICAFyteQ+B+nhmhkDTqb/ak2UbBckQAJBDNBRQrLF/SZweAgAAD2IEC8DVMjIE4lbG0/hosGNmGSg0jZjTXyAc8MvPjQBQcpr2L7Fsk9ZoFAAAL+DKBcDVmmcI1DZYKuuskgGTv6mg01+A7ACgNEWCuzMEEjYZAgAA72EUC8DVykKZ0w5mNhX0p63TXizL5J12MNQ4+I/QPwAoSdGQXw0JW7ZtlLDoIQAA8B4CAgBcrTycXjJQnyNDwBmUt6dCT/ycwT8ZAkBpigST56IGy5ZlG4UoGQAAeAxXLgCuFs3SQyBbhoCkVOpueynUNdwpJ3A+H0BpcY79+rhVsOcIAABuxCgWgKuVhQOqjVsyJvn0v7YhMyDg/Lu9GwtaRnkH+Lt7CFAyAJSiSOrcYyth2fQQAAB4DgEBAK5WHg7ImN1P/+vjmSUDqUF5O089WDBDwE+GAFDKnHKhWCKZIZCvCSkAAG7EKBaAqzV/+l+XJSAQDe5+SteeEgXmFd/dQ4AMAaAURZtkCFi2SWUNAQDgFVy5ALiaM+CubewjUJelZKBpHW97sk3+AT4ZAkBpa5ohELdMauYRAAC8glEsAFcrDwclKTWtYPaAQMf0EEg2Ccv9ejBADwGglKVnCNgKUDIAAPAYAgIAXM25+XdmGqiLW4pmmXZQav+SgUIpwGQIAKWtaTCy0DSlAAC4EaNYAK5WFk6epuriluKWrYRtVJ6rZKCdmwq2tIdANESGAFCKdpcM2I3nC4ZVAABv4coFwNXKnJKBBitVNpCrqWCsQ3oIFJ5lwLkpAFBammYIWMwyAADwIEaxAFwtVTIQt1JlA7l7CLTzLAN2/oAAGQJAaWuaIRAvME0pAABuREAAgKs17SHgBASa34A7g/L2bipoFagJdtKDyRAASlMo4FfA71NdQ0LGSCFKBgAAHsOVC4CrOf0B6uK7SwbKm5UM+P0+hYP+DgkI5M0QaEwPjpAhAJSsaNCvmsZgJRkCAACvISAAwNV8Pp/KQgHV5ukhICUH5XUdMssAPQQA5BYJBVQTS0gSPQQAAJ7DKBaA65WFA6rP00NASpYRtHeGQKJATXCQHgJAyYsG/dpZ3xgQoGQAAOAxXLkAuF5ZKJC3h4CzrL2nHbRsFZx28LSvD9ToIT3b9XMBeEckFFBtQzIgQMkAAMBrgl29AwBQSFk4vWSgeQ8BKRk0iLV7yYAtf54Bvs/n061njWrXzwTgLZGgXzWx5LkpRMkAAMBjyBAA4Hrl4UBaU8HsGQLt31QwUWCWAQCIhgLaFSNDAADgTQQEALie0x+grsFSOOjPOuiOdEAPgWRTQU6TAHJLZgjQQwAA4E1cuQC4XlljjW5d3MraUFByggbtP8sAGQIA8mmaIcAsAwAAryEgAMD1kiUDtuoarKz9A6Rkp+/2bypo8vYQAIBI0K+aBidDgPMFAMBbCAgAcL2yUED1DZbqC2YI0EMAQOeKhgKppoL0EAAAeA0BAQCuFw0HVBtPqLbBytpQUHKaCrZfyYBtG0kM8AHkFw35UyUDoQDDKgCAt3DlAuB65aGA6hqnHSzLVTLQzhkCCScg4CMgACC3SDCghkQyGEkAEQDgNQQEALheWTjZMLAunqeHQCigWKL9MgSsxoAATcIA5BMN7R5KUWIEAPAaAgIAXC/aOMtAfb6SgaC/zRkCO+rjGve7pXp3/fbUsoTNEz8AhUWCu89JQUoGAAAew5ULgOslZxmwVNuQu6lgZA9KBt5bv0NrttTqpY+/Si1rjAfwxA9AXmQIAAC8jIAAANcrCyVLBmobEgVmGWhbycCHm3ZIUtYMAT89BADk0TRriRIjAIDXEBAA4HpOI8GttfE8TQX9qotbMsakLV+4Yp1O//+W533/jzbtlCS90yQgQA8BAC0RCe4eSlFiBADwGgICAFzPyQrYWtOQOyDQWMfbvLHgv1dt0YrVW1W9K5bz/T/YtFPdI0Gt2VKr7bVxSZJlnGkHOU0CyC3SNEOA8wUAwGO4cgFwPScIsDOWu2TAWSfWrGzg8+oaSelP/5uybKOVm3bqu4f1lyS9uyG5XsJi2kEAhTXNECCjCADgNQQEALhe06kGc/cQSJ7O6hPpjQXXbKmVJL2zLntAYM2WWtXFLU08uL+6hQOpwIFTMkAKMIB80noIcL4AAHgMAQEArtd0wF2oZKDpTAP1cUubdtRLyp0h8OHGZEPBgwZU6msDqlLrJeghAKAF6CEAAPAyAgIAXK9pVkC+aQclpc00sG5rrYyRDh/aM2dA4INNO9WnIqw+FREdPLAqNdOAbcgQAFBY04BliB4CAACP4coFwPXKw8HU3/PNMiClZwh8/lWyXGDSIf21cXu9vtxZn7HdR5t26MB+lZKkgwdWanV1rbbXxekhAKBFnICAzyf5CSACADyGgAAA12tJhkA0lFkysHpLraIhv74zcm9JSj39b+rDTTt1YL/ukqRDBlZJkt5bv50eAgBaxCkZoH8AAMCLCAgAcL1oePepKneGQGNAoMm0g2uqazSkV7kG9ypTj/KQ3lm3I22bmlhCq6trdWD/ZIbAvn0rVB4O6N0N21PTDtJDAEA+zrmHKQcBAF7E1QuA64UD/tST+pwZAsEsJQPVtRrSq5t8Pp8OGVild9ZvS9vmoy92SlIqQyDg9+mg/pV6Z/0OWXYysEDJAIB8yBAAAHgZAQEArufz+VKBgIIZAk0CAmu21Gqf3uWSpEMHVentZlMPfrhxpwJ+n0bsVZFa5jQWTPUQYJAPII9UhgDZRAAADyIgAMATnEF3oR4CscZZBhKWrXVbazW0MSBwyMAqfbkzpi927G4s+OGmHdq3T7e0LuGHDKzSqq9qtK0uLok0YAD5OQ1NA5wrAAAexNULgCeUh/NnCAT8PoUCPtUnkhkCG7fXK24ZDendTZJ0yKAekqR3mmQJfLhppw5oLBdwHDIo2Vjw7XXbku/LUz8AeUSCTg8BzhUAAO8hIADAE8oKZAhIUjQYSJUMrK5OTjk4tFcyQ2BAVVS9u4X1duNMA8YYfbhxh0Y2NhR0DO9boWjIrzfXbpNEDwEA+TnBSEoGAABeREAAgCdEGzMDonkCApFQQHUNyZKB1VtqFPD7NLBnmaRkH4KDB1bpncYn/xu312tHfSLVUNDhNBZ8e+321L8BIJ9IMECGAADAkwgIAPCE8lBA4aA/7w16NORPlQysqa7VwB5lCgV2n+YOHVSld9bvSGYHbEpOQXhgswwBKdlHYGcsIYk0YACFRUP5z00AALgVAQEAnlAWDqT6CORcJ7S7ZODz6ppUQ0HHIQOr9NWumDbtqNcHG3eqezSoAVXRjPc5eGBV6u9+BvkACogEA2nBRwAAvIKrFwBPKAsF8vYPkJLlBPWNswysrq7NDAikGgZu14ebdmpkv0r5svQIcNaTyBAAUFiEDAEAgEcREADgCWXhlgQE/IrFLRljtGZLrYb26pb2er/KqPpURPTu+u36aNOOjBkGHCMaGwtK9BAAUFiUHgIAAI8iIADAE/pXRbV3ZWZ6f1PRUED1CUubd8VU22BpSLMMAZ/Pp0MHVen1z7fq0801OrB/9oBAMOBPzT7AIB9AIZGQX0FKBgAAHhTs6h0AgJb46XH7KW7ZedeJBJMlA2sapxzcp3e3jHUOHlil//f5j2WMdGC/zIaCjkMGVuk/a7aRIQCgoGgwIMuYrt4NAABajXA2AE8IB/3qFskfw4yG/KqPW1rdGBAY0qs8Y51DB1bJGbfnKhmQpPEH9NXwvt2y9hgAgKaiIb9CAc4VAADvIUMAQNGINs4ysLq6Rnt1j6gsy6wETsPAIb3KVZEnwHDcgXvruAP37rB9BVA8epaHVdtgdfVuAADQagQEABSNZIaArdVbarOWC0jS3pVR7dU9ogPzZAcAQGtc992DKBkAAHgSAQEARSMaTDYVXF1dqxF7VeRc7/+ZNFL9q8o6cc8AFLOe3cJdvQsAALQJAQEARSMaCigWt7WmtlbfPnCvnOudMmpgJ+4VAAAA4E4EBAAUjWjIr692xRRL2BraJ3vJAAAAAIAkZhkAUDSioYBiieTUhEOzzDAAAAAAYDcCAgCKRiS0e1aBob0JCAAAAAD5EBAAUDSiweQprTIaVI9ymnwBAAAA+RAQAFA0ysLJDIF96B8AAAAAFERAAEDRiAaTAYEh9A8AAAAACiIgAKBoRBt7CNA/AAAAACiMgACAohENJU9pQ3tTMgAAAAAUQkAAQNGoiAYlScPoIQAAAAAUREAAQNE4YO/umjv1SB0xtGdX7woAAADgesGu3gEAaC8+n0/fOnCvrt4NAAAAwBPIEAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQREAAAAAAAoAQFu3oHip0xRpK0Y8eOLt4TAAAAAEApcO4/nfvRXAgIdLCdO3dKkgYPHtzFewIAAAAAKCU7d+5UVVVVztd9plDIAHvEtm1t2LBB3bt3l8/n6+rd6TI7duzQ4MGDtXbtWlVWVnb17qAd8JsWH37T4sTvWnz4TYsTv2vx4TctPl76TY0x2rlzpwYMGCC/P3enADIEOpjf79egQYO6ejdco7Ky0vUHD1qH37T48JsWJ37X4sNvWpz4XYsPv2nx8cpvmi8zwEFTQQAAAAAAShABAQAAAAAAShABAXSKSCSiGTNmKBKJdPWuoJ3wmxYfftPixO9afPhNixO/a/HhNy0+xfib0lQQAAAAAIASRIYAAAAAAAAliIAAAAAAAAAliIAAAAAAAAAliIAA2qy2tlaPPPKILrzwQh1wwAGKRqPq1q2bDjvsMM2aNUu7du3K2GbmzJny+Xw5/1xzzTVd8E3Q1Pjx4/P+Rk899VTW7ebNm6ejjjpKFRUV6tWrl0466SQtX768k/ce2bzwwgt5f1Pnz6xZs1LbcKy6w4oVK/Sb3/xGkydP1qBBg1L//Qtpy/G4bNkynXTSSerVq5cqKip01FFH6S9/+Ut7fRU00Zrf1bZtvfTSS7r66qt1+OGHq3v37opEIho+fLimT5+uVatWZd2u0HF/9NFHd+RXLDmtPVb35BzLsdo5WvubtuQ6e9xxx6Vtw3Haudpy7+Io5utqsKt3AN41f/58/fjHP5YkjRw5UieffLJ27Nih5cuXa8aMGVqwYIFefPFF7bXXXhnbHnPMMRoxYkTG8sMPP7zD9xstc/rpp6uioiJj+cCBAzOWXX755ZozZ47Kysp0wgknqL6+XkuWLNEzzzyjhQsX6tRTT+2EPUYu/fr105QpU7K+ZlmW/va3v0mSxo4dm/E6x2rX+tWvfqVHH320Vdu05XhctGiRzjrrLNm2rXHjxqlPnz567rnnNGXKFL399tuaPXt2O30jSK37XT/77DONGzdOUvJYPu644xQIBPTaa6/pT3/6k+bPn68nnnhCY8aMybr98OHDs742fPjwtn8BZGjLsSq1/hzLsdp5Wvub5rrOStLjjz+ur776Kut1VuI47SxtvXcp+uuqAdpo3rx55qKLLjLvv/9+2vINGzaYr3/960aSOeecc9JemzFjhpFk5s6d24l7itY49thjjSSzatWqFq2/ZMkSI8n07t3brFy5MrV8+fLlJhwOmx49epitW7d2zM5ijz3xxBNGkhk8eLCxbTu1nGPVHX7zm9+Y6667zvzjH/8wGzduNJFIxOS7dLfleKyurjaVlZVGklm0aFFq+aZNm8yIESOMJLN06dL2/molrTW/6yeffGKOP/5489xzz6Udo/X19Wbq1KlGkhkyZIhpaGhI227p0qVGkpkyZUpHfhU0au2x2pZzLMdq52rtb5rL1q1bU9s2PS8bw3Ha2dpy71IK11UCAugQy5cvN5JMJBIxsVgstZybDPdrbUBg4sSJRpK59dZbM1677LLLjCQze/bs9t1JtJtzzz3XSDLXXHNN2nKOVXcqNCBty/H429/+1kgyp5xySsY2Dz30kJFkvvvd7+7priOPtt5o1NbWmqqqKiPJvPDCC2mvcaPRtToiIMCx2rXaepz++c9/NpLM0UcfnfEax6l75Lp3KYXrKj0E0CEOO+wwSVIsFlN1dXUX7w06Sl1dnZ5//nlJ0hlnnJHxurNs8eLFnbpfaJmamppUOuT555/fxXuDPdXW4/Hxxx/Puc2kSZMUjUb17LPPqr6+vr13GXuorKxM+++/vyRpw4YNXbw36Ggcq97klOVxnXW3bPcupXJdpYcAOsRnn30mSQqFQurVq1fG688//7zefPNN1dfXa9CgQZo4cSI1yS5z9913q7q6Wn6/X/vvv79OPfVUDRkyJG2djz76SLFYTH379tWgQYMy3mP06NGSpLfffrtT9hmt89BDD6mmpkZf//rXddBBB2Vdh2PVO9p6PL711ltprzcVDod18MEH6/XXX9fKlSt16KGHdsCeo61s29bq1aslJfsLZPPxxx/rF7/4haqrq9WnTx+NGTNGEyZMkN/PMyE3aM05lmPVe9asWaOXXnpJoVBIZ511Vs71OE67XrZ7l1K5rhIQQIeYM2eOJGnChAmKRCIZr//1r39N+/d1112n008/XfPmzcvayA6d74Ybbkj791VXXaXrrrtO1113XWrZmjVrJCnrSVKSunXrph49emjr1q3auXOnunfv3nE7jFZryVMLjlXvaMvxuGPHDm3fvj3vdoMGDdLrr7+u1atXu2Lggt0WLFigL7/8Un379tU3v/nNrOssX748oxP2IYccokWLFmm//fbrjN1EHi09x3KsetN9990nY4wmTpyo3r1751yP47TrZbt3KZXrKmEntLsnnnhCd999t0KhkH71q1+lvTZixAjNnj1b7733nnbt2qW1a9fqvvvu08CBA7Vo0SLSqVxg3Lhx+utf/6pPP/1UtbW1+uijj3TjjTcqGAzq+uuvT50wJaWmZykvL8/5ft26dZMk7dy5s2N3HK2yceNGPffccwoEAjrnnHMyXudY9Z62HI9Np1jKtR3HsDutXbtWl19+uSRp1qxZGcH3qqoq/fznP9err76q6upqVVdX67nnntPRRx+td955RyeccEJq0IrO19pzLMeqNxUKvHOcukOue5eSua52dRMDFJcPPvjA9OzZ00gyf/jDH1q83YYNG0zv3r2NJPPKK6904B6irZ5++mkjyfTo0cPU1tYaY4y57777jCRzzDHH5Nxu4MCBRpJZv359Z+0qWuCWW24xksyECRNatR3HatfK19SqLcfj+vXrjSQjycTj8azb/OAHPzCSzH333bfnXwBZtbZZ2a5du8wRRxxhJJlTTz21VZ+VSCTM2LFjjSRz0003tXZX0UJtbUCX6xzLsdr1WvubrlixIjVuqq+vb9VncZx2nnz3LqVyXSVDAO1m/fr1mjBhgrZu3aorrrhCP/vZz1q8bf/+/XXBBRdIkp566qmO2kXsgRNOOEFHHHGEtm3bpn/961+SlEpnrK2tzbldTU2NJFEu4DJtbXLEsepebTkem6Yk59qOY9hd4vG4zjzzTL3++usaM2aM5s+f36rtA4GA/ud//keS9PTTT3fELmIP5DrHcqx6j3OdPfPMM7OWz+bDcdo5Ct27lMp1lYAA2sWWLVt0wgknaPXq1brgggs0e/bsVr+HUyO1cePG9t49tJPmv5HTZHDdunVZ16+pqdG2bdvUs2dP15z0IH3wwQf6z3/+o4qKCp166qmt3p5j1Z3acjxWVlaqqqoq73bO8qFDh7b3LqOVbNvWlClT9OSTT2rUqFFavHixysrKWv0+HMPulu334Vj1FsuydP/990uSzjvvvDa9B8dpx2rJvUupXFcJCGCP7dq1SxMnTtT777+vyZMn684775TP52v1+2zdulXS7roauE/z3+iAAw5QJBLR5s2btX79+oz133jjDUlyRcMU7OY0sZo8eXLeurhcOFbdqa3HozPVkvN6U/F4XO+++66i0Whqejt0nZ/+9KdasGCB9t9/fz399NPq0aNHm96HY9jdcv0+HKve8dxzz2njxo0aOnSoxo4d26b34DjtOC29dymV6yoBAeyRWCymU045Ra+99ppOPPFELViwQIFAoNXvY4zRww8/LCn7FB3oeps3b9ZLL70kafdvVFZWpuOOO06S9OCDD2Zss3DhQknS9773vU7aSxRijEmlGLelMSDHqnu19XicNGlS2utNPfbYY6qvr9d3vvMdRaPR9t5ltMK1116rO+64Q0OGDNGSJUu01157tfm9Fi1aJIlj2I3ynWM5Vr3DKRc477zz2vSQTOI47SituXcpmetq17YwgJclEglz2mmnGUlm7NixpqamJu/6X375pbn99tvNjh070pbv3LnTXHzxxUaS6devX8H3QcdZtmyZefjhh00ikUhbvmrVKnPMMccYSebkk09Oe23JkiVGkundu7dZuXJlavny5ctNJBIxPXr0MFu3bu2M3UcLvPjii0aSGThwoLEsK+s6HKvuVaipVVuOx+rqalNZWWkkmUWLFqWWf/HFF2bEiBFGklm6dGl7fxU0Ueh3/f3vf5867pr+rvnceuutZs2aNWnLbNs2//d//2eCwaDx+Xzm9ddf36P9Rm75ftO2nmM5VrtWS5sK1tTUmIqKCiPJfPjhh3nX5TjtXK29dzGmNK6rPmOM6cwABIrHnDlzUlMenXbaaaqsrMy63uzZs9WnTx99/vnnGjZsmCoqKnTkkUeqf//+2rx5s9544w1VV1erR48eeuyxx3TMMcd04rdAU/PmzdMFF1ygfv36afTo0erRo4dWr16tFStWqL6+Xl/72tf0/PPPZzyZuvzyyzVnzhyVl5fr+OOPV0NDg5YsWSJjjBYuXNimOnV0jIsuukh33nmnfv7zn+t3v/td1nU4Vt3j8ccfT5sC6bXXXpMxRt/4xjdSy6677rrU0wipbcfjokWL9P3vf1/GGI0fP169e/fWs88+q23btumKK67QLbfc0qHfs9S05nd98803NXr0aBlj9F//9V85U0ynTZumMWPGpP69zz77aN26dRo9erSGDRum+vp6vfPOO1q1apX8fr/mzJmjSy+9tOO+ZIlpzW+6J+dYjtXO05bzryTNnz9fP/jBD3TkkUfqtddey/sZHKedq7X3Lo6iv652SRgCRWHGjBmpaTXy/Vm1apUxxpgdO3aY//mf/zHHHnusGThwoIlEIqa8vNx87WtfM1deeaVZt25d134hmPfff99ccsklZvTo0aZv374mGAyaqqoqc/TRR5tbbrklNd1gNnPnzjWHH364KS8vNz169DATJkwwy5Yt68S9RyH19fWpqXXeeuutnOtxrLrH3LlzC55j586dm3W71h6PL7/8spkwYYLp0aOHKS8vN0cccYSZN29eB32z0taa33Xp0qUtutY2///gtttuM9/97nfNsGHDTLdu3Uw4HDZDhw415513nnnttdc6/0sXudb8pnt6juVY7RxtPf9OnDjRSDJz5swp+Bkcp52rtfcuTRXzdZUMAQAAAAAAShBNBQEAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAaCc+ny/vn/Hjx3f1LqIF9tlnn7Tfbfbs2TnX/fe//62LL75YI0eOVFVVlcLhsPbee299+9vf1k033aTVq1dnbDNv3jz5fD5NnTo1736MHz9ePp9PL7zwQpu/y6hRo9K+y8yZM9v8XgCA4hPs6h0AAKDYTJkyJevyAw88sJP3BHvC+R0PPvjgjNcaGhr0k5/8RHfffbekZBBh/Pjx6tatmzZv3qx///vfev755zVz5kzNmzdP5557bqfuu+Pkk0/WqFGj9Mknn2jZsmVdsg8AAPciIAAAQDubN29eV+8C2kG+3/G8887Tgw8+qP3331933nmnxo0bl/Z6IpHQ4sWLNWPGDH322WcdvKe5zZo1S1LyuxAQAAA0R0AAAACgFe6//349+OCD6t+/v15++WX17ds3Y51gMKjTTjtNkyZN0sqVK7tgLwEAKIweAgAAdLKpU6emasOffvppfetb31KPHj3k8/m0bdu21HpPPfWUJk2apL59+yoSiWjffffVFVdcoerq6qzvu2XLFl166aUaMGCAotGoDjroIM2ZM0fGGPl8Pu2zzz5p68+cOVM+ny/nk3Cnlj6bDz74QFOnTtXgwYMViUS099576+yzz9Z7772Xsa5TMz9z5kytWbNG5557rvr27auysjIdccQRWrx4cc7/Vh988IEuvPBC7bPPPopEItprr710zDHHaPbs2UokEpKSKf0+n08fffRR1vdYu3atAoGAhg0bJmNMzs9qKaenwC9/+cuswYCmwuFw1pKDtnL+38n3Z096DgAASgsZAgAAdJH58+frrrvu0hFHHKGJEyfq008/Td2AX3PNNfrtb3+rcDisI488Uv3799dbb72lW2+9Vf/4xz+0bNky7b333qn32rp1q8aMGaMPPvhA/fr10ymnnKItW7boqquu0ieffNKu+/3II4/o7LPPViwW06hRo3T00Udr7dq1euCBB7R48WI9+eSTGSn0kvT555/ryCOPVPfu3fXtb39ba9as0SuvvKJTTz1VTz75pE444YS09R988EGdf/75isViGjlypE477TRt375d7733nn7+859r2rRp6tGjhy6++GJddtlluuuuu3TzzTdnfO4999wj27Y1bdq0nAGOltq8ebNWrFghv9+vs846a4/eqy3GjBmTdbllWVqwYIEsy1IgEOjkvQIAeJYBAADtQpJpyaV1ypQpqXXvv//+jNcfeOABI8kcfPDB5uOPP04tt23bXH/99UaSOeuss9K2mT59upFkJkyYYGpqalLL//Wvf5mKigojyQwdOjRtmxkzZhhJZu7cuVn3c+jQoRnfZ9WqVaZbt26moqLCLFmyJO21J5980oRCITN48GATi8VSy+fOnZv6vldeeaWxLCv12q233mokmbFjx6a918qVK000GjXBYNDcd999aa/Ztm2efvppU19fb4wxZtu2baa8vNz07ds37XONMcayLDNkyBATCATM+vXrs37Plnxvx5IlS4wkM2LEiBa9VzbOf48pU6bkXe/YY481kszSpUsLvudll11mJJnvfve7af99m3/mjBkz2rbTAICiRMkAAADtLFcq9+eff5623qRJk7I+Zb7xxhslSQsWLNCIESPS3nfmzJkaNWqUFi5cqK+++kqSVFNTo3vvvVd+v1+33367ysvLU9scddRR+u///u92+25/+MMfVFNTo1//+tf6zne+k/bahAkTdMkll2jt2rV6/PHHM7YdNmyYbrrpJvn9u4cfl156qXr27KlXX31VDQ0NqeW33nqr6uvrNW3atIwO/T6fTyeccIIikYgkqaqqSmeffbY2b96sRx99NG3dZ555RmvWrNGkSZM0YMCAPf7+TrlGnz59sr6+ePFiTZ06Ne3PVVddlXXde++9N2/q/4svvtiifbrrrrt022236aCDDtL8+fPT/vsCAJAPJQMAALSzXNMOVlRUpP375JNPzljnyy+/1FtvvaX99tsva+25z+fTMcccozfffFMrVqzQiSeeqBUrVqiurk5HHXWUhg8fnrHNOeeco9/+9rdt/DbpnnnmGUnS5MmTs74+duxY3XbbbXrttdd02mmnpb02fvx4hcPhtGXBYFDDhg3TG2+8oerqavXv31+S9Oyzz0qSLr744hbt1/Tp03XPPffozjvv1Jlnnplafuedd0qSLrrooha9z5566623dO+996YtGzp0aKrvQFPDhw/PWQIgJXtIfPHFF3k/76WXXtJPfvIT9e7dW4sXL1b37t3btuMAgJJEQAAAgHbW0mkHhwwZkrHMySL4+OOPC9a7OxkCGzZskJS88cymeTPBPeHs38CBA1u0b00NGjQo67rOTWwsFkstW7t2rSRlDXBkc+SRR2r06NF69tlntWrVKg0bNkxffPGFFi9erEGDBmnChAktep9CevfuLSn795Oka6+9Vtdee60kadOmTakARzZjxozJ+//K+PHj8wYEVq9erdNPP13GGD344IPad999W/ANAADYjYAAAABdJBqNZiyzbVuS1K9fP5144ol5t88VAGgvzr5kW5YrC8LxjW98I2NZR6eyT58+XRdddJHuvvtu3XDDDbr33nsVj8f1ox/9qN0a7R166KGSpM8++0w7duxQZWVlu7xva9XU1Ojkk0/W5s2bdccdd+hb3/pWl+wHAMDbCAgAAOAizlP0Pn36tDjTwHkKvXr16qyv51rupO/v2rUr4zXLsrRp06as+/fpp5/qlltuST0t7wiDBw/Wxx9/rE8//VSjRo1q0TbnnnuurrrqKs2dO1czZ87UXXfdJb/frwsvvLDd9muvvfbS4YcfrhUrVuiBBx7QtGnT2u29W8oYo/PPP19vv/22LrnkEl1yySWdvg8AgOJA1xkAAFxk0KBBOvDAA/X+++9r5cqVLdrm8MMPV1lZmVasWKHPPvss4/X7778/63ZOICHb5yxdulTxeDxj+fHHHy9Jevjhh1u0b23lNCz885//3OJtunXrpvPOO08bNmzQ1VdfrY8//lgnnnhi1tKMPeE0Cbz++uu1efPmdn3vlrj++uv18MMP61vf+pZuu+22Tv98AEDxICAAAIDLXHfddbJtW6effrrefPPNjNerq6tTzfKkZLPC888/X5Zl6ac//anq6upSr73++uu6/fbbs37OuHHjJEl/+9vf0mZAWLVqlS677LKs21x55ZUqKyvTVVddpYceeijj9VgspoULF2rdunUt+ao5XX755YpGo7rzzjv197//Pe01Y4yWLFmS1nPAMX36dEnJWQok6cc//vEe7Uc2Z599ts444wxt3LhRY8aM0T//+c+s673yyivt/tl///vfdcMNN2jffffVgw8+qGCQZE8AQNtxFQEAwGXOPfdcvffee7rpppt0+OGHa9SoURo+fLiMMfr000/19ttvq6KiIu1m99e//rVefPFFPfHEExo+fLjGjRunrVu36vnnn9fFF1+sP/7xjxmfM3z4cP3whz/UX/7yF40aNUrjxo1TbW2tXn31VZ100kmqra3NKDcYMWKEFixYoHPPPVenn366RowYoZEjR6pbt25av3693njjDdXU1Og///lPziaCLbH//vtr7ty5+uEPf6izzz5bs2bN0qGHHqrt27fr3Xff1dq1a7V169bU1IOOQw45RN/85je1fPly9evXT9/73vfavA/53HfffaqsrNQ999yjY489Vvvss48OO+wwlZeX64svvtDKlSu1bt06BYNBnX322e32uf/7v/8rSRowYICuvPLKrOtcc801OvDAA9vtMwEAxYuAAAAALnTjjTfqxBNP1O23365ly5bpnXfeUWVlpQYOHKhLLrkkbWo9SerVq5eWLVum6667Tg8//LAeeeQRDRs2TL/5zW90xRVXZA0ISMlp+QYMGKD77rtPTz/9tAYPHqxf/OIXuuaaa3J2+D/llFP09ttv6/e//72WLFmiJUuWKBQKacCAAfre976nyZMn66CDDtrj/wZnn322DjroIN18881aunSpFi1apJ49e2q//fbT5ZdfnjGNo+O4447T8uXLdcEFF3TYE/RwOKy7775b06dP11133aUXX3xRzz33nGKxmHr27KmRI0fqxz/+sX74wx+26ywPlmVJkl5++WW9/PLLWdeZOnUqAQEAQIv4jDGmq3cCAAB0LJ/Pp6FDh6aVBhQjY4xGjhyplStX6pNPPmnTVHz77LOPVq9erWIaIs2bN08XXHCBZsyYoZkzZ3b17gAAXIIMAQAAUDQWLlyojz76SJMmTWpTMKCpqVOnSkpmKkyYMKEd9q7zXX/99VqzZo0++eSTrt4VAIALERAAAACeN23aNG3btk2PPfaYAoGAfvnLX+7xe957772SpIMPPtizAYF//OMfeuutt7p6NwAALkXJAAAAJaDYSwZ8Pp+CwaD2228/zZo1S2eccUZX7xIAAK5HQAAAAAAAgBLk7+odAAAAAAAAnY+AAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJej/B/Ir+dq7Feg3AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\n", + "ax.set_xlabel('Frequency [GHz]')\n", + "ax.set_ylabel('${T_B}$ [K]')\n", + "\n", + "rte = TbCloudRTE(z, p, t, rh, frq, ang)\n", + "rte.init_absmdl(mdl)\n", + "df = rte.execute()\n", + "\n", + "df = df.set_index(frq)\n", + "df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))\n", + "\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Print dataframe" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauice
20298.1099690.0286.9501330.00.1203440.0128550.00.0
21297.2456300.0286.3010430.00.1888080.0135240.00.0
22296.1535170.0285.0006630.00.2618480.0142590.00.0
23296.3402410.0285.6360220.00.2579130.0150660.00.0
24297.1584410.0286.7384960.00.2023080.0159540.00.0
...........................
196281.7270420.0281.2708400.03.6729750.0257840.00.0
197282.2817800.0281.7315010.03.4600000.0259560.00.0
198282.7477980.0282.1092770.03.2898480.0261290.00.0
199283.1397460.0282.4204500.03.1527100.0263020.00.0
200283.4695540.0282.6776930.03.0414240.0264760.00.0
\n", + "

181 rows × 8 columns

\n", + "
" + ], + "text/plain": [ + " tbtotal tbatm tmr tmrcld tauwet taudry tauliq tauice\n", + "20 298.109969 0.0 286.950133 0.0 0.120344 0.012855 0.0 0.0\n", + "21 297.245630 0.0 286.301043 0.0 0.188808 0.013524 0.0 0.0\n", + "22 296.153517 0.0 285.000663 0.0 0.261848 0.014259 0.0 0.0\n", + "23 296.340241 0.0 285.636022 0.0 0.257913 0.015066 0.0 0.0\n", + "24 297.158441 0.0 286.738496 0.0 0.202308 0.015954 0.0 0.0\n", + ".. ... ... ... ... ... ... ... ...\n", + "196 281.727042 0.0 281.270840 0.0 3.672975 0.025784 0.0 0.0\n", + "197 282.281780 0.0 281.731501 0.0 3.460000 0.025956 0.0 0.0\n", + "198 282.747798 0.0 282.109277 0.0 3.289848 0.026129 0.0 0.0\n", + "199 283.139746 0.0 282.420450 0.0 3.152710 0.026302 0.0 0.0\n", + "200 283.469554 0.0 282.677693 0.0 3.041424 0.026476 0.0 0.0\n", + "\n", + "[181 rows x 8 columns]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing calculation for R03 absorption model" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "mdl = 'R03'\n", + "rte.init_absmdl(mdl)\n", + "df_r03 = rte.execute()\n", + "df_r03 = df_r03.set_index(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Add brigthness temperature values as new column" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "df['delta'] = df.tbtotal - df_r03.tbtotal" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauicedelta
20298.1099690.0286.9501330.00.1203440.0128550.00.0-0.005362
21297.2456300.0286.3010430.00.1888080.0135240.00.0-0.055802
22296.1535170.0285.0006630.00.2618480.0142590.00.0-0.149566
23296.3402410.0285.6360220.00.2579130.0150660.00.0-0.084145
24297.1584410.0286.7384960.00.2023080.0159540.00.0-0.001669
..............................
196281.7270420.0281.2708400.03.6729750.0257840.00.0-0.166236
197282.2817800.0281.7315010.03.4600000.0259560.00.0-0.158865
198282.7477980.0282.1092770.03.2898480.0261290.00.0-0.152032
199283.1397460.0282.4204500.03.1527100.0263020.00.0-0.145768
200283.4695540.0282.6776930.03.0414240.0264760.00.0-0.140071
\n", + "

181 rows × 9 columns

\n", + "
" + ], + "text/plain": [ + " tbtotal tbatm tmr tmrcld tauwet taudry tauliq \\\n", + "20 298.109969 0.0 286.950133 0.0 0.120344 0.012855 0.0 \n", + "21 297.245630 0.0 286.301043 0.0 0.188808 0.013524 0.0 \n", + "22 296.153517 0.0 285.000663 0.0 0.261848 0.014259 0.0 \n", + "23 296.340241 0.0 285.636022 0.0 0.257913 0.015066 0.0 \n", + "24 297.158441 0.0 286.738496 0.0 0.202308 0.015954 0.0 \n", + ".. ... ... ... ... ... ... ... \n", + "196 281.727042 0.0 281.270840 0.0 3.672975 0.025784 0.0 \n", + "197 282.281780 0.0 281.731501 0.0 3.460000 0.025956 0.0 \n", + "198 282.747798 0.0 282.109277 0.0 3.289848 0.026129 0.0 \n", + "199 283.139746 0.0 282.420450 0.0 3.152710 0.026302 0.0 \n", + "200 283.469554 0.0 282.677693 0.0 3.041424 0.026476 0.0 \n", + "\n", + " tauice delta \n", + "20 0.0 -0.005362 \n", + "21 0.0 -0.055802 \n", + "22 0.0 -0.149566 \n", + "23 0.0 -0.084145 \n", + "24 0.0 -0.001669 \n", + ".. ... ... \n", + "196 0.0 -0.166236 \n", + "197 0.0 -0.158865 \n", + "198 0.0 -0.152032 \n", + "199 0.0 -0.145768 \n", + "200 0.0 -0.140071 \n", + "\n", + "[181 rows x 9 columns]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Difference between R16 and R03 brightness temperature" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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UlKMiIgIIyQkxPjggw+qbDObzcaKFSuMgoICwzAMIzMz04iKijKaNGlS5X4NwzBKS0uNNm3aGMHBwcaRI0dqfJz2PG6LlStXGpKMTp062XWumlj+PSZMmGBzv0svvdSQZHz77bd1nvPhhx82JBlXX311lX/fs+9z+vTp9QsaAOCXKFsAAMCDaltO/scff1TZb9SoUTX+ev3CCy9IkubPn69OnTpVOe+MGTPUp08fLVy4UKdOnZIk5eXl6d1331VQUJDeeOMNRUVFWY8ZMGCA/vSnPzntsf3jH/9QXl6eXnrpJV155ZVVtg0fPlz333+/Dh8+rKVLl1Y7tn379nrxxRcVFFTxUeXBBx9Uo0aNtGHDBhUVFVlvf+2111RQUKBJkyZVm1RgMpk0dOhQhYeHS5Li4+N100036eTJk/riiy+q7Pv111/r0KFDGjVqlFq2bNngx28pGUlKSqpx++LFizVx4sQqfx599NEa93333Xdtlh989913dsX01ltv6fXXX1f37t314YcfVvn3BQDAFsoWAADwoNpGNcbExFT5+7XXXlttn7S0NG3btk3nnHNOjbXyJpNJAwcO1NatW7V582YNGzZMmzdv1pkzZzRgwAB17Nix2jE333yzXnnllXo+mqq+/vprSdLYsWNr3H7JJZfo9ddf18aNGzVmzJgq24YMGaKwsLAqt4WEhKh9+/basmWL0tPT1aJFC0nSqlWrJEn33XefXXFNnjxZ77zzjubMmaPrr7/eevucOXMkSffee69d52mobdu26d13361yW9u2ba19Eirr2LFjrWUIUlnPixMnTti8v++//14PPPCAGjdurMWLFys2NrZ+gQMAAhLJAwAAPMjeUY1t2rSpdptldcKePXvqrM+3rDw4evSopLIvqTU5u1FiQ1jia9WqlV2xVZacnFzjvpYvvIWFhdbbDh8+LEk1JkNq0r9/f/Xt21erVq3SgQMH1L59e504cUKLFy9WcnKyhg8fbtd56tK4cWNJNT8+SfrrX/+qv/71r5Kk48ePW5MhNRk0aJDN/1eGDBliM3lw8OBBjRs3ToZhaMGCBerQoYMdjwAAgAokDwAA8AERERHVbjObzZKk5s2ba9iwYTaPry1Z4CyWWGq6rbbVFRYXXHBBtdtcvZx+8uTJuvfee/X222/r+eef17vvvqvi4mLdddddTmsi2KtXL0nS/v37lZ2drbi4OKec11F5eXm69tprdfLkSf3rX//SZZdd5pE4AAC+jeQBAAA+yvLrfFJSkt0rGCy/bh88eLDG7bXdbikhyM3NrbattLRUx48frzG+ffv2adasWdZf4V2hdevW2rNnj/bt26c+ffrYdcwtt9yiRx99VHPnztWMGTP01ltvKSgoSHfffbfT4mratKn69eunzZs365NPPtGkSZOcdm57GYah22+/Xdu3b9f999+v+++/3+0xAAD8A11yAADwUcnJyeratat+++03paSk2HVMv379FBkZqc2bN2v//v3Vtn/00Uc1HmdJOtR0P99++62Ki4ur3X7VVVdJkj777DO7YqsvSzPG//znP3YfEx0drdtuu01Hjx7V448/rj179mjYsGE1loc0hKUB4tNPP62TJ0869dz2ePrpp/XZZ5/psssu0+uvv+72+wcA+A+SBwAA+LBp06bJbDZr3Lhx2rp1a7Xt6enp1kaAUlkjxttvv12lpaV66KGHdObMGeu2TZs26Y033qjxfgYPHixJev/996tMgjhw4IAefvjhGo+ZOnWqIiMj9eijj+rTTz+ttr2wsFALFy5UamqqPQ+1Vo888ogiIiI0Z84cffzxx1W2GYahlStXVumRYDF58mRJZdMaJOmee+5pUBw1uemmmzR+/HgdO3ZMgwYN0tq1a2vc78cff3T6fX/88cd6/vnn1aFDBy1YsEAhISw4BQDUH+8iAAD4sFtuuUW//vqrXnzxRfXr1099+vRRx44dZRiG9u3bp+3btysmJqbKF+OXXnpJ3333nZYtW6aOHTtq8ODBysjI0DfffKP77rtP//znP6vdT8eOHXXHHXfovffeU58+fTR48GDl5+drw4YNGjlypPLz86uVPHTq1Enz58/XLbfconHjxqlTp07q1q2boqOjdeTIEW3ZskV5eXn65Zdfam2QaI/OnTtr7ty5uuOOO3TTTTfp2WefVa9evZSVlaWdO3fq8OHDysjIsI5rtOjZs6cuvvhirV+/Xs2bN9c111xT7xhs+eCDDxQXF6d33nlHl156qdq1a6fevXsrKipKJ06cUEpKilJTUxUSEqKbbrrJaff7v//7v5Kkli1baurUqTXu8+STT6pr165Ou08AgP8ieQAAgI974YUXNGzYML3xxhtat26dduzYobi4OLVq1Ur3339/lXGEkpSYmKh169Zp2rRp+uyzz/T555+rffv2evnllzVlypQakwdS2SjDli1b6oMPPtCKFSvUunVrPfXUU3ryySdrnXRw3XXXafv27fr73/+ulStXauXKlQoNDVXLli11zTXXaOzYserevXuD/w1uuukmde/eXX/729/07bffatGiRWrUqJHOOeccPfLII9VGX1pcfvnlWr9+ve68806X/TIfFhamt99+W5MnT9Zbb72l7777TqtXr1ZhYaEaNWqkbt266Z577tEdd9zh1GkXpaWlkqQffvhBP/zwQ437TJw4keQBAMAuJsMwDE8HAQAAvIfJZFLbtm2rlCf4I8Mw1K1bN6WkpGjv3r31Gl/Yrl07HTx4UP70cWrevHm68847NX36dM2YMcPT4QAAvAQrDwAAQEBauHChdu/erVGjRtUrcVDZxIkTJZWtgBg+fLgTonO/p59+WocOHdLevXs9HQoAwAuRPAAAAAFl0qRJyszM1JIlSxQcHKxnnnmmwed89913JUk9evTw2eTBl19+qW3btnk6DACAl6JsAQAAVOHvZQsmk0khISE655xz9Oyzz2r8+PGeDgkAAK9H8gAAAAAAANgU5OkAAAAAAACAdyN5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbPr/LwGCGERGHg0AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\n", + "ax.set_xlabel('Frequency [GHz]')\n", + "ax.set_ylabel('$\\Delta {T_B}$ [K]')\n", + "df.delta.plot(ax=ax, figsize=(12,8), label='$\\Delta {T_B}$ (R16-R03)')\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing downwelling brightness temperature calculation" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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/vSnuvXWWzVgwICG23ft2qXx48fr22+/1a233qo33njjgGuvu+46TZ48uVH3U1FRoWuuuUaRSERTp07VxIkTJUklJSUaM2aMHn/8cZ177rkaO3ZsLB4WkPbqlgqmfiAg1Y0NcOwgkJyqA+GGEYDGql8qSCAANM/q3R69On+L/uecAWqb4zC7HCBlJcXIwKRJk/T3v/99vzBAkjp06KCnn35akvTuu+8qGAy26H6ee+45eTweTZgwoSEMkKTi4mI9+uijkqTHH3+8RfcB4HuBNAoEnJlWjh0EkpS3GR0C2ZlWWSzsEACawzAM3f+vFepe5NJPju9udjlASkuKQOBwhgwZIkkKBALas2dPi37WRx99JEm6+OKLD/ja+PHj5XQ6NWPGDPn9/hbdD4A6vlCkYeFeqsu2W1kqCCSp6kCoSUcOSlJGhkVuu41TBoBm+GT5bs3fWKH/PXeg7Lakf7sCJLSkGBk4nI0bN0qqGysoKCg44OszZ87Ud999J7/fr86dO+vss88+5P6AJUuWSJKGDRt2wNfsdrsGDRqkhQsXau3atRo8eHAMHwWQnnzBiLLy0+MXfVamVT46BICkVB0Iq022vcnX5ThtLBUEmsgXjOj3H63SaQPaaWy/A/eDAYitpA8EnnzySUnSWWedJYfjwPmiV199db9/vvfee3XRRRfppZdektvtbrjd4/GoqqpKktS5c+eD3lfnzp21cOFCbdmyhUAAiAFfKJo2IwNZdAgASavaH1bXguwmX+d22uRlZABokr99uUFl3oBev26k2aUAaSGpP5r7+OOP9fzzzyszM1MPPvjgfl/r3bu3HnvsMa1YsULV1dXatm2bXn/9dXXq1ElTp07VVVddtd/3//Dowuzsg//Sd7lckiSv13vImgKBgDwez35/ABycP01OGZDoEACSWf2xg03ldjAyADTF9r21+tuXG3TdiT3UvchldjlAWkjaDoHVq1fryiuvlGEY+sMf/tCwS6DelVdeud8/u1wuXX755Ro3bpyOPvpovf/++5o/f75GjRoV07oefvhh/e53v4vpzwRSlT+Nlgpm223y0DoMJKXqQFiuZgQCOc5MThkAmuB3H65Ufnambhp34JHhAFpHUnYI7NixQ2eddZb27t2r22+/Xb/85S8bfW2HDh109dVXS5I+/fTThtt/OD5QW1t70GtramokSTk5OYf8+ffcc4+qqqoa/mzbtq3RtQHpJp2WCjrpEACSVnUzThmQ6kYGOGUAaJwZK0s0fWWJ/vfco5oVwAFonqQLBCoqKnTGGWdoy5Ytuvrqq/XYY481+Wf06dNHkrRr166G23Jzc5WXlydJ2r59+0Gvq7+9W7duh/zZDodDubm5+/0BcHC+YBqNDNgzOHYQSEKRqKGaYEQ5TTxlQJJyHCwVBBqjNhjWff9aoZP6ttU5R7c3uxwgrSRVIFBdXa2zzz5bK1eu1MSJE/Xss8/KYrE0+efs3btX0vc7AerVjx0sXrz4gGtCoZCWL18up9Opvn37NqN6AD8UjRoKhKNyZibV01CzZdtt8rNUEEg6NcG6T/jdjswmX5vDUkGgUf4yc73KqgN64PyjmvXaHkDzJc0r8UAgoAkTJujrr7/WmWeeqTfffFNWa9M/WTQMQ++9956kA48XHD9+vCRpypQpB1w3bdo0+f1+nXbaaXI6nc14BAB+yB+ue3OcLjsEnJmcMgAko/qlgO5mdAi4HZksFQSOYF2JV8/O3qibxvZmkSBggqQIBCKRiH784x9r5syZOvHEE/Xuu+/Kbj/0ecBlZWV6+umnDzgNoLq6WjfeeKMWLFig9u3ba+LEift9/brrrlNubq4++OADvfvuuw23l5aW6s4775Qk3XHHHTF8ZED68oeikpQ2IwPZdisjA0ASqt8B0JwdAjlOG0sFgcMwDEO/fX+5uhRk64axPc0uB0hLSbGx46mnnmr4VL+oqEg///nPD/p9jz32mIqKilRTU6Obb75Zd999t4YPH64OHTqorKxMixcv1p49e5Sfn68pU6YccLxgQUGBXnjhBV166aW6+OKLNXbsWBUWFmrGjBmqrKzU7bffrrFjx7b2wwXSQv2n5emyVDCLDgEgKdW/oW/ODgG30yZfKKJwJCqbNSk+gwHi6t3FO7RgU4Veu3akHLb0eD0AJJqkCATqZ/4lNQQDB3P//ferqKhIhYWFuuuuuzR//nytXbtWc+fOldVqVY8ePTR58mTddttt6tSp00F/xkUXXaTZs2froYce0vz58xUMBjVw4EDdfPPNmjRpUswfG5Cu6jfup0uHQJbdqmA4qkjUkDWD+UggWbSoQ2DfNTWBiPKyCQSAH6qsDer/Pl6l84Z01Jg+RWaXA6StpAgE7r//ft1///2N/v6cnBw98sgjzb6/0aNH65NPPmn29QCOrH7BXrrsEKgPPnyhSLPeWAAwR0t2COQ46xYRevwh5WU3fSkhkMoe+miVgpGo7h0/wOxSgLRGXA3AFOkaCNQGmScGkkl1oO7YQJe9eSMDdT+Dv/fAD/1nXZmmLNqu344foHa5LOsGzEQgAMAU6bZDIHvf4/QHoyZXAqApvP6wXHZrs0Z96ruBWCwIfK82GNY97y7TCb0KdelxXcwuB0h79K0CMEW67RBw2r8fGQCQPKoD4WaNC0hSbkOHQCiWJQFJ7bF/r1WZN6DXrh0pi4WdOoDZ6BAAYApfw8hAejwN1XcIMDIAJJdqf7jZez/qgwQ6BIA6327dqxfnbtLtp/dV9yKX2eUAEIEAAJM07BBIk2OGfrhUEEDyqOsQaN5CwKzMulEDAgFACoajunvqMg3qmKdrx/QwuxwA+zAyAMAU/lBUDluGMtLkCL6GQCBIIAAkE28gLLejecGlxWKR22FjqSAg6a9fbND6smr96+bRsln5TBJIFPxtBGAKXyiSNgsFpe+XJ9IhACSXmkDzRwakusWC1XQIIM2t3OnRU7PW6Wcn9dRRHfPMLgfADxAIADCFLxhJm4WC0g+PHSQQAJJJ3Q6B5o0MSFKO0yavn6WCSF/BcFR3vLNEPYvc+uVpfcwuB8B/YWQAgCn8oYicaRQI2KwZslszGnYnAEgO1YGwcpp5yoC0LxBgZABp7KlZ67WuxKv3bxotR5rsDQKSCR0CAEzhS7NAQKo7UYEdAkBy8bbglAGpbmSApYJIV8u2V+npWet107jeGtSJUQEgEREIADCFPxRRVpocOVgv225jZABIMnWnDLSkQyCTHQJIS4FwRHe88536t8/Rzaf0NrscAIeQXq/GASQMXyiaVksFpbrFgowMAMnDMIy6QKAlHQJOThlAevrj9HXaVF6jxy8dokxOFQASFn87AZgi3ZYKSpIz00qHAJBE/KGoIlGjZTsEHCwVRPpZvHWv/jF7g249ra/6t881uxwAh0EgAMAU/lBEjjQLBLLtVo4dBJKIN1D3Rr4lHQI5dAggzVQHwrrtre80uHO+fnZST7PLAXAEBAIATFG3QyC9AoGsTAIBIJnUz/63dKmghx0CSCMPfLhCZd6A/nTZUNkYFQASHn9LAZjCl46BgN3KKQNAEqk/HcDVoh0CmQqGowqE+buP1Pfp8l16e+F23XfeQHUvcpldDoBGIBAAYApfKJJ+SwUzCQSAZFIfCORlZTb7Z9TvH6gJ8HcfqW13lV93v7tMZx5VrEuP62J2OQAaiUAAgCn8wYictvR6Csq2W1XLyACQNDz7lgHmtiQQ2NddwGJBpLJo1NCv3lkiuzVDj0wcLIvFYnZJABqp+T1wANACvlBEzjTrEHBmWuWnQwBIGh5fSBbL92/qmyPHWRcmeNkjgBT2wpxN+mp9uV69doTauOxmlwOgCdLr4zkACcMfiqblDoHaEG8KgGTh8YfkttuUkdH8Tzvd+0YGOGkAqWrlTo8e/XSNrh3TQyf2aWt2OQCaiEAAQNwZhpGWSwWzM63yBaNmlwGgkTy+cIvGBaTvTyigQwCpqCYQ1s1vLFavdm79+sx+ZpcDoBkYGQAQd4Fw3ZvitFsqaLfKzw4BIGl4/KGGpYDNldPQIcAOAaSeez9Yrt0ev6bdMkbONAv5gVRBhwCAuKvftO+wpdeLhyy7VbXBsAzDMLsUAI3g9be8Q8Bhy1Cm1UKHAFLOlEXb9e7iHfr9hYPUs63b7HIANBOBAIC48+37lDztOgQyrYoaUjDC2ACQDDy+kHKdLQsELBaL3A4bgQBSyvrSat37/nJdfGxnXXhMZ7PLAdACBAIA4q6+bT7tdgjsC0B8nDQAJAWPP6TcrJZPV+Y4M1kqiJThD0V08xuL1THfqQcmHGV2OQBaiEAAQNz50jQQqJ+v9LFHAEgKHl+4xR0CkvZ1CLBDAKnhoY9WamN5jZ66fJiy7awjA5IdgQCAuGvoELCn11NQfQBSS4cAkBTqOgRiEAg4bapmZAAp4IPvdui1+Vt133kDNaBDrtnlAIiB9Ho1DiAh1B+9l25LBes/SWFkAEgOdTsEWv4JaK7TxsgAkt7aEq/unrpMFx7TSZeP6Gp2OQBihEAAQNyl7VLBfR0RHD0IJL5wJKqaYCRmIwMeOgSQxKoDYd3w2iJ1KcjS7y8cJIvFYnZJAGKEQABA3KXrUsGsfR0CjAwAia/+E/2YLRUkEECSMgxDd01dqlJPQH+98lj2BgAphr/RAOKuvkPAmW6BAEsFgaTh8e0LBGLRIeC0yRtgqSCS04tzNuujpbv0zBXD1Kut2+xyAMQYHQIA4s4fishuzZA1I71aDhsCAToEgITn2XcqQEyWCjpYKojktGhLhf7v41W6dkwPnXN0B7PLAdAKCAQAxJ0vGJEzM/2efuofMx0CQOLz+PYFAjHoEKhfKmgYRot/FhAvJR6/bnxtsYZ2ydfdZ/c3uxwArST9XpEDMJ0/FE27hYKSZLFYlJVppUMASALfdwi0fLrS7bQpFDEUCEdb/LOAeAiEI7rxtUWyWKRnrhimTCtvGYBUxd9uAHHnC0XSbqFgvWy7lQ4BIAnU7xBwO2IQCDjqugy8jA0gSdz/r5VavsOjv115rNrlOs0uB0ArIhAAEHf+UCTtFgrWc9IhACQFjz8kl90qWww+Gc1x1oUK9ScXAInsjQVb9ebXW/XQBYN0TNc2ZpcDoJURCACIu7odAukZCGTbrRw7CCQBjz8ck4WC0vddBl4/Jw0gsS3aUqH7/rVcV43qpkuHdzG7HABxQCAAIO7SeWQgi5EBICl4fKGYLBSUftAhwMgAEliJx68b9i0RvPfcgWaXAyBOCAQAxJ0/FEnLpYJS/cgAbwqAROfxh2KyUFCScvYFCx4CASQoXzCi619ZKFuGRc9ccazsNt4iAOmCv+0A4i6dOwRYKggkB48vHLMOgfqRAXYIIBEZhqFfT1midSXVevYnx6ltjsPskgDEEYEAgLhL56WCWZlW+UIcPQYkuroOgdgEAnZbhhy2DFWzQwAJ6C8z12va0l3642VDNKhTntnlAIgzAgEAcecLReTMTM+nnyw7IwNAMvD4Qg2z/7GQ47Rx7CASzifLdumJ6Wt1x+l9ddagDmaXA8AE6fmKHICpfMH0HRmo6xBgZABIdF5/7EYGpLqxAUYGkEiW76jSbW9/p/OGdNTNp/Q2uxwAJiEQABB3/lA0bZcKcuwgkBxiuVRQqlss6CUQQIIo8fh13csL1a84R3+4eLAsFovZJQEwCYEAgLhL9x0CfgIBIKFFo4aqA7HvEGBkAImgJhDWNS99owyL9I+fHJe2v48B1Ild9A0AjeRL40DAabeqlpEBIKF5A2EZhmK2VFCS3E4bSwVhukjU0C/e/FZb9tTqnRuOV3Gu0+ySAJiMDgEAcWUYRnofO5hplY8OASCheXx1b9xj2SHAUkEkggenrdQXa8v09BXDNKBDrtnlAEgABAIA4ioQjsowpCx7ej79ZNmtCoSjikYNs0sBcAiefZ/kx3SHAEsFYbIXvtqkl+Zu1oMTBunkvm3NLgdAgkjPV+QATBMIRSUpbTsEsux1bzA4aQBIXB5f3Rv3mO4QoEMAJvpsxW49+NFK/eyknrp8ZFezywGQQAgEAMRV/RvhdN0hUB+EEAgAiau+QyDHGeNTBtghABMs3rpXv/jntzrrqPa666z+ZpcDIMEQCACIq3QPBLL3HbfIHgEgcdV/kp8T4x0C1YEw40KIq41l1br2pW80qGOe/njZUGVkcLwggP0RCACIq/o3wuk6MuCkQwBIeB5fSFmZVtltsXuZVOhyKGpIe2uDMfuZwOGUev2a9OLXKnDZ9dwkjhcEcHAEAgDiyh/eFwjY0/OFScPIAB0CQMLy+EMxXSgoSW1z7JKk8moCAbS+6kBY17z0jQKhqF6+ZoTys+1mlwQgQREIAIgrf5p3CNSPDNQSCAAJy+MLx3ShoCQVuR2SpPLqQEx/LvDfQpGofv76Ym0ur9VLV49Q5zbZZpcEIIERCACIq3TfIVDfGeFnZABIWHUdAq0TCJR5CQTQeqJRQ3dOWap5G8r196uO1cCOuWaXBCDBxbYfDgCO4PtAID3zyCw6BICE5/GFlBvDEwYkyeWwKdtupUMArcYwDD0wbaXe/26H/vyjYzS6d5HZJQFIAun5ihyAaepn59O2Q4ClgkDC8/hDMT1hoF7bHAcdAmg1f5qxTi/N3ayHLhik84Z0NLscAEmCQABAXPnDUWVaLcq0pufTT6Y1Q7YMi3zBsNmlADgErz8c86WCUt3YQBkdAmgFL3y1SU9+vk53ntVPV4zsZnY5AJJIer4iB2AafzCStt0B9bLsVjoEgATm8YdivlRQkorcdk4ZQMxNXbRdD0xbqZ+d1FM3ntzL7HIAJBkCAQBx5QsRCGRlWuULRs0uA8AheHzhmC8VlBgZQOx9tmK37py6VJcd10V3n91fFovF7JIAJBkCAQBx5QtF0vbIwXrZdqtqQ4wMAIkoGjXkbbUOAQdLBREzczeU6+Y3v9WZRxXr/yYeTRgAoFkIBADElS9IIODMtMrPKQNAQqoJhhU11Go7BCpqgopEjZj/bKSXpdsrdf3LCzWyR4H+eNlQWTMIAwA0D4EAgLgKhCNy2tM7EMi2Wzl2EEhQHn9d905rdAi0zXEoEjW0t5Y9Ami+9aVeTXrha/Vtn6O/XXmsHLb0/p0KoGUIBADEVV2HQHo/9bBUEEhcHl9Iklplh0CR2yFJjA2g2bbvrdWVz32tdjlOvTh5uFyO2HeyAEgv6f2qHEDcsVSwfqkggQCQiLz7OgRynLF/o9Uupy4QYLEgmmN3lV9XPrdAdluGXr12hPKz7WaXBCAFEAgAiCtfKJr2OwSy7DY6BIAE1dAh0EpLBSU6BNB0pV6/Ln92voLhqF6/bqTa5TrNLglAiiAQABBXfpYKKiszg0AASFAef10g0BodAll2q1x2q8q97BBA45VXB3T5swtUEwzrjetHqUtBttklAUghDB4BiCs/SwWVbbcxMgAkKI8vJIcto9VGm9rmOFRGhwAaqaImqCueXaAqX0hv/XSUuhe5zC4JQIqhQwBAXHHsYN2xg3QIAInJ4w+3ykLBekVuh8rZIYBGqKwN6ornFmhPTUBvXj9SPdu6zS4JQAqiQwBAXNUtFUzvLJJjB4HE5fGFlNsK4wL1itx0CODIqmpDuvL5BSrx+PXm9aPUu12O2SUBSFHp/aocQNz5Q3QIZGVa5ScQABKSxx9q1Q6BtjkOThnAYXn8If3khQXavten164dqX7tCQMAtB4CAQBx5Q9F0/7YQaedkQEgUXn9YeW0wgkD9YrcDpVXs1QQB1cdCGvyC19rU3mNXrt2pAZ2zDW7JAApjkAAQNwYhiFfKKKsdF8qmGlVOGooGI6aXQqA/+Lxt+7IQNschypqAopEjVa7DySnmkBYV7/4tdaVVOvVa0dqUKc8s0sCkAYIBADETShiKBI15LSldyBQH4jQJQAkHo+vtZcK2hU16rbHA/Vqg2Fd+/I3WrXLq5evHaEhXfLNLglAmiAQABA39W+A071DoCEQYI8AkHDqOgRaMRDIcUiqO1sekOrHBL7R0u1Veunq4RrWtY3ZJQFIIwQCAOLGXx8IpPkOgfrHT4cAkHg8vpBys1pxZMBdFwiwWBCSVOUL6arnF2jVLo9evXakjuteYHZJANIMxw4CiJv6QCDdlwrWBwK1wbDJlQD4IcMw5PGHW7VDoC0dAthnb01QV72wQNsqfHr9+pEa3Dnf7JIApCECAQBxw8hAnex9j99PhwCQUGqDEUWiRqvuEHBmWuV22AgE0lx5dUBXPrdApd6A3rx+FKcJADANgQCAuKmfmXdmpve0Un2HhC/IKQNAIvH667p2clrxlAGprkuAkYH0VeLx64rnFqjKF9JbPx2lPsU5ZpcEII0RCACIGx87BCR93yHAyACQWDz+kCS16siAVHfSQHk1pwyko52VPl3+7HwFwlG99dNR6tnWbXZJANIcgQCAuGGpYB2OHQQSk8dXFwjkteJSQYkOgXS1raJWP352viTp7Z8dry4F2SZXBACcMgAgjvyhuhZ5Z5rvEMjKtMpikWoCBAJAIolfh4CDHQJpZlN5jS79+zzZMix6izAAQAKhQwBA3NTvEEj3DgGLxSKX3aaaACMDQCLx+Or+TrbmUkGJQCDdrCvx6vLnFijXadMb149Sca7T7JIAoAEdAgDixheKyJphUaaVpx6Xw6oadggACcXjD8luzZDD1rrPUW1zHNpTE1Q4wmLRVLd0e6Uu/fs8FbrseutnxxMGAEg4vCoHEDf+UCTtuwPquRx0CACJxuMLKTfLJovF0qr3U+R2yDCkiloWC6ayuRvK9eN/zFf3Ipf++dNRKnI7zC4JAA5AIAAgbnzBSMORe+nOZbepmh0CQELx+sOtvj9AqjtlQJLKvQQCqeqzFbs1+cVvNKxbG71+3UjlZ9vNLgkADopAAEDc+MMRZdl52pH2jQzQIQAkFI8/pBxn669XaptT90lxGXsEUtLURdt14+uLddqAdnpu0nHKtrOyC0Di4hkKQNz4glFGBvZxO2yqZYcAkFA8vnCrLxSU1NA6Xs7Rgynnha826YFpK/Wj4V30+wuPljWjdcdPAKClkuKjutraWr3//vu69tpr1a9fPzmdTrlcLg0ZMkQPPPCAqqurD3ntSy+9pBEjRsjtdqugoEDnnHOO5s6de9j7mzNnjs455xwVFBTI7XZrxIgReuWVV2L9sIC04wsxMlAv225TNR0CQELx+ENxGRlwZlqV47TRIZBCDMPQE9PX6oFpK/Wzk3rq4YmEAQCSQ1IEAm+88YYuvPBCvfDCC7JarTr//PN14oknatOmTbrvvvs0fPhwlZaWHnDdrbfeqquvvlrLly/XaaedphEjRmj69Ok66aST9P777x/0vqZOnaqTTz5Zn376qQYPHqyzzjpL69at06RJk/SrX/2qlR8pkNr8BAIN6pYKskMASCT1SwXjoa3bQYdAiohGDf3uw5X68+frdNdZ/XXPOQNafTElAMRKUgQCmZmZ+ulPf6qVK1dq5cqVevvtt/Xpp59qzZo1OuaYY7R69Wrdeuut+10zY8YMPfnkkyosLNSSJUv0/vvv69NPP9Xs2bNltVp19dVXq7Kycr9rKioqdM011ygSiWjKlCn64osvNGXKFK1evVq9e/fW448/ri+++CJujxtINZwy8D03xw4CCccTp6WCUt3YQDkdAkkvFInqjneW6OV5m/V/Fx6tG8f2MrskAGiSpAgEJk2apL///e8aMGDAfrd36NBBTz/9tCTp3XffVTD4/bbeJ554QpL029/+Vn369Gm4/fjjj9cNN9ygyspKPf/88/v9vOeee04ej0cTJkzQxIkTG24vLi7Wo48+Kkl6/PHHY/vggDTiIxBowLGDQOKpqAkqLzs+gUDbHAcjA0nOF4zoxtcWadrSnfrzj47R5SO7ml0SADRZUgQChzNkyBBJUiAQ0J49eyRJPp9PM2fOlCRdfPHFB1xTf9uHH3643+0fffTRIa8ZP368nE6nZsyYIb/fH7sHAKSRumMHk/5pJyZcdkYGgETiD0VU5Qupfa4zLvdX5LZz7GAS21sT1BXPzdec9Xv07E+O03lDOppdEgA0S9K/Mt+4caOkurGCgoICSdKaNWsUCATUtm1bde7c+YBrhg0bJklaunTpfrcvWbJkv6//kN1u16BBg+T3+7V27dqYPgYgXfhDEWXZ6RCQ9nUIBMMyDMPsUgBIKvHUhf3xCwQYGUhW2/fW6uK/zdWWPbX6509HaWy/dmaXBADNlvSBwJNPPilJOuuss+Rw1B3js3XrVkk6aBggSS6XS/n5+dq7d6+8Xq8kyePxqKqq6rDX1d++ZcuWQ9YTCATk8Xj2+wOgDqcMfM/lsMow6v6dADBfiafuzXm7OAUCbXMcqqgNKhyJxuX+EBsrd3o08Zm5CkaimnLjCRrSJd/skgCgRZI6EPj444/1/PPPKzMzUw8++GDD7fXHEGZnZx/yWpfLJUkNgcAPjy481HX/fc3BPPzww8rLy2v406VLl0Y+GiD1+UNRdgjs47LXbTLn6EEgMdR3CBTnOuJyf0Vuhwyjbm8BksPcDeW67O/z1C7XoXdvHK0eRS6zSwKAFkvaQGD16tW68sorZRiG/vCHPzTsEjDbPffco6qqqoY/27ZtM7skIGGwVPB7LkddIFDLHgEgIZR4/Mq2W+V2xOnYwZy64KGUoweTwrSlOzX5hW80tGu+/vnT4xv+9wOAZBef33oxtmPHDp111lnau3evbr/9dv3yl7/c7+tut1uSVFtbe8ifUVNTI0nKycnZ75r663Jzc494zcE4HI6G0QUA+/MHGRmoV/+mgw4BIDGUePxqn+uM2/nxRfveULJHIPG98NUmPfjRSk0Y0lGPXjxEdlvSfp4GAAdIume0iooKnXHGGdqyZYuuvvpqPfbYYwd8T9eudce+bN++/aA/o6amRpWVlWrTpk3Dm/vc3Fzl5eUd9rr627t169bixwGkI18oIidLBSXV7RCQxNGDQIIo8QTULk7jApJU6LJLksqrGRlIVNGooYc/XqUHpq3UT0/sqScuHUoYACDlJNWzWnV1tc4++2ytXLlSEydO1LPPPnvQJL9fv35yOBwqKyvTjh07Dvj64sWLJUmDBw/e7/b6sYP6r/9QKBTS8uXL5XQ61bdv31g8HCCthCJRhaMGIwP71I8M1AQJBIBEUOLxqzhOCwUlyZlpVa7TpjJGBhJSMBzVHe8s0T/+s1H/e+5A3XPOAGVkxKd7BADiKWkCgUAgoAkTJujrr7/WmWeeqTfffFNW68HfWGRlZemUU06RJL3zzjsHfH3KlCmSpPPOO2+/28ePH7/f139o2rRp8vv9Ou200+R0xu8FA5Aq/Pu26RMI1GkIBNghACSEUm8groGAVDc2wMhA4qnyhTT5xa81belO/flHx+iaMT3MLgkAWk1SBAKRSEQ//vGPNXPmTJ144ol69913ZbfbD3vN7bffLkl66KGHtG7duobb582bp7///e/Kz8/Xtddeu9811113nXJzc/XBBx/o3Xffbbi9tLRUd955pyTpjjvuiNXDAtJK/fF6WfakeNppddmZjAwAicIwDO2u8qtdnBfFFbkddAgkmO17a3XxX+dqxU6PXr12pM4b0tHskgCgVSXFUsGnnnpK7733niSpqKhIP//5zw/6fY899piKiookSaeddpp++ctf6sknn9TQoUN1+umnKxgMavr06TIMQy+++KLy8/P3u76goEAvvPCCLr30Ul188cUaO3asCgsLNWPGDFVWVur222/X2LFjW/OhAinLH6w7a9tpo0NAkjIyLMq2W1kqCCQAbyAsXyii9nnx7RDoWpCttSWHPsoY8bV0e6WueWmhsuwZmnrjCerdzn3kiwAgySVFILB3796G/14fDBzM/fff3xAISNKf/vQnDR06VE899ZSmT58uu92u0047Tffee69OOOGEg/6Miy66SLNnz9ZDDz2k+fPnKxgMauDAgbr55ps1adKk2D0oIM3UdwiwVPB7LodNtUFGBgCzlXr8khT3kYF+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FBcXo7S0VN/hEDVopqamGh0m8CQmBIiIiIiISCvMzc219iBDRPXHSQWJiIiIiIiIjBATAkRERERERERGiAkBIiIiIiIiIiPEhAARERERERGREWJCgIiIiIiIiMgIMSFAREREREREZISYECAiIiIiIiIyQmb6DqCxE0IAAHJzc/UcCRERERERERmD8ufP8ufRyjAhoGV5eXkAAC8vLz1HQkRERERERMYkLy8PDg4OlW6XiOpSBlQvZWVluHv3Luzs7CCRSPQdjl7k5ubCy8sLKSkpsLe313c4pCG8r40P72njxPva+PCeNk68r40P72nj05DuqRACeXl5cHd3h4lJ5TMFsIeAlpmYmMDT01PfYRgEe3t7g284VHu8r40P72njxPva+PCeNk68r40P72nj01DuaVU9A8pxUkEiIiIiIiIiI8SEABEREREREZERYkKAtE4qlWLp0qWQSqX6DoU0iPe18eE9bZx4Xxsf3tPGife18eE9bXwa4z3lpIJERERERERERog9BIiIiIiIiIiMEBMCREREREREREaICQEiIiIiIiIiI8SEANVZQUEBdu3ahVdeeQVt2rSBpaUlbGxs0KVLFyxbtgz5+fkV6oSEhEAikVT6WrhwoR6uhJ4UFBRU5T36/fff1dYLDw9Hz549YWtrCycnJ4wYMQLR0dE6jp7UOXbsWJX3tPy1bNkyZR22VcMQExODFStWYNy4cfD09FS+/9WpS3s8ffo0RowYAScnJ9ja2qJnz5748ccfNXUp9ITa3NeysjKcPHkSCxYsQLdu3WBnZwepVAo/Pz/MmjULCQkJautV1+579+6tzUs0OrVtq/X5jGVb1Y3a3tOafM8OGjRIpQ7bqW7V5dmlXGP+XjXTdwDUcG3evBmvvvoqAKBdu3YYNWoUcnNzER0djaVLl2LLli04fvw4mjRpUqFu37590bJlywrl3bp103rcVDPjx4+Hra1thXIPD48KZXPmzEFoaCisrKwwdOhQKBQKREZG4tChQ9i+fTvGjBmjg4ipMm5ubpg6darabaWlpfj5558BAP369auwnW1Vvz7++GPs3r27VnXq0h4jIiIwYcIElJWVoX///nBxccGRI0cwdepUXLt2DStXrtTQFRFQu/saHx+P/v37A3jclgcNGgRTU1OcP38e3333HTZv3oz9+/cjMDBQbX0/Pz+12/z8/Op+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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\n", + "ax.set_xlabel('Frequency [GHz]')\n", + "ax.set_ylabel('${T_B}$ [K]')\n", + "\n", + "rte.satellite = False\n", + "df_from_ground = rte.execute()\n", + "\n", + "df_from_ground = df_from_ground.set_index(frq)\n", + "df_from_ground.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauice
2038.10058036.106575287.7826560.00.1196540.0127480.00.0
2153.60281551.750325287.5497230.00.1832710.0133960.00.0
2268.63475466.918654286.8727030.00.2496770.0141070.00.0
2368.96656067.268116287.3807480.00.2498660.0148870.00.0
2458.51827656.754139288.0835800.00.2016700.0157450.00.0
...........................
196290.020626290.013156297.0812770.03.6974740.0251500.00.0
197288.152409288.143310296.8592640.03.4869090.0253150.00.0
198286.380803286.370182296.6714820.03.3189050.0254810.00.0
199284.742167284.730168296.5136090.03.1836920.0256480.00.0
200283.256287283.243076296.3814890.03.0741470.0258150.00.0
\n", + "

181 rows × 8 columns

\n", + "
" + ], + "text/plain": [ + " tbtotal tbatm tmr tmrcld tauwet taudry tauliq \\\n", + "20 38.100580 36.106575 287.782656 0.0 0.119654 0.012748 0.0 \n", + "21 53.602815 51.750325 287.549723 0.0 0.183271 0.013396 0.0 \n", + "22 68.634754 66.918654 286.872703 0.0 0.249677 0.014107 0.0 \n", + "23 68.966560 67.268116 287.380748 0.0 0.249866 0.014887 0.0 \n", + "24 58.518276 56.754139 288.083580 0.0 0.201670 0.015745 0.0 \n", + ".. ... ... ... ... ... ... ... \n", + "196 290.020626 290.013156 297.081277 0.0 3.697474 0.025150 0.0 \n", + "197 288.152409 288.143310 296.859264 0.0 3.486909 0.025315 0.0 \n", + "198 286.380803 286.370182 296.671482 0.0 3.318905 0.025481 0.0 \n", + "199 284.742167 284.730168 296.513609 0.0 3.183692 0.025648 0.0 \n", + "200 283.256287 283.243076 296.381489 0.0 3.074147 0.025815 0.0 \n", + "\n", + " tauice \n", + "20 0.0 \n", + "21 0.0 \n", + "22 0.0 \n", + "23 0.0 \n", + "24 0.0 \n", + ".. ... \n", + "196 0.0 \n", + "197 0.0 \n", + "198 0.0 \n", + "199 0.0 \n", + "200 0.0 \n", + "\n", + "[181 rows x 8 columns]" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_from_ground" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.10" + }, + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + } + }, + "orig_nbformat": 2 + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/en/main/_sources/notebook/uncertainty.ipynb.txt b/en/main/_sources/notebook/uncertainty.ipynb.txt new file mode 100644 index 00000000..f6d1f330 --- /dev/null +++ b/en/main/_sources/notebook/uncertainty.ipynb.txt @@ -0,0 +1,377 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Calculate uncertainty on BTs (notebook)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import python package for plotting." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'divide': 'warn', 'over': 'warn', 'under': 'ignore', 'invalid': 'warn'}" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# This requires jupyter-matplotlib a.k.a. ipympl.\n", + "# ipympl can be install via pip or conda.\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "plt.rcParams.update({'font.size': 15})\n", + "import matplotlib.ticker as ticker\n", + "from matplotlib.ticker import ScalarFormatter\n", + "import numpy as np\n", + "import pandas as pd\n", + "np.seterr('raise')" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import pyrtlib package and tools" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter\n", + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.absorption_model import O2AbsModel\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies, constants\n", + "from pyrtlib.uncertainty import covariance_matrix" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "atm = ['Tropical',\n", + " 'Midlatitude Summer',\n", + " 'Midlatitude Winter',\n", + " 'Subarctic Summer',\n", + " 'Subarctic Winter',\n", + " 'U.S. Standard']" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Define spectroscopic parameters to be perturbed and them uncertainties" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "O2_parameters = {\n", + " 'O2S': range(1),\n", + " 'X05': [None],\n", + " 'WB300': [None],\n", + " 'O2gamma': range(34),\n", + " 'Y300': range(34),\n", + " 'O2_V': range(34)\n", + "}\n", + "HO2_parameters = {\n", + " 'con_Cf_factr': [None],\n", + " 'con_Cs_factr': [None],\n", + " 'gamma_a': range(1),\n", + " 'S': range(1),\n", + " 'con_Xf': [None],\n", + " 'SR': range(1),\n", + " 'con_Xs': [None]\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "parameters = {**SpectroscopicParameter.oxygen_parameters('R18'),\n", + " **SpectroscopicParameter.water_parameters('R17')}\n", + "\n", + "parameters['O2S'].uncer = parameters['O2S'].value / 100\n", + "parameters['X05'].uncer = 0.05\n", + "parameters['WB300'].uncer = 0.05\n", + "parameters['O2gamma'].uncer[0: 34] = np.array([0.05, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.01131274, 0.01131274, 0.01453087, 0.01453087,\n", + " 0.01789881, 0.01789881, 0.02116733, 0.02134575, 0.02476584,\n", + " 0.02476584, 0.02839177, 0.02839177, 0.03203582])\n", + "parameters['Y300'].uncer[0: 34] = np.array([0.01, 0.00404133, 0.00502581, 0.00786035, 0.00820458,\n", + " 0.00935381, 0.00809901, 0.0078214, 0.00544132, 0.00460658,\n", + " 0.00225117, 0.00209907, 0.0039399, 0.00484963, 0.00799499,\n", + " 0.00878031, 0.01202685, 0.01261821, 0.01577055, 0.01615187,\n", + " 0.01907464, 0.01926978, 0.0218633, 0.02188287, 0.02416567,\n", + " 0.02401716, 0.02604178, 0.02575469, 0.02762271, 0.02720018,\n", + " 0.02897909, 0.02843003, 0.03019027, 0.02951218])\n", + "parameters['O2_V'].uncer[0: 34] = np.array([0.00288243, 0.04655306, 0.03914166, 0.06110402, 0.0494057,\n", + " 0.05728709, 0.06444876, 0.07279906, 0.06385863, 0.07007177,\n", + " 0.05963384, 0.06373721, 0.11789158, 0.12307213, 0.10151855,\n", + " 0.10427449, 0.08328802, 0.08486523, 0.10130857, 0.10244286,\n", + " 0.15750036, 0.15814743, 0.24421784, 0.24343211, 0.3084326,\n", + " 0.30576201, 0.34568212, 0.34107696, 0.36123446, 0.35507902,\n", + " 0.37305309, 0.36544166, 0.38490936, 0.37583782])\n", + "\n", + "parameters['gamma_a'].uncer[0] = 0.039\n", + "parameters['S'].uncer[0] = 0.043 * 1e-25 * constants('light')[0] * 100\n", + "parameters['con_Xf'].uncer = 0.8\n", + "parameters['SR'].uncer[0] = 0.0014\n", + "parameters['con_Xs'].uncer = 0.6\n", + "\n", + "SpectroscopicParameter.set_parameters(parameters)\n" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)\n", + "\n", + "gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + "rh = mr2rh(p, t, gkg)[0] / 100" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Use frequencies set of HATPRO Radiometer" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "frq = sorted(list(set().union(get_frequencies('hat'), np.arange(20, 61, 0.5).tolist())))" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Performing uncertainty of brightness temperature" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Default calculatoin consideres no cloud and no perturbation" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters)\n", + "rte.satellite = False\n", + "rte.init_absmdl('R17')\n", + "O2AbsModel.model = 'R18'\n", + "O2AbsModel.set_ll()\n", + "df = rte.execute()" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "df_out = pd.DataFrame()\n", + "df_out['freq'] = frq\n", + "df_out['tb'] = df.tbtotal" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate Jacobian matrix" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$Cov(T_{b}) = K_{p} \\times Cov(p) \\times K_{p}^T$$" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "cnt = 0\n", + "for k, v in (O2_parameters | HO2_parameters).items():\n", + " for i in v:\n", + " amu_p = AbsModUncertainty.parameters_perturbation([k], 'max', index=i)\n", + " rte.set_amu(amu_p)\n", + " df = rte.execute()\n", + " if k =='O2S':\n", + " parameters[k].uncer = parameters[k].uncer / parameters[k].value * 100\n", + " if k in ['con_Cf_factr', 'con_Cs_factr']:\n", + " parameters[k].uncer = parameters[k[0:6]].value * parameters[k].uncer\n", + " field_name = 'p_{}{}'.format(k, '_' + str(i) if i else '')\n", + " delta_tb = df.tbtotal.values - df_out.tb.values\n", + " if i is not None:\n", + " o = pd.Series(delta_tb / parameters[k].uncer[i], name=field_name)\n", + " else:\n", + " o = pd.Series(delta_tb / parameters[k].uncer, name=field_name)\n", + " df_out = pd.concat([df_out, o], axis=1)\n", + " cnt += 1" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate uncertainty (sigma) for BT\n", + "Using covariance matrix by [Cimini-2018](https://doi.org/10.5194/acp-18-15231-2018) which identifies 111 parameters (6 for water vapor and 105 for oxygen)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "params = df_out.copy()\n", + "\n", + "Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq', 'p_con_Xs'])].values\n", + "covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_111), Kp.T)\n", + "sigma_tb = np.sqrt(np.diag(covtb))\n", + "params['sigma_tb'] = sigma_tb" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Using covariance matrix by [Cimini-2019](https://doi.org/10.5194/gmd-12-1833-2019) which add the ${n_{CS}}$ parameter for water vapour " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq'])].values\n", + "covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_112), Kp.T)\n", + "sigma_tb = np.sqrt(np.diag(covtb))\n", + "params['sigma_tb_with_con_Xs'] = sigma_tb" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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HDp0CHCP2HzllVeanEpExDcV3t5u9erVrF69utj0WbNm6WS0mmmbi0hFqQAgfm/atGme24WJVKc9e/YA0LBhQ0aOHMmTTz6J3W43OZWIiG9atmyZ2RFOONrmIlJRGgRQRERERERE5ASgQQBFRERERERETgC6BKCauVwuDhw4QEREhAYKExERERERkRpnGAYZGRk0btwYq7X03/lVAKhmBw4cICEhwewYIiIiIiIicoLZt28fTZs2LXW6CgDVLCIiAnBv+MjISJPTlM7hcLB48WJGjBihQc18kNrH96mNfJvax7epfXyf2si3qX18m9rH99XFNkpPTychIcFzPloaFQCqWWG3/8jISJ8vAISGhhIZGVlndvq6RO3j+9RGvk3t49vUPr5PbeTb1D6+Te3j++pyG5V3GboGARQRERERERE5AagAICIiIiIiInICUAFARERERERE5ASgAoCIiIiIiIjICUAFABEREREREZETgAoAIiIiIiIiIicA3QbQRzgcDpxOZ62uLyAggNzc3Fpdr3hH7eP71Ea+Te1TnNVqxW63l3t7IBEREam7VAAwWXp6OklJSeTl5dXqeg3DoGHDhuzbt09fBn2Q2sf3qY18m9qnZDabjdDQUOrXr09gYKDZcURERKSWqQBgovT0dBITEwkPDycuLq5Wf5lxuVxkZmYSHh6O1aorQXyN2sf3qY18m9qnKMMwcDqd5OTkkJaWxu7du2natCmhoaFmRxMREZFapAKAiZKSkggPD6dp06a1/guVy+UiPz+f4OBgfTn2QWof36c28m1qn5KFh4cTGxvLnj17SEpKolmzZmZHEhERkVqkb0UmcTgc5OXlERUVpe6pIiJSa2w2G7GxsWRlZVFQUGB2HBEREalFKgCYpHBQKrvdbnISERE50QQFBQGoACAiInKCUQHAZPr1X0REaps+e0RERE5MKgCIiIiIiIiInABUABARERERERE5AagAICIiIiIiInICUAFAfILFYqnQfy1atDA7Mrt378ZisTB48OBaX7evbAMREREREfEfAWYHEAG49NJLiz22cuVKdu7cSZcuXejatWuRaXFxcbWUTEREREREpG5QAUB8wuzZs4s9NmXKFHbu3Mm4ceOYMWNGrWcqT5MmTfjzzz8JDQ01O4qIiIiIiEi5VAAQqSS73U67du3MjiEiIiIiIuIVjQEgfmf27NlYLBZmzJjBX3/9xQUXXECDBg2wWq18/fXXnvkWLFjA8OHDiYmJITg4mLZt23L33Xdz7NixYsucMWMGFouF2bNn8+uvv3LGGWcQHR1NZGQkw4cP55dffin2nPLGAPj111+54IILaNKkCUFBQTRq1Ihhw4bx9ttvF5lv48aN3HnnnXTv3p34+HiCgoJo3bo1t912GwcOHKjKphIREREREfFQAUD81vbt2+nZsydr1qxhyJAhDB8+HLvdDsATTzzBqFGjWLZsGd27d2fcuHFkZ2fz1FNP0bt3bw4fPlziMn/++WdOO+009u/fz5lnnknbtm35/vvvGTRoEIsXL/Y624svvki/fv349NNPadSoERMmTKBjx45s3ryZO+64o8i8Tz75JM8//zwAAwYM4KyzzsIwDGbOnEmvXr1UBBARERERkWqhSwB8kGEY5DicNboOl8tFTr6TgPwCrNaq14FC7DYsFks1JPPeJ598wg033MALL7yAzWbzPL527Vruv/9+wsPD+f777+nduzcAeXl5XHzxxXz++edMnTqVL774otgy3377be677z4eeeQRz+t5/fXXuf766z1jEoSEhJSZa/ny5dxyyy2Eh4czZ84chg0b5plWUFBQrJBwzTXX8OKLL9KgQYMi8z344IM88cQT3H///cycObPiG0hEREREROQ4KgD4oByHk/YPLjI7RoVsffgMQgNrd3eKj4/nqaeeKnLyD/DKK6/gcrm48cYbPSf/AEFBQbzyyit8++23zJkzh3379pGQkFDkuc2bN/dcDlDouuuu47333uPXX3/lyy+/5KKLLioz15NPPolhGNx3331FTv4BAgICOOuss4o8NmTIkGLLsFqt3Hnnnbz//vvMmzev7A0hIiIiUlvyMuDABohsAjEtwGor9yki4jtUABC/dfrpp5c4Av+KFSsAuPDCC4tNq1+/PiNGjGDu3LmsWrWKCy64oMj0c845h4CA4ofFpEmT+PXXX1mxYkWZBYCCggKWLVsGwNVXX+31a0lOTmbevHls3ryZY8eOUVBQgMPhwOFwkJycTEpKCrGxsV4vT0RERKTa7VkNX10FafvcfweEQP12UL8D1D8FGrSH+u0hvAHUcs9QEfGOCgA+KMRuY+vDZ9ToOlwuFxnpGURERlTbJQC1rVmzZiU+XnjNfIsWLUqcXvh4YmJisWnNmzcv8znlXY+fnJxMTk4OsbGxxMTElDlvoY8//pirr76azMzMUufJyMhQAUBERETM4SyA5c/A8qfBcJETEIXdlUtAQY67N8CBDUXnD4mFBv8rCnSZBE26mZNbRIpRAcAHWSyWGu9O73K5KAi0ERoYUC0FADMEBwdX6nm1PVZBWfbs2cOUKVMAeOGFFxg1apTnrgHp6emcddZZrF69GsMwzA0qIiIiJ6Zje+HLq2Cf+45Ic1yn8UDmJWQTTHPLYdpa9tHBto/OQQdoyz7qFxzAmpMCu1fA7hUYf36DZdpmsOm0Q8QX6EiUOqdx48bs2rWLPXv20L59+2LTd+/eDUCTJk2KTduzZ0+Jyyx8vHHjxmWuOy4ujpCQEFJSUjh27BjR0dFlzr9gwQLy8/O5/fbbufnmmz2Pu1wuAP75558yny8iIiJSY3atgE8uhLw0cq2h3Jl7GfNc/enVMpbwoAB2J0fwY0oTFjp6gcP9lCDyaW1JpK1lH/fbPyA24yDs+B7ajjT3tYgIoNsASh00cOBAwN21/t+OHj3KokWLsFgs9O/fv9j0r776Cqez+B0YPvnkE8B9m76y2Gw2Bg8eDMBbb71VbtbU1FQAmjZtWmzaqlWrSr1doYiIiEiNW3Qv5KWxxdqW4TmPMZ8B3HNmOz65qg8zp/Tkx9sG8+cjI1l51xA+vLI3j4/vxJTT2tG0fR+21h/FV073d7KsX2eb+zpExEMFAKlzpk6ditVq5aWXXmLdunWex/Pz87nxxhvJyclhwoQJxe4AAO7eAQ899FCRx9566y1Wr15NgwYNOOecc8pd/1133YXFYuGxxx5j6dKlRaYVFBSwYMECz98nn3wyAB988AFZWVmexxMTE7ntttu8e8EiIiIi1e3oX3BoEw7DxoXZt+KIaM6nV/fhmkGtsFr//3JKm9VC05hQ+reOY3LvZtxz1im8eXEPFk47jd3N3N+bgncthswjZr0SETmOLgGQOqdXr1488sgj3HffffTt25fBgwcTFxfHqlWr2LdvH23atOHVV18t8blXXXUVTz75JF999RWdO3dmx44drF27FrvdzuzZs0u868C/DRo0iKeffpo777yToUOH0qNHD9q0aUNSUhK///47eXl5HDt2DIAxY8bQoUMH1q1bR+vWrenfvz+5ubksXbqUjh070q9fP37++efq3DwiIiIi5dv8BQDLXZ3p1KYlL0zsSr3woAotYmD/gWz4tDWnWnfg3PgxtgE3l/8kEalR6gEgddK9997Lt99+y6BBg1i7di1fffUVQUFB3Hnnnfz66680aNCgxOf169ePn376iYYNG/Ltt9/y559/MmzYMJYtW8bIkd5fu3b77bfz008/MX78ePbu3csXX3zB5s2b6dSpE//5z3888wUGBrJixQquu+46goODPeu84YYbmDNnDna7vcrbQkRERKRCDIP8DZ8CMN/ozyuTulX45B9gaLv6zA84HYCcX2eDBjUWMZ16AIjPmj17NrNnzy72+JQpUzwj55dl1KhRjBo1qsLr7du3L99//32587Vo0aLM0fkHDhzoGY+gLDExMbz22mtFHnO5XKSnp/Pjjz+WeJcG3RVAREREasyBDQSm7ybHCCSv1RlEhVbuBwm7zUroqeeRvW4W4Rn/wP61kNCrmsOKSEWoB4CIiIiIiHgYf3wOwBJXd0ac2qpKyxrf9xQWuHoDkP3rrCpnE5GqUQFARERERETcXE4KNn0JwHf05/RTSr5s0lst48L4o/4YAAL+/BryMquaUESqQAUAERERERFx27MKe/ZhjhlhBLYbQVhQ1a8Y7tp/JP+4GhLozMa1+atqCCkilaUCgAgwY8YMDMPwamwBERERkbrK+MM9+v93zl6c1bV5tSzzzE6NmWcdCkDGL7OrZZkiUjkqAIiIiIiICBTk4dz8NQBLAgYyuG18tSw22G4jv+NECgwrUUd/g6N/VctyRaTiVAAQERERERHY8QMB+WkcNqKJaz+EoABbtS16VL9TWerqCkDOmveqbbkiUjEqAIiIiIiICK7/jf7/jbMvZ3dNqNZld2gcxZros9x/bPwInI5qXb6IeEcFABERERGRE11eJsa2BQD8FDiIfq3qVfsqWvQdz1EjihBHCsZfi6p9+SJSPhUAREREREROdNu/w+bMZZerAS06DSDAVv2nCaO7NWeucRoAqWs+rvbli0j5VAAQERERETnBOTd9BsA8V3/GnNqkRtYRGWyH5gMAyD24rUbWISJlUwFARERERORElp2CZeePAKwOGUz3ZjE1tqqT23UEIDovEQyjxtYjIiVTAUBERERE5ET210KsRgF/uhLofGovrFZLja0qLqENAKFGDmSn1Nh6RKRkKgCIiIiIiJzACrbMA2CRqyejOzeu0XU1rR/LIcPdwyDryI4aXZeIFKcCgIiIiIjIiSo/y9P9//eI0+jYJLJGVxcZbOeApQEAqfv/rtF1iUhxKgCIiIiIiJyodnyPzZXHHld92nTsjcVSc93/Cx0Lcg8ymH14Z42vS0SKUgFAfIbFYqnQfy1atDA7cjFm5TJjvZVZ5+7du7FYLAwePLhas0ybNg2LxcKDDz5Y6jy5ubnYbDasVisZGRlVWl9BQQEfffQRF1xwAS1btiQoKIi4uDhOP/10/vvf/+Jyuaq0fBERkdri3PoNAAtdPRnRoWGtrDM3PAEAV/KuWlmfiPy/ALMDiBS69NJLiz22cuVKdu7cSZcuXejatWuRaXFxcbWUTLy1e/duWrZsyaBBg1i2bFmtrff3338HoGPHjqXOs3XrVlwuF61atSIiIqLS69q0aROXXnopGzduJDQ0lG7dutGvXz8OHTrE8uXL+eGHH/joo4/46quvCAkJqfR6pG4w65gQEfFKQT7G9oUA/BrUjytrcPT/4xkxzSEZ7Bl7a2V9IvL/VAAQnzF79uxij02ZMoWdO3cybtw4ZsyYUeuZKurPP//EbrebHaNW+NJr9aYAsHnzZgC6dOlS6fWsW7eO008/nbS0NG677TamTp1K8+bNsVrdnan+/vtvRo0axcKFC5k2bRpvvvlmpdclIiJS43YvJ8CRwREjmobtB2CrwdH/jxcc3wp2QGROYq2sT0T+ny4BEKlG7dq1o1WrVmbHqBW+8lr37t1LamoqgYGBnHzyyaXOV1gA+HdPEm8dOnSIM888k7S0NN544w2efvppYmKK/lLSpk0bPvnkEwDeffdd9uzZU6l1iYiI1Abjf93/Fzu7M7xjzY7+f7zIxu5bAcY6j4DTUWvrFREVAMTPHX9NeXp6OrfeeistW7bEbrczbdq0IvOuXr2asWPHEh8fT1BQEC1atOD666/nwIED5S735ptvJiEhgeDgYE455RSef/75Eq/zLuu6+H379nHTTTdx8sknExISQmxsLD169OChhx4iPT3dM9/8+fO54oor6N27N9HR0YSFhdGlSxcef/xx8vLyqrS9cnNzCQ4OLjHjuHHjsFgsDBgwoNi0Hj16YLVaOXr0aKmvdcaMGbRs2RKAn376qch4DVOmTCm2zJycHO6++26aN29OUFAQrVu35qmnnsIwjAq9po0bNwLQtm1bAgJK79RU1R4AU6dOJSkpicmTJ3PNNdeUOl+3bt3o1q0bTqeThQsXerXsHTt2YLFYGD58OFlZWTz00EOccsophIaG0qpVK55++ukKb5fqUtljYf78+Vx++eWccsopREZGlrsfe3ssV2S5e/fuxWazMXjwYLKysrj11ltJSEggJCSEbt268c0333jm/fzzz+nduzdhYWE0aNCAm266iZycnFK3y759+7jhhhto1aoVwcHBxMbGcvbZZ/Pzzz975qnoMeHNMiu6vURESuVyUvDntwAst/WhX6t6tbbqRk2ak2vYseHCmbqv1tYrIroEQOqInJwcBg0axJ49exg0aBDdunUr8uvsBx98wJQpU3A6nfTv35+EhATWr1/P66+/zldffcWyZcto165dseXm5eUxdOhQdu7cydChQ8nPz+eHH37g1ltv5ffffy/xsoWSrFixgjFjxnDs2DFatGjB6NGjycnJYdu2bcyYMYOxY8d6fpm+4ooryMnJoV27dnTp0oX09HTWrFnDfffdxw8//MDixYux2WyV2k7BwcH07t2b5cuXs3v3bs8JvMvlYvny5QCsXbuW7OxsQkNDAUhLS2PDhg20b9+e+Pj4UpfdtWtXzjnnHL788ksaNGjAyJEjPdP+XVTIz89nxIgRbN261XNy9tNPP3H33XeTkZHBo48+6vVr8qb7P1StB8Aff/zBV199RXBwMM8991y587dv357169fzzz//eLX8wtcQGxtLly5dyMvLo2/fviQkJPDDDz9w1113ERcXx+WXX17h7NWlosdC4X7csWNHOnfuTFpamlf7cXnHcmWWm5+fz7Bhw9i1axennXYaSUlJLF++nPHjx7Nw4UL++OMP7rzzTgYNGsQZZ5zB8uXLefnll0lOTubDDz8slnH16tWMGjWK1NRU2rZty6hRozh69CiLFi1i4cKFfPjhh0ycOLFCx4S3y6zo9hIRKdX+tdhzkkgzQgk5eRBBAZX7blEZjaJD+ceoTxtLIqmJfxEXd1KtrVvkhGdItUpLSzMAIy0trcz5cnJyjK1btxo5OTm1lKwop9NppKamGk6n05T1e+vSSy81AGP69OklTt+1a5cBGIDRt29fIzU1tdg8e/fuNUJCQgybzWbMnTvX87jT6TSmTZtmAEaPHj1KXW7nzp2No0ePeqbt2LHDaNy4sQEYc+bMKfI8wGjevHmRx5KTk434+HgDMJ555pli2/znn382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/sjkyZP55ZdfWLRoEQkJCTz77LPMnj3b6/UPHjyY33//nWuvvRbDMPj6669ZtWoVUVFRPPzww57u3SeffDLr1q3znFB+8803ZGZm8uabb1b7L5zHn9iXVAAobVp53nnnHS6++GKSk5P56KOPePfdd/npp58qH7QU5XWdL1TSSfTxjh07xqhRo2jRogXvvfdeqYPjXXjhhWzcuJErrriCgoIC5s2bx5o1a4iKiuLee+9ly5Yt3H777RV6Ddu2bSMvL6/UbCVlLywUFBaNKiIkJMQzhoG3d1ooVJFjoXA/Hj16NElJScybN69a9uOaWm5F9enThz/++IM777yTyMhIfvrpJ77++mv27NnDoEGDmD17tufSH/DumKjoMkVEKmW7uyfkb6429OhUfk+ympYT5i7gu1J2mxtE5ARiMapjSHEfsHr1avr160dQUBDp6enlXut78OBBmjZtSkBAAHv37i3SxTkvL4+EhARSUlI4cOCA17+0gfvXuaioKNLS0socATw3N5ddu3bRsmVLU0ZxdrlcpKenFxlkTv7f7t27admyJYMGDfJcB1+b1D61Iz8/n5EjR7Jr1y5++eUXry91APPaKC0tjcaNGzNu3Dg+/PDDYtNXr15N3759OXLkSLH3roKCAvr160dubq7n9oLlMftYqCwdQ2Uz+zPI4XCwYMECzjrrLOz22r//uJRPbeTbKts+zvfGYNv1E487JjHm+qfo2CSqBlOWb8H7z3LWP4+wI6InrW/73tQs1UnHj++ri23k7XlonbkLQGH33ry8PJKTk2nUqFGZ8y9cuBCXy8XAgQOLfekPCgpi9OjRzJw5kwULFjBlypSaii0iJrr++uv56aefePvtt9m1a5fn9n9BQUHl9iwwS1RUFI888gi33XYbFouFc889l6ioKDZv3sysWbMYPHgwffv25ZxzzqFevXqcd955JCQkkJiYyOuvv87mzZtZsmSJ2S9DRERqW04qlt2rANgYNpB7Gpd/q9qaFlz/JPgHInISzY4icsKoMwWAwltA2e12YmNjy52/sPtwaaOHd+vWjZkzZ3r9K5mI+J/vv/8el8vFFVdcUeTx5s2be24P6YtuvfVWGjVqxPPPP8/kyZOx2+20bNmSkSNHeq6FnzJlCp9++il33HEHSUlJxMTEMGTIENatW+fVAIIiIlLH/LUIq1HAn64E2nfsWuol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Sdb+nWaHI1LrlABopKzL3qF55lwMLHDxuxDbweyQRERERETqlJ/DwX5rEwDSUzaaHI1I7VMCoDHa9hPW2Y8A4B76OLQdZXJAIiIiIiLmyHQkAFCwf4vJkYjUPiUAGqPAKAhqwu6IAbj7asR/EREREWm8CoOSAXBnbDM3EJE6oARAYxTXlbIb5rA68XqN+C8iIiIijZolsgUAvrm7zA1EpA4oAdBYBcXgtvqYHYWIiIiIiKn8YtsAEF602+RIRGqfEgAiIiIiItJoRTZrB0Cs6wCGq8zkaERqlxIAIiIiIiLSaMU1a0WJYcfXUkbm/h1mhyNSq5QAEBERERGRRsvh68t+aywAmbs1FaA0bEoAiIiIiIhIo3bIkQhA/j5NBSgNmxIAIiIiIiLSqBUGJwHgzthuciQitUsJABERERERadwiWgLgl7fT5EBEapcSACIiIiIi0qgFxHmmAgwr2mNyJCK1SwkAERERERFp1CIT2wPQxLUfw+U0ORqR2qMEgIiIiIiINGqeqQB98LG4yNynqQCl4VICQEREREREGjVfHzv7rE0AyEjRVIDScCkBICIiIiIijd4hvwQACvZvNjkSkdqjBICIiIiIiDR6xcHJALgzNRWgNFxKAIiIiIiIiJRPBZibYnIgIrVHCQAREREREWn0yqcCDC9ONTkSkdqjBICIiIiIiDR6EYntAIh1HdBUgNJgKQEgIiIiIiKNXtNmLSk+PBVgxh6NAyANkxIAIiIiIiLS6PnY7eyzxgGQkbLB5GhEaocSACIiIiIiIkCWXyIABQe2mByJSO1QAkBERERERIQ/pgI0NBWgNFBKAIiIiIiIiABENgfAL2+XuXGI1BIlAERERERERICAuLYARGgqQGmglAAQEREREREBopq1ByDGlYbbWWpyNCI1TwkAERERERERIC6hOUWGLz4WF+l7t5kdjkiNUwJAREREREQEsNvt7Ld5pgLM3K2pAKXhUQJARERERETksCxHAgCF+7eaHIlIzVMCQERERERE5LCikGQAjEOaClAaHiUAREREREREDrNGtgLAL3eXuYGI1AIlAERERERERA4LiGsNaCpAaZiUABARERERETksulkHAGLdmgpQGh4lAERERERERA6LjU+m0HBgt7hJ26OBAKVhUQJARERERETkMLvdVjEV4CFNBSgNjBIAIiIiIiIiR8jy80wFWLB/i8mRiNQsJQBERERERESOUBLc3PMmU1MBSsOiBICIiIiIiMgRrFEtAPDP32VuICI1TAkAERERERGRIwTEtQUgonivyZGI1CwlAERERERERI4Q1aw9ALHug7icJSZHI1JzlAAQERERERE5QpP4ZAoMBzaLQdruzWaHI1JjlAAQERERERE5gs1mZb+tKQCHdm80ORqRmqMEgIiIiIiIyJ9k+yUCUHhgq8mRiNQcJQBERERERET+pCQkyfPmkKYClIZDCQAREREREZE/sUS1AiAgL8XkSERqjhIAIiIiIiIifxJUPhVgSarJkYjUHCUARERERERE/iQqyTMVYIw7nbKSIpOjEakZSgCIiIiIiIj8SZO4ZuQbfoenAtxidjgiNUIJABERERERkT+x2qwcsMUBcChVUwFKw6AEgIiIiIiISBWy/JsBUHRQPQCkYVACQEREREREpAqlIcmeN4d2mBqHSE1RAkBERERERKQK1qiWgKYClIZDCQAREREREZEqlE8FGFmyx+RIRGqGEgAiIiIiIiJViE7qAJRPBVhocjQip08JABERERERkSrENEkg3/DHajFI273Z7HBETpsSACIiIiIiIlWw2qzsPzwVYObuTSZHI3L6lAAQERERERE5huzDUwEWH9BUgFL/KQEgIiIiIiJyDKWhyQBYsjQVoNR/SgCIiIiIiIgcgy2qFQD+ebvMDUSkBigBICIiIiIicgyBca0BiCzda3IkIqdPCQAREREREZFjiEkunwowA6emApR6TgkAERERERGRY4iOSSDv8FSAB3dpJgCp35QAEBEREREROQarzcp+ezwAWakbTY5G5PQoASAiIiIiInIcOf6JABQd3GpyJCKnRwkAERERERGR4ygNSQbAekhTAUr9pgSAiIiIiIjIcZRPBRiQn2JyJCKnRwkAERERERGR4wiKbwtAVGmqyZGInB4lAERERERERI6jYipAI5PctN0mRyNy6pQAEBEREREROY7omKass3mSANu+m2ByNCKnTgkAERERERGR47BYLOR0vw2AVrs/p7Qgx+SIRE6NEgAiIiIiIiIn0OvsK9lNHCEUsHHGf8wOR+SUKAEgIiIiIiJyAg4fH3a0uR6A2I3vYbicJkckcvKUABAREREREamG7qNv55ARTBN3Ght//tjscEROmhIAIiIiIiIi1RAaGsKappcC4Fj6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5Zh3usufha/Kxo0bGTduHImJiTgcDmJjY7n88stZv379UeuWP/M+fvx4du/ezZVXXkl0dDT+/v706tWL6dOnH/NntXHjRm688UaSk5NxOBzExMTQv39/XnzxRcrKygBPF32LxcLmzZur3Edqaio2m43mzZtjGMYxj1Vd5WMCPPnkk1Ve/B/J19e3ykcITlX5787xXqczZoCIiDQu6gEgIiJSRz755BPeeecdevXqxTnnnMP27dsrLrgffvhhnn/+eXx9fenduzdxcXGsXr2al19+mW+//ZYFCxYQGxtbsa+srCwGDBjAxo0badKkCWPGjOHQoUM8+OCDbNu2rUbjnjZtGpdffjklJSV069aNvn37kpqayueff8706dOZOXPmUV3iAXbt2kXv3r0JDg5m2LBh7N69m99//50LL7yQmTNnMnLkyErrf/HFF1xzzTWUlJTQvn17xo4dS05ODuvXr+evf/0rN910E2FhYdx6663cc889vPPOO7zwwgtHHfe9997D7XZz0003HTOhUV3p6eksX74cq9XKZZdddlr7OhUDBgyostzlcvHpp5/icrmw2Wx1HJWIiNRbhoiIiJwSwKjO/0qvu+66inWnTJly1PLPP//cAIxOnToZW7durSh3u93G448/bgDGZZddVmmb2267zQCMUaNGGQUFBRXlixcvNoKCggzASEpKqrTNE088YQDG+++/X2WcSUlJR53Pzp07jcDAQCMoKMiYPXt2pWUzZ840fHx8jMTERKOkpKSi/P3336843wceeMBwuVwVy15++WUDMAYOHFhpX1u2bDH8/PwMu91ufPzxx5WWud1u48cffzSKi4sNwzCM7OxsIyAgwIiOjq50XMMwDJfLZTRr1syw2WzG3r17qzzP6px3udmzZxuA0apVq2rtqyrlP4/rrrvuuOsNHjzYAIy5c+eecJ/33HOPARjnnXdepZ/vn4/5xBNPnFrQIiLSIOkRABERkdN0rK7Zu3btqrTe6NGjq7yL/OyzzwLw6aef0qpVq0r7HT9+PN26dePLL78kIyMDgIKCAiZPnozVamXixIkEBARUbNOnTx/uvPPOGju3V155hYKCAp577jmGDx9eadmoUaO4/fbbSU1N5fvvvz9q2+bNm/PPf/4Tq/WPrxt33XUX4eHhLFq0iNLS0oryl19+meLiYm666aajRtC3WCyMHDkSh8MBQGhoKJdffjnp6el88803ldadNWsWu3fvZvTo0TRt2vS0z7/88YuoqKgql0+fPp1x48ZVej344INVrjt58uTjduWfN29etWJ65513eO211+jQoQOffPJJpZ+viIjI8egRABERkdN0rGkAg4KCKn2+4IILjlonLS2N1atX07p16yqfHbdYLPTv359Vq1axfPlyzj77bJYvX05RURF9+vShZcuWR21zxRVX8Pzzz5/i2VQ2a9YsAC666KIqlw8cOJDXXnuNJUuWMHbs2ErLhgwZgq+vb6Uyu91O8+bNWbFiBZmZmcTFxQEwZ84cAG699dZqxXXbbbfx3nvv8fbbb3PppZdWlL/99tsA3HLLLdXaz+lavXo1kydPrlSWlJRUMW7AkVq2bHnMLv3gGQPi4MGDxz3eb7/9xh133EFkZCTTp08nODj41AIXEZFGSQkAERGR01TdaQCbNWt2VFl5L4GtW7ee8Hn18h4A+/btAzwXmlX58+B/p6M8vvj4+GrFdqSEhIQq1y2/aC0pKakoS01NBagyoVGV3r1706NHD+bMmcPOnTtp3rw5Bw8eZPr06SQkJDBq1Khq7edEIiMjgarPD+DRRx/l0UcfBeDAgQMVCY2qDBgw4Li/K0OGDDluAiAlJYWLL74YwzD44osvaNGiRTXOQERE5A9KAIiIiNQRPz+/o8rcbjcATZo04eyzzz7u9se64K8p5bFUVXasXg7lzjjjjKPKartr+m233cYtt9zCu+++yzPPPMPkyZNxOp3ccMMNNTYwXpcuXQDYsWMHubm5hISE1Mh+T1ZBQQEXXHAB6enp/Oc//+Gss84yJQ4REanflAAQERExUfld8qioqGr3JCi/y5ySklLl8mOVl3fHz8/PP2qZy+XiwIEDVca3fft2XnrppYq74bUhMTGRrVu3sn37drp161atba688koefPBB3n//fcaPH88777yD1WrlxhtvrLG4YmJi6NmzJ8uXL+fzzz/npptuqrF9V5dhGFxzzTWsWbOG22+/ndtvv73OYxARkYZBo8aIiIiYKCEhgXbt2rFhwwa2bNlSrW169uyJv78/y5cvZ8eOHUctnzJlSpXblScOqjrO3LlzcTqdR5WPGDECgKlTp1YrtlNVPsDgW2+9Ve1tAgMDufrqq9m3bx8PPfQQW7du5eyzz67yUYvTUT6o3+OPP056enqN7rs6Hn/8caZOncpZZ53Fa6+9VufHFxGRhkMJABEREZM99thjuN1uLr74YlatWnXU8szMzIrB7cAzuOA111yDy+Xi7rvvpqioqGLZsmXLmDhxYpXHGTRoEAAfffRRpRkKdu7cyT333FPlNg888AD+/v48+OCDfP3110ctLykp4csvv2TPnj3VOdVjuvfee/Hz8+Ptt9/ms88+q7TMMAxmz55dacyAcrfddhvgmUUA4Oabbz6tOKpy+eWXc8kll7B//34GDBjAr7/+WuV6v//+e40f+7PPPuOZZ56hRYsWfPHFF9jt6rwpIiKnTv8XERERMdmVV17J+vXr+ec//0nPnj3p1q0bLVu2xDAMtm/fzpo1awgKCqp0cfvcc88xb948ZsyYQcuWLRk0aBBZWVn8/PPP3HrrrbzxxhtHHadly5Zce+21fPDBB3Tr1o1BgwZRWFjIokWLOPfccyksLDzq8YFWrVrx6aefcuWVV3LxxRfTqlUr2rdvT2BgIHv37mXFihUUFBSwcuXKYw76Vx1t2rTh/fff59prr+Xyyy/nqaeeokuXLuTk5LBu3TpSU1PJysqqmAqwXOfOnTnzzDNZuHAhTZo04fzzzz/lGI7n448/JiQkhPfee4/BgweTnJxM165dCQgI4ODBg2zZsoU9e/Zgt9u5/PLLa+y4//jHPwBo2rQpDzzwQJXrPPzww7Rr167GjikiIg2XEgAiIiJe4Nlnn+Xss89m4sSJLFiwgLVr1xISEkJ8fDy33357panuACIiIliwYAGPPfYYU6dOZdq0aTRv3px//etf3H///VUmAMAzTV7Tpk35+OOP+fHHH0lMTOTvf/87Dz/88DFH4B8zZgxr1qxhwoQJzJ49m9mzZ+Pj40PTpk05//zzueiii+jQocNp/wwuv/xyOnTowAsvvMDcuXP56quvCA8Pp3Xr1tx7771HTatYbujQoSxcuJDrr7++1u6Q+/r68u6773LbbbfxzjvvMG/ePH766SdKSkoIDw+nffv23HzzzVx77bU1OguDy+UCYP78+cyfP7/KdcaNG6cEgIiIVIvFMAzD7CBERESkZlksFpKSkip19W+IDMOgffv2bNmyhW3btp3S1HjJycmkpKTQkL4STZo0ieuvv54nnniC8ePHmx2OiIh4CfUAEBERkXrryy+/ZPPmzYwePfqULv6PNG7cOMDTE2HUqFE1EF3de/zxx9m9ezfbtm0zOxQREfFCSgCIiIhIvXPTTTeRnZ3Nd999h81m48knnzztfU6ePBmATp061dsEwLfffsvq1avNDkNERLyUHgEQERFpgBr6IwAWiwW73U7r1q156qmnuOSSS8wOSURExOspASAiIiIiIiLSCFjNDkBEREREREREap8SACIiIiIiIiKNgBIAIiIiIiIiIo2AEgAiIiIiIiIijYASACIiIiIiIiKNgBIAIiIiIiIiIo2AEgAiIiIiIiIijYASACIiIiIiIiKNwP8DJgkyqbsTYiwAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "params.plot(x='freq', y=['sigma_tb', 'sigma_tb_with_con_Xs'],\n", + " title=\"${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters\",\n", + " xlabel='Frequency [GHz]', ylabel='$\\sigma_{T_B}$ [K]',\n", + " label=[atm[atmp.TROPICAL], atm[atmp.TROPICAL] + ' with ${H_2 O}$ ${n_{CS}}$ parameter'], figsize=(12,8))\n", + "plt.grid()" + ] + } + ], + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + }, + "kernelspec": { + "display_name": "Python 3.9.5 64-bit", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.10" + }, + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + } + }, + "orig_nbformat": 2 + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/en/main/_sources/references.rst.txt b/en/main/_sources/references.rst.txt new file mode 100644 index 00000000..3bfe6f46 --- /dev/null +++ b/en/main/_sources/references.rst.txt @@ -0,0 +1,73 @@ +========== +References +========== + +.. [Hobbs1977] Hobbs, P. V., and J. M. Wallace, 1977: *Atmospheric Science: An Introductory Survey*. Academic Press, 350 pp. + +.. [Hobbs2006] Hobbs, P. V., and J. M. Wallace, 2006: Atmospheric Science: An Introductory Survey. 2nd ed. Academic Press, 504 pp. + +.. [NOAA1976] National Oceanic and Atmospheric Administration, National Aeronautics and Space Administration, and U. S. Air Force, 1976: `U. S. Standard Atmosphere 1976 `_, U.S. Government Printing Office, Washington, DC. + +.. [ANDERSON] ANDERSON et al. 1986 AFGL Atmospheric Constituent Profiles (0.120km): `ResearchGate PDF `_, AFGL-TR-86-0110 + +.. [PAYNE] Payne, V. H., Mlawer, E. J., Cady-Pereira, K. E., and Moncet, J.-L.: Water vapor continuum absorption in the microwave, IEEE T. Geosci. Remote, 49, 2194–2208, https://doi.org/10.1109/TGRS.2010.2091416, 2011. + +.. [August-1828] Alduchov, O. A., and R. E. Eskridge, 1996: Improved Magnus' form approximation of saturation vapor pressure. J. Appl. Meteor., 35, 601–609, http://journals.ametsoc.org/doi/abs/10.1175/1520-0450%281996%29035%3C0601%3AIMFAOS%3E2.0.CO%3B2. + +.. [Magnus-1844] Magnus, G., 1844: Versuche über die Spannkräfte des Wasserdampfs. Ann. Phys. Chem., 61, 225 – 247, http://onlinelibrary.wiley.com/doi/10.1002/andp.18441370202/abstract. + +.. [Bean-Dutton] Bradford R. Bean, E. J. Dutton: Radio Meteorology - Superintendentof Documents, U.S.GovernmentPrint.Office, 1966 - 435 pagine, https://books.google.it/books?id=Jw9RAAAAMAAJ&printsec=frontcover&hl=it&source=gbs_ge_summary_r&cad=0#v=onepage&q&f=false. + +.. [Jacobson] Jacobson, M. Z. Fundamentals of atmospheric modelling. Cambridge Eds., 2005. http://www.dca.ufcg.edu.br/mna/jacobson.pdf + +.. [Cimini-2018] Cimini, D., Rosenkranz, P. W., Tretyakov, M. Y., Koshelev, M. A., and Romano, F.: Uncertainty of atmospheric microwave absorption model: impact on ground-based radiometer simulations and retrievals, Atmos. Chem. Phys., 18, 15231–15259, https://doi.org/10.5194/acp-18-15231-2018, 2018. + +.. [Cimini-2019] Cimini, D., Hocking, J., De Angelis, F., Cersosimo, A., Di Paola, F., Gallucci, D., Gentile, S., Geraldi, E., Larosa, S., Nilo, S., Romano, F., Ricciardelli, E., Ripepi, E., Viggiano, M., Luini, L., Riva, C., Marzano, F. S., Martinet, P., Song, Y. Y., Ahn, M. H., and Rosenkranz, P. W.: RTTOV-gb v1.0 – updates on sensors, absorption models, uncertainty, and availability, Geosci. Model Dev., 12, 1833–1845, https://doi.org/10.5194/gmd-12-1833-2019, 2019. + +.. [Rosenkranz-2017] Rosenkranz, P. W.: Line-by-line microwave radiative transfer (non-scattering), Remote Sens. Code Library, https://doi.org/10.21982/M81013, 2017. + +.. [Rosenkranz-2015] Rosenkranz, P. W.: A Model for the Complex Dielectric Constant of Supercooled Liquid Water at Microwave Frequencies, IEEE Transactions on Geoscience and Remote Sensing, vol. 53, no. 3, pp. 1387-1393, March 2015, https://doi.org/10.1109/TGRS.2014.2339015. + +.. [Rosenkranz-1988] P.W. Rosenkranz, Interference coefficients for overlapping oxygen lines in air, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 39, Issue 4, 1988, Pages 287-297, https://doi.org/10.1016/0022-4073(88)90004-0. + +.. [Schroeder-Westwater-1991] Schroeder J.A. and E.R. Westwater, Users' Guide to WPL Microwave Radiative Transfer Software, NOAA Technical Memorandum ERL WPL-213, 1991, https://repository.library.noaa.gov/view/noaa/32511 + +.. [Schroeder-Westwater-1992] Schroeder J.A. and E.R. Westwater, “Guide to Microwave Weighting Function Calculations,” U.S. Dept. ofCommerce, National Oceanic and Atmospheric Administration, Wave Propagation Laboratory, July 1992. + +.. [Thayer-1974] Thayer, G. D. “An improved equation for the radio refractive index of air”. Radio Science, 9(10), 803-807. 1974. + +.. [Westwater-1972] Westwater, Ed R., Microwave emission from clouds, United States, National Oceanic and Atmospheric Administration;Environmental Research Laboratories (U.S.), 1972, https://repository.library.noaa.gov/view/noaa/22891 + +.. [Liebe-Layton] Liebe, Hans J. and Donald H. Layton. “Millimeter-wave properties of the atmosphere: Laboratory studies and propagation modeling.” (1987). + +.. [Liebe-Hufford-Manabe] Liebe H.J., G.A. Hufford and T. Manabe, “A model fo r the complex permittivity of water at frequenciesbelow 1 THz”, Internat. J. Infrared and mm Waves, Vol. 12, pp. 659-675 (1991). + +.. [Liebe-Hufford-Cotton] Liebe, H.J., G.A. Hufford, and M.G. Cotton, Propagation Modeling of Moist Air and SuspendedWater/Ice Particles at Frequencies Below 1000 GH z. AGARD Conference Proc. 542, AtmosphericPropagation Effects through Natural and Man-Made Obscurants for Visible to MM-Wave Radiation,pp.3.1-3.10 (1993). + +.. [Boissoles-2003] J. Boissoles, C. Boulet, R.H. Tipping, Alex Brown, Q. Ma, Theoretical calculation of the translation-rotation collision-induced absorption in N2–N2, O2–O2, and N2–O2 pairs, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 82, Issues 1–4, Pages 505-516, https://doi.org/10.1016/S0022-4073(03)00174-2, 2003. + +.. [Borysow-Frommhold-1986] Borysow, A., Frommhold, L., 1986, Collision-induced Rototranslational Absorption Spectra of N 2--N 2 Pairs for Temperatures from 50 to 300 K. The Astrophysical Journal 311, 1043. doi:10.1086/164841. + +.. [Mätzler-Rosenkranz-2006] Mätzler, C., Rosenkranz, P. W., Battaglia, A., and Wigneron, J. P.:Thermal microwave radiation – applications for remote sensing,no. 52 in IET, Electromagnetic Waves, London, UK, 2006. + +.. [Koshelev-2015] Koshelev, M. A., Vilkov, I. N., and Tretyakov, M. Yu.: Pressure broadening of oxygen fine structure lines by water, J. Quant. Spectrosc. Ra., 154, 24–27, https://doi.org/10.1016/j.jqsrt.2014.11.019, 2015.  + +.. [Koshelev-2011] Koshelev, M. A., Serov, E. A., Parshin, V. V., and Tretyakov, M. Yu.: Millimeter wave continuum absorption in moist nitrogen at temperatures 261–328 K, J. Quant. Spectrosc. Ra., 112, 2704–2712, https://doi.org/10.1016/j.jqsrt.2011.08.004, 2011.  + +.. [Koshelev-2018] Koshelev, M. A., Golubiatnikov, G. Yu., Vilkov, I. N., and Tretyakov, M. Yu.: Line shape parameters of the 22-GHz water line for accurate modeling in atmospheric applications, J. Quant. Spectrosc. Ra., 205, 51–58, https://doi.org/10.1016/j.jqsrt.2017.09.032, 2018.  + +.. [Koshelev-2017] M.A. Koshelev, T. Delahaye, E.A. Serov, I.N. Vilkov, C. Boulet, M.Yu. Tretyakov, Accurate modeling of the diagnostic 118-GHz oxygen line for remote sensing of the atmosphere, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 196, 2017, Pages 78-86, https://doi.org/10.1016/j.jqsrt.2017.03.043. + +.. [Turner-2009] Turner, D. D., Cadeddu, M. P., Löhnert, U., Crewell, S., and Vogelmann, A. M.: Modifications to the Water Vapor Continuum in the Microwave Suggested by Ground-Based 150-GHz Observations, IEEE T. Geosci. Remote, 47, 3326–3337, https://doi.org/10.1109/TGRS.2009.2022262, 2009. + +.. [Tretyakov-2016] Tretyakov, M. Yu.: Spectroscopy underlying microwave remote sensing of atmospheric water vapor, J. Mol. Spectrosc., 328, 7–26, https://doi.org/10.1016/j.jms.2016.06.006, 2016. + +.. [Alduchov-1996] Alduchov, O. A., and R. E. Eskridge, 1996: Improved Magnus Form Approximation of Saturation Vapor Pressure. J. Appl. Meteor. Climatol., 35, 601–609, https://doi.org/10.1175/1520-0450(1996)035<0601:IMFAOS>2.0.CO;2. + +.. [Odintsova-2022] T.A. Odintsova, A.O. Koroleva, A.A. Simonova, A. Campargue, M.Yu. Tretyakov. The atmospheric continuum in the “terahertz gap” region (15–700 cm−1): Review of experiments at SOLEIL synchrotron and modeling. Journal of Molecular Spectroscopy, 2022, 386, pp.111603. ⟨https://doi.org/10.1016/j.jms.2022.111603⟩. ⟨hal-03865589⟩ + +.. [Galanina-2022] Galanina, T. A., Koroleva, A. O., Simonova, A. A., Campargue, A., and Tretyakov, M. Y., “The water vapor self-continuum in the "terahertz gap" region (15-700 cm-1): Experiment versus MT_CKD-3.5 model”, Journal of Molecular Spectroscopy, vol. 389, 2022. https://doi.org/10.1016/j.jms.2022.111691. + +.. [Meshkov-DeLucia-2007] Andrey I. Meshkov, Frank C. De Lucia, Laboratory measurements of dry air atmospheric absorption with a millimeter wave cavity ringdown spectrometer, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 108, Issue 2, 2007, Pages 256-276, ISSN 0022-4073, https://doi.org/10.1016/j.jqsrt.2007.04.001. + +.. [Serov-2024] E.A. Serov, T.A. Galanina, A.O. Koroleva, D.S. Makarov, I.S. Amerkhanov, M.A. Koshelev, M.Yu. Tretyakov, D.N. Chistikov, A.A. Finenko, A.A. Vigasin, Continuum absorption in pure N2 gas and in its mixture with Ar, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 328, 2024, 109172, ISSN 0022-4073, https://doi.org/10.1016/j.jqsrt.2024.109172. \ No newline at end of file diff --git a/en/main/_sources/sg_execution_times.rst.txt b/en/main/_sources/sg_execution_times.rst.txt new file mode 100644 index 00000000..d199a501 --- /dev/null +++ b/en/main/_sources/sg_execution_times.rst.txt @@ -0,0 +1,79 @@ + +:orphan: + +.. _sphx_glr_sg_execution_times: + + +Computation times +================= +**09:08.777** total execution time for 15 files **from all galleries**: + +.. container:: + + .. raw:: html + + + + + + + + .. list-table:: + :header-rows: 1 + :class: table table-striped sg-datatable + + * - Example + - Time + - Mem (MB) + * - :ref:`sphx_glr_examples_uncertainty_tutorial.py` (``../script_examples/uncertainty_tutorial.py``) + - 04:31.371 + - 0.0 + * - :ref:`sphx_glr_examples_plot_brightness_temperature_uncertainties.py` (``../script_examples/plot_brightness_temperature_uncertainties.py``) + - 03:03.841 + - 0.0 + * - :ref:`sphx_glr_examples_generic_tutorial.py` (``../script_examples/generic_tutorial.py``) + - 00:15.012 + - 0.0 + * - :ref:`sphx_glr_examples_plot_bt_wyoming.py` (``../script_examples/plot_bt_wyoming.py``) + - 00:14.256 + - 0.0 + * - :ref:`sphx_glr_examples_plot_brightness_temperature_down.py` (``../script_examples/plot_brightness_temperature_down.py``) + - 00:12.680 + - 0.0 + * - :ref:`sphx_glr_examples_plot_brightness_temperature_wO3.py` (``../script_examples/plot_brightness_temperature_wO3.py``) + - 00:12.127 + - 0.0 + * - :ref:`sphx_glr_examples_plot_weighting_functions.py` (``../script_examples/plot_weighting_functions.py``) + - 00:09.727 + - 0.0 + * - :ref:`sphx_glr_examples_plot_brightness_temperature_up.py` (``../script_examples/plot_brightness_temperature_up.py``) + - 00:07.780 + - 0.0 + * - :ref:`sphx_glr_examples_plot_bt_igra2.py` (``../script_examples/plot_bt_igra2.py``) + - 00:07.631 + - 0.0 + * - :ref:`sphx_glr_examples_plot_bt_era5.py` (``../script_examples/plot_bt_era5.py``) + - 00:04.539 + - 0.0 + * - :ref:`sphx_glr_examples_plot_bt_era5_cloudy_profile.py` (``../script_examples/plot_bt_era5_cloudy_profile.py``) + - 00:04.233 + - 0.0 + * - :ref:`sphx_glr_examples_plot_model_cloudy.py` (``../script_examples/plot_model_cloudy.py``) + - 00:02.609 + - 0.0 + * - :ref:`sphx_glr_examples_plot_water_vapour_profile.py` (``../script_examples/plot_water_vapour_profile.py``) + - 00:01.503 + - 0.0 + * - :ref:`sphx_glr_examples_plot_log_dependance_tb.py` (``../script_examples/plot_log_dependance_tb.py``) + - 00:01.254 + - 0.0 + * - :ref:`sphx_glr_examples_plot_atmosphere.py` (``../script_examples/plot_atmosphere.py``) + - 00:00.211 + - 0.0 diff --git a/en/main/_sphinx_design_static/design-tabs.js b/en/main/_sphinx_design_static/design-tabs.js new file mode 100644 index 00000000..b25bd6a4 --- /dev/null +++ b/en/main/_sphinx_design_static/design-tabs.js @@ -0,0 +1,101 @@ +// @ts-check + +// Extra JS capability for selected tabs to be synced +// The selection is stored in local storage so that it persists across page loads. + +/** + * @type {Record} + */ +let sd_id_to_elements = {}; +const storageKeyPrefix = "sphinx-design-tab-id-"; + +/** + * Create a key for a tab element. + * @param {HTMLElement} el - The tab element. + * @returns {[string, string, string] | null} - The key. + * + */ +function create_key(el) { + let syncId = el.getAttribute("data-sync-id"); + let syncGroup = el.getAttribute("data-sync-group"); + if (!syncId || !syncGroup) return null; + return [syncGroup, syncId, syncGroup + "--" + syncId]; +} + +/** + * Initialize the tab selection. + * + */ +function ready() { + // Find all tabs with sync data + + /** @type {string[]} */ + let groups = []; + + document.querySelectorAll(".sd-tab-label").forEach((label) => { + if (label instanceof HTMLElement) { + let data = create_key(label); + if (data) { + let [group, id, key] = data; + + // add click event listener + // @ts-ignore + label.onclick = onSDLabelClick; + + // store map of key to elements + if (!sd_id_to_elements[key]) { + sd_id_to_elements[key] = []; + } + sd_id_to_elements[key].push(label); + + if (groups.indexOf(group) === -1) { + groups.push(group); + // Check if a specific tab has been selected via URL parameter + const tabParam = new URLSearchParams(window.location.search).get( + group + ); + if (tabParam) { + console.log( + "sphinx-design: Selecting tab id for group '" + + group + + "' from URL parameter: " + + tabParam + ); + window.sessionStorage.setItem(storageKeyPrefix + group, tabParam); + } + } + + // Check is a specific tab has been selected previously + let previousId = window.sessionStorage.getItem( + storageKeyPrefix + group + ); + if (previousId === id) { + // console.log( + // "sphinx-design: Selecting tab from session storage: " + id + // ); + // @ts-ignore + label.previousElementSibling.checked = true; + } + } + } + }); +} + +/** + * Activate other tabs with the same sync id. + * + * @this {HTMLElement} - The element that was clicked. + */ +function onSDLabelClick() { + let data = create_key(this); + if (!data) return; + let [group, id, key] = data; + for (const label of sd_id_to_elements[key]) { + if (label === this) continue; + // @ts-ignore + label.previousElementSibling.checked = true; + } + window.sessionStorage.setItem(storageKeyPrefix + group, id); +} + +document.addEventListener("DOMContentLoaded", ready, false); diff --git a/en/main/_sphinx_design_static/sphinx-design.5ea377869091fd0449014c60fc090103.min.css b/en/main/_sphinx_design_static/sphinx-design.5ea377869091fd0449014c60fc090103.min.css new file mode 100644 index 00000000..a325746f --- /dev/null +++ b/en/main/_sphinx_design_static/sphinx-design.5ea377869091fd0449014c60fc090103.min.css @@ -0,0 +1 @@ +.sd-bg-primary{background-color:var(--sd-color-primary) !important}.sd-bg-text-primary{color:var(--sd-color-primary-text) !important}button.sd-bg-primary:focus,button.sd-bg-primary:hover{background-color:var(--sd-color-primary-highlight) !important}a.sd-bg-primary:focus,a.sd-bg-primary:hover{background-color:var(--sd-color-primary-highlight) !important}.sd-bg-secondary{background-color:var(--sd-color-secondary) !important}.sd-bg-text-secondary{color:var(--sd-color-secondary-text) !important}button.sd-bg-secondary:focus,button.sd-bg-secondary:hover{background-color:var(--sd-color-secondary-highlight) !important}a.sd-bg-secondary:focus,a.sd-bg-secondary:hover{background-color:var(--sd-color-secondary-highlight) !important}.sd-bg-success{background-color:var(--sd-color-success) !important}.sd-bg-text-success{color:var(--sd-color-success-text) !important}button.sd-bg-success:focus,button.sd-bg-success:hover{background-color:var(--sd-color-success-highlight) !important}a.sd-bg-success:focus,a.sd-bg-success:hover{background-color:var(--sd-color-success-highlight) !important}.sd-bg-info{background-color:var(--sd-color-info) !important}.sd-bg-text-info{color:var(--sd-color-info-text) !important}button.sd-bg-info:focus,button.sd-bg-info:hover{background-color:var(--sd-color-info-highlight) !important}a.sd-bg-info:focus,a.sd-bg-info:hover{background-color:var(--sd-color-info-highlight) !important}.sd-bg-warning{background-color:var(--sd-color-warning) !important}.sd-bg-text-warning{color:var(--sd-color-warning-text) !important}button.sd-bg-warning:focus,button.sd-bg-warning:hover{background-color:var(--sd-color-warning-highlight) !important}a.sd-bg-warning:focus,a.sd-bg-warning:hover{background-color:var(--sd-color-warning-highlight) !important}.sd-bg-danger{background-color:var(--sd-color-danger) !important}.sd-bg-text-danger{color:var(--sd-color-danger-text) !important}button.sd-bg-danger:focus,button.sd-bg-danger:hover{background-color:var(--sd-color-danger-highlight) !important}a.sd-bg-danger:focus,a.sd-bg-danger:hover{background-color:var(--sd-color-danger-highlight) !important}.sd-bg-light{background-color:var(--sd-color-light) !important}.sd-bg-text-light{color:var(--sd-color-light-text) !important}button.sd-bg-light:focus,button.sd-bg-light:hover{background-color:var(--sd-color-light-highlight) !important}a.sd-bg-light:focus,a.sd-bg-light:hover{background-color:var(--sd-color-light-highlight) !important}.sd-bg-muted{background-color:var(--sd-color-muted) !important}.sd-bg-text-muted{color:var(--sd-color-muted-text) !important}button.sd-bg-muted:focus,button.sd-bg-muted:hover{background-color:var(--sd-color-muted-highlight) !important}a.sd-bg-muted:focus,a.sd-bg-muted:hover{background-color:var(--sd-color-muted-highlight) !important}.sd-bg-dark{background-color:var(--sd-color-dark) !important}.sd-bg-text-dark{color:var(--sd-color-dark-text) !important}button.sd-bg-dark:focus,button.sd-bg-dark:hover{background-color:var(--sd-color-dark-highlight) !important}a.sd-bg-dark:focus,a.sd-bg-dark:hover{background-color:var(--sd-color-dark-highlight) !important}.sd-bg-black{background-color:var(--sd-color-black) !important}.sd-bg-text-black{color:var(--sd-color-black-text) !important}button.sd-bg-black:focus,button.sd-bg-black:hover{background-color:var(--sd-color-black-highlight) !important}a.sd-bg-black:focus,a.sd-bg-black:hover{background-color:var(--sd-color-black-highlight) !important}.sd-bg-white{background-color:var(--sd-color-white) !important}.sd-bg-text-white{color:var(--sd-color-white-text) !important}button.sd-bg-white:focus,button.sd-bg-white:hover{background-color:var(--sd-color-white-highlight) !important}a.sd-bg-white:focus,a.sd-bg-white:hover{background-color:var(--sd-color-white-highlight) !important}.sd-text-primary,.sd-text-primary>p{color:var(--sd-color-primary) !important}a.sd-text-primary:focus,a.sd-text-primary:hover{color:var(--sd-color-primary-highlight) !important}.sd-text-secondary,.sd-text-secondary>p{color:var(--sd-color-secondary) !important}a.sd-text-secondary:focus,a.sd-text-secondary:hover{color:var(--sd-color-secondary-highlight) !important}.sd-text-success,.sd-text-success>p{color:var(--sd-color-success) !important}a.sd-text-success:focus,a.sd-text-success:hover{color:var(--sd-color-success-highlight) !important}.sd-text-info,.sd-text-info>p{color:var(--sd-color-info) !important}a.sd-text-info:focus,a.sd-text-info:hover{color:var(--sd-color-info-highlight) !important}.sd-text-warning,.sd-text-warning>p{color:var(--sd-color-warning) !important}a.sd-text-warning:focus,a.sd-text-warning:hover{color:var(--sd-color-warning-highlight) !important}.sd-text-danger,.sd-text-danger>p{color:var(--sd-color-danger) !important}a.sd-text-danger:focus,a.sd-text-danger:hover{color:var(--sd-color-danger-highlight) !important}.sd-text-light,.sd-text-light>p{color:var(--sd-color-light) !important}a.sd-text-light:focus,a.sd-text-light:hover{color:var(--sd-color-light-highlight) !important}.sd-text-muted,.sd-text-muted>p{color:var(--sd-color-muted) !important}a.sd-text-muted:focus,a.sd-text-muted:hover{color:var(--sd-color-muted-highlight) !important}.sd-text-dark,.sd-text-dark>p{color:var(--sd-color-dark) !important}a.sd-text-dark:focus,a.sd-text-dark:hover{color:var(--sd-color-dark-highlight) !important}.sd-text-black,.sd-text-black>p{color:var(--sd-color-black) !important}a.sd-text-black:focus,a.sd-text-black:hover{color:var(--sd-color-black-highlight) !important}.sd-text-white,.sd-text-white>p{color:var(--sd-color-white) !important}a.sd-text-white:focus,a.sd-text-white:hover{color:var(--sd-color-white-highlight) !important}.sd-outline-primary{border-color:var(--sd-color-primary) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-primary:focus,a.sd-outline-primary:hover{border-color:var(--sd-color-primary-highlight) !important}.sd-outline-secondary{border-color:var(--sd-color-secondary) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-secondary:focus,a.sd-outline-secondary:hover{border-color:var(--sd-color-secondary-highlight) !important}.sd-outline-success{border-color:var(--sd-color-success) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-success:focus,a.sd-outline-success:hover{border-color:var(--sd-color-success-highlight) !important}.sd-outline-info{border-color:var(--sd-color-info) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-info:focus,a.sd-outline-info:hover{border-color:var(--sd-color-info-highlight) !important}.sd-outline-warning{border-color:var(--sd-color-warning) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-warning:focus,a.sd-outline-warning:hover{border-color:var(--sd-color-warning-highlight) !important}.sd-outline-danger{border-color:var(--sd-color-danger) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-danger:focus,a.sd-outline-danger:hover{border-color:var(--sd-color-danger-highlight) !important}.sd-outline-light{border-color:var(--sd-color-light) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-light:focus,a.sd-outline-light:hover{border-color:var(--sd-color-light-highlight) !important}.sd-outline-muted{border-color:var(--sd-color-muted) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-muted:focus,a.sd-outline-muted:hover{border-color:var(--sd-color-muted-highlight) !important}.sd-outline-dark{border-color:var(--sd-color-dark) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-dark:focus,a.sd-outline-dark:hover{border-color:var(--sd-color-dark-highlight) !important}.sd-outline-black{border-color:var(--sd-color-black) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-black:focus,a.sd-outline-black:hover{border-color:var(--sd-color-black-highlight) !important}.sd-outline-white{border-color:var(--sd-color-white) !important;border-style:solid !important;border-width:1px !important}a.sd-outline-white:focus,a.sd-outline-white:hover{border-color:var(--sd-color-white-highlight) !important}.sd-bg-transparent{background-color:transparent !important}.sd-outline-transparent{border-color:transparent !important}.sd-text-transparent{color:transparent !important}.sd-p-0{padding:0 !important}.sd-pt-0,.sd-py-0{padding-top:0 !important}.sd-pr-0,.sd-px-0{padding-right:0 !important}.sd-pb-0,.sd-py-0{padding-bottom:0 !important}.sd-pl-0,.sd-px-0{padding-left:0 !important}.sd-p-1{padding:.25rem !important}.sd-pt-1,.sd-py-1{padding-top:.25rem !important}.sd-pr-1,.sd-px-1{padding-right:.25rem !important}.sd-pb-1,.sd-py-1{padding-bottom:.25rem !important}.sd-pl-1,.sd-px-1{padding-left:.25rem !important}.sd-p-2{padding:.5rem !important}.sd-pt-2,.sd-py-2{padding-top:.5rem !important}.sd-pr-2,.sd-px-2{padding-right:.5rem !important}.sd-pb-2,.sd-py-2{padding-bottom:.5rem !important}.sd-pl-2,.sd-px-2{padding-left:.5rem !important}.sd-p-3{padding:1rem !important}.sd-pt-3,.sd-py-3{padding-top:1rem !important}.sd-pr-3,.sd-px-3{padding-right:1rem !important}.sd-pb-3,.sd-py-3{padding-bottom:1rem !important}.sd-pl-3,.sd-px-3{padding-left:1rem !important}.sd-p-4{padding:1.5rem !important}.sd-pt-4,.sd-py-4{padding-top:1.5rem !important}.sd-pr-4,.sd-px-4{padding-right:1.5rem !important}.sd-pb-4,.sd-py-4{padding-bottom:1.5rem !important}.sd-pl-4,.sd-px-4{padding-left:1.5rem !important}.sd-p-5{padding:3rem !important}.sd-pt-5,.sd-py-5{padding-top:3rem !important}.sd-pr-5,.sd-px-5{padding-right:3rem !important}.sd-pb-5,.sd-py-5{padding-bottom:3rem !important}.sd-pl-5,.sd-px-5{padding-left:3rem !important}.sd-m-auto{margin:auto !important}.sd-mt-auto,.sd-my-auto{margin-top:auto !important}.sd-mr-auto,.sd-mx-auto{margin-right:auto !important}.sd-mb-auto,.sd-my-auto{margin-bottom:auto !important}.sd-ml-auto,.sd-mx-auto{margin-left:auto !important}.sd-m-0{margin:0 !important}.sd-mt-0,.sd-my-0{margin-top:0 !important}.sd-mr-0,.sd-mx-0{margin-right:0 !important}.sd-mb-0,.sd-my-0{margin-bottom:0 !important}.sd-ml-0,.sd-mx-0{margin-left:0 !important}.sd-m-1{margin:.25rem !important}.sd-mt-1,.sd-my-1{margin-top:.25rem !important}.sd-mr-1,.sd-mx-1{margin-right:.25rem !important}.sd-mb-1,.sd-my-1{margin-bottom:.25rem !important}.sd-ml-1,.sd-mx-1{margin-left:.25rem !important}.sd-m-2{margin:.5rem !important}.sd-mt-2,.sd-my-2{margin-top:.5rem !important}.sd-mr-2,.sd-mx-2{margin-right:.5rem !important}.sd-mb-2,.sd-my-2{margin-bottom:.5rem !important}.sd-ml-2,.sd-mx-2{margin-left:.5rem !important}.sd-m-3{margin:1rem !important}.sd-mt-3,.sd-my-3{margin-top:1rem !important}.sd-mr-3,.sd-mx-3{margin-right:1rem !important}.sd-mb-3,.sd-my-3{margin-bottom:1rem !important}.sd-ml-3,.sd-mx-3{margin-left:1rem !important}.sd-m-4{margin:1.5rem !important}.sd-mt-4,.sd-my-4{margin-top:1.5rem !important}.sd-mr-4,.sd-mx-4{margin-right:1.5rem !important}.sd-mb-4,.sd-my-4{margin-bottom:1.5rem !important}.sd-ml-4,.sd-mx-4{margin-left:1.5rem !important}.sd-m-5{margin:3rem !important}.sd-mt-5,.sd-my-5{margin-top:3rem !important}.sd-mr-5,.sd-mx-5{margin-right:3rem !important}.sd-mb-5,.sd-my-5{margin-bottom:3rem !important}.sd-ml-5,.sd-mx-5{margin-left:3rem !important}.sd-w-25{width:25% !important}.sd-w-50{width:50% !important}.sd-w-75{width:75% !important}.sd-w-100{width:100% !important}.sd-w-auto{width:auto !important}.sd-h-25{height:25% !important}.sd-h-50{height:50% !important}.sd-h-75{height:75% !important}.sd-h-100{height:100% !important}.sd-h-auto{height:auto !important}.sd-d-none{display:none !important}.sd-d-inline{display:inline !important}.sd-d-inline-block{display:inline-block !important}.sd-d-block{display:block !important}.sd-d-grid{display:grid !important}.sd-d-flex-row{display:-ms-flexbox !important;display:flex !important;flex-direction:row !important}.sd-d-flex-column{display:-ms-flexbox !important;display:flex !important;flex-direction:column !important}.sd-d-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}@media(min-width: 576px){.sd-d-sm-none{display:none !important}.sd-d-sm-inline{display:inline !important}.sd-d-sm-inline-block{display:inline-block !important}.sd-d-sm-block{display:block !important}.sd-d-sm-grid{display:grid !important}.sd-d-sm-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-sm-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}@media(min-width: 768px){.sd-d-md-none{display:none !important}.sd-d-md-inline{display:inline !important}.sd-d-md-inline-block{display:inline-block !important}.sd-d-md-block{display:block !important}.sd-d-md-grid{display:grid !important}.sd-d-md-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-md-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}@media(min-width: 992px){.sd-d-lg-none{display:none !important}.sd-d-lg-inline{display:inline !important}.sd-d-lg-inline-block{display:inline-block !important}.sd-d-lg-block{display:block !important}.sd-d-lg-grid{display:grid !important}.sd-d-lg-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-lg-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}@media(min-width: 1200px){.sd-d-xl-none{display:none !important}.sd-d-xl-inline{display:inline !important}.sd-d-xl-inline-block{display:inline-block !important}.sd-d-xl-block{display:block !important}.sd-d-xl-grid{display:grid !important}.sd-d-xl-flex{display:-ms-flexbox !important;display:flex !important}.sd-d-xl-inline-flex{display:-ms-inline-flexbox !important;display:inline-flex !important}}.sd-align-major-start{justify-content:flex-start !important}.sd-align-major-end{justify-content:flex-end !important}.sd-align-major-center{justify-content:center !important}.sd-align-major-justify{justify-content:space-between !important}.sd-align-major-spaced{justify-content:space-evenly !important}.sd-align-minor-start{align-items:flex-start !important}.sd-align-minor-end{align-items:flex-end !important}.sd-align-minor-center{align-items:center !important}.sd-align-minor-stretch{align-items:stretch !important}.sd-text-justify{text-align:justify !important}.sd-text-left{text-align:left !important}.sd-text-right{text-align:right !important}.sd-text-center{text-align:center !important}.sd-font-weight-light{font-weight:300 !important}.sd-font-weight-lighter{font-weight:lighter !important}.sd-font-weight-normal{font-weight:400 !important}.sd-font-weight-bold{font-weight:700 !important}.sd-font-weight-bolder{font-weight:bolder !important}.sd-font-italic{font-style:italic !important}.sd-text-decoration-none{text-decoration:none !important}.sd-text-lowercase{text-transform:lowercase !important}.sd-text-uppercase{text-transform:uppercase !important}.sd-text-capitalize{text-transform:capitalize !important}.sd-text-wrap{white-space:normal !important}.sd-text-nowrap{white-space:nowrap !important}.sd-text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sd-fs-1,.sd-fs-1>p{font-size:calc(1.375rem + 1.5vw) !important;line-height:unset !important}.sd-fs-2,.sd-fs-2>p{font-size:calc(1.325rem + 0.9vw) !important;line-height:unset !important}.sd-fs-3,.sd-fs-3>p{font-size:calc(1.3rem + 0.6vw) !important;line-height:unset !important}.sd-fs-4,.sd-fs-4>p{font-size:calc(1.275rem + 0.3vw) !important;line-height:unset !important}.sd-fs-5,.sd-fs-5>p{font-size:1.25rem !important;line-height:unset !important}.sd-fs-6,.sd-fs-6>p{font-size:1rem !important;line-height:unset !important}.sd-border-0{border:0 solid !important}.sd-border-top-0{border-top:0 solid !important}.sd-border-bottom-0{border-bottom:0 solid !important}.sd-border-right-0{border-right:0 solid !important}.sd-border-left-0{border-left:0 solid !important}.sd-border-1{border:1px solid !important}.sd-border-top-1{border-top:1px solid !important}.sd-border-bottom-1{border-bottom:1px solid !important}.sd-border-right-1{border-right:1px solid !important}.sd-border-left-1{border-left:1px solid !important}.sd-border-2{border:2px solid !important}.sd-border-top-2{border-top:2px solid !important}.sd-border-bottom-2{border-bottom:2px solid !important}.sd-border-right-2{border-right:2px solid !important}.sd-border-left-2{border-left:2px solid !important}.sd-border-3{border:3px solid !important}.sd-border-top-3{border-top:3px solid !important}.sd-border-bottom-3{border-bottom:3px solid !important}.sd-border-right-3{border-right:3px solid !important}.sd-border-left-3{border-left:3px solid !important}.sd-border-4{border:4px solid !important}.sd-border-top-4{border-top:4px solid !important}.sd-border-bottom-4{border-bottom:4px solid !important}.sd-border-right-4{border-right:4px solid !important}.sd-border-left-4{border-left:4px solid !important}.sd-border-5{border:5px solid !important}.sd-border-top-5{border-top:5px solid !important}.sd-border-bottom-5{border-bottom:5px solid !important}.sd-border-right-5{border-right:5px solid !important}.sd-border-left-5{border-left:5px solid !important}.sd-rounded-0{border-radius:0 !important}.sd-rounded-1{border-radius:.2rem !important}.sd-rounded-2{border-radius:.3rem !important}.sd-rounded-3{border-radius:.5rem !important}.sd-rounded-pill{border-radius:50rem !important}.sd-rounded-circle{border-radius:50% !important}.shadow-none{box-shadow:none !important}.sd-shadow-sm{box-shadow:0 .125rem .25rem var(--sd-color-shadow) !important}.sd-shadow-md{box-shadow:0 .5rem 1rem var(--sd-color-shadow) !important}.sd-shadow-lg{box-shadow:0 1rem 3rem var(--sd-color-shadow) !important}@keyframes sd-slide-from-left{0%{transform:translateX(-100%)}100%{transform:translateX(0)}}@keyframes sd-slide-from-right{0%{transform:translateX(200%)}100%{transform:translateX(0)}}@keyframes sd-grow100{0%{transform:scale(0);opacity:.5}100%{transform:scale(1);opacity:1}}@keyframes sd-grow50{0%{transform:scale(0.5);opacity:.5}100%{transform:scale(1);opacity:1}}@keyframes sd-grow50-rot20{0%{transform:scale(0.5) rotateZ(-20deg);opacity:.5}75%{transform:scale(1) rotateZ(5deg);opacity:1}95%{transform:scale(1) rotateZ(-1deg);opacity:1}100%{transform:scale(1) rotateZ(0);opacity:1}}.sd-animate-slide-from-left{animation:1s ease-out 0s 1 normal none running sd-slide-from-left}.sd-animate-slide-from-right{animation:1s ease-out 0s 1 normal none running sd-slide-from-right}.sd-animate-grow100{animation:1s ease-out 0s 1 normal none running sd-grow100}.sd-animate-grow50{animation:1s ease-out 0s 1 normal none running sd-grow50}.sd-animate-grow50-rot20{animation:1s ease-out 0s 1 normal none running sd-grow50-rot20}.sd-badge{display:inline-block;padding:.35em .65em;font-size:.75em;font-weight:700;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.sd-badge:empty{display:none}a.sd-badge{text-decoration:none}.sd-btn .sd-badge{position:relative;top:-1px}.sd-btn{background-color:transparent;border:1px solid transparent;border-radius:.25rem;cursor:pointer;display:inline-block;font-weight:400;font-size:1rem;line-height:1.5;padding:.375rem .75rem;text-align:center;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;vertical-align:middle;user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none}.sd-btn:hover{text-decoration:none}@media(prefers-reduced-motion: reduce){.sd-btn{transition:none}}.sd-btn-primary,.sd-btn-outline-primary:hover,.sd-btn-outline-primary:focus{color:var(--sd-color-primary-text) !important;background-color:var(--sd-color-primary) !important;border-color:var(--sd-color-primary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-primary:hover,.sd-btn-primary:focus{color:var(--sd-color-primary-text) !important;background-color:var(--sd-color-primary-highlight) !important;border-color:var(--sd-color-primary-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-primary{color:var(--sd-color-primary) !important;border-color:var(--sd-color-primary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-secondary,.sd-btn-outline-secondary:hover,.sd-btn-outline-secondary:focus{color:var(--sd-color-secondary-text) !important;background-color:var(--sd-color-secondary) !important;border-color:var(--sd-color-secondary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-secondary:hover,.sd-btn-secondary:focus{color:var(--sd-color-secondary-text) !important;background-color:var(--sd-color-secondary-highlight) !important;border-color:var(--sd-color-secondary-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-secondary{color:var(--sd-color-secondary) !important;border-color:var(--sd-color-secondary) !important;border-width:1px !important;border-style:solid !important}.sd-btn-success,.sd-btn-outline-success:hover,.sd-btn-outline-success:focus{color:var(--sd-color-success-text) !important;background-color:var(--sd-color-success) !important;border-color:var(--sd-color-success) !important;border-width:1px !important;border-style:solid !important}.sd-btn-success:hover,.sd-btn-success:focus{color:var(--sd-color-success-text) !important;background-color:var(--sd-color-success-highlight) !important;border-color:var(--sd-color-success-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-success{color:var(--sd-color-success) !important;border-color:var(--sd-color-success) !important;border-width:1px !important;border-style:solid !important}.sd-btn-info,.sd-btn-outline-info:hover,.sd-btn-outline-info:focus{color:var(--sd-color-info-text) !important;background-color:var(--sd-color-info) !important;border-color:var(--sd-color-info) !important;border-width:1px !important;border-style:solid !important}.sd-btn-info:hover,.sd-btn-info:focus{color:var(--sd-color-info-text) !important;background-color:var(--sd-color-info-highlight) !important;border-color:var(--sd-color-info-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-info{color:var(--sd-color-info) !important;border-color:var(--sd-color-info) !important;border-width:1px !important;border-style:solid !important}.sd-btn-warning,.sd-btn-outline-warning:hover,.sd-btn-outline-warning:focus{color:var(--sd-color-warning-text) !important;background-color:var(--sd-color-warning) !important;border-color:var(--sd-color-warning) !important;border-width:1px !important;border-style:solid !important}.sd-btn-warning:hover,.sd-btn-warning:focus{color:var(--sd-color-warning-text) !important;background-color:var(--sd-color-warning-highlight) !important;border-color:var(--sd-color-warning-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-warning{color:var(--sd-color-warning) !important;border-color:var(--sd-color-warning) !important;border-width:1px !important;border-style:solid !important}.sd-btn-danger,.sd-btn-outline-danger:hover,.sd-btn-outline-danger:focus{color:var(--sd-color-danger-text) !important;background-color:var(--sd-color-danger) !important;border-color:var(--sd-color-danger) !important;border-width:1px !important;border-style:solid !important}.sd-btn-danger:hover,.sd-btn-danger:focus{color:var(--sd-color-danger-text) !important;background-color:var(--sd-color-danger-highlight) !important;border-color:var(--sd-color-danger-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-danger{color:var(--sd-color-danger) !important;border-color:var(--sd-color-danger) !important;border-width:1px !important;border-style:solid !important}.sd-btn-light,.sd-btn-outline-light:hover,.sd-btn-outline-light:focus{color:var(--sd-color-light-text) !important;background-color:var(--sd-color-light) !important;border-color:var(--sd-color-light) !important;border-width:1px !important;border-style:solid !important}.sd-btn-light:hover,.sd-btn-light:focus{color:var(--sd-color-light-text) !important;background-color:var(--sd-color-light-highlight) !important;border-color:var(--sd-color-light-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-light{color:var(--sd-color-light) !important;border-color:var(--sd-color-light) !important;border-width:1px !important;border-style:solid !important}.sd-btn-muted,.sd-btn-outline-muted:hover,.sd-btn-outline-muted:focus{color:var(--sd-color-muted-text) !important;background-color:var(--sd-color-muted) !important;border-color:var(--sd-color-muted) !important;border-width:1px !important;border-style:solid !important}.sd-btn-muted:hover,.sd-btn-muted:focus{color:var(--sd-color-muted-text) !important;background-color:var(--sd-color-muted-highlight) !important;border-color:var(--sd-color-muted-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-muted{color:var(--sd-color-muted) !important;border-color:var(--sd-color-muted) !important;border-width:1px !important;border-style:solid !important}.sd-btn-dark,.sd-btn-outline-dark:hover,.sd-btn-outline-dark:focus{color:var(--sd-color-dark-text) !important;background-color:var(--sd-color-dark) !important;border-color:var(--sd-color-dark) !important;border-width:1px !important;border-style:solid !important}.sd-btn-dark:hover,.sd-btn-dark:focus{color:var(--sd-color-dark-text) !important;background-color:var(--sd-color-dark-highlight) !important;border-color:var(--sd-color-dark-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-dark{color:var(--sd-color-dark) !important;border-color:var(--sd-color-dark) !important;border-width:1px !important;border-style:solid !important}.sd-btn-black,.sd-btn-outline-black:hover,.sd-btn-outline-black:focus{color:var(--sd-color-black-text) !important;background-color:var(--sd-color-black) !important;border-color:var(--sd-color-black) !important;border-width:1px !important;border-style:solid !important}.sd-btn-black:hover,.sd-btn-black:focus{color:var(--sd-color-black-text) !important;background-color:var(--sd-color-black-highlight) !important;border-color:var(--sd-color-black-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-black{color:var(--sd-color-black) !important;border-color:var(--sd-color-black) !important;border-width:1px !important;border-style:solid !important}.sd-btn-white,.sd-btn-outline-white:hover,.sd-btn-outline-white:focus{color:var(--sd-color-white-text) !important;background-color:var(--sd-color-white) !important;border-color:var(--sd-color-white) !important;border-width:1px !important;border-style:solid !important}.sd-btn-white:hover,.sd-btn-white:focus{color:var(--sd-color-white-text) !important;background-color:var(--sd-color-white-highlight) !important;border-color:var(--sd-color-white-highlight) !important;border-width:1px !important;border-style:solid !important}.sd-btn-outline-white{color:var(--sd-color-white) !important;border-color:var(--sd-color-white) !important;border-width:1px !important;border-style:solid !important}.sd-stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.sd-hide-link-text{font-size:0}.sd-octicon,.sd-material-icon{display:inline-block;fill:currentColor;vertical-align:middle}.sd-avatar-xs{border-radius:50%;object-fit:cover;object-position:center;width:1rem;height:1rem}.sd-avatar-sm{border-radius:50%;object-fit:cover;object-position:center;width:3rem;height:3rem}.sd-avatar-md{border-radius:50%;object-fit:cover;object-position:center;width:5rem;height:5rem}.sd-avatar-lg{border-radius:50%;object-fit:cover;object-position:center;width:7rem;height:7rem}.sd-avatar-xl{border-radius:50%;object-fit:cover;object-position:center;width:10rem;height:10rem}.sd-avatar-inherit{border-radius:50%;object-fit:cover;object-position:center;width:inherit;height:inherit}.sd-avatar-initial{border-radius:50%;object-fit:cover;object-position:center;width:initial;height:initial}.sd-card{background-clip:border-box;background-color:var(--sd-color-card-background);border:1px solid var(--sd-color-card-border);border-radius:.25rem;color:var(--sd-color-card-text);display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;min-width:0;position:relative;word-wrap:break-word}.sd-card>hr{margin-left:0;margin-right:0}.sd-card-hover:hover{border-color:var(--sd-color-card-border-hover);transform:scale(1.01)}.sd-card-body{-ms-flex:1 1 auto;flex:1 1 auto;padding:1rem 1rem}.sd-card-title{margin-bottom:.5rem}.sd-card-subtitle{margin-top:-0.25rem;margin-bottom:0}.sd-card-text:last-child{margin-bottom:0}.sd-card-link:hover{text-decoration:none}.sd-card-link+.card-link{margin-left:1rem}.sd-card-header{padding:.5rem 1rem;margin-bottom:0;background-color:var(--sd-color-card-header);border-bottom:1px solid var(--sd-color-card-border)}.sd-card-header:first-child{border-radius:calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0}.sd-card-footer{padding:.5rem 1rem;background-color:var(--sd-color-card-footer);border-top:1px solid var(--sd-color-card-border)}.sd-card-footer:last-child{border-radius:0 0 calc(0.25rem - 1px) calc(0.25rem - 1px)}.sd-card-header-tabs{margin-right:-0.5rem;margin-bottom:-0.5rem;margin-left:-0.5rem;border-bottom:0}.sd-card-header-pills{margin-right:-0.5rem;margin-left:-0.5rem}.sd-card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem;border-radius:calc(0.25rem - 1px)}.sd-card-img,.sd-card-img-bottom,.sd-card-img-top{width:100%}.sd-card-img,.sd-card-img-top{border-top-left-radius:calc(0.25rem - 1px);border-top-right-radius:calc(0.25rem - 1px)}.sd-card-img,.sd-card-img-bottom{border-bottom-left-radius:calc(0.25rem - 1px);border-bottom-right-radius:calc(0.25rem - 1px)}.sd-cards-carousel{width:100%;display:flex;flex-wrap:nowrap;-ms-flex-direction:row;flex-direction:row;overflow-x:hidden;scroll-snap-type:x mandatory}.sd-cards-carousel.sd-show-scrollbar{overflow-x:auto}.sd-cards-carousel:hover,.sd-cards-carousel:focus{overflow-x:auto}.sd-cards-carousel>.sd-card{flex-shrink:0;scroll-snap-align:start}.sd-cards-carousel>.sd-card:not(:last-child){margin-right:3px}.sd-card-cols-1>.sd-card{width:90%}.sd-card-cols-2>.sd-card{width:45%}.sd-card-cols-3>.sd-card{width:30%}.sd-card-cols-4>.sd-card{width:22.5%}.sd-card-cols-5>.sd-card{width:18%}.sd-card-cols-6>.sd-card{width:15%}.sd-card-cols-7>.sd-card{width:12.8571428571%}.sd-card-cols-8>.sd-card{width:11.25%}.sd-card-cols-9>.sd-card{width:10%}.sd-card-cols-10>.sd-card{width:9%}.sd-card-cols-11>.sd-card{width:8.1818181818%}.sd-card-cols-12>.sd-card{width:7.5%}.sd-container,.sd-container-fluid,.sd-container-lg,.sd-container-md,.sd-container-sm,.sd-container-xl{margin-left:auto;margin-right:auto;padding-left:var(--sd-gutter-x, 0.75rem);padding-right:var(--sd-gutter-x, 0.75rem);width:100%}@media(min-width: 576px){.sd-container-sm,.sd-container{max-width:540px}}@media(min-width: 768px){.sd-container-md,.sd-container-sm,.sd-container{max-width:720px}}@media(min-width: 992px){.sd-container-lg,.sd-container-md,.sd-container-sm,.sd-container{max-width:960px}}@media(min-width: 1200px){.sd-container-xl,.sd-container-lg,.sd-container-md,.sd-container-sm,.sd-container{max-width:1140px}}.sd-row{--sd-gutter-x: 1.5rem;--sd-gutter-y: 0;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:calc(var(--sd-gutter-y) * -1);margin-right:calc(var(--sd-gutter-x) * -0.5);margin-left:calc(var(--sd-gutter-x) * -0.5)}.sd-row>*{box-sizing:border-box;flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--sd-gutter-x) * 0.5);padding-left:calc(var(--sd-gutter-x) * 0.5);margin-top:var(--sd-gutter-y)}.sd-col{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-auto>*{flex:0 0 auto;width:auto}.sd-row-cols-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}@media(min-width: 576px){.sd-col-sm{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-sm-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-sm-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-sm-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-sm-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-sm-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-sm-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-sm-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-sm-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-sm-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-sm-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-sm-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-sm-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-sm-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}@media(min-width: 768px){.sd-col-md{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-md-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-md-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-md-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-md-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-md-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-md-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-md-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-md-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-md-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-md-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-md-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-md-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-md-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}@media(min-width: 992px){.sd-col-lg{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-lg-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-lg-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-lg-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-lg-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-lg-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-lg-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-lg-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-lg-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-lg-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-lg-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-lg-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-lg-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-lg-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}@media(min-width: 1200px){.sd-col-xl{flex:1 0 0%;-ms-flex:1 0 0%}.sd-row-cols-xl-auto{flex:1 0 auto;-ms-flex:1 0 auto;width:100%}.sd-row-cols-xl-1>*{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-row-cols-xl-2>*{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-row-cols-xl-3>*{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-row-cols-xl-4>*{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-row-cols-xl-5>*{flex:0 0 auto;-ms-flex:0 0 auto;width:20%}.sd-row-cols-xl-6>*{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-row-cols-xl-7>*{flex:0 0 auto;-ms-flex:0 0 auto;width:14.2857142857%}.sd-row-cols-xl-8>*{flex:0 0 auto;-ms-flex:0 0 auto;width:12.5%}.sd-row-cols-xl-9>*{flex:0 0 auto;-ms-flex:0 0 auto;width:11.1111111111%}.sd-row-cols-xl-10>*{flex:0 0 auto;-ms-flex:0 0 auto;width:10%}.sd-row-cols-xl-11>*{flex:0 0 auto;-ms-flex:0 0 auto;width:9.0909090909%}.sd-row-cols-xl-12>*{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}}.sd-col-auto{flex:0 0 auto;-ms-flex:0 0 auto;width:auto}.sd-col-1{flex:0 0 auto;-ms-flex:0 0 auto;width:8.3333333333%}.sd-col-2{flex:0 0 auto;-ms-flex:0 0 auto;width:16.6666666667%}.sd-col-3{flex:0 0 auto;-ms-flex:0 0 auto;width:25%}.sd-col-4{flex:0 0 auto;-ms-flex:0 0 auto;width:33.3333333333%}.sd-col-5{flex:0 0 auto;-ms-flex:0 0 auto;width:41.6666666667%}.sd-col-6{flex:0 0 auto;-ms-flex:0 0 auto;width:50%}.sd-col-7{flex:0 0 auto;-ms-flex:0 0 auto;width:58.3333333333%}.sd-col-8{flex:0 0 auto;-ms-flex:0 0 auto;width:66.6666666667%}.sd-col-9{flex:0 0 auto;-ms-flex:0 0 auto;width:75%}.sd-col-10{flex:0 0 auto;-ms-flex:0 0 auto;width:83.3333333333%}.sd-col-11{flex:0 0 auto;-ms-flex:0 0 auto;width:91.6666666667%}.sd-col-12{flex:0 0 auto;-ms-flex:0 0 auto;width:100%}.sd-g-0,.sd-gy-0{--sd-gutter-y: 0}.sd-g-0,.sd-gx-0{--sd-gutter-x: 0}.sd-g-1,.sd-gy-1{--sd-gutter-y: 0.25rem}.sd-g-1,.sd-gx-1{--sd-gutter-x: 0.25rem}.sd-g-2,.sd-gy-2{--sd-gutter-y: 0.5rem}.sd-g-2,.sd-gx-2{--sd-gutter-x: 0.5rem}.sd-g-3,.sd-gy-3{--sd-gutter-y: 1rem}.sd-g-3,.sd-gx-3{--sd-gutter-x: 1rem}.sd-g-4,.sd-gy-4{--sd-gutter-y: 1.5rem}.sd-g-4,.sd-gx-4{--sd-gutter-x: 1.5rem}.sd-g-5,.sd-gy-5{--sd-gutter-y: 3rem}.sd-g-5,.sd-gx-5{--sd-gutter-x: 3rem}@media(min-width: 576px){.sd-col-sm-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-sm-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-sm-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-sm-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-sm-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-sm-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-sm-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-sm-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-sm-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-sm-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-sm-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-sm-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-sm-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-sm-0,.sd-gy-sm-0{--sd-gutter-y: 0}.sd-g-sm-0,.sd-gx-sm-0{--sd-gutter-x: 0}.sd-g-sm-1,.sd-gy-sm-1{--sd-gutter-y: 0.25rem}.sd-g-sm-1,.sd-gx-sm-1{--sd-gutter-x: 0.25rem}.sd-g-sm-2,.sd-gy-sm-2{--sd-gutter-y: 0.5rem}.sd-g-sm-2,.sd-gx-sm-2{--sd-gutter-x: 0.5rem}.sd-g-sm-3,.sd-gy-sm-3{--sd-gutter-y: 1rem}.sd-g-sm-3,.sd-gx-sm-3{--sd-gutter-x: 1rem}.sd-g-sm-4,.sd-gy-sm-4{--sd-gutter-y: 1.5rem}.sd-g-sm-4,.sd-gx-sm-4{--sd-gutter-x: 1.5rem}.sd-g-sm-5,.sd-gy-sm-5{--sd-gutter-y: 3rem}.sd-g-sm-5,.sd-gx-sm-5{--sd-gutter-x: 3rem}}@media(min-width: 768px){.sd-col-md-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-md-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-md-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-md-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-md-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-md-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-md-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-md-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-md-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-md-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-md-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-md-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-md-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-md-0,.sd-gy-md-0{--sd-gutter-y: 0}.sd-g-md-0,.sd-gx-md-0{--sd-gutter-x: 0}.sd-g-md-1,.sd-gy-md-1{--sd-gutter-y: 0.25rem}.sd-g-md-1,.sd-gx-md-1{--sd-gutter-x: 0.25rem}.sd-g-md-2,.sd-gy-md-2{--sd-gutter-y: 0.5rem}.sd-g-md-2,.sd-gx-md-2{--sd-gutter-x: 0.5rem}.sd-g-md-3,.sd-gy-md-3{--sd-gutter-y: 1rem}.sd-g-md-3,.sd-gx-md-3{--sd-gutter-x: 1rem}.sd-g-md-4,.sd-gy-md-4{--sd-gutter-y: 1.5rem}.sd-g-md-4,.sd-gx-md-4{--sd-gutter-x: 1.5rem}.sd-g-md-5,.sd-gy-md-5{--sd-gutter-y: 3rem}.sd-g-md-5,.sd-gx-md-5{--sd-gutter-x: 3rem}}@media(min-width: 992px){.sd-col-lg-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-lg-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-lg-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-lg-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-lg-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-lg-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-lg-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-lg-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-lg-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-lg-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-lg-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-lg-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-lg-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-lg-0,.sd-gy-lg-0{--sd-gutter-y: 0}.sd-g-lg-0,.sd-gx-lg-0{--sd-gutter-x: 0}.sd-g-lg-1,.sd-gy-lg-1{--sd-gutter-y: 0.25rem}.sd-g-lg-1,.sd-gx-lg-1{--sd-gutter-x: 0.25rem}.sd-g-lg-2,.sd-gy-lg-2{--sd-gutter-y: 0.5rem}.sd-g-lg-2,.sd-gx-lg-2{--sd-gutter-x: 0.5rem}.sd-g-lg-3,.sd-gy-lg-3{--sd-gutter-y: 1rem}.sd-g-lg-3,.sd-gx-lg-3{--sd-gutter-x: 1rem}.sd-g-lg-4,.sd-gy-lg-4{--sd-gutter-y: 1.5rem}.sd-g-lg-4,.sd-gx-lg-4{--sd-gutter-x: 1.5rem}.sd-g-lg-5,.sd-gy-lg-5{--sd-gutter-y: 3rem}.sd-g-lg-5,.sd-gx-lg-5{--sd-gutter-x: 3rem}}@media(min-width: 1200px){.sd-col-xl-auto{-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.sd-col-xl-1{-ms-flex:0 0 auto;flex:0 0 auto;width:8.3333333333%}.sd-col-xl-2{-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.sd-col-xl-3{-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.sd-col-xl-4{-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.sd-col-xl-5{-ms-flex:0 0 auto;flex:0 0 auto;width:41.6666666667%}.sd-col-xl-6{-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.sd-col-xl-7{-ms-flex:0 0 auto;flex:0 0 auto;width:58.3333333333%}.sd-col-xl-8{-ms-flex:0 0 auto;flex:0 0 auto;width:66.6666666667%}.sd-col-xl-9{-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.sd-col-xl-10{-ms-flex:0 0 auto;flex:0 0 auto;width:83.3333333333%}.sd-col-xl-11{-ms-flex:0 0 auto;flex:0 0 auto;width:91.6666666667%}.sd-col-xl-12{-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.sd-g-xl-0,.sd-gy-xl-0{--sd-gutter-y: 0}.sd-g-xl-0,.sd-gx-xl-0{--sd-gutter-x: 0}.sd-g-xl-1,.sd-gy-xl-1{--sd-gutter-y: 0.25rem}.sd-g-xl-1,.sd-gx-xl-1{--sd-gutter-x: 0.25rem}.sd-g-xl-2,.sd-gy-xl-2{--sd-gutter-y: 0.5rem}.sd-g-xl-2,.sd-gx-xl-2{--sd-gutter-x: 0.5rem}.sd-g-xl-3,.sd-gy-xl-3{--sd-gutter-y: 1rem}.sd-g-xl-3,.sd-gx-xl-3{--sd-gutter-x: 1rem}.sd-g-xl-4,.sd-gy-xl-4{--sd-gutter-y: 1.5rem}.sd-g-xl-4,.sd-gx-xl-4{--sd-gutter-x: 1.5rem}.sd-g-xl-5,.sd-gy-xl-5{--sd-gutter-y: 3rem}.sd-g-xl-5,.sd-gx-xl-5{--sd-gutter-x: 3rem}}.sd-flex-row-reverse{flex-direction:row-reverse !important}details.sd-dropdown{position:relative;font-size:var(--sd-fontsize-dropdown)}details.sd-dropdown:hover{cursor:pointer}details.sd-dropdown .sd-summary-content{cursor:default}details.sd-dropdown summary.sd-summary-title{padding:.5em 1em;font-size:var(--sd-fontsize-dropdown-title);font-weight:var(--sd-fontweight-dropdown-title);user-select:none;-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;list-style:none;display:inline-flex;justify-content:space-between}details.sd-dropdown summary.sd-summary-title::-webkit-details-marker{display:none}details.sd-dropdown summary.sd-summary-title:focus{outline:none}details.sd-dropdown summary.sd-summary-title .sd-summary-icon{margin-right:.6em;display:inline-flex;align-items:center}details.sd-dropdown summary.sd-summary-title .sd-summary-icon svg{opacity:.8}details.sd-dropdown summary.sd-summary-title .sd-summary-text{flex-grow:1;line-height:1.5;padding-right:.5rem}details.sd-dropdown summary.sd-summary-title .sd-summary-state-marker{pointer-events:none;display:inline-flex;align-items:center}details.sd-dropdown summary.sd-summary-title .sd-summary-state-marker svg{opacity:.6}details.sd-dropdown summary.sd-summary-title:hover .sd-summary-state-marker svg{opacity:1;transform:scale(1.1)}details.sd-dropdown[open] summary .sd-octicon.no-title{visibility:hidden}details.sd-dropdown .sd-summary-chevron-right{transition:.25s}details.sd-dropdown[open]>.sd-summary-title .sd-summary-chevron-right{transform:rotate(90deg)}details.sd-dropdown[open]>.sd-summary-title .sd-summary-chevron-down{transform:rotate(180deg)}details.sd-dropdown:not([open]).sd-card{border:none}details.sd-dropdown:not([open])>.sd-card-header{border:1px solid var(--sd-color-card-border);border-radius:.25rem}details.sd-dropdown.sd-fade-in[open] summary~*{-moz-animation:sd-fade-in .5s ease-in-out;-webkit-animation:sd-fade-in .5s ease-in-out;animation:sd-fade-in .5s ease-in-out}details.sd-dropdown.sd-fade-in-slide-down[open] summary~*{-moz-animation:sd-fade-in .5s ease-in-out,sd-slide-down .5s ease-in-out;-webkit-animation:sd-fade-in .5s ease-in-out,sd-slide-down .5s ease-in-out;animation:sd-fade-in .5s ease-in-out,sd-slide-down .5s ease-in-out}.sd-col>.sd-dropdown{width:100%}.sd-summary-content>.sd-tab-set:first-child{margin-top:0}@keyframes sd-fade-in{0%{opacity:0}100%{opacity:1}}@keyframes sd-slide-down{0%{transform:translate(0, -10px)}100%{transform:translate(0, 0)}}.sd-tab-set{border-radius:.125rem;display:flex;flex-wrap:wrap;margin:1em 0;position:relative}.sd-tab-set>input{opacity:0;position:absolute}.sd-tab-set>input:checked+label{border-color:var(--sd-color-tabs-underline-active);color:var(--sd-color-tabs-label-active)}.sd-tab-set>input:checked+label+.sd-tab-content{display:block}.sd-tab-set>input:not(:checked)+label:hover{color:var(--sd-color-tabs-label-hover);border-color:var(--sd-color-tabs-underline-hover)}.sd-tab-set>input:focus+label{outline-style:auto}.sd-tab-set>input:not(.focus-visible)+label{outline:none;-webkit-tap-highlight-color:transparent}.sd-tab-set>label{border-bottom:.125rem solid transparent;margin-bottom:0;color:var(--sd-color-tabs-label-inactive);border-color:var(--sd-color-tabs-underline-inactive);cursor:pointer;font-size:var(--sd-fontsize-tabs-label);font-weight:700;padding:1em 1.25em .5em;transition:color 250ms;width:auto;z-index:1}html .sd-tab-set>label:hover{color:var(--sd-color-tabs-label-active)}.sd-col>.sd-tab-set{width:100%}.sd-tab-content{box-shadow:0 -0.0625rem var(--sd-color-tabs-overline),0 .0625rem var(--sd-color-tabs-underline);display:none;order:99;padding-bottom:.75rem;padding-top:.75rem;width:100%}.sd-tab-content>:first-child{margin-top:0 !important}.sd-tab-content>:last-child{margin-bottom:0 !important}.sd-tab-content>.sd-tab-set{margin:0}.sd-sphinx-override,.sd-sphinx-override *{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sd-sphinx-override p{margin-top:0}:root{--sd-color-primary: #0071bc;--sd-color-secondary: #6c757d;--sd-color-success: #28a745;--sd-color-info: #17a2b8;--sd-color-warning: #f0b37e;--sd-color-danger: #dc3545;--sd-color-light: #f8f9fa;--sd-color-muted: #6c757d;--sd-color-dark: #212529;--sd-color-black: black;--sd-color-white: white;--sd-color-primary-highlight: #0060a0;--sd-color-secondary-highlight: #5c636a;--sd-color-success-highlight: #228e3b;--sd-color-info-highlight: #148a9c;--sd-color-warning-highlight: #cc986b;--sd-color-danger-highlight: #bb2d3b;--sd-color-light-highlight: #d3d4d5;--sd-color-muted-highlight: #5c636a;--sd-color-dark-highlight: #1c1f23;--sd-color-black-highlight: black;--sd-color-white-highlight: #d9d9d9;--sd-color-primary-bg: rgba(0, 113, 188, 0.2);--sd-color-secondary-bg: rgba(108, 117, 125, 0.2);--sd-color-success-bg: rgba(40, 167, 69, 0.2);--sd-color-info-bg: rgba(23, 162, 184, 0.2);--sd-color-warning-bg: rgba(240, 179, 126, 0.2);--sd-color-danger-bg: rgba(220, 53, 69, 0.2);--sd-color-light-bg: rgba(248, 249, 250, 0.2);--sd-color-muted-bg: rgba(108, 117, 125, 0.2);--sd-color-dark-bg: rgba(33, 37, 41, 0.2);--sd-color-black-bg: rgba(0, 0, 0, 0.2);--sd-color-white-bg: rgba(255, 255, 255, 0.2);--sd-color-primary-text: #fff;--sd-color-secondary-text: #fff;--sd-color-success-text: #fff;--sd-color-info-text: #fff;--sd-color-warning-text: #212529;--sd-color-danger-text: #fff;--sd-color-light-text: #212529;--sd-color-muted-text: #fff;--sd-color-dark-text: #fff;--sd-color-black-text: #fff;--sd-color-white-text: #212529;--sd-color-shadow: rgba(0, 0, 0, 0.15);--sd-color-card-border: rgba(0, 0, 0, 0.125);--sd-color-card-border-hover: hsla(231, 99%, 66%, 1);--sd-color-card-background: transparent;--sd-color-card-text: inherit;--sd-color-card-header: transparent;--sd-color-card-footer: transparent;--sd-color-tabs-label-active: hsla(231, 99%, 66%, 1);--sd-color-tabs-label-hover: hsla(231, 99%, 66%, 1);--sd-color-tabs-label-inactive: hsl(0, 0%, 66%);--sd-color-tabs-underline-active: hsla(231, 99%, 66%, 1);--sd-color-tabs-underline-hover: rgba(178, 206, 245, 0.62);--sd-color-tabs-underline-inactive: transparent;--sd-color-tabs-overline: rgb(222, 222, 222);--sd-color-tabs-underline: rgb(222, 222, 222);--sd-fontsize-tabs-label: 1rem;--sd-fontsize-dropdown: inherit;--sd-fontsize-dropdown-title: 1rem;--sd-fontweight-dropdown-title: 700} diff --git a/en/main/_static/_sphinx_javascript_frameworks_compat.js b/en/main/_static/_sphinx_javascript_frameworks_compat.js new file mode 100644 index 00000000..8549469d --- /dev/null +++ b/en/main/_static/_sphinx_javascript_frameworks_compat.js @@ -0,0 +1,134 @@ +/* + * _sphinx_javascript_frameworks_compat.js + * ~~~~~~~~~~ + * + * Compatability shim for jQuery and underscores.js. + * + * WILL BE REMOVED IN Sphinx 6.0 + * xref RemovedInSphinx60Warning + * + */ + +/** + * select a different prefix for underscore + */ +$u = _.noConflict(); + + +/** + * small helper function to urldecode strings + * + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL + */ +jQuery.urldecode = function(x) { + if (!x) { + return x + } + return decodeURIComponent(x.replace(/\+/g, ' ')); +}; + +/** + * small helper function to urlencode strings + */ +jQuery.urlencode = encodeURIComponent; + +/** + * This function returns the parsed url parameters of the + * current request. Multiple values per key are supported, + * it will always return arrays of strings for the value parts. + */ +jQuery.getQueryParameters = function(s) { + if (typeof s === 'undefined') + s = document.location.search; + var parts = s.substr(s.indexOf('?') + 1).split('&'); + var result = {}; + for (var i = 0; i < parts.length; i++) { + var tmp = parts[i].split('=', 2); + var key = jQuery.urldecode(tmp[0]); + var value = jQuery.urldecode(tmp[1]); + if (key in result) + result[key].push(value); + else + result[key] = [value]; + } + return result; +}; + +/** + * highlight a given string on a jquery object by wrapping it in + * span elements with the given class name. + */ +jQuery.fn.highlightText = function(text, className) { + function highlight(node, addItems) { + if (node.nodeType === 3) { + var val = node.nodeValue; + var pos = val.toLowerCase().indexOf(text); + if (pos >= 0 && + !jQuery(node.parentNode).hasClass(className) && + !jQuery(node.parentNode).hasClass("nohighlight")) { + var span; + var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg"); + if (isInSVG) { + span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); + } else { + span = document.createElement("span"); + span.className = className; + } + span.appendChild(document.createTextNode(val.substr(pos, text.length))); + node.parentNode.insertBefore(span, node.parentNode.insertBefore( + document.createTextNode(val.substr(pos + text.length)), + node.nextSibling)); + node.nodeValue = val.substr(0, pos); + if (isInSVG) { + var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect"); + var bbox = node.parentElement.getBBox(); + rect.x.baseVal.value = bbox.x; + rect.y.baseVal.value = bbox.y; + rect.width.baseVal.value = bbox.width; + rect.height.baseVal.value = bbox.height; + rect.setAttribute('class', className); + addItems.push({ + "parent": node.parentNode, + "target": rect}); + } + } + } + else if (!jQuery(node).is("button, select, textarea")) { + jQuery.each(node.childNodes, function() { + highlight(this, addItems); + }); + } + } + var addItems = []; + var result = this.each(function() { + highlight(this, addItems); + }); + for (var i = 0; i < addItems.length; ++i) { + jQuery(addItems[i].parent).before(addItems[i].target); + } + return result; +}; + +/* + * backward compatibility for jQuery.browser + * This will be supported until firefox bug is fixed. + */ +if (!jQuery.browser) { + jQuery.uaMatch = function(ua) { + ua = ua.toLowerCase(); + + var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || + /(webkit)[ \/]([\w.]+)/.exec(ua) || + /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || + /(msie) ([\w.]+)/.exec(ua) || + ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || + []; + + return { + browser: match[ 1 ] || "", + version: match[ 2 ] || "0" + }; + }; + jQuery.browser = {}; + jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; +} diff --git a/en/main/_static/api.svg b/en/main/_static/api.svg new file mode 100644 index 00000000..029b91ea --- /dev/null +++ b/en/main/_static/api.svg @@ -0,0 +1,7 @@ + + + + + Svg Vector Icons : http://www.onlinewebfonts.com/icon + + \ No newline at end of file diff --git a/en/main/_static/basic.css b/en/main/_static/basic.css new file mode 100644 index 00000000..18495ea0 --- /dev/null +++ b/en/main/_static/basic.css @@ -0,0 +1,900 @@ +/* + * basic.css + * ~~~~~~~~~ + * + * Sphinx stylesheet -- basic theme. + * + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ + +/* -- main layout ----------------------------------------------------------- */ + +div.clearer { + clear: both; +} + +div.section::after { + display: block; + content: ''; + clear: left; +} + +/* -- relbar ---------------------------------------------------------------- */ + +div.related { + width: 100%; + font-size: 90%; +} + +div.related h3 { + display: none; +} + +div.related ul { + margin: 0; + padding: 0 0 0 10px; + list-style: none; +} + +div.related li { + display: inline; +} + +div.related li.right { + float: right; + margin-right: 5px; +} + +/* -- sidebar --------------------------------------------------------------- */ + +div.sphinxsidebarwrapper { + padding: 10px 5px 0 10px; +} + +div.sphinxsidebar { + float: left; + width: 270px; + margin-left: -100%; + font-size: 90%; + word-wrap: break-word; + overflow-wrap : break-word; +} + +div.sphinxsidebar ul { + list-style: none; +} + +div.sphinxsidebar ul ul, +div.sphinxsidebar ul.want-points { + margin-left: 20px; + list-style: square; +} + +div.sphinxsidebar ul ul { + margin-top: 0; + margin-bottom: 0; +} + +div.sphinxsidebar form { + margin-top: 10px; +} + +div.sphinxsidebar input { + border: 1px solid #98dbcc; + font-family: sans-serif; + font-size: 1em; +} + +div.sphinxsidebar #searchbox form.search { + overflow: hidden; +} + +div.sphinxsidebar #searchbox input[type="text"] { + float: left; + width: 80%; + padding: 0.25em; + box-sizing: border-box; +} + +div.sphinxsidebar #searchbox input[type="submit"] { + float: left; + width: 20%; + border-left: none; + padding: 0.25em; + box-sizing: border-box; +} + + +img { + border: 0; + max-width: 100%; +} + +/* -- search page ----------------------------------------------------------- */ + +ul.search { + margin: 10px 0 0 20px; + padding: 0; +} + +ul.search li { + padding: 5px 0 5px 20px; + background-image: url(file.png); + background-repeat: no-repeat; + background-position: 0 7px; +} + +ul.search li a { + font-weight: bold; +} + +ul.search li p.context { + color: #888; + margin: 2px 0 0 30px; + text-align: left; +} + +ul.keywordmatches li.goodmatch a { + font-weight: bold; +} + +/* -- index page ------------------------------------------------------------ */ + +table.contentstable { + width: 90%; + margin-left: auto; + margin-right: auto; +} + +table.contentstable p.biglink { + line-height: 150%; +} + +a.biglink { + font-size: 1.3em; +} + +span.linkdescr { + font-style: italic; + padding-top: 5px; + font-size: 90%; +} + +/* -- general index --------------------------------------------------------- */ + +table.indextable { + width: 100%; +} + +table.indextable td { + text-align: left; + vertical-align: top; +} + +table.indextable ul { + margin-top: 0; + margin-bottom: 0; + list-style-type: none; +} + +table.indextable > tbody > tr > td > ul { + padding-left: 0em; +} + +table.indextable tr.pcap { + height: 10px; +} + +table.indextable tr.cap { + margin-top: 10px; + background-color: #f2f2f2; +} + +img.toggler { + margin-right: 3px; + margin-top: 3px; + cursor: pointer; +} + +div.modindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +div.genindex-jumpbox { + border-top: 1px solid #ddd; + border-bottom: 1px solid #ddd; + margin: 1em 0 1em 0; + padding: 0.4em; +} + +/* -- domain module index --------------------------------------------------- */ + +table.modindextable td { + padding: 2px; + border-collapse: collapse; +} + +/* -- general body styles --------------------------------------------------- */ + +div.body { + min-width: 360px; + max-width: 800px; +} + +div.body p, div.body dd, div.body li, div.body blockquote { + -moz-hyphens: auto; + -ms-hyphens: auto; + -webkit-hyphens: auto; + hyphens: auto; +} + +a.headerlink { + visibility: hidden; +} + +h1:hover > a.headerlink, +h2:hover > a.headerlink, +h3:hover > a.headerlink, +h4:hover > a.headerlink, +h5:hover > a.headerlink, +h6:hover > a.headerlink, +dt:hover > a.headerlink, +caption:hover > a.headerlink, +p.caption:hover > a.headerlink, +div.code-block-caption:hover > a.headerlink { + visibility: visible; +} + +div.body p.caption { + text-align: inherit; +} + +div.body td { + text-align: left; +} + +.first { + margin-top: 0 !important; +} + +p.rubric { + margin-top: 30px; + font-weight: bold; +} + +img.align-left, figure.align-left, .figure.align-left, object.align-left { + clear: left; + float: left; + margin-right: 1em; +} + +img.align-right, figure.align-right, .figure.align-right, object.align-right { + clear: right; + float: right; + margin-left: 1em; +} + +img.align-center, figure.align-center, .figure.align-center, object.align-center { + display: block; + margin-left: auto; + margin-right: auto; +} + +img.align-default, figure.align-default, .figure.align-default { + display: block; + margin-left: auto; + margin-right: auto; +} + +.align-left { + text-align: left; +} + +.align-center { + text-align: center; +} + +.align-default { + text-align: center; +} + +.align-right { + text-align: right; +} + +/* -- sidebars -------------------------------------------------------------- */ + +div.sidebar, +aside.sidebar { + margin: 0 0 0.5em 1em; + border: 1px solid #ddb; + padding: 7px; + background-color: #ffe; + width: 40%; + float: right; + clear: right; + overflow-x: auto; +} + +p.sidebar-title { + font-weight: bold; +} +nav.contents, +aside.topic, +div.admonition, div.topic, blockquote { + clear: left; +} + +/* -- topics ---------------------------------------------------------------- */ +nav.contents, +aside.topic, +div.topic { + border: 1px solid #ccc; + padding: 7px; + margin: 10px 0 10px 0; +} + +p.topic-title { + font-size: 1.1em; + font-weight: bold; + margin-top: 10px; +} + +/* -- admonitions ----------------------------------------------------------- */ + +div.admonition { + margin-top: 10px; + margin-bottom: 10px; + padding: 7px; +} + +div.admonition dt { + font-weight: bold; +} + +p.admonition-title { + margin: 0px 10px 5px 0px; + font-weight: bold; +} + +div.body p.centered { + text-align: center; + margin-top: 25px; +} + +/* -- content of sidebars/topics/admonitions -------------------------------- */ + +div.sidebar > :last-child, +aside.sidebar > :last-child, +nav.contents > :last-child, +aside.topic > :last-child, +div.topic > :last-child, +div.admonition > :last-child { + margin-bottom: 0; +} + +div.sidebar::after, +aside.sidebar::after, +nav.contents::after, +aside.topic::after, +div.topic::after, +div.admonition::after, +blockquote::after { + display: block; + content: ''; + clear: both; +} + +/* -- tables ---------------------------------------------------------------- */ + +table.docutils { + margin-top: 10px; + margin-bottom: 10px; + border: 0; + border-collapse: collapse; +} + +table.align-center { + margin-left: auto; + margin-right: auto; +} + +table.align-default { + margin-left: auto; + margin-right: auto; +} + +table caption span.caption-number { + font-style: italic; +} + +table caption span.caption-text { +} + +table.docutils td, table.docutils th { + padding: 1px 8px 1px 5px; + border-top: 0; + border-left: 0; + border-right: 0; + border-bottom: 1px solid #aaa; +} + +th { + text-align: left; + padding-right: 5px; +} + +table.citation { + border-left: solid 1px gray; + margin-left: 1px; +} + +table.citation td { + border-bottom: none; +} + +th > :first-child, +td > :first-child { + margin-top: 0px; +} + +th > :last-child, +td > :last-child { + margin-bottom: 0px; +} + +/* -- figures --------------------------------------------------------------- */ + +div.figure, figure { + margin: 0.5em; + padding: 0.5em; +} + +div.figure p.caption, figcaption { + padding: 0.3em; +} + +div.figure p.caption span.caption-number, +figcaption span.caption-number { + font-style: italic; +} + +div.figure p.caption span.caption-text, +figcaption span.caption-text { +} + +/* -- field list styles ----------------------------------------------------- */ + +table.field-list td, table.field-list th { + border: 0 !important; +} + +.field-list ul { + margin: 0; + padding-left: 1em; +} + +.field-list p { + margin: 0; +} + +.field-name { + -moz-hyphens: manual; + -ms-hyphens: manual; + -webkit-hyphens: manual; + hyphens: manual; +} + +/* -- hlist styles ---------------------------------------------------------- */ + +table.hlist { + margin: 1em 0; +} + +table.hlist td { + vertical-align: top; +} + +/* -- object description styles --------------------------------------------- */ + +.sig { + font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace; +} + +.sig-name, code.descname { + background-color: transparent; + font-weight: bold; +} + +.sig-name { + font-size: 1.1em; +} + +code.descname { + font-size: 1.2em; +} + +.sig-prename, code.descclassname { + background-color: transparent; +} + +.optional { + font-size: 1.3em; +} + +.sig-paren { + font-size: larger; +} + +.sig-param.n { + font-style: italic; +} + +/* C++ specific styling */ + +.sig-inline.c-texpr, +.sig-inline.cpp-texpr { + font-family: unset; +} + +.sig.c .k, .sig.c .kt, +.sig.cpp .k, .sig.cpp .kt { + color: #0033B3; +} + +.sig.c .m, +.sig.cpp .m { + color: #1750EB; +} + +.sig.c .s, .sig.c .sc, +.sig.cpp .s, .sig.cpp .sc { + color: #067D17; +} + + +/* -- other body styles ----------------------------------------------------- */ + +ol.arabic { + list-style: decimal; +} + +ol.loweralpha { + list-style: lower-alpha; +} + +ol.upperalpha { + list-style: upper-alpha; +} + +ol.lowerroman { + list-style: lower-roman; +} + +ol.upperroman { + list-style: upper-roman; +} + +:not(li) > ol > li:first-child > :first-child, +:not(li) > ul > li:first-child > :first-child { + margin-top: 0px; +} + +:not(li) > ol > li:last-child > :last-child, +:not(li) > ul > li:last-child > :last-child { + margin-bottom: 0px; +} + +ol.simple ol p, +ol.simple ul p, +ul.simple ol p, +ul.simple ul p { + margin-top: 0; +} + +ol.simple > li:not(:first-child) > p, +ul.simple > li:not(:first-child) > p { + margin-top: 0; +} + +ol.simple p, +ul.simple p { + margin-bottom: 0; +} +aside.footnote > span, +div.citation > span { + float: left; +} +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { + margin-bottom: 0em; +} +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { + content: ""; + clear: both; +} + +dl.field-list { + display: grid; + grid-template-columns: fit-content(30%) auto; +} + +dl.field-list > dt { + font-weight: bold; + word-break: break-word; + padding-left: 0.5em; + padding-right: 5px; +} + +dl.field-list > dd { + padding-left: 0.5em; + margin-top: 0em; + margin-left: 0em; + margin-bottom: 0em; +} + +dl { + margin-bottom: 15px; +} + +dd > :first-child { + margin-top: 0px; +} + +dd ul, dd table { + margin-bottom: 10px; +} + +dd { + margin-top: 3px; + margin-bottom: 10px; + margin-left: 30px; +} + +dl > dd:last-child, +dl > dd:last-child > :last-child { + margin-bottom: 0; +} + +dt:target, span.highlighted { + background-color: #fbe54e; +} + +rect.highlighted { + fill: #fbe54e; +} + +dl.glossary dt { + font-weight: bold; + font-size: 1.1em; +} + +.versionmodified { + font-style: italic; +} + +.system-message { + background-color: #fda; + padding: 5px; + border: 3px solid red; +} + +.footnote:target { + background-color: #ffa; +} + +.line-block { + display: block; + margin-top: 1em; + margin-bottom: 1em; +} + +.line-block .line-block { + margin-top: 0; + margin-bottom: 0; + margin-left: 1.5em; +} + +.guilabel, .menuselection { + font-family: sans-serif; +} + +.accelerator { + text-decoration: underline; +} + +.classifier { + font-style: oblique; +} + +.classifier:before { + font-style: normal; + margin: 0 0.5em; + content: ":"; + display: inline-block; +} + +abbr, acronym { + border-bottom: dotted 1px; + cursor: help; +} + +/* -- code displays --------------------------------------------------------- */ + +pre { + overflow: auto; + overflow-y: hidden; /* fixes display issues on Chrome browsers */ +} + +pre, div[class*="highlight-"] { + clear: both; +} + +span.pre { + -moz-hyphens: none; + -ms-hyphens: none; + -webkit-hyphens: none; + hyphens: none; + white-space: nowrap; +} + +div[class*="highlight-"] { + margin: 1em 0; +} + +td.linenos pre { + border: 0; + background-color: transparent; + color: #aaa; +} + +table.highlighttable { + display: block; +} + +table.highlighttable tbody { + display: block; +} + +table.highlighttable tr { + display: flex; +} + +table.highlighttable td { + margin: 0; + padding: 0; +} + +table.highlighttable td.linenos { + padding-right: 0.5em; +} + +table.highlighttable td.code { + flex: 1; + overflow: hidden; +} + +.highlight .hll { + display: block; +} + +div.highlight pre, +table.highlighttable pre { + margin: 0; +} + +div.code-block-caption + div { + margin-top: 0; +} + +div.code-block-caption { + margin-top: 1em; + padding: 2px 5px; + font-size: small; +} + +div.code-block-caption code { + background-color: transparent; +} + +table.highlighttable td.linenos, +span.linenos, +div.highlight span.gp { /* gp: Generic.Prompt */ + user-select: none; + -webkit-user-select: text; /* Safari fallback only */ + -webkit-user-select: none; /* Chrome/Safari */ + -moz-user-select: none; /* Firefox */ + -ms-user-select: none; /* IE10+ */ +} + +div.code-block-caption span.caption-number { + padding: 0.1em 0.3em; + font-style: italic; +} + +div.code-block-caption span.caption-text { +} + +div.literal-block-wrapper { + margin: 1em 0; +} + +code.xref, a code { + background-color: transparent; + font-weight: bold; +} + +h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { + background-color: transparent; +} + +.viewcode-link { + float: right; +} + +.viewcode-back { + float: right; + font-family: sans-serif; +} + +div.viewcode-block:target { + margin: -1px -10px; + padding: 0 10px; +} + +/* -- math display ---------------------------------------------------------- */ + +img.math { + vertical-align: middle; +} + +div.body div.math p { + text-align: center; +} + +span.eqno { + float: right; +} + +span.eqno a.headerlink { + position: absolute; + z-index: 1; +} + +div.math:hover a.headerlink { + visibility: visible; +} + +/* -- printout stylesheet --------------------------------------------------- */ + +@media print { + div.document, + div.documentwrapper, + div.bodywrapper { + margin: 0 !important; + width: 100%; + } + + div.sphinxsidebar, + div.related, + div.footer, + #top-link { + display: none; + } +} \ No newline at end of file diff --git a/en/main/_static/binder_badge_logo.svg b/en/main/_static/binder_badge_logo.svg new file mode 100644 index 00000000..327f6b63 --- /dev/null +++ b/en/main/_static/binder_badge_logo.svg @@ -0,0 +1 @@ + launchlaunchbinderbinder \ No newline at end of file diff --git a/en/main/_static/broken_example.png b/en/main/_static/broken_example.png new file mode 100644 index 00000000..4fea24e7 Binary files /dev/null and b/en/main/_static/broken_example.png differ diff --git a/en/main/_static/check-solid.svg b/en/main/_static/check-solid.svg new file mode 100644 index 00000000..92fad4b5 --- /dev/null +++ b/en/main/_static/check-solid.svg @@ -0,0 +1,4 @@ + + + + diff --git a/en/main/_static/clipboard.min.js b/en/main/_static/clipboard.min.js new file mode 100644 index 00000000..54b3c463 --- /dev/null +++ b/en/main/_static/clipboard.min.js @@ -0,0 +1,7 @@ +/*! + * clipboard.js v2.0.8 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ClipboardJS=e():t.ClipboardJS=e()}(this,function(){return n={686:function(t,e,n){"use strict";n.d(e,{default:function(){return o}});var e=n(279),i=n.n(e),e=n(370),u=n.n(e),e=n(817),c=n.n(e);function a(t){try{return document.execCommand(t)}catch(t){return}}var f=function(t){t=c()(t);return a("cut"),t};var l=function(t){var e,n,o,r=1 + + + + Svg Vector Icons : http://www.onlinewebfonts.com/icon + + \ No newline at end of file diff --git a/en/main/_static/community.svg b/en/main/_static/community.svg new file mode 100644 index 00000000..d18f33c6 --- /dev/null +++ b/en/main/_static/community.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/en/main/_static/copy-button.svg b/en/main/_static/copy-button.svg new file mode 100644 index 00000000..9c074dae --- /dev/null +++ b/en/main/_static/copy-button.svg @@ -0,0 +1,5 @@ + + + + + diff --git a/en/main/_static/copybutton.css b/en/main/_static/copybutton.css new file mode 100644 index 00000000..f1916ec7 --- /dev/null +++ b/en/main/_static/copybutton.css @@ -0,0 +1,94 @@ +/* Copy buttons */ +button.copybtn { + position: absolute; + display: flex; + top: .3em; + right: .3em; + width: 1.7em; + height: 1.7em; + opacity: 0; + transition: opacity 0.3s, border .3s, background-color .3s; + user-select: none; + padding: 0; + border: none; + outline: none; + border-radius: 0.4em; + /* The colors that GitHub uses */ + border: #1b1f2426 1px solid; + background-color: #f6f8fa; + color: #57606a; +} + +button.copybtn.success { + border-color: #22863a; + color: #22863a; +} + +button.copybtn svg { + stroke: currentColor; + width: 1.5em; + height: 1.5em; + padding: 0.1em; +} + +div.highlight { + position: relative; +} + +/* Show the copybutton */ +.highlight:hover button.copybtn, button.copybtn.success { + opacity: 1; +} + +.highlight button.copybtn:hover { + background-color: rgb(235, 235, 235); +} + +.highlight button.copybtn:active { + background-color: rgb(187, 187, 187); +} + +/** + * A minimal CSS-only tooltip copied from: + * https://codepen.io/mildrenben/pen/rVBrpK + * + * To use, write HTML like the following: + * + *

Short

+ */ + .o-tooltip--left { + position: relative; + } + + .o-tooltip--left:after { + opacity: 0; + visibility: hidden; + position: absolute; + content: attr(data-tooltip); + padding: .2em; + font-size: .8em; + left: -.2em; + background: grey; + color: white; + white-space: nowrap; + z-index: 2; + border-radius: 2px; + transform: translateX(-102%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); +} + +.o-tooltip--left:hover:after { + display: block; + opacity: 1; + visibility: visible; + transform: translateX(-100%) translateY(0); + transition: opacity 0.2s cubic-bezier(0.64, 0.09, 0.08, 1), transform 0.2s cubic-bezier(0.64, 0.09, 0.08, 1); + transition-delay: .5s; +} + +/* By default the copy button shouldn't show up when printing a page */ +@media print { + button.copybtn { + display: none; + } +} diff --git a/en/main/_static/copybutton.js b/en/main/_static/copybutton.js new file mode 100644 index 00000000..2ea7ff3e --- /dev/null +++ b/en/main/_static/copybutton.js @@ -0,0 +1,248 @@ +// Localization support +const messages = { + 'en': { + 'copy': 'Copy', + 'copy_to_clipboard': 'Copy to clipboard', + 'copy_success': 'Copied!', + 'copy_failure': 'Failed to copy', + }, + 'es' : { + 'copy': 'Copiar', + 'copy_to_clipboard': 'Copiar al portapapeles', + 'copy_success': '¡Copiado!', + 'copy_failure': 'Error al copiar', + }, + 'de' : { + 'copy': 'Kopieren', + 'copy_to_clipboard': 'In die Zwischenablage kopieren', + 'copy_success': 'Kopiert!', + 'copy_failure': 'Fehler beim Kopieren', + }, + 'fr' : { + 'copy': 'Copier', + 'copy_to_clipboard': 'Copier dans le presse-papier', + 'copy_success': 'Copié !', + 'copy_failure': 'Échec de la copie', + }, + 'ru': { + 'copy': 'Скопировать', + 'copy_to_clipboard': 'Скопировать в буфер', + 'copy_success': 'Скопировано!', + 'copy_failure': 'Не удалось скопировать', + }, + 'zh-CN': { + 'copy': '复制', + 'copy_to_clipboard': '复制到剪贴板', + 'copy_success': '复制成功!', + 'copy_failure': '复制失败', + }, + 'it' : { + 'copy': 'Copiare', + 'copy_to_clipboard': 'Copiato negli appunti', + 'copy_success': 'Copiato!', + 'copy_failure': 'Errore durante la copia', + } +} + +let locale = 'en' +if( document.documentElement.lang !== undefined + && messages[document.documentElement.lang] !== undefined ) { + locale = document.documentElement.lang +} + +let doc_url_root = DOCUMENTATION_OPTIONS.URL_ROOT; +if (doc_url_root == '#') { + doc_url_root = ''; +} + +/** + * SVG files for our copy buttons + */ +let iconCheck = ` + ${messages[locale]['copy_success']} + + +` + +// If the user specified their own SVG use that, otherwise use the default +let iconCopy = ``; +if (!iconCopy) { + iconCopy = ` + ${messages[locale]['copy_to_clipboard']} + + + +` +} + +/** + * Set up copy/paste for code blocks + */ + +const runWhenDOMLoaded = cb => { + if (document.readyState != 'loading') { + cb() + } else if (document.addEventListener) { + document.addEventListener('DOMContentLoaded', cb) + } else { + document.attachEvent('onreadystatechange', function() { + if (document.readyState == 'complete') cb() + }) + } +} + +const codeCellId = index => `codecell${index}` + +// Clears selected text since ClipboardJS will select the text when copying +const clearSelection = () => { + if (window.getSelection) { + window.getSelection().removeAllRanges() + } else if (document.selection) { + document.selection.empty() + } +} + +// Changes tooltip text for a moment, then changes it back +// We want the timeout of our `success` class to be a bit shorter than the +// tooltip and icon change, so that we can hide the icon before changing back. +var timeoutIcon = 2000; +var timeoutSuccessClass = 1500; + +const temporarilyChangeTooltip = (el, oldText, newText) => { + el.setAttribute('data-tooltip', newText) + el.classList.add('success') + // Remove success a little bit sooner than we change the tooltip + // So that we can use CSS to hide the copybutton first + setTimeout(() => el.classList.remove('success'), timeoutSuccessClass) + setTimeout(() => el.setAttribute('data-tooltip', oldText), timeoutIcon) +} + +// Changes the copy button icon for two seconds, then changes it back +const temporarilyChangeIcon = (el) => { + el.innerHTML = iconCheck; + setTimeout(() => {el.innerHTML = iconCopy}, timeoutIcon) +} + +const addCopyButtonToCodeCells = () => { + // If ClipboardJS hasn't loaded, wait a bit and try again. This + // happens because we load ClipboardJS asynchronously. + if (window.ClipboardJS === undefined) { + setTimeout(addCopyButtonToCodeCells, 250) + return + } + + // Add copybuttons to all of our code cells + const COPYBUTTON_SELECTOR = 'div.highlight pre'; + const codeCells = document.querySelectorAll(COPYBUTTON_SELECTOR) + codeCells.forEach((codeCell, index) => { + const id = codeCellId(index) + codeCell.setAttribute('id', id) + + const clipboardButton = id => + `` + codeCell.insertAdjacentHTML('afterend', clipboardButton(id)) + }) + +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} + + +var copyTargetText = (trigger) => { + var target = document.querySelector(trigger.attributes['data-clipboard-target'].value); + + // get filtered text + let exclude = '.linenos'; + + let text = filterText(target, exclude); + return formatCopyText(text, '', false, true, true, true, '', '') +} + + // Initialize with a callback so we can modify the text before copy + const clipboard = new ClipboardJS('.copybtn', {text: copyTargetText}) + + // Update UI with error/success messages + clipboard.on('success', event => { + clearSelection() + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_success']) + temporarilyChangeIcon(event.trigger) + }) + + clipboard.on('error', event => { + temporarilyChangeTooltip(event.trigger, messages[locale]['copy'], messages[locale]['copy_failure']) + }) +} + +runWhenDOMLoaded(addCopyButtonToCodeCells) \ No newline at end of file diff --git a/en/main/_static/copybutton_funcs.js b/en/main/_static/copybutton_funcs.js new file mode 100644 index 00000000..dbe1aaad --- /dev/null +++ b/en/main/_static/copybutton_funcs.js @@ -0,0 +1,73 @@ +function escapeRegExp(string) { + return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string +} + +/** + * Removes excluded text from a Node. + * + * @param {Node} target Node to filter. + * @param {string} exclude CSS selector of nodes to exclude. + * @returns {DOMString} Text from `target` with text removed. + */ +export function filterText(target, exclude) { + const clone = target.cloneNode(true); // clone as to not modify the live DOM + if (exclude) { + // remove excluded nodes + clone.querySelectorAll(exclude).forEach(node => node.remove()); + } + return clone.innerText; +} + +// Callback when a copy button is clicked. Will be passed the node that was clicked +// should then grab the text and replace pieces of text that shouldn't be used in output +export function formatCopyText(textContent, copybuttonPromptText, isRegexp = false, onlyCopyPromptLines = true, removePrompts = true, copyEmptyLines = true, lineContinuationChar = "", hereDocDelim = "") { + var regexp; + var match; + + // Do we check for line continuation characters and "HERE-documents"? + var useLineCont = !!lineContinuationChar + var useHereDoc = !!hereDocDelim + + // create regexp to capture prompt and remaining line + if (isRegexp) { + regexp = new RegExp('^(' + copybuttonPromptText + ')(.*)') + } else { + regexp = new RegExp('^(' + escapeRegExp(copybuttonPromptText) + ')(.*)') + } + + const outputLines = []; + var promptFound = false; + var gotLineCont = false; + var gotHereDoc = false; + const lineGotPrompt = []; + for (const line of textContent.split('\n')) { + match = line.match(regexp) + if (match || gotLineCont || gotHereDoc) { + promptFound = regexp.test(line) + lineGotPrompt.push(promptFound) + if (removePrompts && promptFound) { + outputLines.push(match[2]) + } else { + outputLines.push(line) + } + gotLineCont = line.endsWith(lineContinuationChar) & useLineCont + if (line.includes(hereDocDelim) & useHereDoc) + gotHereDoc = !gotHereDoc + } else if (!onlyCopyPromptLines) { + outputLines.push(line) + } else if (copyEmptyLines && line.trim() === '') { + outputLines.push(line) + } + } + + // If no lines with the prompt were found then just use original lines + if (lineGotPrompt.some(v => v === true)) { + textContent = outputLines.join('\n'); + } + + // Remove a trailing newline to avoid auto-running when pasting + if (textContent.endsWith("\n")) { + textContent = textContent.slice(0, -1) + } + return textContent +} diff --git a/en/main/_static/custom.css b/en/main/_static/custom.css new file mode 100644 index 00000000..60755f04 --- /dev/null +++ b/en/main/_static/custom.css @@ -0,0 +1,26 @@ +/* Overrides of the default theme CSS rules. The use of explicit qualifiers + * "html body div" ensures these rules are preferred over the default CSS rules + * even if this file is loaded first. + */ + +/* Override theme to use all available horizontal space (instead of a fixed + * maximum of 800 pixels). + */ + html body div.wy-nav-content { + max-width: 100%; +} + +/* Override theme to force all tables to the same width (100%). */ +html body div.wy-table-responsive table { + width: 100%; +} + +/* Override theme to disable horizontal scroll bars on wide tables. */ +html body div.wy-table-responsive table td, +html body div.wy-table-responsive table th { + white-space: normal; +} + +html body div.wy-table-responsive { + overflow: visible; +} diff --git a/en/main/_static/design-tabs.js b/en/main/_static/design-tabs.js new file mode 100644 index 00000000..b25bd6a4 --- /dev/null +++ b/en/main/_static/design-tabs.js @@ -0,0 +1,101 @@ +// @ts-check + +// Extra JS capability for selected tabs to be synced +// The selection is stored in local storage so that it persists across page loads. + +/** + * @type {Record} + */ +let sd_id_to_elements = {}; +const storageKeyPrefix = "sphinx-design-tab-id-"; + +/** + * Create a key for a tab element. + * @param {HTMLElement} el - The tab element. + * @returns {[string, string, string] | null} - The key. + * + */ +function create_key(el) { + let syncId = el.getAttribute("data-sync-id"); + let syncGroup = el.getAttribute("data-sync-group"); + if (!syncId || !syncGroup) return null; + return [syncGroup, syncId, syncGroup + "--" + syncId]; +} + +/** + * Initialize the tab selection. + * + */ +function ready() { + // Find all tabs with sync data + + /** @type {string[]} */ + let groups = []; + + document.querySelectorAll(".sd-tab-label").forEach((label) => { + if (label instanceof HTMLElement) { + let data = create_key(label); + if (data) { + let [group, id, key] = data; + + // add click event listener + // @ts-ignore + label.onclick = onSDLabelClick; + + // store map of key to elements + if (!sd_id_to_elements[key]) { + sd_id_to_elements[key] = []; + } + sd_id_to_elements[key].push(label); + + if (groups.indexOf(group) === -1) { + groups.push(group); + // Check if a specific tab has been selected via URL parameter + const tabParam = new URLSearchParams(window.location.search).get( + group + ); + if (tabParam) { + console.log( + "sphinx-design: Selecting tab id for group '" + + group + + "' from URL parameter: " + + tabParam + ); + window.sessionStorage.setItem(storageKeyPrefix + group, tabParam); + } + } + + // Check is a specific tab has been selected previously + let previousId = window.sessionStorage.getItem( + storageKeyPrefix + group + ); + if (previousId === id) { + // console.log( + // "sphinx-design: Selecting tab from session storage: " + id + // ); + // @ts-ignore + label.previousElementSibling.checked = true; + } + } + } + }); +} + +/** + * Activate other tabs with the same sync id. + * + * @this {HTMLElement} - The element that was clicked. + */ +function onSDLabelClick() { + let data = create_key(this); + if (!data) return; + let [group, id, key] = data; + for (const label of sd_id_to_elements[key]) { + if (label === this) continue; + // @ts-ignore + label.previousElementSibling.checked = true; + } + window.sessionStorage.setItem(storageKeyPrefix + group, id); +} + +document.addEventListener("DOMContentLoaded", ready, false); diff --git a/en/main/_static/doctools.js b/en/main/_static/doctools.js new file mode 100644 index 00000000..527b876c --- /dev/null +++ b/en/main/_static/doctools.js @@ -0,0 +1,156 @@ +/* + * doctools.js + * ~~~~~~~~~~~ + * + * Base JavaScript utilities for all Sphinx HTML documentation. + * + * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. + * :license: BSD, see LICENSE for details. + * + */ +"use strict"; + +const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([ + "TEXTAREA", + "INPUT", + "SELECT", + "BUTTON", +]); + +const _ready = (callback) => { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); + } +}; + +/** + * Small JavaScript module for the documentation. + */ +const Documentation = { + init: () => { + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); + }, + + /** + * i18n support + */ + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (n === 1 ? 0 : 1), + LOCALE: "unknown", + + // gettext and ngettext don't access this so that the functions + // can safely bound to a different name (_ = Documentation.gettext) + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists + } + }, + + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; + }, + + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})` + ); + Documentation.LOCALE = catalog.locale; + }, + + /** + * helper function to focus on search bar + */ + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); + }, + + /** + * Initialise the domain index toggle buttons + */ + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); + } + }; + + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)) + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); + }, + + initOnKeyListeners: () => { + // only install a listener if it is really needed + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && + !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + ) + return; + + document.addEventListener("keydown", (event) => { + // bail for input elements + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + // bail with special keys + if (event.altKey || event.ctrlKey || event.metaKey) return; + + if (!event.shiftKey) { + switch (event.key) { + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); + } + break; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); + } + break; + } + } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } + }); + }, +}; + +// quick alias for translations +const _ = Documentation.gettext; + +_ready(Documentation.init); diff --git a/en/main/_static/documentation_options.js b/en/main/_static/documentation_options.js new file mode 100644 index 00000000..5016d160 --- /dev/null +++ b/en/main/_static/documentation_options.js @@ -0,0 +1,14 @@ +var DOCUMENTATION_OPTIONS = { + URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), + VERSION: '1.1.0', + LANGUAGE: 'en', + COLLAPSE_INDEX: false, + BUILDER: 'html', + FILE_SUFFIX: '.html', + LINK_SUFFIX: '.html', + HAS_SOURCE: true, + SOURCELINK_SUFFIX: '.txt', + NAVIGATION_WITH_KEYS: false, + SHOW_SEARCH_SUMMARY: true, + ENABLE_SEARCH_SHORTCUTS: true, +}; \ No newline at end of file diff --git a/en/main/_static/file.png b/en/main/_static/file.png new file mode 100644 index 00000000..a858a410 Binary files /dev/null and b/en/main/_static/file.png differ diff --git a/en/main/_static/gallery_panels.svg b/en/main/_static/gallery_panels.svg new file mode 100644 index 00000000..fe5560f4 --- /dev/null +++ b/en/main/_static/gallery_panels.svg @@ -0,0 +1,7 @@ + + + + + Svg Vector Icons : http://www.onlinewebfonts.com/icon + + \ No newline at end of file diff --git a/en/main/_static/jquery-3.6.0.js b/en/main/_static/jquery-3.6.0.js new file mode 100644 index 00000000..fc6c299b --- /dev/null +++ b/en/main/_static/jquery-3.6.0.js @@ -0,0 +1,10881 @@ +/*! + * jQuery JavaScript Library v3.6.0 + * https://jquery.com/ + * + * Includes Sizzle.js + * https://sizzlejs.com/ + * + * Copyright OpenJS Foundation and other contributors + * Released under the MIT license + * https://jquery.org/license + * + * Date: 2021-03-02T17:08Z + */ +( function( global, factory ) { + + "use strict"; + + if ( typeof module === "object" && typeof module.exports === "object" ) { + + // For CommonJS and CommonJS-like environments where a proper `window` + // is present, execute the factory and get jQuery. + // For environments that do not have a `window` with a `document` + // (such as Node.js), expose a factory as module.exports. + // This accentuates the need for the creation of a real `window`. + // e.g. var jQuery = require("jquery")(window); + // See ticket #14549 for more info. + module.exports = global.document ? + factory( global, true ) : + function( w ) { + if ( !w.document ) { + throw new Error( "jQuery requires a window with a document" ); + } + return factory( w ); + }; + } else { + factory( global ); + } + +// Pass this if window is not defined yet +} )( typeof window !== "undefined" ? window : this, function( window, noGlobal ) { + +// Edge <= 12 - 13+, Firefox <=18 - 45+, IE 10 - 11, Safari 5.1 - 9+, iOS 6 - 9.1 +// throw exceptions when non-strict code (e.g., ASP.NET 4.5) accesses strict mode +// arguments.callee.caller (trac-13335). But as of jQuery 3.0 (2016), strict mode should be common +// enough that all such attempts are guarded in a try block. +"use strict"; + +var arr = []; + +var getProto = Object.getPrototypeOf; + +var slice = arr.slice; + +var flat = arr.flat ? function( array ) { + return arr.flat.call( array ); +} : function( array ) { + return arr.concat.apply( [], array ); +}; + + +var push = arr.push; + +var indexOf = arr.indexOf; + +var class2type = {}; + +var toString = class2type.toString; + +var hasOwn = class2type.hasOwnProperty; + +var fnToString = hasOwn.toString; + +var ObjectFunctionString = fnToString.call( Object ); + +var support = {}; + +var isFunction = function isFunction( obj ) { + + // Support: Chrome <=57, Firefox <=52 + // In some browsers, typeof returns "function" for HTML elements + // (i.e., `typeof document.createElement( "object" ) === "function"`). + // We don't want to classify *any* DOM node as a function. + // Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5 + // Plus for old WebKit, typeof returns "function" for HTML collections + // (e.g., `typeof document.getElementsByTagName("div") === "function"`). (gh-4756) + return typeof obj === "function" && typeof obj.nodeType !== "number" && + typeof obj.item !== "function"; + }; + + +var isWindow = function isWindow( obj ) { + return obj != null && obj === obj.window; + }; + + +var document = window.document; + + + + var preservedScriptAttributes = { + type: true, + src: true, + nonce: true, + noModule: true + }; + + function DOMEval( code, node, doc ) { + doc = doc || document; + + var i, val, + script = doc.createElement( "script" ); + + script.text = code; + if ( node ) { + for ( i in preservedScriptAttributes ) { + + // Support: Firefox 64+, Edge 18+ + // Some browsers don't support the "nonce" property on scripts. + // On the other hand, just using `getAttribute` is not enough as + // the `nonce` attribute is reset to an empty string whenever it + // becomes browsing-context connected. + // See https://github.com/whatwg/html/issues/2369 + // See https://html.spec.whatwg.org/#nonce-attributes + // The `node.getAttribute` check was added for the sake of + // `jQuery.globalEval` so that it can fake a nonce-containing node + // via an object. + val = node[ i ] || node.getAttribute && node.getAttribute( i ); + if ( val ) { + script.setAttribute( i, val ); + } + } + } + doc.head.appendChild( script ).parentNode.removeChild( script ); + } + + +function toType( obj ) { + if ( obj == null ) { + return obj + ""; + } + + // Support: Android <=2.3 only (functionish RegExp) + return typeof obj === "object" || typeof obj === "function" ? + class2type[ toString.call( obj ) ] || "object" : + typeof obj; +} +/* global Symbol */ +// Defining this global in .eslintrc.json would create a danger of using the global +// unguarded in another place, it seems safer to define global only for this module + + + +var + version = "3.6.0", + + // Define a local copy of jQuery + jQuery = function( selector, context ) { + + // The jQuery object is actually just the init constructor 'enhanced' + // Need init if jQuery is called (just allow error to be thrown if not included) + return new jQuery.fn.init( selector, context ); + }; + +jQuery.fn = jQuery.prototype = { + + // The current version of jQuery being used + jquery: version, + + constructor: jQuery, + + // The default length of a jQuery object is 0 + length: 0, + + toArray: function() { + return slice.call( this ); + }, + + // Get the Nth element in the matched element set OR + // Get the whole matched element set as a clean array + get: function( num ) { + + // Return all the elements in a clean array + if ( num == null ) { + return slice.call( this ); + } + + // Return just the one element from the set + return num < 0 ? this[ num + this.length ] : this[ num ]; + }, + + // Take an array of elements and push it onto the stack + // (returning the new matched element set) + pushStack: function( elems ) { + + // Build a new jQuery matched element set + var ret = jQuery.merge( this.constructor(), elems ); + + // Add the old object onto the stack (as a reference) + ret.prevObject = this; + + // Return the newly-formed element set + return ret; + }, + + // Execute a callback for every element in the matched set. + each: function( callback ) { + return jQuery.each( this, callback ); + }, + + map: function( callback ) { + return this.pushStack( jQuery.map( this, function( elem, i ) { + return callback.call( elem, i, elem ); + } ) ); + }, + + slice: function() { + return this.pushStack( slice.apply( this, arguments ) ); + }, + + first: function() { + return this.eq( 0 ); + }, + + last: function() { + return this.eq( -1 ); + }, + + even: function() { + return this.pushStack( jQuery.grep( this, function( _elem, i ) { + return ( i + 1 ) % 2; + } ) ); + }, + + odd: function() { + return this.pushStack( jQuery.grep( this, function( _elem, i ) { + return i % 2; + } ) ); + }, + + eq: function( i ) { + var len = this.length, + j = +i + ( i < 0 ? len : 0 ); + return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] ); + }, + + end: function() { + return this.prevObject || this.constructor(); + }, + + // For internal use only. + // Behaves like an Array's method, not like a jQuery method. + push: push, + sort: arr.sort, + splice: arr.splice +}; + +jQuery.extend = jQuery.fn.extend = function() { + var options, name, src, copy, copyIsArray, clone, + target = arguments[ 0 ] || {}, + i = 1, + length = arguments.length, + deep = false; + + // Handle a deep copy situation + if ( typeof target === "boolean" ) { + deep = target; + + // Skip the boolean and the target + target = arguments[ i ] || {}; + i++; + } + + // Handle case when target is a string or something (possible in deep copy) + if ( typeof target !== "object" && !isFunction( target ) ) { + target = {}; + } + + // Extend jQuery itself if only one argument is passed + if ( i === length ) { + target = this; + i--; + } + + for ( ; i < length; i++ ) { + + // Only deal with non-null/undefined values + if ( ( options = arguments[ i ] ) != null ) { + + // Extend the base object + for ( name in options ) { + copy = options[ name ]; + + // Prevent Object.prototype pollution + // Prevent never-ending loop + if ( name === "__proto__" || target === copy ) { + continue; + } + + // Recurse if we're merging plain objects or arrays + if ( deep && copy && ( jQuery.isPlainObject( copy ) || + ( copyIsArray = Array.isArray( copy ) ) ) ) { + src = target[ name ]; + + // Ensure proper type for the source value + if ( copyIsArray && !Array.isArray( src ) ) { + clone = []; + } else if ( !copyIsArray && !jQuery.isPlainObject( src ) ) { + clone = {}; + } else { + clone = src; + } + copyIsArray = false; + + // Never move original objects, clone them + target[ name ] = jQuery.extend( deep, clone, copy ); + + // Don't bring in undefined values + } else if ( copy !== undefined ) { + target[ name ] = copy; + } + } + } + } + + // Return the modified object + return target; +}; + +jQuery.extend( { + + // Unique for each copy of jQuery on the page + expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), + + // Assume jQuery is ready without the ready module + isReady: true, + + error: function( msg ) { + throw new Error( msg ); + }, + + noop: function() {}, + + isPlainObject: function( obj ) { + var proto, Ctor; + + // Detect obvious negatives + // Use toString instead of jQuery.type to catch host objects + if ( !obj || toString.call( obj ) !== "[object Object]" ) { + return false; + } + + proto = getProto( obj ); + + // Objects with no prototype (e.g., `Object.create( null )`) are plain + if ( !proto ) { + return true; + } + + // Objects with prototype are plain iff they were constructed by a global Object function + Ctor = hasOwn.call( proto, "constructor" ) && proto.constructor; + return typeof Ctor === "function" && fnToString.call( Ctor ) === ObjectFunctionString; + }, + + isEmptyObject: function( obj ) { + var name; + + for ( name in obj ) { + return false; + } + return true; + }, + + // Evaluates a script in a provided context; falls back to the global one + // if not specified. + globalEval: function( code, options, doc ) { + DOMEval( code, { nonce: options && options.nonce }, doc ); + }, + + each: function( obj, callback ) { + var length, i = 0; + + if ( isArrayLike( obj ) ) { + length = obj.length; + for ( ; i < length; i++ ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } else { + for ( i in obj ) { + if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) { + break; + } + } + } + + return obj; + }, + + // results is for internal usage only + makeArray: function( arr, results ) { + var ret = results || []; + + if ( arr != null ) { + if ( isArrayLike( Object( arr ) ) ) { + jQuery.merge( ret, + typeof arr === "string" ? + [ arr ] : arr + ); + } else { + push.call( ret, arr ); + } + } + + return ret; + }, + + inArray: function( elem, arr, i ) { + return arr == null ? -1 : indexOf.call( arr, elem, i ); + }, + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + merge: function( first, second ) { + var len = +second.length, + j = 0, + i = first.length; + + for ( ; j < len; j++ ) { + first[ i++ ] = second[ j ]; + } + + first.length = i; + + return first; + }, + + grep: function( elems, callback, invert ) { + var callbackInverse, + matches = [], + i = 0, + length = elems.length, + callbackExpect = !invert; + + // Go through the array, only saving the items + // that pass the validator function + for ( ; i < length; i++ ) { + callbackInverse = !callback( elems[ i ], i ); + if ( callbackInverse !== callbackExpect ) { + matches.push( elems[ i ] ); + } + } + + return matches; + }, + + // arg is for internal usage only + map: function( elems, callback, arg ) { + var length, value, + i = 0, + ret = []; + + // Go through the array, translating each of the items to their new values + if ( isArrayLike( elems ) ) { + length = elems.length; + for ( ; i < length; i++ ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + + // Go through every key on the object, + } else { + for ( i in elems ) { + value = callback( elems[ i ], i, arg ); + + if ( value != null ) { + ret.push( value ); + } + } + } + + // Flatten any nested arrays + return flat( ret ); + }, + + // A global GUID counter for objects + guid: 1, + + // jQuery.support is not used in Core but other projects attach their + // properties to it so it needs to exist. + support: support +} ); + +if ( typeof Symbol === "function" ) { + jQuery.fn[ Symbol.iterator ] = arr[ Symbol.iterator ]; +} + +// Populate the class2type map +jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ), + function( _i, name ) { + class2type[ "[object " + name + "]" ] = name.toLowerCase(); + } ); + +function isArrayLike( obj ) { + + // Support: real iOS 8.2 only (not reproducible in simulator) + // `in` check used to prevent JIT error (gh-2145) + // hasOwn isn't used here due to false negatives + // regarding Nodelist length in IE + var length = !!obj && "length" in obj && obj.length, + type = toType( obj ); + + if ( isFunction( obj ) || isWindow( obj ) ) { + return false; + } + + return type === "array" || length === 0 || + typeof length === "number" && length > 0 && ( length - 1 ) in obj; +} +var Sizzle = +/*! + * Sizzle CSS Selector Engine v2.3.6 + * https://sizzlejs.com/ + * + * Copyright JS Foundation and other contributors + * Released under the MIT license + * https://js.foundation/ + * + * Date: 2021-02-16 + */ +( function( window ) { +var i, + support, + Expr, + getText, + isXML, + tokenize, + compile, + select, + outermostContext, + sortInput, + hasDuplicate, + + // Local document vars + setDocument, + document, + docElem, + documentIsHTML, + rbuggyQSA, + rbuggyMatches, + matches, + contains, + + // Instance-specific data + expando = "sizzle" + 1 * new Date(), + preferredDoc = window.document, + dirruns = 0, + done = 0, + classCache = createCache(), + tokenCache = createCache(), + compilerCache = createCache(), + nonnativeSelectorCache = createCache(), + sortOrder = function( a, b ) { + if ( a === b ) { + hasDuplicate = true; + } + return 0; + }, + + // Instance methods + hasOwn = ( {} ).hasOwnProperty, + arr = [], + pop = arr.pop, + pushNative = arr.push, + push = arr.push, + slice = arr.slice, + + // Use a stripped-down indexOf as it's faster than native + // https://jsperf.com/thor-indexof-vs-for/5 + indexOf = function( list, elem ) { + var i = 0, + len = list.length; + for ( ; i < len; i++ ) { + if ( list[ i ] === elem ) { + return i; + } + } + return -1; + }, + + booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|" + + "ismap|loop|multiple|open|readonly|required|scoped", + + // Regular expressions + + // http://www.w3.org/TR/css3-selectors/#whitespace + whitespace = "[\\x20\\t\\r\\n\\f]", + + // https://www.w3.org/TR/css-syntax-3/#ident-token-diagram + identifier = "(?:\\\\[\\da-fA-F]{1,6}" + whitespace + + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\\x7f])+", + + // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors + attributes = "\\[" + whitespace + "*(" + identifier + ")(?:" + whitespace + + + // Operator (capture 2) + "*([*^$|!~]?=)" + whitespace + + + // "Attribute values must be CSS identifiers [capture 5] + // or strings [capture 3 or capture 4]" + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + + whitespace + "*\\]", + + pseudos = ":(" + identifier + ")(?:\\((" + + + // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: + // 1. quoted (capture 3; capture 4 or capture 5) + "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + + + // 2. simple (capture 6) + "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + + + // 3. anything else (capture 2) + ".*" + + ")\\)|)", + + // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter + rwhitespace = new RegExp( whitespace + "+", "g" ), + rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + + whitespace + "+$", "g" ), + + rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), + rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + + "*" ), + rdescend = new RegExp( whitespace + "|>" ), + + rpseudo = new RegExp( pseudos ), + ridentifier = new RegExp( "^" + identifier + "$" ), + + matchExpr = { + "ID": new RegExp( "^#(" + identifier + ")" ), + "CLASS": new RegExp( "^\\.(" + identifier + ")" ), + "TAG": new RegExp( "^(" + identifier + "|[*])" ), + "ATTR": new RegExp( "^" + attributes ), + "PSEUDO": new RegExp( "^" + pseudos ), + "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + + whitespace + "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + + whitespace + "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), + "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), + + // For use in libraries implementing .is() + // We use this for POS matching in `select` + "needsContext": new RegExp( "^" + whitespace + + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + whitespace + + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) + }, + + rhtml = /HTML$/i, + rinputs = /^(?:input|select|textarea|button)$/i, + rheader = /^h\d$/i, + + rnative = /^[^{]+\{\s*\[native \w/, + + // Easily-parseable/retrievable ID or TAG or CLASS selectors + rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, + + rsibling = /[+~]/, + + // CSS escapes + // http://www.w3.org/TR/CSS21/syndata.html#escaped-characters + runescape = new RegExp( "\\\\[\\da-fA-F]{1,6}" + whitespace + "?|\\\\([^\\r\\n\\f])", "g" ), + funescape = function( escape, nonHex ) { + var high = "0x" + escape.slice( 1 ) - 0x10000; + + return nonHex ? + + // Strip the backslash prefix from a non-hex escape sequence + nonHex : + + // Replace a hexadecimal escape sequence with the encoded Unicode code point + // Support: IE <=11+ + // For values outside the Basic Multilingual Plane (BMP), manually construct a + // surrogate pair + high < 0 ? + String.fromCharCode( high + 0x10000 ) : + String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); + }, + + // CSS string/identifier serialization + // https://drafts.csswg.org/cssom/#common-serializing-idioms + rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g, + fcssescape = function( ch, asCodePoint ) { + if ( asCodePoint ) { + + // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER + if ( ch === "\0" ) { + return "\uFFFD"; + } + + // Control characters and (dependent upon position) numbers get escaped as code points + return ch.slice( 0, -1 ) + "\\" + + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " "; + } + + // Other potentially-special ASCII characters get backslash-escaped + return "\\" + ch; + }, + + // Used for iframes + // See setDocument() + // Removing the function wrapper causes a "Permission Denied" + // error in IE + unloadHandler = function() { + setDocument(); + }, + + inDisabledFieldset = addCombinator( + function( elem ) { + return elem.disabled === true && elem.nodeName.toLowerCase() === "fieldset"; + }, + { dir: "parentNode", next: "legend" } + ); + +// Optimize for push.apply( _, NodeList ) +try { + push.apply( + ( arr = slice.call( preferredDoc.childNodes ) ), + preferredDoc.childNodes + ); + + // Support: Android<4.0 + // Detect silently failing push.apply + // eslint-disable-next-line no-unused-expressions + arr[ preferredDoc.childNodes.length ].nodeType; +} catch ( e ) { + push = { apply: arr.length ? + + // Leverage slice if possible + function( target, els ) { + pushNative.apply( target, slice.call( els ) ); + } : + + // Support: IE<9 + // Otherwise append directly + function( target, els ) { + var j = target.length, + i = 0; + + // Can't trust NodeList.length + while ( ( target[ j++ ] = els[ i++ ] ) ) {} + target.length = j - 1; + } + }; +} + +function Sizzle( selector, context, results, seed ) { + var m, i, elem, nid, match, groups, newSelector, + newContext = context && context.ownerDocument, + + // nodeType defaults to 9, since context defaults to document + nodeType = context ? context.nodeType : 9; + + results = results || []; + + // Return early from calls with invalid selector or context + if ( typeof selector !== "string" || !selector || + nodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) { + + return results; + } + + // Try to shortcut find operations (as opposed to filters) in HTML documents + if ( !seed ) { + setDocument( context ); + context = context || document; + + if ( documentIsHTML ) { + + // If the selector is sufficiently simple, try using a "get*By*" DOM method + // (excepting DocumentFragment context, where the methods don't exist) + if ( nodeType !== 11 && ( match = rquickExpr.exec( selector ) ) ) { + + // ID selector + if ( ( m = match[ 1 ] ) ) { + + // Document context + if ( nodeType === 9 ) { + if ( ( elem = context.getElementById( m ) ) ) { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( elem.id === m ) { + results.push( elem ); + return results; + } + } else { + return results; + } + + // Element context + } else { + + // Support: IE, Opera, Webkit + // TODO: identify versions + // getElementById can match elements by name instead of ID + if ( newContext && ( elem = newContext.getElementById( m ) ) && + contains( context, elem ) && + elem.id === m ) { + + results.push( elem ); + return results; + } + } + + // Type selector + } else if ( match[ 2 ] ) { + push.apply( results, context.getElementsByTagName( selector ) ); + return results; + + // Class selector + } else if ( ( m = match[ 3 ] ) && support.getElementsByClassName && + context.getElementsByClassName ) { + + push.apply( results, context.getElementsByClassName( m ) ); + return results; + } + } + + // Take advantage of querySelectorAll + if ( support.qsa && + !nonnativeSelectorCache[ selector + " " ] && + ( !rbuggyQSA || !rbuggyQSA.test( selector ) ) && + + // Support: IE 8 only + // Exclude object elements + ( nodeType !== 1 || context.nodeName.toLowerCase() !== "object" ) ) { + + newSelector = selector; + newContext = context; + + // qSA considers elements outside a scoping root when evaluating child or + // descendant combinators, which is not what we want. + // In such cases, we work around the behavior by prefixing every selector in the + // list with an ID selector referencing the scope context. + // The technique has to be used as well when a leading combinator is used + // as such selectors are not recognized by querySelectorAll. + // Thanks to Andrew Dupont for this technique. + if ( nodeType === 1 && + ( rdescend.test( selector ) || rcombinators.test( selector ) ) ) { + + // Expand context for sibling selectors + newContext = rsibling.test( selector ) && testContext( context.parentNode ) || + context; + + // We can use :scope instead of the ID hack if the browser + // supports it & if we're not changing the context. + if ( newContext !== context || !support.scope ) { + + // Capture the context ID, setting it first if necessary + if ( ( nid = context.getAttribute( "id" ) ) ) { + nid = nid.replace( rcssescape, fcssescape ); + } else { + context.setAttribute( "id", ( nid = expando ) ); + } + } + + // Prefix every selector in the list + groups = tokenize( selector ); + i = groups.length; + while ( i-- ) { + groups[ i ] = ( nid ? "#" + nid : ":scope" ) + " " + + toSelector( groups[ i ] ); + } + newSelector = groups.join( "," ); + } + + try { + push.apply( results, + newContext.querySelectorAll( newSelector ) + ); + return results; + } catch ( qsaError ) { + nonnativeSelectorCache( selector, true ); + } finally { + if ( nid === expando ) { + context.removeAttribute( "id" ); + } + } + } + } + } + + // All others + return select( selector.replace( rtrim, "$1" ), context, results, seed ); +} + +/** + * Create key-value caches of limited size + * @returns {function(string, object)} Returns the Object data after storing it on itself with + * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) + * deleting the oldest entry + */ +function createCache() { + var keys = []; + + function cache( key, value ) { + + // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) + if ( keys.push( key + " " ) > Expr.cacheLength ) { + + // Only keep the most recent entries + delete cache[ keys.shift() ]; + } + return ( cache[ key + " " ] = value ); + } + return cache; +} + +/** + * Mark a function for special use by Sizzle + * @param {Function} fn The function to mark + */ +function markFunction( fn ) { + fn[ expando ] = true; + return fn; +} + +/** + * Support testing using an element + * @param {Function} fn Passed the created element and returns a boolean result + */ +function assert( fn ) { + var el = document.createElement( "fieldset" ); + + try { + return !!fn( el ); + } catch ( e ) { + return false; + } finally { + + // Remove from its parent by default + if ( el.parentNode ) { + el.parentNode.removeChild( el ); + } + + // release memory in IE + el = null; + } +} + +/** + * Adds the same handler for all of the specified attrs + * @param {String} attrs Pipe-separated list of attributes + * @param {Function} handler The method that will be applied + */ +function addHandle( attrs, handler ) { + var arr = attrs.split( "|" ), + i = arr.length; + + while ( i-- ) { + Expr.attrHandle[ arr[ i ] ] = handler; + } +} + +/** + * Checks document order of two siblings + * @param {Element} a + * @param {Element} b + * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b + */ +function siblingCheck( a, b ) { + var cur = b && a, + diff = cur && a.nodeType === 1 && b.nodeType === 1 && + a.sourceIndex - b.sourceIndex; + + // Use IE sourceIndex if available on both nodes + if ( diff ) { + return diff; + } + + // Check if b follows a + if ( cur ) { + while ( ( cur = cur.nextSibling ) ) { + if ( cur === b ) { + return -1; + } + } + } + + return a ? 1 : -1; +} + +/** + * Returns a function to use in pseudos for input types + * @param {String} type + */ +function createInputPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for buttons + * @param {String} type + */ +function createButtonPseudo( type ) { + return function( elem ) { + var name = elem.nodeName.toLowerCase(); + return ( name === "input" || name === "button" ) && elem.type === type; + }; +} + +/** + * Returns a function to use in pseudos for :enabled/:disabled + * @param {Boolean} disabled true for :disabled; false for :enabled + */ +function createDisabledPseudo( disabled ) { + + // Known :disabled false positives: fieldset[disabled] > legend:nth-of-type(n+2) :can-disable + return function( elem ) { + + // Only certain elements can match :enabled or :disabled + // https://html.spec.whatwg.org/multipage/scripting.html#selector-enabled + // https://html.spec.whatwg.org/multipage/scripting.html#selector-disabled + if ( "form" in elem ) { + + // Check for inherited disabledness on relevant non-disabled elements: + // * listed form-associated elements in a disabled fieldset + // https://html.spec.whatwg.org/multipage/forms.html#category-listed + // https://html.spec.whatwg.org/multipage/forms.html#concept-fe-disabled + // * option elements in a disabled optgroup + // https://html.spec.whatwg.org/multipage/forms.html#concept-option-disabled + // All such elements have a "form" property. + if ( elem.parentNode && elem.disabled === false ) { + + // Option elements defer to a parent optgroup if present + if ( "label" in elem ) { + if ( "label" in elem.parentNode ) { + return elem.parentNode.disabled === disabled; + } else { + return elem.disabled === disabled; + } + } + + // Support: IE 6 - 11 + // Use the isDisabled shortcut property to check for disabled fieldset ancestors + return elem.isDisabled === disabled || + + // Where there is no isDisabled, check manually + /* jshint -W018 */ + elem.isDisabled !== !disabled && + inDisabledFieldset( elem ) === disabled; + } + + return elem.disabled === disabled; + + // Try to winnow out elements that can't be disabled before trusting the disabled property. + // Some victims get caught in our net (label, legend, menu, track), but it shouldn't + // even exist on them, let alone have a boolean value. + } else if ( "label" in elem ) { + return elem.disabled === disabled; + } + + // Remaining elements are neither :enabled nor :disabled + return false; + }; +} + +/** + * Returns a function to use in pseudos for positionals + * @param {Function} fn + */ +function createPositionalPseudo( fn ) { + return markFunction( function( argument ) { + argument = +argument; + return markFunction( function( seed, matches ) { + var j, + matchIndexes = fn( [], seed.length, argument ), + i = matchIndexes.length; + + // Match elements found at the specified indexes + while ( i-- ) { + if ( seed[ ( j = matchIndexes[ i ] ) ] ) { + seed[ j ] = !( matches[ j ] = seed[ j ] ); + } + } + } ); + } ); +} + +/** + * Checks a node for validity as a Sizzle context + * @param {Element|Object=} context + * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value + */ +function testContext( context ) { + return context && typeof context.getElementsByTagName !== "undefined" && context; +} + +// Expose support vars for convenience +support = Sizzle.support = {}; + +/** + * Detects XML nodes + * @param {Element|Object} elem An element or a document + * @returns {Boolean} True iff elem is a non-HTML XML node + */ +isXML = Sizzle.isXML = function( elem ) { + var namespace = elem && elem.namespaceURI, + docElem = elem && ( elem.ownerDocument || elem ).documentElement; + + // Support: IE <=8 + // Assume HTML when documentElement doesn't yet exist, such as inside loading iframes + // https://bugs.jquery.com/ticket/4833 + return !rhtml.test( namespace || docElem && docElem.nodeName || "HTML" ); +}; + +/** + * Sets document-related variables once based on the current document + * @param {Element|Object} [doc] An element or document object to use to set the document + * @returns {Object} Returns the current document + */ +setDocument = Sizzle.setDocument = function( node ) { + var hasCompare, subWindow, + doc = node ? node.ownerDocument || node : preferredDoc; + + // Return early if doc is invalid or already selected + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( doc == document || doc.nodeType !== 9 || !doc.documentElement ) { + return document; + } + + // Update global variables + document = doc; + docElem = document.documentElement; + documentIsHTML = !isXML( document ); + + // Support: IE 9 - 11+, Edge 12 - 18+ + // Accessing iframe documents after unload throws "permission denied" errors (jQuery #13936) + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( preferredDoc != document && + ( subWindow = document.defaultView ) && subWindow.top !== subWindow ) { + + // Support: IE 11, Edge + if ( subWindow.addEventListener ) { + subWindow.addEventListener( "unload", unloadHandler, false ); + + // Support: IE 9 - 10 only + } else if ( subWindow.attachEvent ) { + subWindow.attachEvent( "onunload", unloadHandler ); + } + } + + // Support: IE 8 - 11+, Edge 12 - 18+, Chrome <=16 - 25 only, Firefox <=3.6 - 31 only, + // Safari 4 - 5 only, Opera <=11.6 - 12.x only + // IE/Edge & older browsers don't support the :scope pseudo-class. + // Support: Safari 6.0 only + // Safari 6.0 supports :scope but it's an alias of :root there. + support.scope = assert( function( el ) { + docElem.appendChild( el ).appendChild( document.createElement( "div" ) ); + return typeof el.querySelectorAll !== "undefined" && + !el.querySelectorAll( ":scope fieldset div" ).length; + } ); + + /* Attributes + ---------------------------------------------------------------------- */ + + // Support: IE<8 + // Verify that getAttribute really returns attributes and not properties + // (excepting IE8 booleans) + support.attributes = assert( function( el ) { + el.className = "i"; + return !el.getAttribute( "className" ); + } ); + + /* getElement(s)By* + ---------------------------------------------------------------------- */ + + // Check if getElementsByTagName("*") returns only elements + support.getElementsByTagName = assert( function( el ) { + el.appendChild( document.createComment( "" ) ); + return !el.getElementsByTagName( "*" ).length; + } ); + + // Support: IE<9 + support.getElementsByClassName = rnative.test( document.getElementsByClassName ); + + // Support: IE<10 + // Check if getElementById returns elements by name + // The broken getElementById methods don't pick up programmatically-set names, + // so use a roundabout getElementsByName test + support.getById = assert( function( el ) { + docElem.appendChild( el ).id = expando; + return !document.getElementsByName || !document.getElementsByName( expando ).length; + } ); + + // ID filter and find + if ( support.getById ) { + Expr.filter[ "ID" ] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + return elem.getAttribute( "id" ) === attrId; + }; + }; + Expr.find[ "ID" ] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var elem = context.getElementById( id ); + return elem ? [ elem ] : []; + } + }; + } else { + Expr.filter[ "ID" ] = function( id ) { + var attrId = id.replace( runescape, funescape ); + return function( elem ) { + var node = typeof elem.getAttributeNode !== "undefined" && + elem.getAttributeNode( "id" ); + return node && node.value === attrId; + }; + }; + + // Support: IE 6 - 7 only + // getElementById is not reliable as a find shortcut + Expr.find[ "ID" ] = function( id, context ) { + if ( typeof context.getElementById !== "undefined" && documentIsHTML ) { + var node, i, elems, + elem = context.getElementById( id ); + + if ( elem ) { + + // Verify the id attribute + node = elem.getAttributeNode( "id" ); + if ( node && node.value === id ) { + return [ elem ]; + } + + // Fall back on getElementsByName + elems = context.getElementsByName( id ); + i = 0; + while ( ( elem = elems[ i++ ] ) ) { + node = elem.getAttributeNode( "id" ); + if ( node && node.value === id ) { + return [ elem ]; + } + } + } + + return []; + } + }; + } + + // Tag + Expr.find[ "TAG" ] = support.getElementsByTagName ? + function( tag, context ) { + if ( typeof context.getElementsByTagName !== "undefined" ) { + return context.getElementsByTagName( tag ); + + // DocumentFragment nodes don't have gEBTN + } else if ( support.qsa ) { + return context.querySelectorAll( tag ); + } + } : + + function( tag, context ) { + var elem, + tmp = [], + i = 0, + + // By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too + results = context.getElementsByTagName( tag ); + + // Filter out possible comments + if ( tag === "*" ) { + while ( ( elem = results[ i++ ] ) ) { + if ( elem.nodeType === 1 ) { + tmp.push( elem ); + } + } + + return tmp; + } + return results; + }; + + // Class + Expr.find[ "CLASS" ] = support.getElementsByClassName && function( className, context ) { + if ( typeof context.getElementsByClassName !== "undefined" && documentIsHTML ) { + return context.getElementsByClassName( className ); + } + }; + + /* QSA/matchesSelector + ---------------------------------------------------------------------- */ + + // QSA and matchesSelector support + + // matchesSelector(:active) reports false when true (IE9/Opera 11.5) + rbuggyMatches = []; + + // qSa(:focus) reports false when true (Chrome 21) + // We allow this because of a bug in IE8/9 that throws an error + // whenever `document.activeElement` is accessed on an iframe + // So, we allow :focus to pass through QSA all the time to avoid the IE error + // See https://bugs.jquery.com/ticket/13378 + rbuggyQSA = []; + + if ( ( support.qsa = rnative.test( document.querySelectorAll ) ) ) { + + // Build QSA regex + // Regex strategy adopted from Diego Perini + assert( function( el ) { + + var input; + + // Select is set to empty string on purpose + // This is to test IE's treatment of not explicitly + // setting a boolean content attribute, + // since its presence should be enough + // https://bugs.jquery.com/ticket/12359 + docElem.appendChild( el ).innerHTML = "" + + ""; + + // Support: IE8, Opera 11-12.16 + // Nothing should be selected when empty strings follow ^= or $= or *= + // The test attribute must be unknown in Opera but "safe" for WinRT + // https://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section + if ( el.querySelectorAll( "[msallowcapture^='']" ).length ) { + rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); + } + + // Support: IE8 + // Boolean attributes and "value" are not treated correctly + if ( !el.querySelectorAll( "[selected]" ).length ) { + rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); + } + + // Support: Chrome<29, Android<4.4, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.8+ + if ( !el.querySelectorAll( "[id~=" + expando + "-]" ).length ) { + rbuggyQSA.push( "~=" ); + } + + // Support: IE 11+, Edge 15 - 18+ + // IE 11/Edge don't find elements on a `[name='']` query in some cases. + // Adding a temporary attribute to the document before the selection works + // around the issue. + // Interestingly, IE 10 & older don't seem to have the issue. + input = document.createElement( "input" ); + input.setAttribute( "name", "" ); + el.appendChild( input ); + if ( !el.querySelectorAll( "[name='']" ).length ) { + rbuggyQSA.push( "\\[" + whitespace + "*name" + whitespace + "*=" + + whitespace + "*(?:''|\"\")" ); + } + + // Webkit/Opera - :checked should return selected option elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + // IE8 throws error here and will not see later tests + if ( !el.querySelectorAll( ":checked" ).length ) { + rbuggyQSA.push( ":checked" ); + } + + // Support: Safari 8+, iOS 8+ + // https://bugs.webkit.org/show_bug.cgi?id=136851 + // In-page `selector#id sibling-combinator selector` fails + if ( !el.querySelectorAll( "a#" + expando + "+*" ).length ) { + rbuggyQSA.push( ".#.+[+~]" ); + } + + // Support: Firefox <=3.6 - 5 only + // Old Firefox doesn't throw on a badly-escaped identifier. + el.querySelectorAll( "\\\f" ); + rbuggyQSA.push( "[\\r\\n\\f]" ); + } ); + + assert( function( el ) { + el.innerHTML = "" + + ""; + + // Support: Windows 8 Native Apps + // The type and name attributes are restricted during .innerHTML assignment + var input = document.createElement( "input" ); + input.setAttribute( "type", "hidden" ); + el.appendChild( input ).setAttribute( "name", "D" ); + + // Support: IE8 + // Enforce case-sensitivity of name attribute + if ( el.querySelectorAll( "[name=d]" ).length ) { + rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); + } + + // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) + // IE8 throws error here and will not see later tests + if ( el.querySelectorAll( ":enabled" ).length !== 2 ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Support: IE9-11+ + // IE's :disabled selector does not pick up the children of disabled fieldsets + docElem.appendChild( el ).disabled = true; + if ( el.querySelectorAll( ":disabled" ).length !== 2 ) { + rbuggyQSA.push( ":enabled", ":disabled" ); + } + + // Support: Opera 10 - 11 only + // Opera 10-11 does not throw on post-comma invalid pseudos + el.querySelectorAll( "*,:x" ); + rbuggyQSA.push( ",.*:" ); + } ); + } + + if ( ( support.matchesSelector = rnative.test( ( matches = docElem.matches || + docElem.webkitMatchesSelector || + docElem.mozMatchesSelector || + docElem.oMatchesSelector || + docElem.msMatchesSelector ) ) ) ) { + + assert( function( el ) { + + // Check to see if it's possible to do matchesSelector + // on a disconnected node (IE 9) + support.disconnectedMatch = matches.call( el, "*" ); + + // This should fail with an exception + // Gecko does not error, returns false instead + matches.call( el, "[s!='']:x" ); + rbuggyMatches.push( "!=", pseudos ); + } ); + } + + rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join( "|" ) ); + rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join( "|" ) ); + + /* Contains + ---------------------------------------------------------------------- */ + hasCompare = rnative.test( docElem.compareDocumentPosition ); + + // Element contains another + // Purposefully self-exclusive + // As in, an element does not contain itself + contains = hasCompare || rnative.test( docElem.contains ) ? + function( a, b ) { + var adown = a.nodeType === 9 ? a.documentElement : a, + bup = b && b.parentNode; + return a === bup || !!( bup && bup.nodeType === 1 && ( + adown.contains ? + adown.contains( bup ) : + a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 + ) ); + } : + function( a, b ) { + if ( b ) { + while ( ( b = b.parentNode ) ) { + if ( b === a ) { + return true; + } + } + } + return false; + }; + + /* Sorting + ---------------------------------------------------------------------- */ + + // Document order sorting + sortOrder = hasCompare ? + function( a, b ) { + + // Flag for duplicate removal + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + // Sort on method existence if only one input has compareDocumentPosition + var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; + if ( compare ) { + return compare; + } + + // Calculate position if both inputs belong to the same document + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + compare = ( a.ownerDocument || a ) == ( b.ownerDocument || b ) ? + a.compareDocumentPosition( b ) : + + // Otherwise we know they are disconnected + 1; + + // Disconnected nodes + if ( compare & 1 || + ( !support.sortDetached && b.compareDocumentPosition( a ) === compare ) ) { + + // Choose the first element that is related to our preferred document + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( a == document || a.ownerDocument == preferredDoc && + contains( preferredDoc, a ) ) { + return -1; + } + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( b == document || b.ownerDocument == preferredDoc && + contains( preferredDoc, b ) ) { + return 1; + } + + // Maintain original order + return sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + } + + return compare & 4 ? -1 : 1; + } : + function( a, b ) { + + // Exit early if the nodes are identical + if ( a === b ) { + hasDuplicate = true; + return 0; + } + + var cur, + i = 0, + aup = a.parentNode, + bup = b.parentNode, + ap = [ a ], + bp = [ b ]; + + // Parentless nodes are either documents or disconnected + if ( !aup || !bup ) { + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + /* eslint-disable eqeqeq */ + return a == document ? -1 : + b == document ? 1 : + /* eslint-enable eqeqeq */ + aup ? -1 : + bup ? 1 : + sortInput ? + ( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) : + 0; + + // If the nodes are siblings, we can do a quick check + } else if ( aup === bup ) { + return siblingCheck( a, b ); + } + + // Otherwise we need full lists of their ancestors for comparison + cur = a; + while ( ( cur = cur.parentNode ) ) { + ap.unshift( cur ); + } + cur = b; + while ( ( cur = cur.parentNode ) ) { + bp.unshift( cur ); + } + + // Walk down the tree looking for a discrepancy + while ( ap[ i ] === bp[ i ] ) { + i++; + } + + return i ? + + // Do a sibling check if the nodes have a common ancestor + siblingCheck( ap[ i ], bp[ i ] ) : + + // Otherwise nodes in our document sort first + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + /* eslint-disable eqeqeq */ + ap[ i ] == preferredDoc ? -1 : + bp[ i ] == preferredDoc ? 1 : + /* eslint-enable eqeqeq */ + 0; + }; + + return document; +}; + +Sizzle.matches = function( expr, elements ) { + return Sizzle( expr, null, null, elements ); +}; + +Sizzle.matchesSelector = function( elem, expr ) { + setDocument( elem ); + + if ( support.matchesSelector && documentIsHTML && + !nonnativeSelectorCache[ expr + " " ] && + ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && + ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { + + try { + var ret = matches.call( elem, expr ); + + // IE 9's matchesSelector returns false on disconnected nodes + if ( ret || support.disconnectedMatch || + + // As well, disconnected nodes are said to be in a document + // fragment in IE 9 + elem.document && elem.document.nodeType !== 11 ) { + return ret; + } + } catch ( e ) { + nonnativeSelectorCache( expr, true ); + } + } + + return Sizzle( expr, document, null, [ elem ] ).length > 0; +}; + +Sizzle.contains = function( context, elem ) { + + // Set document vars if needed + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( ( context.ownerDocument || context ) != document ) { + setDocument( context ); + } + return contains( context, elem ); +}; + +Sizzle.attr = function( elem, name ) { + + // Set document vars if needed + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( ( elem.ownerDocument || elem ) != document ) { + setDocument( elem ); + } + + var fn = Expr.attrHandle[ name.toLowerCase() ], + + // Don't get fooled by Object.prototype properties (jQuery #13807) + val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? + fn( elem, name, !documentIsHTML ) : + undefined; + + return val !== undefined ? + val : + support.attributes || !documentIsHTML ? + elem.getAttribute( name ) : + ( val = elem.getAttributeNode( name ) ) && val.specified ? + val.value : + null; +}; + +Sizzle.escape = function( sel ) { + return ( sel + "" ).replace( rcssescape, fcssescape ); +}; + +Sizzle.error = function( msg ) { + throw new Error( "Syntax error, unrecognized expression: " + msg ); +}; + +/** + * Document sorting and removing duplicates + * @param {ArrayLike} results + */ +Sizzle.uniqueSort = function( results ) { + var elem, + duplicates = [], + j = 0, + i = 0; + + // Unless we *know* we can detect duplicates, assume their presence + hasDuplicate = !support.detectDuplicates; + sortInput = !support.sortStable && results.slice( 0 ); + results.sort( sortOrder ); + + if ( hasDuplicate ) { + while ( ( elem = results[ i++ ] ) ) { + if ( elem === results[ i ] ) { + j = duplicates.push( i ); + } + } + while ( j-- ) { + results.splice( duplicates[ j ], 1 ); + } + } + + // Clear input after sorting to release objects + // See https://github.com/jquery/sizzle/pull/225 + sortInput = null; + + return results; +}; + +/** + * Utility function for retrieving the text value of an array of DOM nodes + * @param {Array|Element} elem + */ +getText = Sizzle.getText = function( elem ) { + var node, + ret = "", + i = 0, + nodeType = elem.nodeType; + + if ( !nodeType ) { + + // If no nodeType, this is expected to be an array + while ( ( node = elem[ i++ ] ) ) { + + // Do not traverse comment nodes + ret += getText( node ); + } + } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { + + // Use textContent for elements + // innerText usage removed for consistency of new lines (jQuery #11153) + if ( typeof elem.textContent === "string" ) { + return elem.textContent; + } else { + + // Traverse its children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + ret += getText( elem ); + } + } + } else if ( nodeType === 3 || nodeType === 4 ) { + return elem.nodeValue; + } + + // Do not include comment or processing instruction nodes + + return ret; +}; + +Expr = Sizzle.selectors = { + + // Can be adjusted by the user + cacheLength: 50, + + createPseudo: markFunction, + + match: matchExpr, + + attrHandle: {}, + + find: {}, + + relative: { + ">": { dir: "parentNode", first: true }, + " ": { dir: "parentNode" }, + "+": { dir: "previousSibling", first: true }, + "~": { dir: "previousSibling" } + }, + + preFilter: { + "ATTR": function( match ) { + match[ 1 ] = match[ 1 ].replace( runescape, funescape ); + + // Move the given value to match[3] whether quoted or unquoted + match[ 3 ] = ( match[ 3 ] || match[ 4 ] || + match[ 5 ] || "" ).replace( runescape, funescape ); + + if ( match[ 2 ] === "~=" ) { + match[ 3 ] = " " + match[ 3 ] + " "; + } + + return match.slice( 0, 4 ); + }, + + "CHILD": function( match ) { + + /* matches from matchExpr["CHILD"] + 1 type (only|nth|...) + 2 what (child|of-type) + 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) + 4 xn-component of xn+y argument ([+-]?\d*n|) + 5 sign of xn-component + 6 x of xn-component + 7 sign of y-component + 8 y of y-component + */ + match[ 1 ] = match[ 1 ].toLowerCase(); + + if ( match[ 1 ].slice( 0, 3 ) === "nth" ) { + + // nth-* requires argument + if ( !match[ 3 ] ) { + Sizzle.error( match[ 0 ] ); + } + + // numeric x and y parameters for Expr.filter.CHILD + // remember that false/true cast respectively to 0/1 + match[ 4 ] = +( match[ 4 ] ? + match[ 5 ] + ( match[ 6 ] || 1 ) : + 2 * ( match[ 3 ] === "even" || match[ 3 ] === "odd" ) ); + match[ 5 ] = +( ( match[ 7 ] + match[ 8 ] ) || match[ 3 ] === "odd" ); + + // other types prohibit arguments + } else if ( match[ 3 ] ) { + Sizzle.error( match[ 0 ] ); + } + + return match; + }, + + "PSEUDO": function( match ) { + var excess, + unquoted = !match[ 6 ] && match[ 2 ]; + + if ( matchExpr[ "CHILD" ].test( match[ 0 ] ) ) { + return null; + } + + // Accept quoted arguments as-is + if ( match[ 3 ] ) { + match[ 2 ] = match[ 4 ] || match[ 5 ] || ""; + + // Strip excess characters from unquoted arguments + } else if ( unquoted && rpseudo.test( unquoted ) && + + // Get excess from tokenize (recursively) + ( excess = tokenize( unquoted, true ) ) && + + // advance to the next closing parenthesis + ( excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length ) ) { + + // excess is a negative index + match[ 0 ] = match[ 0 ].slice( 0, excess ); + match[ 2 ] = unquoted.slice( 0, excess ); + } + + // Return only captures needed by the pseudo filter method (type and argument) + return match.slice( 0, 3 ); + } + }, + + filter: { + + "TAG": function( nodeNameSelector ) { + var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); + return nodeNameSelector === "*" ? + function() { + return true; + } : + function( elem ) { + return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; + }; + }, + + "CLASS": function( className ) { + var pattern = classCache[ className + " " ]; + + return pattern || + ( pattern = new RegExp( "(^|" + whitespace + + ")" + className + "(" + whitespace + "|$)" ) ) && classCache( + className, function( elem ) { + return pattern.test( + typeof elem.className === "string" && elem.className || + typeof elem.getAttribute !== "undefined" && + elem.getAttribute( "class" ) || + "" + ); + } ); + }, + + "ATTR": function( name, operator, check ) { + return function( elem ) { + var result = Sizzle.attr( elem, name ); + + if ( result == null ) { + return operator === "!="; + } + if ( !operator ) { + return true; + } + + result += ""; + + /* eslint-disable max-len */ + + return operator === "=" ? result === check : + operator === "!=" ? result !== check : + operator === "^=" ? check && result.indexOf( check ) === 0 : + operator === "*=" ? check && result.indexOf( check ) > -1 : + operator === "$=" ? check && result.slice( -check.length ) === check : + operator === "~=" ? ( " " + result.replace( rwhitespace, " " ) + " " ).indexOf( check ) > -1 : + operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : + false; + /* eslint-enable max-len */ + + }; + }, + + "CHILD": function( type, what, _argument, first, last ) { + var simple = type.slice( 0, 3 ) !== "nth", + forward = type.slice( -4 ) !== "last", + ofType = what === "of-type"; + + return first === 1 && last === 0 ? + + // Shortcut for :nth-*(n) + function( elem ) { + return !!elem.parentNode; + } : + + function( elem, _context, xml ) { + var cache, uniqueCache, outerCache, node, nodeIndex, start, + dir = simple !== forward ? "nextSibling" : "previousSibling", + parent = elem.parentNode, + name = ofType && elem.nodeName.toLowerCase(), + useCache = !xml && !ofType, + diff = false; + + if ( parent ) { + + // :(first|last|only)-(child|of-type) + if ( simple ) { + while ( dir ) { + node = elem; + while ( ( node = node[ dir ] ) ) { + if ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) { + + return false; + } + } + + // Reverse direction for :only-* (if we haven't yet done so) + start = dir = type === "only" && !start && "nextSibling"; + } + return true; + } + + start = [ forward ? parent.firstChild : parent.lastChild ]; + + // non-xml :nth-child(...) stores cache data on `parent` + if ( forward && useCache ) { + + // Seek `elem` from a previously-cached index + + // ...in a gzip-friendly way + node = parent; + outerCache = node[ expando ] || ( node[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + ( outerCache[ node.uniqueID ] = {} ); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex && cache[ 2 ]; + node = nodeIndex && parent.childNodes[ nodeIndex ]; + + while ( ( node = ++nodeIndex && node && node[ dir ] || + + // Fallback to seeking `elem` from the start + ( diff = nodeIndex = 0 ) || start.pop() ) ) { + + // When found, cache indexes on `parent` and break + if ( node.nodeType === 1 && ++diff && node === elem ) { + uniqueCache[ type ] = [ dirruns, nodeIndex, diff ]; + break; + } + } + + } else { + + // Use previously-cached element index if available + if ( useCache ) { + + // ...in a gzip-friendly way + node = elem; + outerCache = node[ expando ] || ( node[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + ( outerCache[ node.uniqueID ] = {} ); + + cache = uniqueCache[ type ] || []; + nodeIndex = cache[ 0 ] === dirruns && cache[ 1 ]; + diff = nodeIndex; + } + + // xml :nth-child(...) + // or :nth-last-child(...) or :nth(-last)?-of-type(...) + if ( diff === false ) { + + // Use the same loop as above to seek `elem` from the start + while ( ( node = ++nodeIndex && node && node[ dir ] || + ( diff = nodeIndex = 0 ) || start.pop() ) ) { + + if ( ( ofType ? + node.nodeName.toLowerCase() === name : + node.nodeType === 1 ) && + ++diff ) { + + // Cache the index of each encountered element + if ( useCache ) { + outerCache = node[ expando ] || + ( node[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ node.uniqueID ] || + ( outerCache[ node.uniqueID ] = {} ); + + uniqueCache[ type ] = [ dirruns, diff ]; + } + + if ( node === elem ) { + break; + } + } + } + } + } + + // Incorporate the offset, then check against cycle size + diff -= last; + return diff === first || ( diff % first === 0 && diff / first >= 0 ); + } + }; + }, + + "PSEUDO": function( pseudo, argument ) { + + // pseudo-class names are case-insensitive + // http://www.w3.org/TR/selectors/#pseudo-classes + // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters + // Remember that setFilters inherits from pseudos + var args, + fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || + Sizzle.error( "unsupported pseudo: " + pseudo ); + + // The user may use createPseudo to indicate that + // arguments are needed to create the filter function + // just as Sizzle does + if ( fn[ expando ] ) { + return fn( argument ); + } + + // But maintain support for old signatures + if ( fn.length > 1 ) { + args = [ pseudo, pseudo, "", argument ]; + return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? + markFunction( function( seed, matches ) { + var idx, + matched = fn( seed, argument ), + i = matched.length; + while ( i-- ) { + idx = indexOf( seed, matched[ i ] ); + seed[ idx ] = !( matches[ idx ] = matched[ i ] ); + } + } ) : + function( elem ) { + return fn( elem, 0, args ); + }; + } + + return fn; + } + }, + + pseudos: { + + // Potentially complex pseudos + "not": markFunction( function( selector ) { + + // Trim the selector passed to compile + // to avoid treating leading and trailing + // spaces as combinators + var input = [], + results = [], + matcher = compile( selector.replace( rtrim, "$1" ) ); + + return matcher[ expando ] ? + markFunction( function( seed, matches, _context, xml ) { + var elem, + unmatched = matcher( seed, null, xml, [] ), + i = seed.length; + + // Match elements unmatched by `matcher` + while ( i-- ) { + if ( ( elem = unmatched[ i ] ) ) { + seed[ i ] = !( matches[ i ] = elem ); + } + } + } ) : + function( elem, _context, xml ) { + input[ 0 ] = elem; + matcher( input, null, xml, results ); + + // Don't keep the element (issue #299) + input[ 0 ] = null; + return !results.pop(); + }; + } ), + + "has": markFunction( function( selector ) { + return function( elem ) { + return Sizzle( selector, elem ).length > 0; + }; + } ), + + "contains": markFunction( function( text ) { + text = text.replace( runescape, funescape ); + return function( elem ) { + return ( elem.textContent || getText( elem ) ).indexOf( text ) > -1; + }; + } ), + + // "Whether an element is represented by a :lang() selector + // is based solely on the element's language value + // being equal to the identifier C, + // or beginning with the identifier C immediately followed by "-". + // The matching of C against the element's language value is performed case-insensitively. + // The identifier C does not have to be a valid language name." + // http://www.w3.org/TR/selectors/#lang-pseudo + "lang": markFunction( function( lang ) { + + // lang value must be a valid identifier + if ( !ridentifier.test( lang || "" ) ) { + Sizzle.error( "unsupported lang: " + lang ); + } + lang = lang.replace( runescape, funescape ).toLowerCase(); + return function( elem ) { + var elemLang; + do { + if ( ( elemLang = documentIsHTML ? + elem.lang : + elem.getAttribute( "xml:lang" ) || elem.getAttribute( "lang" ) ) ) { + + elemLang = elemLang.toLowerCase(); + return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; + } + } while ( ( elem = elem.parentNode ) && elem.nodeType === 1 ); + return false; + }; + } ), + + // Miscellaneous + "target": function( elem ) { + var hash = window.location && window.location.hash; + return hash && hash.slice( 1 ) === elem.id; + }, + + "root": function( elem ) { + return elem === docElem; + }, + + "focus": function( elem ) { + return elem === document.activeElement && + ( !document.hasFocus || document.hasFocus() ) && + !!( elem.type || elem.href || ~elem.tabIndex ); + }, + + // Boolean properties + "enabled": createDisabledPseudo( false ), + "disabled": createDisabledPseudo( true ), + + "checked": function( elem ) { + + // In CSS3, :checked should return both checked and selected elements + // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked + var nodeName = elem.nodeName.toLowerCase(); + return ( nodeName === "input" && !!elem.checked ) || + ( nodeName === "option" && !!elem.selected ); + }, + + "selected": function( elem ) { + + // Accessing this property makes selected-by-default + // options in Safari work properly + if ( elem.parentNode ) { + // eslint-disable-next-line no-unused-expressions + elem.parentNode.selectedIndex; + } + + return elem.selected === true; + }, + + // Contents + "empty": function( elem ) { + + // http://www.w3.org/TR/selectors/#empty-pseudo + // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), + // but not by others (comment: 8; processing instruction: 7; etc.) + // nodeType < 6 works because attributes (2) do not appear as children + for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { + if ( elem.nodeType < 6 ) { + return false; + } + } + return true; + }, + + "parent": function( elem ) { + return !Expr.pseudos[ "empty" ]( elem ); + }, + + // Element/input types + "header": function( elem ) { + return rheader.test( elem.nodeName ); + }, + + "input": function( elem ) { + return rinputs.test( elem.nodeName ); + }, + + "button": function( elem ) { + var name = elem.nodeName.toLowerCase(); + return name === "input" && elem.type === "button" || name === "button"; + }, + + "text": function( elem ) { + var attr; + return elem.nodeName.toLowerCase() === "input" && + elem.type === "text" && + + // Support: IE<8 + // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" + ( ( attr = elem.getAttribute( "type" ) ) == null || + attr.toLowerCase() === "text" ); + }, + + // Position-in-collection + "first": createPositionalPseudo( function() { + return [ 0 ]; + } ), + + "last": createPositionalPseudo( function( _matchIndexes, length ) { + return [ length - 1 ]; + } ), + + "eq": createPositionalPseudo( function( _matchIndexes, length, argument ) { + return [ argument < 0 ? argument + length : argument ]; + } ), + + "even": createPositionalPseudo( function( matchIndexes, length ) { + var i = 0; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ), + + "odd": createPositionalPseudo( function( matchIndexes, length ) { + var i = 1; + for ( ; i < length; i += 2 ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ), + + "lt": createPositionalPseudo( function( matchIndexes, length, argument ) { + var i = argument < 0 ? + argument + length : + argument > length ? + length : + argument; + for ( ; --i >= 0; ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ), + + "gt": createPositionalPseudo( function( matchIndexes, length, argument ) { + var i = argument < 0 ? argument + length : argument; + for ( ; ++i < length; ) { + matchIndexes.push( i ); + } + return matchIndexes; + } ) + } +}; + +Expr.pseudos[ "nth" ] = Expr.pseudos[ "eq" ]; + +// Add button/input type pseudos +for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { + Expr.pseudos[ i ] = createInputPseudo( i ); +} +for ( i in { submit: true, reset: true } ) { + Expr.pseudos[ i ] = createButtonPseudo( i ); +} + +// Easy API for creating new setFilters +function setFilters() {} +setFilters.prototype = Expr.filters = Expr.pseudos; +Expr.setFilters = new setFilters(); + +tokenize = Sizzle.tokenize = function( selector, parseOnly ) { + var matched, match, tokens, type, + soFar, groups, preFilters, + cached = tokenCache[ selector + " " ]; + + if ( cached ) { + return parseOnly ? 0 : cached.slice( 0 ); + } + + soFar = selector; + groups = []; + preFilters = Expr.preFilter; + + while ( soFar ) { + + // Comma and first run + if ( !matched || ( match = rcomma.exec( soFar ) ) ) { + if ( match ) { + + // Don't consume trailing commas as valid + soFar = soFar.slice( match[ 0 ].length ) || soFar; + } + groups.push( ( tokens = [] ) ); + } + + matched = false; + + // Combinators + if ( ( match = rcombinators.exec( soFar ) ) ) { + matched = match.shift(); + tokens.push( { + value: matched, + + // Cast descendant combinators to space + type: match[ 0 ].replace( rtrim, " " ) + } ); + soFar = soFar.slice( matched.length ); + } + + // Filters + for ( type in Expr.filter ) { + if ( ( match = matchExpr[ type ].exec( soFar ) ) && ( !preFilters[ type ] || + ( match = preFilters[ type ]( match ) ) ) ) { + matched = match.shift(); + tokens.push( { + value: matched, + type: type, + matches: match + } ); + soFar = soFar.slice( matched.length ); + } + } + + if ( !matched ) { + break; + } + } + + // Return the length of the invalid excess + // if we're just parsing + // Otherwise, throw an error or return tokens + return parseOnly ? + soFar.length : + soFar ? + Sizzle.error( selector ) : + + // Cache the tokens + tokenCache( selector, groups ).slice( 0 ); +}; + +function toSelector( tokens ) { + var i = 0, + len = tokens.length, + selector = ""; + for ( ; i < len; i++ ) { + selector += tokens[ i ].value; + } + return selector; +} + +function addCombinator( matcher, combinator, base ) { + var dir = combinator.dir, + skip = combinator.next, + key = skip || dir, + checkNonElements = base && key === "parentNode", + doneName = done++; + + return combinator.first ? + + // Check against closest ancestor/preceding element + function( elem, context, xml ) { + while ( ( elem = elem[ dir ] ) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + return matcher( elem, context, xml ); + } + } + return false; + } : + + // Check against all ancestor/preceding elements + function( elem, context, xml ) { + var oldCache, uniqueCache, outerCache, + newCache = [ dirruns, doneName ]; + + // We can't set arbitrary data on XML nodes, so they don't benefit from combinator caching + if ( xml ) { + while ( ( elem = elem[ dir ] ) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + if ( matcher( elem, context, xml ) ) { + return true; + } + } + } + } else { + while ( ( elem = elem[ dir ] ) ) { + if ( elem.nodeType === 1 || checkNonElements ) { + outerCache = elem[ expando ] || ( elem[ expando ] = {} ); + + // Support: IE <9 only + // Defend against cloned attroperties (jQuery gh-1709) + uniqueCache = outerCache[ elem.uniqueID ] || + ( outerCache[ elem.uniqueID ] = {} ); + + if ( skip && skip === elem.nodeName.toLowerCase() ) { + elem = elem[ dir ] || elem; + } else if ( ( oldCache = uniqueCache[ key ] ) && + oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { + + // Assign to newCache so results back-propagate to previous elements + return ( newCache[ 2 ] = oldCache[ 2 ] ); + } else { + + // Reuse newcache so results back-propagate to previous elements + uniqueCache[ key ] = newCache; + + // A match means we're done; a fail means we have to keep checking + if ( ( newCache[ 2 ] = matcher( elem, context, xml ) ) ) { + return true; + } + } + } + } + } + return false; + }; +} + +function elementMatcher( matchers ) { + return matchers.length > 1 ? + function( elem, context, xml ) { + var i = matchers.length; + while ( i-- ) { + if ( !matchers[ i ]( elem, context, xml ) ) { + return false; + } + } + return true; + } : + matchers[ 0 ]; +} + +function multipleContexts( selector, contexts, results ) { + var i = 0, + len = contexts.length; + for ( ; i < len; i++ ) { + Sizzle( selector, contexts[ i ], results ); + } + return results; +} + +function condense( unmatched, map, filter, context, xml ) { + var elem, + newUnmatched = [], + i = 0, + len = unmatched.length, + mapped = map != null; + + for ( ; i < len; i++ ) { + if ( ( elem = unmatched[ i ] ) ) { + if ( !filter || filter( elem, context, xml ) ) { + newUnmatched.push( elem ); + if ( mapped ) { + map.push( i ); + } + } + } + } + + return newUnmatched; +} + +function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { + if ( postFilter && !postFilter[ expando ] ) { + postFilter = setMatcher( postFilter ); + } + if ( postFinder && !postFinder[ expando ] ) { + postFinder = setMatcher( postFinder, postSelector ); + } + return markFunction( function( seed, results, context, xml ) { + var temp, i, elem, + preMap = [], + postMap = [], + preexisting = results.length, + + // Get initial elements from seed or context + elems = seed || multipleContexts( + selector || "*", + context.nodeType ? [ context ] : context, + [] + ), + + // Prefilter to get matcher input, preserving a map for seed-results synchronization + matcherIn = preFilter && ( seed || !selector ) ? + condense( elems, preMap, preFilter, context, xml ) : + elems, + + matcherOut = matcher ? + + // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, + postFinder || ( seed ? preFilter : preexisting || postFilter ) ? + + // ...intermediate processing is necessary + [] : + + // ...otherwise use results directly + results : + matcherIn; + + // Find primary matches + if ( matcher ) { + matcher( matcherIn, matcherOut, context, xml ); + } + + // Apply postFilter + if ( postFilter ) { + temp = condense( matcherOut, postMap ); + postFilter( temp, [], context, xml ); + + // Un-match failing elements by moving them back to matcherIn + i = temp.length; + while ( i-- ) { + if ( ( elem = temp[ i ] ) ) { + matcherOut[ postMap[ i ] ] = !( matcherIn[ postMap[ i ] ] = elem ); + } + } + } + + if ( seed ) { + if ( postFinder || preFilter ) { + if ( postFinder ) { + + // Get the final matcherOut by condensing this intermediate into postFinder contexts + temp = []; + i = matcherOut.length; + while ( i-- ) { + if ( ( elem = matcherOut[ i ] ) ) { + + // Restore matcherIn since elem is not yet a final match + temp.push( ( matcherIn[ i ] = elem ) ); + } + } + postFinder( null, ( matcherOut = [] ), temp, xml ); + } + + // Move matched elements from seed to results to keep them synchronized + i = matcherOut.length; + while ( i-- ) { + if ( ( elem = matcherOut[ i ] ) && + ( temp = postFinder ? indexOf( seed, elem ) : preMap[ i ] ) > -1 ) { + + seed[ temp ] = !( results[ temp ] = elem ); + } + } + } + + // Add elements to results, through postFinder if defined + } else { + matcherOut = condense( + matcherOut === results ? + matcherOut.splice( preexisting, matcherOut.length ) : + matcherOut + ); + if ( postFinder ) { + postFinder( null, results, matcherOut, xml ); + } else { + push.apply( results, matcherOut ); + } + } + } ); +} + +function matcherFromTokens( tokens ) { + var checkContext, matcher, j, + len = tokens.length, + leadingRelative = Expr.relative[ tokens[ 0 ].type ], + implicitRelative = leadingRelative || Expr.relative[ " " ], + i = leadingRelative ? 1 : 0, + + // The foundational matcher ensures that elements are reachable from top-level context(s) + matchContext = addCombinator( function( elem ) { + return elem === checkContext; + }, implicitRelative, true ), + matchAnyContext = addCombinator( function( elem ) { + return indexOf( checkContext, elem ) > -1; + }, implicitRelative, true ), + matchers = [ function( elem, context, xml ) { + var ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( + ( checkContext = context ).nodeType ? + matchContext( elem, context, xml ) : + matchAnyContext( elem, context, xml ) ); + + // Avoid hanging onto element (issue #299) + checkContext = null; + return ret; + } ]; + + for ( ; i < len; i++ ) { + if ( ( matcher = Expr.relative[ tokens[ i ].type ] ) ) { + matchers = [ addCombinator( elementMatcher( matchers ), matcher ) ]; + } else { + matcher = Expr.filter[ tokens[ i ].type ].apply( null, tokens[ i ].matches ); + + // Return special upon seeing a positional matcher + if ( matcher[ expando ] ) { + + // Find the next relative operator (if any) for proper handling + j = ++i; + for ( ; j < len; j++ ) { + if ( Expr.relative[ tokens[ j ].type ] ) { + break; + } + } + return setMatcher( + i > 1 && elementMatcher( matchers ), + i > 1 && toSelector( + + // If the preceding token was a descendant combinator, insert an implicit any-element `*` + tokens + .slice( 0, i - 1 ) + .concat( { value: tokens[ i - 2 ].type === " " ? "*" : "" } ) + ).replace( rtrim, "$1" ), + matcher, + i < j && matcherFromTokens( tokens.slice( i, j ) ), + j < len && matcherFromTokens( ( tokens = tokens.slice( j ) ) ), + j < len && toSelector( tokens ) + ); + } + matchers.push( matcher ); + } + } + + return elementMatcher( matchers ); +} + +function matcherFromGroupMatchers( elementMatchers, setMatchers ) { + var bySet = setMatchers.length > 0, + byElement = elementMatchers.length > 0, + superMatcher = function( seed, context, xml, results, outermost ) { + var elem, j, matcher, + matchedCount = 0, + i = "0", + unmatched = seed && [], + setMatched = [], + contextBackup = outermostContext, + + // We must always have either seed elements or outermost context + elems = seed || byElement && Expr.find[ "TAG" ]( "*", outermost ), + + // Use integer dirruns iff this is the outermost matcher + dirrunsUnique = ( dirruns += contextBackup == null ? 1 : Math.random() || 0.1 ), + len = elems.length; + + if ( outermost ) { + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + outermostContext = context == document || context || outermost; + } + + // Add elements passing elementMatchers directly to results + // Support: IE<9, Safari + // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id + for ( ; i !== len && ( elem = elems[ i ] ) != null; i++ ) { + if ( byElement && elem ) { + j = 0; + + // Support: IE 11+, Edge 17 - 18+ + // IE/Edge sometimes throw a "Permission denied" error when strict-comparing + // two documents; shallow comparisons work. + // eslint-disable-next-line eqeqeq + if ( !context && elem.ownerDocument != document ) { + setDocument( elem ); + xml = !documentIsHTML; + } + while ( ( matcher = elementMatchers[ j++ ] ) ) { + if ( matcher( elem, context || document, xml ) ) { + results.push( elem ); + break; + } + } + if ( outermost ) { + dirruns = dirrunsUnique; + } + } + + // Track unmatched elements for set filters + if ( bySet ) { + + // They will have gone through all possible matchers + if ( ( elem = !matcher && elem ) ) { + matchedCount--; + } + + // Lengthen the array for every element, matched or not + if ( seed ) { + unmatched.push( elem ); + } + } + } + + // `i` is now the count of elements visited above, and adding it to `matchedCount` + // makes the latter nonnegative. + matchedCount += i; + + // Apply set filters to unmatched elements + // NOTE: This can be skipped if there are no unmatched elements (i.e., `matchedCount` + // equals `i`), unless we didn't visit _any_ elements in the above loop because we have + // no element matchers and no seed. + // Incrementing an initially-string "0" `i` allows `i` to remain a string only in that + // case, which will result in a "00" `matchedCount` that differs from `i` but is also + // numerically zero. + if ( bySet && i !== matchedCount ) { + j = 0; + while ( ( matcher = setMatchers[ j++ ] ) ) { + matcher( unmatched, setMatched, context, xml ); + } + + if ( seed ) { + + // Reintegrate element matches to eliminate the need for sorting + if ( matchedCount > 0 ) { + while ( i-- ) { + if ( !( unmatched[ i ] || setMatched[ i ] ) ) { + setMatched[ i ] = pop.call( results ); + } + } + } + + // Discard index placeholder values to get only actual matches + setMatched = condense( setMatched ); + } + + // Add matches to results + push.apply( results, setMatched ); + + // Seedless set matches succeeding multiple successful matchers stipulate sorting + if ( outermost && !seed && setMatched.length > 0 && + ( matchedCount + setMatchers.length ) > 1 ) { + + Sizzle.uniqueSort( results ); + } + } + + // Override manipulation of globals by nested matchers + if ( outermost ) { + dirruns = dirrunsUnique; + outermostContext = contextBackup; + } + + return unmatched; + }; + + return bySet ? + markFunction( superMatcher ) : + superMatcher; +} + +compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { + var i, + setMatchers = [], + elementMatchers = [], + cached = compilerCache[ selector + " " ]; + + if ( !cached ) { + + // Generate a function of recursive functions that can be used to check each element + if ( !match ) { + match = tokenize( selector ); + } + i = match.length; + while ( i-- ) { + cached = matcherFromTokens( match[ i ] ); + if ( cached[ expando ] ) { + setMatchers.push( cached ); + } else { + elementMatchers.push( cached ); + } + } + + // Cache the compiled function + cached = compilerCache( + selector, + matcherFromGroupMatchers( elementMatchers, setMatchers ) + ); + + // Save selector and tokenization + cached.selector = selector; + } + return cached; +}; + +/** + * A low-level selection function that works with Sizzle's compiled + * selector functions + * @param {String|Function} selector A selector or a pre-compiled + * selector function built with Sizzle.compile + * @param {Element} context + * @param {Array} [results] + * @param {Array} [seed] A set of elements to match against + */ +select = Sizzle.select = function( selector, context, results, seed ) { + var i, tokens, token, type, find, + compiled = typeof selector === "function" && selector, + match = !seed && tokenize( ( selector = compiled.selector || selector ) ); + + results = results || []; + + // Try to minimize operations if there is only one selector in the list and no seed + // (the latter of which guarantees us context) + if ( match.length === 1 ) { + + // Reduce context if the leading compound selector is an ID + tokens = match[ 0 ] = match[ 0 ].slice( 0 ); + if ( tokens.length > 2 && ( token = tokens[ 0 ] ).type === "ID" && + context.nodeType === 9 && documentIsHTML && Expr.relative[ tokens[ 1 ].type ] ) { + + context = ( Expr.find[ "ID" ]( token.matches[ 0 ] + .replace( runescape, funescape ), context ) || [] )[ 0 ]; + if ( !context ) { + return results; + + // Precompiled matchers will still verify ancestry, so step up a level + } else if ( compiled ) { + context = context.parentNode; + } + + selector = selector.slice( tokens.shift().value.length ); + } + + // Fetch a seed set for right-to-left matching + i = matchExpr[ "needsContext" ].test( selector ) ? 0 : tokens.length; + while ( i-- ) { + token = tokens[ i ]; + + // Abort if we hit a combinator + if ( Expr.relative[ ( type = token.type ) ] ) { + break; + } + if ( ( find = Expr.find[ type ] ) ) { + + // Search, expanding context for leading sibling combinators + if ( ( seed = find( + token.matches[ 0 ].replace( runescape, funescape ), + rsibling.test( tokens[ 0 ].type ) && testContext( context.parentNode ) || + context + ) ) ) { + + // If seed is empty or no tokens remain, we can return early + tokens.splice( i, 1 ); + selector = seed.length && toSelector( tokens ); + if ( !selector ) { + push.apply( results, seed ); + return results; + } + + break; + } + } + } + } + + // Compile and execute a filtering function if one is not provided + // Provide `match` to avoid retokenization if we modified the selector above + ( compiled || compile( selector, match ) )( + seed, + context, + !documentIsHTML, + results, + !context || rsibling.test( selector ) && testContext( context.parentNode ) || context + ); + return results; +}; + +// One-time assignments + +// Sort stability +support.sortStable = expando.split( "" ).sort( sortOrder ).join( "" ) === expando; + +// Support: Chrome 14-35+ +// Always assume duplicates if they aren't passed to the comparison function +support.detectDuplicates = !!hasDuplicate; + +// Initialize against the default document +setDocument(); + +// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) +// Detached nodes confoundingly follow *each other* +support.sortDetached = assert( function( el ) { + + // Should return 1, but returns 4 (following) + return el.compareDocumentPosition( document.createElement( "fieldset" ) ) & 1; +} ); + +// Support: IE<8 +// Prevent attribute/property "interpolation" +// https://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx +if ( !assert( function( el ) { + el.innerHTML = ""; + return el.firstChild.getAttribute( "href" ) === "#"; +} ) ) { + addHandle( "type|href|height|width", function( elem, name, isXML ) { + if ( !isXML ) { + return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); + } + } ); +} + +// Support: IE<9 +// Use defaultValue in place of getAttribute("value") +if ( !support.attributes || !assert( function( el ) { + el.innerHTML = ""; + el.firstChild.setAttribute( "value", "" ); + return el.firstChild.getAttribute( "value" ) === ""; +} ) ) { + addHandle( "value", function( elem, _name, isXML ) { + if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { + return elem.defaultValue; + } + } ); +} + +// Support: IE<9 +// Use getAttributeNode to fetch booleans when getAttribute lies +if ( !assert( function( el ) { + return el.getAttribute( "disabled" ) == null; +} ) ) { + addHandle( booleans, function( elem, name, isXML ) { + var val; + if ( !isXML ) { + return elem[ name ] === true ? name.toLowerCase() : + ( val = elem.getAttributeNode( name ) ) && val.specified ? + val.value : + null; + } + } ); +} + +return Sizzle; + +} )( window ); + + + +jQuery.find = Sizzle; +jQuery.expr = Sizzle.selectors; + +// Deprecated +jQuery.expr[ ":" ] = jQuery.expr.pseudos; +jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort; +jQuery.text = Sizzle.getText; +jQuery.isXMLDoc = Sizzle.isXML; +jQuery.contains = Sizzle.contains; +jQuery.escapeSelector = Sizzle.escape; + + + + +var dir = function( elem, dir, until ) { + var matched = [], + truncate = until !== undefined; + + while ( ( elem = elem[ dir ] ) && elem.nodeType !== 9 ) { + if ( elem.nodeType === 1 ) { + if ( truncate && jQuery( elem ).is( until ) ) { + break; + } + matched.push( elem ); + } + } + return matched; +}; + + +var siblings = function( n, elem ) { + var matched = []; + + for ( ; n; n = n.nextSibling ) { + if ( n.nodeType === 1 && n !== elem ) { + matched.push( n ); + } + } + + return matched; +}; + + +var rneedsContext = jQuery.expr.match.needsContext; + + + +function nodeName( elem, name ) { + + return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); + +} +var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i ); + + + +// Implement the identical functionality for filter and not +function winnow( elements, qualifier, not ) { + if ( isFunction( qualifier ) ) { + return jQuery.grep( elements, function( elem, i ) { + return !!qualifier.call( elem, i, elem ) !== not; + } ); + } + + // Single element + if ( qualifier.nodeType ) { + return jQuery.grep( elements, function( elem ) { + return ( elem === qualifier ) !== not; + } ); + } + + // Arraylike of elements (jQuery, arguments, Array) + if ( typeof qualifier !== "string" ) { + return jQuery.grep( elements, function( elem ) { + return ( indexOf.call( qualifier, elem ) > -1 ) !== not; + } ); + } + + // Filtered directly for both simple and complex selectors + return jQuery.filter( qualifier, elements, not ); +} + +jQuery.filter = function( expr, elems, not ) { + var elem = elems[ 0 ]; + + if ( not ) { + expr = ":not(" + expr + ")"; + } + + if ( elems.length === 1 && elem.nodeType === 1 ) { + return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : []; + } + + return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { + return elem.nodeType === 1; + } ) ); +}; + +jQuery.fn.extend( { + find: function( selector ) { + var i, ret, + len = this.length, + self = this; + + if ( typeof selector !== "string" ) { + return this.pushStack( jQuery( selector ).filter( function() { + for ( i = 0; i < len; i++ ) { + if ( jQuery.contains( self[ i ], this ) ) { + return true; + } + } + } ) ); + } + + ret = this.pushStack( [] ); + + for ( i = 0; i < len; i++ ) { + jQuery.find( selector, self[ i ], ret ); + } + + return len > 1 ? jQuery.uniqueSort( ret ) : ret; + }, + filter: function( selector ) { + return this.pushStack( winnow( this, selector || [], false ) ); + }, + not: function( selector ) { + return this.pushStack( winnow( this, selector || [], true ) ); + }, + is: function( selector ) { + return !!winnow( + this, + + // If this is a positional/relative selector, check membership in the returned set + // so $("p:first").is("p:last") won't return true for a doc with two "p". + typeof selector === "string" && rneedsContext.test( selector ) ? + jQuery( selector ) : + selector || [], + false + ).length; + } +} ); + + +// Initialize a jQuery object + + +// A central reference to the root jQuery(document) +var rootjQuery, + + // A simple way to check for HTML strings + // Prioritize #id over to avoid XSS via location.hash (#9521) + // Strict HTML recognition (#11290: must start with <) + // Shortcut simple #id case for speed + rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/, + + init = jQuery.fn.init = function( selector, context, root ) { + var match, elem; + + // HANDLE: $(""), $(null), $(undefined), $(false) + if ( !selector ) { + return this; + } + + // Method init() accepts an alternate rootjQuery + // so migrate can support jQuery.sub (gh-2101) + root = root || rootjQuery; + + // Handle HTML strings + if ( typeof selector === "string" ) { + if ( selector[ 0 ] === "<" && + selector[ selector.length - 1 ] === ">" && + selector.length >= 3 ) { + + // Assume that strings that start and end with <> are HTML and skip the regex check + match = [ null, selector, null ]; + + } else { + match = rquickExpr.exec( selector ); + } + + // Match html or make sure no context is specified for #id + if ( match && ( match[ 1 ] || !context ) ) { + + // HANDLE: $(html) -> $(array) + if ( match[ 1 ] ) { + context = context instanceof jQuery ? context[ 0 ] : context; + + // Option to run scripts is true for back-compat + // Intentionally let the error be thrown if parseHTML is not present + jQuery.merge( this, jQuery.parseHTML( + match[ 1 ], + context && context.nodeType ? context.ownerDocument || context : document, + true + ) ); + + // HANDLE: $(html, props) + if ( rsingleTag.test( match[ 1 ] ) && jQuery.isPlainObject( context ) ) { + for ( match in context ) { + + // Properties of context are called as methods if possible + if ( isFunction( this[ match ] ) ) { + this[ match ]( context[ match ] ); + + // ...and otherwise set as attributes + } else { + this.attr( match, context[ match ] ); + } + } + } + + return this; + + // HANDLE: $(#id) + } else { + elem = document.getElementById( match[ 2 ] ); + + if ( elem ) { + + // Inject the element directly into the jQuery object + this[ 0 ] = elem; + this.length = 1; + } + return this; + } + + // HANDLE: $(expr, $(...)) + } else if ( !context || context.jquery ) { + return ( context || root ).find( selector ); + + // HANDLE: $(expr, context) + // (which is just equivalent to: $(context).find(expr) + } else { + return this.constructor( context ).find( selector ); + } + + // HANDLE: $(DOMElement) + } else if ( selector.nodeType ) { + this[ 0 ] = selector; + this.length = 1; + return this; + + // HANDLE: $(function) + // Shortcut for document ready + } else if ( isFunction( selector ) ) { + return root.ready !== undefined ? + root.ready( selector ) : + + // Execute immediately if ready is not present + selector( jQuery ); + } + + return jQuery.makeArray( selector, this ); + }; + +// Give the init function the jQuery prototype for later instantiation +init.prototype = jQuery.fn; + +// Initialize central reference +rootjQuery = jQuery( document ); + + +var rparentsprev = /^(?:parents|prev(?:Until|All))/, + + // Methods guaranteed to produce a unique set when starting from a unique set + guaranteedUnique = { + children: true, + contents: true, + next: true, + prev: true + }; + +jQuery.fn.extend( { + has: function( target ) { + var targets = jQuery( target, this ), + l = targets.length; + + return this.filter( function() { + var i = 0; + for ( ; i < l; i++ ) { + if ( jQuery.contains( this, targets[ i ] ) ) { + return true; + } + } + } ); + }, + + closest: function( selectors, context ) { + var cur, + i = 0, + l = this.length, + matched = [], + targets = typeof selectors !== "string" && jQuery( selectors ); + + // Positional selectors never match, since there's no _selection_ context + if ( !rneedsContext.test( selectors ) ) { + for ( ; i < l; i++ ) { + for ( cur = this[ i ]; cur && cur !== context; cur = cur.parentNode ) { + + // Always skip document fragments + if ( cur.nodeType < 11 && ( targets ? + targets.index( cur ) > -1 : + + // Don't pass non-elements to Sizzle + cur.nodeType === 1 && + jQuery.find.matchesSelector( cur, selectors ) ) ) { + + matched.push( cur ); + break; + } + } + } + } + + return this.pushStack( matched.length > 1 ? jQuery.uniqueSort( matched ) : matched ); + }, + + // Determine the position of an element within the set + index: function( elem ) { + + // No argument, return index in parent + if ( !elem ) { + return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; + } + + // Index in selector + if ( typeof elem === "string" ) { + return indexOf.call( jQuery( elem ), this[ 0 ] ); + } + + // Locate the position of the desired element + return indexOf.call( this, + + // If it receives a jQuery object, the first element is used + elem.jquery ? elem[ 0 ] : elem + ); + }, + + add: function( selector, context ) { + return this.pushStack( + jQuery.uniqueSort( + jQuery.merge( this.get(), jQuery( selector, context ) ) + ) + ); + }, + + addBack: function( selector ) { + return this.add( selector == null ? + this.prevObject : this.prevObject.filter( selector ) + ); + } +} ); + +function sibling( cur, dir ) { + while ( ( cur = cur[ dir ] ) && cur.nodeType !== 1 ) {} + return cur; +} + +jQuery.each( { + parent: function( elem ) { + var parent = elem.parentNode; + return parent && parent.nodeType !== 11 ? parent : null; + }, + parents: function( elem ) { + return dir( elem, "parentNode" ); + }, + parentsUntil: function( elem, _i, until ) { + return dir( elem, "parentNode", until ); + }, + next: function( elem ) { + return sibling( elem, "nextSibling" ); + }, + prev: function( elem ) { + return sibling( elem, "previousSibling" ); + }, + nextAll: function( elem ) { + return dir( elem, "nextSibling" ); + }, + prevAll: function( elem ) { + return dir( elem, "previousSibling" ); + }, + nextUntil: function( elem, _i, until ) { + return dir( elem, "nextSibling", until ); + }, + prevUntil: function( elem, _i, until ) { + return dir( elem, "previousSibling", until ); + }, + siblings: function( elem ) { + return siblings( ( elem.parentNode || {} ).firstChild, elem ); + }, + children: function( elem ) { + return siblings( elem.firstChild ); + }, + contents: function( elem ) { + if ( elem.contentDocument != null && + + // Support: IE 11+ + // elements with no `data` attribute has an object + // `contentDocument` with a `null` prototype. + getProto( elem.contentDocument ) ) { + + return elem.contentDocument; + } + + // Support: IE 9 - 11 only, iOS 7 only, Android Browser <=4.3 only + // Treat the template element as a regular one in browsers that + // don't support it. + if ( nodeName( elem, "template" ) ) { + elem = elem.content || elem; + } + + return jQuery.merge( [], elem.childNodes ); + } +}, function( name, fn ) { + jQuery.fn[ name ] = function( until, selector ) { + var matched = jQuery.map( this, fn, until ); + + if ( name.slice( -5 ) !== "Until" ) { + selector = until; + } + + if ( selector && typeof selector === "string" ) { + matched = jQuery.filter( selector, matched ); + } + + if ( this.length > 1 ) { + + // Remove duplicates + if ( !guaranteedUnique[ name ] ) { + jQuery.uniqueSort( matched ); + } + + // Reverse order for parents* and prev-derivatives + if ( rparentsprev.test( name ) ) { + matched.reverse(); + } + } + + return this.pushStack( matched ); + }; +} ); +var rnothtmlwhite = ( /[^\x20\t\r\n\f]+/g ); + + + +// Convert String-formatted options into Object-formatted ones +function createOptions( options ) { + var object = {}; + jQuery.each( options.match( rnothtmlwhite ) || [], function( _, flag ) { + object[ flag ] = true; + } ); + return object; +} + +/* + * Create a callback list using the following parameters: + * + * options: an optional list of space-separated options that will change how + * the callback list behaves or a more traditional option object + * + * By default a callback list will act like an event callback list and can be + * "fired" multiple times. + * + * Possible options: + * + * once: will ensure the callback list can only be fired once (like a Deferred) + * + * memory: will keep track of previous values and will call any callback added + * after the list has been fired right away with the latest "memorized" + * values (like a Deferred) + * + * unique: will ensure a callback can only be added once (no duplicate in the list) + * + * stopOnFalse: interrupt callings when a callback returns false + * + */ +jQuery.Callbacks = function( options ) { + + // Convert options from String-formatted to Object-formatted if needed + // (we check in cache first) + options = typeof options === "string" ? + createOptions( options ) : + jQuery.extend( {}, options ); + + var // Flag to know if list is currently firing + firing, + + // Last fire value for non-forgettable lists + memory, + + // Flag to know if list was already fired + fired, + + // Flag to prevent firing + locked, + + // Actual callback list + list = [], + + // Queue of execution data for repeatable lists + queue = [], + + // Index of currently firing callback (modified by add/remove as needed) + firingIndex = -1, + + // Fire callbacks + fire = function() { + + // Enforce single-firing + locked = locked || options.once; + + // Execute callbacks for all pending executions, + // respecting firingIndex overrides and runtime changes + fired = firing = true; + for ( ; queue.length; firingIndex = -1 ) { + memory = queue.shift(); + while ( ++firingIndex < list.length ) { + + // Run callback and check for early termination + if ( list[ firingIndex ].apply( memory[ 0 ], memory[ 1 ] ) === false && + options.stopOnFalse ) { + + // Jump to end and forget the data so .add doesn't re-fire + firingIndex = list.length; + memory = false; + } + } + } + + // Forget the data if we're done with it + if ( !options.memory ) { + memory = false; + } + + firing = false; + + // Clean up if we're done firing for good + if ( locked ) { + + // Keep an empty list if we have data for future add calls + if ( memory ) { + list = []; + + // Otherwise, this object is spent + } else { + list = ""; + } + } + }, + + // Actual Callbacks object + self = { + + // Add a callback or a collection of callbacks to the list + add: function() { + if ( list ) { + + // If we have memory from a past run, we should fire after adding + if ( memory && !firing ) { + firingIndex = list.length - 1; + queue.push( memory ); + } + + ( function add( args ) { + jQuery.each( args, function( _, arg ) { + if ( isFunction( arg ) ) { + if ( !options.unique || !self.has( arg ) ) { + list.push( arg ); + } + } else if ( arg && arg.length && toType( arg ) !== "string" ) { + + // Inspect recursively + add( arg ); + } + } ); + } )( arguments ); + + if ( memory && !firing ) { + fire(); + } + } + return this; + }, + + // Remove a callback from the list + remove: function() { + jQuery.each( arguments, function( _, arg ) { + var index; + while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { + list.splice( index, 1 ); + + // Handle firing indexes + if ( index <= firingIndex ) { + firingIndex--; + } + } + } ); + return this; + }, + + // Check if a given callback is in the list. + // If no argument is given, return whether or not list has callbacks attached. + has: function( fn ) { + return fn ? + jQuery.inArray( fn, list ) > -1 : + list.length > 0; + }, + + // Remove all callbacks from the list + empty: function() { + if ( list ) { + list = []; + } + return this; + }, + + // Disable .fire and .add + // Abort any current/pending executions + // Clear all callbacks and values + disable: function() { + locked = queue = []; + list = memory = ""; + return this; + }, + disabled: function() { + return !list; + }, + + // Disable .fire + // Also disable .add unless we have memory (since it would have no effect) + // Abort any pending executions + lock: function() { + locked = queue = []; + if ( !memory && !firing ) { + list = memory = ""; + } + return this; + }, + locked: function() { + return !!locked; + }, + + // Call all callbacks with the given context and arguments + fireWith: function( context, args ) { + if ( !locked ) { + args = args || []; + args = [ context, args.slice ? args.slice() : args ]; + queue.push( args ); + if ( !firing ) { + fire(); + } + } + return this; + }, + + // Call all the callbacks with the given arguments + fire: function() { + self.fireWith( this, arguments ); + return this; + }, + + // To know if the callbacks have already been called at least once + fired: function() { + return !!fired; + } + }; + + return self; +}; + + +function Identity( v ) { + return v; +} +function Thrower( ex ) { + throw ex; +} + +function adoptValue( value, resolve, reject, noValue ) { + var method; + + try { + + // Check for promise aspect first to privilege synchronous behavior + if ( value && isFunction( ( method = value.promise ) ) ) { + method.call( value ).done( resolve ).fail( reject ); + + // Other thenables + } else if ( value && isFunction( ( method = value.then ) ) ) { + method.call( value, resolve, reject ); + + // Other non-thenables + } else { + + // Control `resolve` arguments by letting Array#slice cast boolean `noValue` to integer: + // * false: [ value ].slice( 0 ) => resolve( value ) + // * true: [ value ].slice( 1 ) => resolve() + resolve.apply( undefined, [ value ].slice( noValue ) ); + } + + // For Promises/A+, convert exceptions into rejections + // Since jQuery.when doesn't unwrap thenables, we can skip the extra checks appearing in + // Deferred#then to conditionally suppress rejection. + } catch ( value ) { + + // Support: Android 4.0 only + // Strict mode functions invoked without .call/.apply get global-object context + reject.apply( undefined, [ value ] ); + } +} + +jQuery.extend( { + + Deferred: function( func ) { + var tuples = [ + + // action, add listener, callbacks, + // ... .then handlers, argument index, [final state] + [ "notify", "progress", jQuery.Callbacks( "memory" ), + jQuery.Callbacks( "memory" ), 2 ], + [ "resolve", "done", jQuery.Callbacks( "once memory" ), + jQuery.Callbacks( "once memory" ), 0, "resolved" ], + [ "reject", "fail", jQuery.Callbacks( "once memory" ), + jQuery.Callbacks( "once memory" ), 1, "rejected" ] + ], + state = "pending", + promise = { + state: function() { + return state; + }, + always: function() { + deferred.done( arguments ).fail( arguments ); + return this; + }, + "catch": function( fn ) { + return promise.then( null, fn ); + }, + + // Keep pipe for back-compat + pipe: function( /* fnDone, fnFail, fnProgress */ ) { + var fns = arguments; + + return jQuery.Deferred( function( newDefer ) { + jQuery.each( tuples, function( _i, tuple ) { + + // Map tuples (progress, done, fail) to arguments (done, fail, progress) + var fn = isFunction( fns[ tuple[ 4 ] ] ) && fns[ tuple[ 4 ] ]; + + // deferred.progress(function() { bind to newDefer or newDefer.notify }) + // deferred.done(function() { bind to newDefer or newDefer.resolve }) + // deferred.fail(function() { bind to newDefer or newDefer.reject }) + deferred[ tuple[ 1 ] ]( function() { + var returned = fn && fn.apply( this, arguments ); + if ( returned && isFunction( returned.promise ) ) { + returned.promise() + .progress( newDefer.notify ) + .done( newDefer.resolve ) + .fail( newDefer.reject ); + } else { + newDefer[ tuple[ 0 ] + "With" ]( + this, + fn ? [ returned ] : arguments + ); + } + } ); + } ); + fns = null; + } ).promise(); + }, + then: function( onFulfilled, onRejected, onProgress ) { + var maxDepth = 0; + function resolve( depth, deferred, handler, special ) { + return function() { + var that = this, + args = arguments, + mightThrow = function() { + var returned, then; + + // Support: Promises/A+ section 2.3.3.3.3 + // https://promisesaplus.com/#point-59 + // Ignore double-resolution attempts + if ( depth < maxDepth ) { + return; + } + + returned = handler.apply( that, args ); + + // Support: Promises/A+ section 2.3.1 + // https://promisesaplus.com/#point-48 + if ( returned === deferred.promise() ) { + throw new TypeError( "Thenable self-resolution" ); + } + + // Support: Promises/A+ sections 2.3.3.1, 3.5 + // https://promisesaplus.com/#point-54 + // https://promisesaplus.com/#point-75 + // Retrieve `then` only once + then = returned && + + // Support: Promises/A+ section 2.3.4 + // https://promisesaplus.com/#point-64 + // Only check objects and functions for thenability + ( typeof returned === "object" || + typeof returned === "function" ) && + returned.then; + + // Handle a returned thenable + if ( isFunction( then ) ) { + + // Special processors (notify) just wait for resolution + if ( special ) { + then.call( + returned, + resolve( maxDepth, deferred, Identity, special ), + resolve( maxDepth, deferred, Thrower, special ) + ); + + // Normal processors (resolve) also hook into progress + } else { + + // ...and disregard older resolution values + maxDepth++; + + then.call( + returned, + resolve( maxDepth, deferred, Identity, special ), + resolve( maxDepth, deferred, Thrower, special ), + resolve( maxDepth, deferred, Identity, + deferred.notifyWith ) + ); + } + + // Handle all other returned values + } else { + + // Only substitute handlers pass on context + // and multiple values (non-spec behavior) + if ( handler !== Identity ) { + that = undefined; + args = [ returned ]; + } + + // Process the value(s) + // Default process is resolve + ( special || deferred.resolveWith )( that, args ); + } + }, + + // Only normal processors (resolve) catch and reject exceptions + process = special ? + mightThrow : + function() { + try { + mightThrow(); + } catch ( e ) { + + if ( jQuery.Deferred.exceptionHook ) { + jQuery.Deferred.exceptionHook( e, + process.stackTrace ); + } + + // Support: Promises/A+ section 2.3.3.3.4.1 + // https://promisesaplus.com/#point-61 + // Ignore post-resolution exceptions + if ( depth + 1 >= maxDepth ) { + + // Only substitute handlers pass on context + // and multiple values (non-spec behavior) + if ( handler !== Thrower ) { + that = undefined; + args = [ e ]; + } + + deferred.rejectWith( that, args ); + } + } + }; + + // Support: Promises/A+ section 2.3.3.3.1 + // https://promisesaplus.com/#point-57 + // Re-resolve promises immediately to dodge false rejection from + // subsequent errors + if ( depth ) { + process(); + } else { + + // Call an optional hook to record the stack, in case of exception + // since it's otherwise lost when execution goes async + if ( jQuery.Deferred.getStackHook ) { + process.stackTrace = jQuery.Deferred.getStackHook(); + } + window.setTimeout( process ); + } + }; + } + + return jQuery.Deferred( function( newDefer ) { + + // progress_handlers.add( ... ) + tuples[ 0 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onProgress ) ? + onProgress : + Identity, + newDefer.notifyWith + ) + ); + + // fulfilled_handlers.add( ... ) + tuples[ 1 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onFulfilled ) ? + onFulfilled : + Identity + ) + ); + + // rejected_handlers.add( ... ) + tuples[ 2 ][ 3 ].add( + resolve( + 0, + newDefer, + isFunction( onRejected ) ? + onRejected : + Thrower + ) + ); + } ).promise(); + }, + + // Get a promise for this deferred + // If obj is provided, the promise aspect is added to the object + promise: function( obj ) { + return obj != null ? jQuery.extend( obj, promise ) : promise; + } + }, + deferred = {}; + + // Add list-specific methods + jQuery.each( tuples, function( i, tuple ) { + var list = tuple[ 2 ], + stateString = tuple[ 5 ]; + + // promise.progress = list.add + // promise.done = list.add + // promise.fail = list.add + promise[ tuple[ 1 ] ] = list.add; + + // Handle state + if ( stateString ) { + list.add( + function() { + + // state = "resolved" (i.e., fulfilled) + // state = "rejected" + state = stateString; + }, + + // rejected_callbacks.disable + // fulfilled_callbacks.disable + tuples[ 3 - i ][ 2 ].disable, + + // rejected_handlers.disable + // fulfilled_handlers.disable + tuples[ 3 - i ][ 3 ].disable, + + // progress_callbacks.lock + tuples[ 0 ][ 2 ].lock, + + // progress_handlers.lock + tuples[ 0 ][ 3 ].lock + ); + } + + // progress_handlers.fire + // fulfilled_handlers.fire + // rejected_handlers.fire + list.add( tuple[ 3 ].fire ); + + // deferred.notify = function() { deferred.notifyWith(...) } + // deferred.resolve = function() { deferred.resolveWith(...) } + // deferred.reject = function() { deferred.rejectWith(...) } + deferred[ tuple[ 0 ] ] = function() { + deferred[ tuple[ 0 ] + "With" ]( this === deferred ? undefined : this, arguments ); + return this; + }; + + // deferred.notifyWith = list.fireWith + // deferred.resolveWith = list.fireWith + // deferred.rejectWith = list.fireWith + deferred[ tuple[ 0 ] + "With" ] = list.fireWith; + } ); + + // Make the deferred a promise + promise.promise( deferred ); + + // Call given func if any + if ( func ) { + func.call( deferred, deferred ); + } + + // All done! + return deferred; + }, + + // Deferred helper + when: function( singleValue ) { + var + + // count of uncompleted subordinates + remaining = arguments.length, + + // count of unprocessed arguments + i = remaining, + + // subordinate fulfillment data + resolveContexts = Array( i ), + resolveValues = slice.call( arguments ), + + // the primary Deferred + primary = jQuery.Deferred(), + + // subordinate callback factory + updateFunc = function( i ) { + return function( value ) { + resolveContexts[ i ] = this; + resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; + if ( !( --remaining ) ) { + primary.resolveWith( resolveContexts, resolveValues ); + } + }; + }; + + // Single- and empty arguments are adopted like Promise.resolve + if ( remaining <= 1 ) { + adoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject, + !remaining ); + + // Use .then() to unwrap secondary thenables (cf. gh-3000) + if ( primary.state() === "pending" || + isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) { + + return primary.then(); + } + } + + // Multiple arguments are aggregated like Promise.all array elements + while ( i-- ) { + adoptValue( resolveValues[ i ], updateFunc( i ), primary.reject ); + } + + return primary.promise(); + } +} ); + + +// These usually indicate a programmer mistake during development, +// warn about them ASAP rather than swallowing them by default. +var rerrorNames = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; + +jQuery.Deferred.exceptionHook = function( error, stack ) { + + // Support: IE 8 - 9 only + // Console exists when dev tools are open, which can happen at any time + if ( window.console && window.console.warn && error && rerrorNames.test( error.name ) ) { + window.console.warn( "jQuery.Deferred exception: " + error.message, error.stack, stack ); + } +}; + + + + +jQuery.readyException = function( error ) { + window.setTimeout( function() { + throw error; + } ); +}; + + + + +// The deferred used on DOM ready +var readyList = jQuery.Deferred(); + +jQuery.fn.ready = function( fn ) { + + readyList + .then( fn ) + + // Wrap jQuery.readyException in a function so that the lookup + // happens at the time of error handling instead of callback + // registration. + .catch( function( error ) { + jQuery.readyException( error ); + } ); + + return this; +}; + +jQuery.extend( { + + // Is the DOM ready to be used? Set to true once it occurs. + isReady: false, + + // A counter to track how many items to wait for before + // the ready event fires. See #6781 + readyWait: 1, + + // Handle when the DOM is ready + ready: function( wait ) { + + // Abort if there are pending holds or we're already ready + if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { + return; + } + + // Remember that the DOM is ready + jQuery.isReady = true; + + // If a normal DOM Ready event fired, decrement, and wait if need be + if ( wait !== true && --jQuery.readyWait > 0 ) { + return; + } + + // If there are functions bound, to execute + readyList.resolveWith( document, [ jQuery ] ); + } +} ); + +jQuery.ready.then = readyList.then; + +// The ready event handler and self cleanup method +function completed() { + document.removeEventListener( "DOMContentLoaded", completed ); + window.removeEventListener( "load", completed ); + jQuery.ready(); +} + +// Catch cases where $(document).ready() is called +// after the browser event has already occurred. +// Support: IE <=9 - 10 only +// Older IE sometimes signals "interactive" too soon +if ( document.readyState === "complete" || + ( document.readyState !== "loading" && !document.documentElement.doScroll ) ) { + + // Handle it asynchronously to allow scripts the opportunity to delay ready + window.setTimeout( jQuery.ready ); + +} else { + + // Use the handy event callback + document.addEventListener( "DOMContentLoaded", completed ); + + // A fallback to window.onload, that will always work + window.addEventListener( "load", completed ); +} + + + + +// Multifunctional method to get and set values of a collection +// The value/s can optionally be executed if it's a function +var access = function( elems, fn, key, value, chainable, emptyGet, raw ) { + var i = 0, + len = elems.length, + bulk = key == null; + + // Sets many values + if ( toType( key ) === "object" ) { + chainable = true; + for ( i in key ) { + access( elems, fn, i, key[ i ], true, emptyGet, raw ); + } + + // Sets one value + } else if ( value !== undefined ) { + chainable = true; + + if ( !isFunction( value ) ) { + raw = true; + } + + if ( bulk ) { + + // Bulk operations run against the entire set + if ( raw ) { + fn.call( elems, value ); + fn = null; + + // ...except when executing function values + } else { + bulk = fn; + fn = function( elem, _key, value ) { + return bulk.call( jQuery( elem ), value ); + }; + } + } + + if ( fn ) { + for ( ; i < len; i++ ) { + fn( + elems[ i ], key, raw ? + value : + value.call( elems[ i ], i, fn( elems[ i ], key ) ) + ); + } + } + } + + if ( chainable ) { + return elems; + } + + // Gets + if ( bulk ) { + return fn.call( elems ); + } + + return len ? fn( elems[ 0 ], key ) : emptyGet; +}; + + +// Matches dashed string for camelizing +var rmsPrefix = /^-ms-/, + rdashAlpha = /-([a-z])/g; + +// Used by camelCase as callback to replace() +function fcamelCase( _all, letter ) { + return letter.toUpperCase(); +} + +// Convert dashed to camelCase; used by the css and data modules +// Support: IE <=9 - 11, Edge 12 - 15 +// Microsoft forgot to hump their vendor prefix (#9572) +function camelCase( string ) { + return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); +} +var acceptData = function( owner ) { + + // Accepts only: + // - Node + // - Node.ELEMENT_NODE + // - Node.DOCUMENT_NODE + // - Object + // - Any + return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); +}; + + + + +function Data() { + this.expando = jQuery.expando + Data.uid++; +} + +Data.uid = 1; + +Data.prototype = { + + cache: function( owner ) { + + // Check if the owner object already has a cache + var value = owner[ this.expando ]; + + // If not, create one + if ( !value ) { + value = {}; + + // We can accept data for non-element nodes in modern browsers, + // but we should not, see #8335. + // Always return an empty object. + if ( acceptData( owner ) ) { + + // If it is a node unlikely to be stringify-ed or looped over + // use plain assignment + if ( owner.nodeType ) { + owner[ this.expando ] = value; + + // Otherwise secure it in a non-enumerable property + // configurable must be true to allow the property to be + // deleted when data is removed + } else { + Object.defineProperty( owner, this.expando, { + value: value, + configurable: true + } ); + } + } + } + + return value; + }, + set: function( owner, data, value ) { + var prop, + cache = this.cache( owner ); + + // Handle: [ owner, key, value ] args + // Always use camelCase key (gh-2257) + if ( typeof data === "string" ) { + cache[ camelCase( data ) ] = value; + + // Handle: [ owner, { properties } ] args + } else { + + // Copy the properties one-by-one to the cache object + for ( prop in data ) { + cache[ camelCase( prop ) ] = data[ prop ]; + } + } + return cache; + }, + get: function( owner, key ) { + return key === undefined ? + this.cache( owner ) : + + // Always use camelCase key (gh-2257) + owner[ this.expando ] && owner[ this.expando ][ camelCase( key ) ]; + }, + access: function( owner, key, value ) { + + // In cases where either: + // + // 1. No key was specified + // 2. A string key was specified, but no value provided + // + // Take the "read" path and allow the get method to determine + // which value to return, respectively either: + // + // 1. The entire cache object + // 2. The data stored at the key + // + if ( key === undefined || + ( ( key && typeof key === "string" ) && value === undefined ) ) { + + return this.get( owner, key ); + } + + // When the key is not a string, or both a key and value + // are specified, set or extend (existing objects) with either: + // + // 1. An object of properties + // 2. A key and value + // + this.set( owner, key, value ); + + // Since the "set" path can have two possible entry points + // return the expected data based on which path was taken[*] + return value !== undefined ? value : key; + }, + remove: function( owner, key ) { + var i, + cache = owner[ this.expando ]; + + if ( cache === undefined ) { + return; + } + + if ( key !== undefined ) { + + // Support array or space separated string of keys + if ( Array.isArray( key ) ) { + + // If key is an array of keys... + // We always set camelCase keys, so remove that. + key = key.map( camelCase ); + } else { + key = camelCase( key ); + + // If a key with the spaces exists, use it. + // Otherwise, create an array by matching non-whitespace + key = key in cache ? + [ key ] : + ( key.match( rnothtmlwhite ) || [] ); + } + + i = key.length; + + while ( i-- ) { + delete cache[ key[ i ] ]; + } + } + + // Remove the expando if there's no more data + if ( key === undefined || jQuery.isEmptyObject( cache ) ) { + + // Support: Chrome <=35 - 45 + // Webkit & Blink performance suffers when deleting properties + // from DOM nodes, so set to undefined instead + // https://bugs.chromium.org/p/chromium/issues/detail?id=378607 (bug restricted) + if ( owner.nodeType ) { + owner[ this.expando ] = undefined; + } else { + delete owner[ this.expando ]; + } + } + }, + hasData: function( owner ) { + var cache = owner[ this.expando ]; + return cache !== undefined && !jQuery.isEmptyObject( cache ); + } +}; +var dataPriv = new Data(); + +var dataUser = new Data(); + + + +// Implementation Summary +// +// 1. Enforce API surface and semantic compatibility with 1.9.x branch +// 2. Improve the module's maintainability by reducing the storage +// paths to a single mechanism. +// 3. Use the same single mechanism to support "private" and "user" data. +// 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData) +// 5. Avoid exposing implementation details on user objects (eg. expando properties) +// 6. Provide a clear path for implementation upgrade to WeakMap in 2014 + +var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, + rmultiDash = /[A-Z]/g; + +function getData( data ) { + if ( data === "true" ) { + return true; + } + + if ( data === "false" ) { + return false; + } + + if ( data === "null" ) { + return null; + } + + // Only convert to a number if it doesn't change the string + if ( data === +data + "" ) { + return +data; + } + + if ( rbrace.test( data ) ) { + return JSON.parse( data ); + } + + return data; +} + +function dataAttr( elem, key, data ) { + var name; + + // If nothing was found internally, try to fetch any + // data from the HTML5 data-* attribute + if ( data === undefined && elem.nodeType === 1 ) { + name = "data-" + key.replace( rmultiDash, "-$&" ).toLowerCase(); + data = elem.getAttribute( name ); + + if ( typeof data === "string" ) { + try { + data = getData( data ); + } catch ( e ) {} + + // Make sure we set the data so it isn't changed later + dataUser.set( elem, key, data ); + } else { + data = undefined; + } + } + return data; +} + +jQuery.extend( { + hasData: function( elem ) { + return dataUser.hasData( elem ) || dataPriv.hasData( elem ); + }, + + data: function( elem, name, data ) { + return dataUser.access( elem, name, data ); + }, + + removeData: function( elem, name ) { + dataUser.remove( elem, name ); + }, + + // TODO: Now that all calls to _data and _removeData have been replaced + // with direct calls to dataPriv methods, these can be deprecated. + _data: function( elem, name, data ) { + return dataPriv.access( elem, name, data ); + }, + + _removeData: function( elem, name ) { + dataPriv.remove( elem, name ); + } +} ); + +jQuery.fn.extend( { + data: function( key, value ) { + var i, name, data, + elem = this[ 0 ], + attrs = elem && elem.attributes; + + // Gets all values + if ( key === undefined ) { + if ( this.length ) { + data = dataUser.get( elem ); + + if ( elem.nodeType === 1 && !dataPriv.get( elem, "hasDataAttrs" ) ) { + i = attrs.length; + while ( i-- ) { + + // Support: IE 11 only + // The attrs elements can be null (#14894) + if ( attrs[ i ] ) { + name = attrs[ i ].name; + if ( name.indexOf( "data-" ) === 0 ) { + name = camelCase( name.slice( 5 ) ); + dataAttr( elem, name, data[ name ] ); + } + } + } + dataPriv.set( elem, "hasDataAttrs", true ); + } + } + + return data; + } + + // Sets multiple values + if ( typeof key === "object" ) { + return this.each( function() { + dataUser.set( this, key ); + } ); + } + + return access( this, function( value ) { + var data; + + // The calling jQuery object (element matches) is not empty + // (and therefore has an element appears at this[ 0 ]) and the + // `value` parameter was not undefined. An empty jQuery object + // will result in `undefined` for elem = this[ 0 ] which will + // throw an exception if an attempt to read a data cache is made. + if ( elem && value === undefined ) { + + // Attempt to get data from the cache + // The key will always be camelCased in Data + data = dataUser.get( elem, key ); + if ( data !== undefined ) { + return data; + } + + // Attempt to "discover" the data in + // HTML5 custom data-* attrs + data = dataAttr( elem, key ); + if ( data !== undefined ) { + return data; + } + + // We tried really hard, but the data doesn't exist. + return; + } + + // Set the data... + this.each( function() { + + // We always store the camelCased key + dataUser.set( this, key, value ); + } ); + }, null, value, arguments.length > 1, null, true ); + }, + + removeData: function( key ) { + return this.each( function() { + dataUser.remove( this, key ); + } ); + } +} ); + + +jQuery.extend( { + queue: function( elem, type, data ) { + var queue; + + if ( elem ) { + type = ( type || "fx" ) + "queue"; + queue = dataPriv.get( elem, type ); + + // Speed up dequeue by getting out quickly if this is just a lookup + if ( data ) { + if ( !queue || Array.isArray( data ) ) { + queue = dataPriv.access( elem, type, jQuery.makeArray( data ) ); + } else { + queue.push( data ); + } + } + return queue || []; + } + }, + + dequeue: function( elem, type ) { + type = type || "fx"; + + var queue = jQuery.queue( elem, type ), + startLength = queue.length, + fn = queue.shift(), + hooks = jQuery._queueHooks( elem, type ), + next = function() { + jQuery.dequeue( elem, type ); + }; + + // If the fx queue is dequeued, always remove the progress sentinel + if ( fn === "inprogress" ) { + fn = queue.shift(); + startLength--; + } + + if ( fn ) { + + // Add a progress sentinel to prevent the fx queue from being + // automatically dequeued + if ( type === "fx" ) { + queue.unshift( "inprogress" ); + } + + // Clear up the last queue stop function + delete hooks.stop; + fn.call( elem, next, hooks ); + } + + if ( !startLength && hooks ) { + hooks.empty.fire(); + } + }, + + // Not public - generate a queueHooks object, or return the current one + _queueHooks: function( elem, type ) { + var key = type + "queueHooks"; + return dataPriv.get( elem, key ) || dataPriv.access( elem, key, { + empty: jQuery.Callbacks( "once memory" ).add( function() { + dataPriv.remove( elem, [ type + "queue", key ] ); + } ) + } ); + } +} ); + +jQuery.fn.extend( { + queue: function( type, data ) { + var setter = 2; + + if ( typeof type !== "string" ) { + data = type; + type = "fx"; + setter--; + } + + if ( arguments.length < setter ) { + return jQuery.queue( this[ 0 ], type ); + } + + return data === undefined ? + this : + this.each( function() { + var queue = jQuery.queue( this, type, data ); + + // Ensure a hooks for this queue + jQuery._queueHooks( this, type ); + + if ( type === "fx" && queue[ 0 ] !== "inprogress" ) { + jQuery.dequeue( this, type ); + } + } ); + }, + dequeue: function( type ) { + return this.each( function() { + jQuery.dequeue( this, type ); + } ); + }, + clearQueue: function( type ) { + return this.queue( type || "fx", [] ); + }, + + // Get a promise resolved when queues of a certain type + // are emptied (fx is the type by default) + promise: function( type, obj ) { + var tmp, + count = 1, + defer = jQuery.Deferred(), + elements = this, + i = this.length, + resolve = function() { + if ( !( --count ) ) { + defer.resolveWith( elements, [ elements ] ); + } + }; + + if ( typeof type !== "string" ) { + obj = type; + type = undefined; + } + type = type || "fx"; + + while ( i-- ) { + tmp = dataPriv.get( elements[ i ], type + "queueHooks" ); + if ( tmp && tmp.empty ) { + count++; + tmp.empty.add( resolve ); + } + } + resolve(); + return defer.promise( obj ); + } +} ); +var pnum = ( /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/ ).source; + +var rcssNum = new RegExp( "^(?:([+-])=|)(" + pnum + ")([a-z%]*)$", "i" ); + + +var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; + +var documentElement = document.documentElement; + + + + var isAttached = function( elem ) { + return jQuery.contains( elem.ownerDocument, elem ); + }, + composed = { composed: true }; + + // Support: IE 9 - 11+, Edge 12 - 18+, iOS 10.0 - 10.2 only + // Check attachment across shadow DOM boundaries when possible (gh-3504) + // Support: iOS 10.0-10.2 only + // Early iOS 10 versions support `attachShadow` but not `getRootNode`, + // leading to errors. We need to check for `getRootNode`. + if ( documentElement.getRootNode ) { + isAttached = function( elem ) { + return jQuery.contains( elem.ownerDocument, elem ) || + elem.getRootNode( composed ) === elem.ownerDocument; + }; + } +var isHiddenWithinTree = function( elem, el ) { + + // isHiddenWithinTree might be called from jQuery#filter function; + // in that case, element will be second argument + elem = el || elem; + + // Inline style trumps all + return elem.style.display === "none" || + elem.style.display === "" && + + // Otherwise, check computed style + // Support: Firefox <=43 - 45 + // Disconnected elements can have computed display: none, so first confirm that elem is + // in the document. + isAttached( elem ) && + + jQuery.css( elem, "display" ) === "none"; + }; + + + +function adjustCSS( elem, prop, valueParts, tween ) { + var adjusted, scale, + maxIterations = 20, + currentValue = tween ? + function() { + return tween.cur(); + } : + function() { + return jQuery.css( elem, prop, "" ); + }, + initial = currentValue(), + unit = valueParts && valueParts[ 3 ] || ( jQuery.cssNumber[ prop ] ? "" : "px" ), + + // Starting value computation is required for potential unit mismatches + initialInUnit = elem.nodeType && + ( jQuery.cssNumber[ prop ] || unit !== "px" && +initial ) && + rcssNum.exec( jQuery.css( elem, prop ) ); + + if ( initialInUnit && initialInUnit[ 3 ] !== unit ) { + + // Support: Firefox <=54 + // Halve the iteration target value to prevent interference from CSS upper bounds (gh-2144) + initial = initial / 2; + + // Trust units reported by jQuery.css + unit = unit || initialInUnit[ 3 ]; + + // Iteratively approximate from a nonzero starting point + initialInUnit = +initial || 1; + + while ( maxIterations-- ) { + + // Evaluate and update our best guess (doubling guesses that zero out). + // Finish if the scale equals or crosses 1 (making the old*new product non-positive). + jQuery.style( elem, prop, initialInUnit + unit ); + if ( ( 1 - scale ) * ( 1 - ( scale = currentValue() / initial || 0.5 ) ) <= 0 ) { + maxIterations = 0; + } + initialInUnit = initialInUnit / scale; + + } + + initialInUnit = initialInUnit * 2; + jQuery.style( elem, prop, initialInUnit + unit ); + + // Make sure we update the tween properties later on + valueParts = valueParts || []; + } + + if ( valueParts ) { + initialInUnit = +initialInUnit || +initial || 0; + + // Apply relative offset (+=/-=) if specified + adjusted = valueParts[ 1 ] ? + initialInUnit + ( valueParts[ 1 ] + 1 ) * valueParts[ 2 ] : + +valueParts[ 2 ]; + if ( tween ) { + tween.unit = unit; + tween.start = initialInUnit; + tween.end = adjusted; + } + } + return adjusted; +} + + +var defaultDisplayMap = {}; + +function getDefaultDisplay( elem ) { + var temp, + doc = elem.ownerDocument, + nodeName = elem.nodeName, + display = defaultDisplayMap[ nodeName ]; + + if ( display ) { + return display; + } + + temp = doc.body.appendChild( doc.createElement( nodeName ) ); + display = jQuery.css( temp, "display" ); + + temp.parentNode.removeChild( temp ); + + if ( display === "none" ) { + display = "block"; + } + defaultDisplayMap[ nodeName ] = display; + + return display; +} + +function showHide( elements, show ) { + var display, elem, + values = [], + index = 0, + length = elements.length; + + // Determine new display value for elements that need to change + for ( ; index < length; index++ ) { + elem = elements[ index ]; + if ( !elem.style ) { + continue; + } + + display = elem.style.display; + if ( show ) { + + // Since we force visibility upon cascade-hidden elements, an immediate (and slow) + // check is required in this first loop unless we have a nonempty display value (either + // inline or about-to-be-restored) + if ( display === "none" ) { + values[ index ] = dataPriv.get( elem, "display" ) || null; + if ( !values[ index ] ) { + elem.style.display = ""; + } + } + if ( elem.style.display === "" && isHiddenWithinTree( elem ) ) { + values[ index ] = getDefaultDisplay( elem ); + } + } else { + if ( display !== "none" ) { + values[ index ] = "none"; + + // Remember what we're overwriting + dataPriv.set( elem, "display", display ); + } + } + } + + // Set the display of the elements in a second loop to avoid constant reflow + for ( index = 0; index < length; index++ ) { + if ( values[ index ] != null ) { + elements[ index ].style.display = values[ index ]; + } + } + + return elements; +} + +jQuery.fn.extend( { + show: function() { + return showHide( this, true ); + }, + hide: function() { + return showHide( this ); + }, + toggle: function( state ) { + if ( typeof state === "boolean" ) { + return state ? this.show() : this.hide(); + } + + return this.each( function() { + if ( isHiddenWithinTree( this ) ) { + jQuery( this ).show(); + } else { + jQuery( this ).hide(); + } + } ); + } +} ); +var rcheckableType = ( /^(?:checkbox|radio)$/i ); + +var rtagName = ( /<([a-z][^\/\0>\x20\t\r\n\f]*)/i ); + +var rscriptType = ( /^$|^module$|\/(?:java|ecma)script/i ); + + + +( function() { + var fragment = document.createDocumentFragment(), + div = fragment.appendChild( document.createElement( "div" ) ), + input = document.createElement( "input" ); + + // Support: Android 4.0 - 4.3 only + // Check state lost if the name is set (#11217) + // Support: Windows Web Apps (WWA) + // `name` and `type` must use .setAttribute for WWA (#14901) + input.setAttribute( "type", "radio" ); + input.setAttribute( "checked", "checked" ); + input.setAttribute( "name", "t" ); + + div.appendChild( input ); + + // Support: Android <=4.1 only + // Older WebKit doesn't clone checked state correctly in fragments + support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; + + // Support: IE <=11 only + // Make sure textarea (and checkbox) defaultValue is properly cloned + div.innerHTML = ""; + support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; + + // Support: IE <=9 only + // IE <=9 replaces "; + support.option = !!div.lastChild; +} )(); + + +// We have to close these tags to support XHTML (#13200) +var wrapMap = { + + // XHTML parsers do not magically insert elements in the + // same way that tag soup parsers do. So we cannot shorten + // this by omitting or other required elements. + thead: [ 1, "", "
" ], + col: [ 2, "", "
" ], + tr: [ 2, "", "
" ], + td: [ 3, "", "
" ], + + _default: [ 0, "", "" ] +}; + +wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; +wrapMap.th = wrapMap.td; + +// Support: IE <=9 only +if ( !support.option ) { + wrapMap.optgroup = wrapMap.option = [ 1, "" ]; +} + + +function getAll( context, tag ) { + + // Support: IE <=9 - 11 only + // Use typeof to avoid zero-argument method invocation on host objects (#15151) + var ret; + + if ( typeof context.getElementsByTagName !== "undefined" ) { + ret = context.getElementsByTagName( tag || "*" ); + + } else if ( typeof context.querySelectorAll !== "undefined" ) { + ret = context.querySelectorAll( tag || "*" ); + + } else { + ret = []; + } + + if ( tag === undefined || tag && nodeName( context, tag ) ) { + return jQuery.merge( [ context ], ret ); + } + + return ret; +} + + +// Mark scripts as having already been evaluated +function setGlobalEval( elems, refElements ) { + var i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + dataPriv.set( + elems[ i ], + "globalEval", + !refElements || dataPriv.get( refElements[ i ], "globalEval" ) + ); + } +} + + +var rhtml = /<|&#?\w+;/; + +function buildFragment( elems, context, scripts, selection, ignored ) { + var elem, tmp, tag, wrap, attached, j, + fragment = context.createDocumentFragment(), + nodes = [], + i = 0, + l = elems.length; + + for ( ; i < l; i++ ) { + elem = elems[ i ]; + + if ( elem || elem === 0 ) { + + // Add nodes directly + if ( toType( elem ) === "object" ) { + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); + + // Convert non-html into a text node + } else if ( !rhtml.test( elem ) ) { + nodes.push( context.createTextNode( elem ) ); + + // Convert html into DOM nodes + } else { + tmp = tmp || fragment.appendChild( context.createElement( "div" ) ); + + // Deserialize a standard representation + tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); + wrap = wrapMap[ tag ] || wrapMap._default; + tmp.innerHTML = wrap[ 1 ] + jQuery.htmlPrefilter( elem ) + wrap[ 2 ]; + + // Descend through wrappers to the right content + j = wrap[ 0 ]; + while ( j-- ) { + tmp = tmp.lastChild; + } + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( nodes, tmp.childNodes ); + + // Remember the top-level container + tmp = fragment.firstChild; + + // Ensure the created nodes are orphaned (#12392) + tmp.textContent = ""; + } + } + } + + // Remove wrapper from fragment + fragment.textContent = ""; + + i = 0; + while ( ( elem = nodes[ i++ ] ) ) { + + // Skip elements already in the context collection (trac-4087) + if ( selection && jQuery.inArray( elem, selection ) > -1 ) { + if ( ignored ) { + ignored.push( elem ); + } + continue; + } + + attached = isAttached( elem ); + + // Append to fragment + tmp = getAll( fragment.appendChild( elem ), "script" ); + + // Preserve script evaluation history + if ( attached ) { + setGlobalEval( tmp ); + } + + // Capture executables + if ( scripts ) { + j = 0; + while ( ( elem = tmp[ j++ ] ) ) { + if ( rscriptType.test( elem.type || "" ) ) { + scripts.push( elem ); + } + } + } + } + + return fragment; +} + + +var rtypenamespace = /^([^.]*)(?:\.(.+)|)/; + +function returnTrue() { + return true; +} + +function returnFalse() { + return false; +} + +// Support: IE <=9 - 11+ +// focus() and blur() are asynchronous, except when they are no-op. +// So expect focus to be synchronous when the element is already active, +// and blur to be synchronous when the element is not already active. +// (focus and blur are always synchronous in other supported browsers, +// this just defines when we can count on it). +function expectSync( elem, type ) { + return ( elem === safeActiveElement() ) === ( type === "focus" ); +} + +// Support: IE <=9 only +// Accessing document.activeElement can throw unexpectedly +// https://bugs.jquery.com/ticket/13393 +function safeActiveElement() { + try { + return document.activeElement; + } catch ( err ) { } +} + +function on( elem, types, selector, data, fn, one ) { + var origFn, type; + + // Types can be a map of types/handlers + if ( typeof types === "object" ) { + + // ( types-Object, selector, data ) + if ( typeof selector !== "string" ) { + + // ( types-Object, data ) + data = data || selector; + selector = undefined; + } + for ( type in types ) { + on( elem, type, selector, data, types[ type ], one ); + } + return elem; + } + + if ( data == null && fn == null ) { + + // ( types, fn ) + fn = selector; + data = selector = undefined; + } else if ( fn == null ) { + if ( typeof selector === "string" ) { + + // ( types, selector, fn ) + fn = data; + data = undefined; + } else { + + // ( types, data, fn ) + fn = data; + data = selector; + selector = undefined; + } + } + if ( fn === false ) { + fn = returnFalse; + } else if ( !fn ) { + return elem; + } + + if ( one === 1 ) { + origFn = fn; + fn = function( event ) { + + // Can use an empty set, since event contains the info + jQuery().off( event ); + return origFn.apply( this, arguments ); + }; + + // Use same guid so caller can remove using origFn + fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); + } + return elem.each( function() { + jQuery.event.add( this, types, fn, data, selector ); + } ); +} + +/* + * Helper functions for managing events -- not part of the public interface. + * Props to Dean Edwards' addEvent library for many of the ideas. + */ +jQuery.event = { + + global: {}, + + add: function( elem, types, handler, data, selector ) { + + var handleObjIn, eventHandle, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.get( elem ); + + // Only attach events to objects that accept data + if ( !acceptData( elem ) ) { + return; + } + + // Caller can pass in an object of custom data in lieu of the handler + if ( handler.handler ) { + handleObjIn = handler; + handler = handleObjIn.handler; + selector = handleObjIn.selector; + } + + // Ensure that invalid selectors throw exceptions at attach time + // Evaluate against documentElement in case elem is a non-element node (e.g., document) + if ( selector ) { + jQuery.find.matchesSelector( documentElement, selector ); + } + + // Make sure that the handler has a unique ID, used to find/remove it later + if ( !handler.guid ) { + handler.guid = jQuery.guid++; + } + + // Init the element's event structure and main handler, if this is the first + if ( !( events = elemData.events ) ) { + events = elemData.events = Object.create( null ); + } + if ( !( eventHandle = elemData.handle ) ) { + eventHandle = elemData.handle = function( e ) { + + // Discard the second event of a jQuery.event.trigger() and + // when an event is called after a page has unloaded + return typeof jQuery !== "undefined" && jQuery.event.triggered !== e.type ? + jQuery.event.dispatch.apply( elem, arguments ) : undefined; + }; + } + + // Handle multiple events separated by a space + types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // There *must* be a type, no attaching namespace-only handlers + if ( !type ) { + continue; + } + + // If event changes its type, use the special event handlers for the changed type + special = jQuery.event.special[ type ] || {}; + + // If selector defined, determine special event api type, otherwise given type + type = ( selector ? special.delegateType : special.bindType ) || type; + + // Update special based on newly reset type + special = jQuery.event.special[ type ] || {}; + + // handleObj is passed to all event handlers + handleObj = jQuery.extend( { + type: type, + origType: origType, + data: data, + handler: handler, + guid: handler.guid, + selector: selector, + needsContext: selector && jQuery.expr.match.needsContext.test( selector ), + namespace: namespaces.join( "." ) + }, handleObjIn ); + + // Init the event handler queue if we're the first + if ( !( handlers = events[ type ] ) ) { + handlers = events[ type ] = []; + handlers.delegateCount = 0; + + // Only use addEventListener if the special events handler returns false + if ( !special.setup || + special.setup.call( elem, data, namespaces, eventHandle ) === false ) { + + if ( elem.addEventListener ) { + elem.addEventListener( type, eventHandle ); + } + } + } + + if ( special.add ) { + special.add.call( elem, handleObj ); + + if ( !handleObj.handler.guid ) { + handleObj.handler.guid = handler.guid; + } + } + + // Add to the element's handler list, delegates in front + if ( selector ) { + handlers.splice( handlers.delegateCount++, 0, handleObj ); + } else { + handlers.push( handleObj ); + } + + // Keep track of which events have ever been used, for event optimization + jQuery.event.global[ type ] = true; + } + + }, + + // Detach an event or set of events from an element + remove: function( elem, types, handler, selector, mappedTypes ) { + + var j, origCount, tmp, + events, t, handleObj, + special, handlers, type, namespaces, origType, + elemData = dataPriv.hasData( elem ) && dataPriv.get( elem ); + + if ( !elemData || !( events = elemData.events ) ) { + return; + } + + // Once for each type.namespace in types; type may be omitted + types = ( types || "" ).match( rnothtmlwhite ) || [ "" ]; + t = types.length; + while ( t-- ) { + tmp = rtypenamespace.exec( types[ t ] ) || []; + type = origType = tmp[ 1 ]; + namespaces = ( tmp[ 2 ] || "" ).split( "." ).sort(); + + // Unbind all events (on this namespace, if provided) for the element + if ( !type ) { + for ( type in events ) { + jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); + } + continue; + } + + special = jQuery.event.special[ type ] || {}; + type = ( selector ? special.delegateType : special.bindType ) || type; + handlers = events[ type ] || []; + tmp = tmp[ 2 ] && + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ); + + // Remove matching events + origCount = j = handlers.length; + while ( j-- ) { + handleObj = handlers[ j ]; + + if ( ( mappedTypes || origType === handleObj.origType ) && + ( !handler || handler.guid === handleObj.guid ) && + ( !tmp || tmp.test( handleObj.namespace ) ) && + ( !selector || selector === handleObj.selector || + selector === "**" && handleObj.selector ) ) { + handlers.splice( j, 1 ); + + if ( handleObj.selector ) { + handlers.delegateCount--; + } + if ( special.remove ) { + special.remove.call( elem, handleObj ); + } + } + } + + // Remove generic event handler if we removed something and no more handlers exist + // (avoids potential for endless recursion during removal of special event handlers) + if ( origCount && !handlers.length ) { + if ( !special.teardown || + special.teardown.call( elem, namespaces, elemData.handle ) === false ) { + + jQuery.removeEvent( elem, type, elemData.handle ); + } + + delete events[ type ]; + } + } + + // Remove data and the expando if it's no longer used + if ( jQuery.isEmptyObject( events ) ) { + dataPriv.remove( elem, "handle events" ); + } + }, + + dispatch: function( nativeEvent ) { + + var i, j, ret, matched, handleObj, handlerQueue, + args = new Array( arguments.length ), + + // Make a writable jQuery.Event from the native event object + event = jQuery.event.fix( nativeEvent ), + + handlers = ( + dataPriv.get( this, "events" ) || Object.create( null ) + )[ event.type ] || [], + special = jQuery.event.special[ event.type ] || {}; + + // Use the fix-ed jQuery.Event rather than the (read-only) native event + args[ 0 ] = event; + + for ( i = 1; i < arguments.length; i++ ) { + args[ i ] = arguments[ i ]; + } + + event.delegateTarget = this; + + // Call the preDispatch hook for the mapped type, and let it bail if desired + if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { + return; + } + + // Determine handlers + handlerQueue = jQuery.event.handlers.call( this, event, handlers ); + + // Run delegates first; they may want to stop propagation beneath us + i = 0; + while ( ( matched = handlerQueue[ i++ ] ) && !event.isPropagationStopped() ) { + event.currentTarget = matched.elem; + + j = 0; + while ( ( handleObj = matched.handlers[ j++ ] ) && + !event.isImmediatePropagationStopped() ) { + + // If the event is namespaced, then each handler is only invoked if it is + // specially universal or its namespaces are a superset of the event's. + if ( !event.rnamespace || handleObj.namespace === false || + event.rnamespace.test( handleObj.namespace ) ) { + + event.handleObj = handleObj; + event.data = handleObj.data; + + ret = ( ( jQuery.event.special[ handleObj.origType ] || {} ).handle || + handleObj.handler ).apply( matched.elem, args ); + + if ( ret !== undefined ) { + if ( ( event.result = ret ) === false ) { + event.preventDefault(); + event.stopPropagation(); + } + } + } + } + } + + // Call the postDispatch hook for the mapped type + if ( special.postDispatch ) { + special.postDispatch.call( this, event ); + } + + return event.result; + }, + + handlers: function( event, handlers ) { + var i, handleObj, sel, matchedHandlers, matchedSelectors, + handlerQueue = [], + delegateCount = handlers.delegateCount, + cur = event.target; + + // Find delegate handlers + if ( delegateCount && + + // Support: IE <=9 + // Black-hole SVG instance trees (trac-13180) + cur.nodeType && + + // Support: Firefox <=42 + // Suppress spec-violating clicks indicating a non-primary pointer button (trac-3861) + // https://www.w3.org/TR/DOM-Level-3-Events/#event-type-click + // Support: IE 11 only + // ...but not arrow key "clicks" of radio inputs, which can have `button` -1 (gh-2343) + !( event.type === "click" && event.button >= 1 ) ) { + + for ( ; cur !== this; cur = cur.parentNode || this ) { + + // Don't check non-elements (#13208) + // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) + if ( cur.nodeType === 1 && !( event.type === "click" && cur.disabled === true ) ) { + matchedHandlers = []; + matchedSelectors = {}; + for ( i = 0; i < delegateCount; i++ ) { + handleObj = handlers[ i ]; + + // Don't conflict with Object.prototype properties (#13203) + sel = handleObj.selector + " "; + + if ( matchedSelectors[ sel ] === undefined ) { + matchedSelectors[ sel ] = handleObj.needsContext ? + jQuery( sel, this ).index( cur ) > -1 : + jQuery.find( sel, this, null, [ cur ] ).length; + } + if ( matchedSelectors[ sel ] ) { + matchedHandlers.push( handleObj ); + } + } + if ( matchedHandlers.length ) { + handlerQueue.push( { elem: cur, handlers: matchedHandlers } ); + } + } + } + } + + // Add the remaining (directly-bound) handlers + cur = this; + if ( delegateCount < handlers.length ) { + handlerQueue.push( { elem: cur, handlers: handlers.slice( delegateCount ) } ); + } + + return handlerQueue; + }, + + addProp: function( name, hook ) { + Object.defineProperty( jQuery.Event.prototype, name, { + enumerable: true, + configurable: true, + + get: isFunction( hook ) ? + function() { + if ( this.originalEvent ) { + return hook( this.originalEvent ); + } + } : + function() { + if ( this.originalEvent ) { + return this.originalEvent[ name ]; + } + }, + + set: function( value ) { + Object.defineProperty( this, name, { + enumerable: true, + configurable: true, + writable: true, + value: value + } ); + } + } ); + }, + + fix: function( originalEvent ) { + return originalEvent[ jQuery.expando ] ? + originalEvent : + new jQuery.Event( originalEvent ); + }, + + special: { + load: { + + // Prevent triggered image.load events from bubbling to window.load + noBubble: true + }, + click: { + + // Utilize native event to ensure correct state for checkable inputs + setup: function( data ) { + + // For mutual compressibility with _default, replace `this` access with a local var. + // `|| data` is dead code meant only to preserve the variable through minification. + var el = this || data; + + // Claim the first handler + if ( rcheckableType.test( el.type ) && + el.click && nodeName( el, "input" ) ) { + + // dataPriv.set( el, "click", ... ) + leverageNative( el, "click", returnTrue ); + } + + // Return false to allow normal processing in the caller + return false; + }, + trigger: function( data ) { + + // For mutual compressibility with _default, replace `this` access with a local var. + // `|| data` is dead code meant only to preserve the variable through minification. + var el = this || data; + + // Force setup before triggering a click + if ( rcheckableType.test( el.type ) && + el.click && nodeName( el, "input" ) ) { + + leverageNative( el, "click" ); + } + + // Return non-false to allow normal event-path propagation + return true; + }, + + // For cross-browser consistency, suppress native .click() on links + // Also prevent it if we're currently inside a leveraged native-event stack + _default: function( event ) { + var target = event.target; + return rcheckableType.test( target.type ) && + target.click && nodeName( target, "input" ) && + dataPriv.get( target, "click" ) || + nodeName( target, "a" ); + } + }, + + beforeunload: { + postDispatch: function( event ) { + + // Support: Firefox 20+ + // Firefox doesn't alert if the returnValue field is not set. + if ( event.result !== undefined && event.originalEvent ) { + event.originalEvent.returnValue = event.result; + } + } + } + } +}; + +// Ensure the presence of an event listener that handles manually-triggered +// synthetic events by interrupting progress until reinvoked in response to +// *native* events that it fires directly, ensuring that state changes have +// already occurred before other listeners are invoked. +function leverageNative( el, type, expectSync ) { + + // Missing expectSync indicates a trigger call, which must force setup through jQuery.event.add + if ( !expectSync ) { + if ( dataPriv.get( el, type ) === undefined ) { + jQuery.event.add( el, type, returnTrue ); + } + return; + } + + // Register the controller as a special universal handler for all event namespaces + dataPriv.set( el, type, false ); + jQuery.event.add( el, type, { + namespace: false, + handler: function( event ) { + var notAsync, result, + saved = dataPriv.get( this, type ); + + if ( ( event.isTrigger & 1 ) && this[ type ] ) { + + // Interrupt processing of the outer synthetic .trigger()ed event + // Saved data should be false in such cases, but might be a leftover capture object + // from an async native handler (gh-4350) + if ( !saved.length ) { + + // Store arguments for use when handling the inner native event + // There will always be at least one argument (an event object), so this array + // will not be confused with a leftover capture object. + saved = slice.call( arguments ); + dataPriv.set( this, type, saved ); + + // Trigger the native event and capture its result + // Support: IE <=9 - 11+ + // focus() and blur() are asynchronous + notAsync = expectSync( this, type ); + this[ type ](); + result = dataPriv.get( this, type ); + if ( saved !== result || notAsync ) { + dataPriv.set( this, type, false ); + } else { + result = {}; + } + if ( saved !== result ) { + + // Cancel the outer synthetic event + event.stopImmediatePropagation(); + event.preventDefault(); + + // Support: Chrome 86+ + // In Chrome, if an element having a focusout handler is blurred by + // clicking outside of it, it invokes the handler synchronously. If + // that handler calls `.remove()` on the element, the data is cleared, + // leaving `result` undefined. We need to guard against this. + return result && result.value; + } + + // If this is an inner synthetic event for an event with a bubbling surrogate + // (focus or blur), assume that the surrogate already propagated from triggering the + // native event and prevent that from happening again here. + // This technically gets the ordering wrong w.r.t. to `.trigger()` (in which the + // bubbling surrogate propagates *after* the non-bubbling base), but that seems + // less bad than duplication. + } else if ( ( jQuery.event.special[ type ] || {} ).delegateType ) { + event.stopPropagation(); + } + + // If this is a native event triggered above, everything is now in order + // Fire an inner synthetic event with the original arguments + } else if ( saved.length ) { + + // ...and capture the result + dataPriv.set( this, type, { + value: jQuery.event.trigger( + + // Support: IE <=9 - 11+ + // Extend with the prototype to reset the above stopImmediatePropagation() + jQuery.extend( saved[ 0 ], jQuery.Event.prototype ), + saved.slice( 1 ), + this + ) + } ); + + // Abort handling of the native event + event.stopImmediatePropagation(); + } + } + } ); +} + +jQuery.removeEvent = function( elem, type, handle ) { + + // This "if" is needed for plain objects + if ( elem.removeEventListener ) { + elem.removeEventListener( type, handle ); + } +}; + +jQuery.Event = function( src, props ) { + + // Allow instantiation without the 'new' keyword + if ( !( this instanceof jQuery.Event ) ) { + return new jQuery.Event( src, props ); + } + + // Event object + if ( src && src.type ) { + this.originalEvent = src; + this.type = src.type; + + // Events bubbling up the document may have been marked as prevented + // by a handler lower down the tree; reflect the correct value. + this.isDefaultPrevented = src.defaultPrevented || + src.defaultPrevented === undefined && + + // Support: Android <=2.3 only + src.returnValue === false ? + returnTrue : + returnFalse; + + // Create target properties + // Support: Safari <=6 - 7 only + // Target should not be a text node (#504, #13143) + this.target = ( src.target && src.target.nodeType === 3 ) ? + src.target.parentNode : + src.target; + + this.currentTarget = src.currentTarget; + this.relatedTarget = src.relatedTarget; + + // Event type + } else { + this.type = src; + } + + // Put explicitly provided properties onto the event object + if ( props ) { + jQuery.extend( this, props ); + } + + // Create a timestamp if incoming event doesn't have one + this.timeStamp = src && src.timeStamp || Date.now(); + + // Mark it as fixed + this[ jQuery.expando ] = true; +}; + +// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding +// https://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html +jQuery.Event.prototype = { + constructor: jQuery.Event, + isDefaultPrevented: returnFalse, + isPropagationStopped: returnFalse, + isImmediatePropagationStopped: returnFalse, + isSimulated: false, + + preventDefault: function() { + var e = this.originalEvent; + + this.isDefaultPrevented = returnTrue; + + if ( e && !this.isSimulated ) { + e.preventDefault(); + } + }, + stopPropagation: function() { + var e = this.originalEvent; + + this.isPropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopPropagation(); + } + }, + stopImmediatePropagation: function() { + var e = this.originalEvent; + + this.isImmediatePropagationStopped = returnTrue; + + if ( e && !this.isSimulated ) { + e.stopImmediatePropagation(); + } + + this.stopPropagation(); + } +}; + +// Includes all common event props including KeyEvent and MouseEvent specific props +jQuery.each( { + altKey: true, + bubbles: true, + cancelable: true, + changedTouches: true, + ctrlKey: true, + detail: true, + eventPhase: true, + metaKey: true, + pageX: true, + pageY: true, + shiftKey: true, + view: true, + "char": true, + code: true, + charCode: true, + key: true, + keyCode: true, + button: true, + buttons: true, + clientX: true, + clientY: true, + offsetX: true, + offsetY: true, + pointerId: true, + pointerType: true, + screenX: true, + screenY: true, + targetTouches: true, + toElement: true, + touches: true, + which: true +}, jQuery.event.addProp ); + +jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) { + jQuery.event.special[ type ] = { + + // Utilize native event if possible so blur/focus sequence is correct + setup: function() { + + // Claim the first handler + // dataPriv.set( this, "focus", ... ) + // dataPriv.set( this, "blur", ... ) + leverageNative( this, type, expectSync ); + + // Return false to allow normal processing in the caller + return false; + }, + trigger: function() { + + // Force setup before trigger + leverageNative( this, type ); + + // Return non-false to allow normal event-path propagation + return true; + }, + + // Suppress native focus or blur as it's already being fired + // in leverageNative. + _default: function() { + return true; + }, + + delegateType: delegateType + }; +} ); + +// Create mouseenter/leave events using mouseover/out and event-time checks +// so that event delegation works in jQuery. +// Do the same for pointerenter/pointerleave and pointerover/pointerout +// +// Support: Safari 7 only +// Safari sends mouseenter too often; see: +// https://bugs.chromium.org/p/chromium/issues/detail?id=470258 +// for the description of the bug (it existed in older Chrome versions as well). +jQuery.each( { + mouseenter: "mouseover", + mouseleave: "mouseout", + pointerenter: "pointerover", + pointerleave: "pointerout" +}, function( orig, fix ) { + jQuery.event.special[ orig ] = { + delegateType: fix, + bindType: fix, + + handle: function( event ) { + var ret, + target = this, + related = event.relatedTarget, + handleObj = event.handleObj; + + // For mouseenter/leave call the handler if related is outside the target. + // NB: No relatedTarget if the mouse left/entered the browser window + if ( !related || ( related !== target && !jQuery.contains( target, related ) ) ) { + event.type = handleObj.origType; + ret = handleObj.handler.apply( this, arguments ); + event.type = fix; + } + return ret; + } + }; +} ); + +jQuery.fn.extend( { + + on: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn ); + }, + one: function( types, selector, data, fn ) { + return on( this, types, selector, data, fn, 1 ); + }, + off: function( types, selector, fn ) { + var handleObj, type; + if ( types && types.preventDefault && types.handleObj ) { + + // ( event ) dispatched jQuery.Event + handleObj = types.handleObj; + jQuery( types.delegateTarget ).off( + handleObj.namespace ? + handleObj.origType + "." + handleObj.namespace : + handleObj.origType, + handleObj.selector, + handleObj.handler + ); + return this; + } + if ( typeof types === "object" ) { + + // ( types-object [, selector] ) + for ( type in types ) { + this.off( type, selector, types[ type ] ); + } + return this; + } + if ( selector === false || typeof selector === "function" ) { + + // ( types [, fn] ) + fn = selector; + selector = undefined; + } + if ( fn === false ) { + fn = returnFalse; + } + return this.each( function() { + jQuery.event.remove( this, types, fn, selector ); + } ); + } +} ); + + +var + + // Support: IE <=10 - 11, Edge 12 - 13 only + // In IE/Edge using regex groups here causes severe slowdowns. + // See https://connect.microsoft.com/IE/feedback/details/1736512/ + rnoInnerhtml = /\s*$/g; + +// Prefer a tbody over its parent table for containing new rows +function manipulationTarget( elem, content ) { + if ( nodeName( elem, "table" ) && + nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ) { + + return jQuery( elem ).children( "tbody" )[ 0 ] || elem; + } + + return elem; +} + +// Replace/restore the type attribute of script elements for safe DOM manipulation +function disableScript( elem ) { + elem.type = ( elem.getAttribute( "type" ) !== null ) + "/" + elem.type; + return elem; +} +function restoreScript( elem ) { + if ( ( elem.type || "" ).slice( 0, 5 ) === "true/" ) { + elem.type = elem.type.slice( 5 ); + } else { + elem.removeAttribute( "type" ); + } + + return elem; +} + +function cloneCopyEvent( src, dest ) { + var i, l, type, pdataOld, udataOld, udataCur, events; + + if ( dest.nodeType !== 1 ) { + return; + } + + // 1. Copy private data: events, handlers, etc. + if ( dataPriv.hasData( src ) ) { + pdataOld = dataPriv.get( src ); + events = pdataOld.events; + + if ( events ) { + dataPriv.remove( dest, "handle events" ); + + for ( type in events ) { + for ( i = 0, l = events[ type ].length; i < l; i++ ) { + jQuery.event.add( dest, type, events[ type ][ i ] ); + } + } + } + } + + // 2. Copy user data + if ( dataUser.hasData( src ) ) { + udataOld = dataUser.access( src ); + udataCur = jQuery.extend( {}, udataOld ); + + dataUser.set( dest, udataCur ); + } +} + +// Fix IE bugs, see support tests +function fixInput( src, dest ) { + var nodeName = dest.nodeName.toLowerCase(); + + // Fails to persist the checked state of a cloned checkbox or radio button. + if ( nodeName === "input" && rcheckableType.test( src.type ) ) { + dest.checked = src.checked; + + // Fails to return the selected option to the default selected state when cloning options + } else if ( nodeName === "input" || nodeName === "textarea" ) { + dest.defaultValue = src.defaultValue; + } +} + +function domManip( collection, args, callback, ignored ) { + + // Flatten any nested arrays + args = flat( args ); + + var fragment, first, scripts, hasScripts, node, doc, + i = 0, + l = collection.length, + iNoClone = l - 1, + value = args[ 0 ], + valueIsFunction = isFunction( value ); + + // We can't cloneNode fragments that contain checked, in WebKit + if ( valueIsFunction || + ( l > 1 && typeof value === "string" && + !support.checkClone && rchecked.test( value ) ) ) { + return collection.each( function( index ) { + var self = collection.eq( index ); + if ( valueIsFunction ) { + args[ 0 ] = value.call( this, index, self.html() ); + } + domManip( self, args, callback, ignored ); + } ); + } + + if ( l ) { + fragment = buildFragment( args, collection[ 0 ].ownerDocument, false, collection, ignored ); + first = fragment.firstChild; + + if ( fragment.childNodes.length === 1 ) { + fragment = first; + } + + // Require either new content or an interest in ignored elements to invoke the callback + if ( first || ignored ) { + scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); + hasScripts = scripts.length; + + // Use the original fragment for the last item + // instead of the first because it can end up + // being emptied incorrectly in certain situations (#8070). + for ( ; i < l; i++ ) { + node = fragment; + + if ( i !== iNoClone ) { + node = jQuery.clone( node, true, true ); + + // Keep references to cloned scripts for later restoration + if ( hasScripts ) { + + // Support: Android <=4.0 only, PhantomJS 1 only + // push.apply(_, arraylike) throws on ancient WebKit + jQuery.merge( scripts, getAll( node, "script" ) ); + } + } + + callback.call( collection[ i ], node, i ); + } + + if ( hasScripts ) { + doc = scripts[ scripts.length - 1 ].ownerDocument; + + // Reenable scripts + jQuery.map( scripts, restoreScript ); + + // Evaluate executable scripts on first document insertion + for ( i = 0; i < hasScripts; i++ ) { + node = scripts[ i ]; + if ( rscriptType.test( node.type || "" ) && + !dataPriv.access( node, "globalEval" ) && + jQuery.contains( doc, node ) ) { + + if ( node.src && ( node.type || "" ).toLowerCase() !== "module" ) { + + // Optional AJAX dependency, but won't run scripts if not present + if ( jQuery._evalUrl && !node.noModule ) { + jQuery._evalUrl( node.src, { + nonce: node.nonce || node.getAttribute( "nonce" ) + }, doc ); + } + } else { + DOMEval( node.textContent.replace( rcleanScript, "" ), node, doc ); + } + } + } + } + } + } + + return collection; +} + +function remove( elem, selector, keepData ) { + var node, + nodes = selector ? jQuery.filter( selector, elem ) : elem, + i = 0; + + for ( ; ( node = nodes[ i ] ) != null; i++ ) { + if ( !keepData && node.nodeType === 1 ) { + jQuery.cleanData( getAll( node ) ); + } + + if ( node.parentNode ) { + if ( keepData && isAttached( node ) ) { + setGlobalEval( getAll( node, "script" ) ); + } + node.parentNode.removeChild( node ); + } + } + + return elem; +} + +jQuery.extend( { + htmlPrefilter: function( html ) { + return html; + }, + + clone: function( elem, dataAndEvents, deepDataAndEvents ) { + var i, l, srcElements, destElements, + clone = elem.cloneNode( true ), + inPage = isAttached( elem ); + + // Fix IE cloning issues + if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && + !jQuery.isXMLDoc( elem ) ) { + + // We eschew Sizzle here for performance reasons: https://jsperf.com/getall-vs-sizzle/2 + destElements = getAll( clone ); + srcElements = getAll( elem ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + fixInput( srcElements[ i ], destElements[ i ] ); + } + } + + // Copy the events from the original to the clone + if ( dataAndEvents ) { + if ( deepDataAndEvents ) { + srcElements = srcElements || getAll( elem ); + destElements = destElements || getAll( clone ); + + for ( i = 0, l = srcElements.length; i < l; i++ ) { + cloneCopyEvent( srcElements[ i ], destElements[ i ] ); + } + } else { + cloneCopyEvent( elem, clone ); + } + } + + // Preserve script evaluation history + destElements = getAll( clone, "script" ); + if ( destElements.length > 0 ) { + setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); + } + + // Return the cloned set + return clone; + }, + + cleanData: function( elems ) { + var data, elem, type, + special = jQuery.event.special, + i = 0; + + for ( ; ( elem = elems[ i ] ) !== undefined; i++ ) { + if ( acceptData( elem ) ) { + if ( ( data = elem[ dataPriv.expando ] ) ) { + if ( data.events ) { + for ( type in data.events ) { + if ( special[ type ] ) { + jQuery.event.remove( elem, type ); + + // This is a shortcut to avoid jQuery.event.remove's overhead + } else { + jQuery.removeEvent( elem, type, data.handle ); + } + } + } + + // Support: Chrome <=35 - 45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataPriv.expando ] = undefined; + } + if ( elem[ dataUser.expando ] ) { + + // Support: Chrome <=35 - 45+ + // Assign undefined instead of using delete, see Data#remove + elem[ dataUser.expando ] = undefined; + } + } + } + } +} ); + +jQuery.fn.extend( { + detach: function( selector ) { + return remove( this, selector, true ); + }, + + remove: function( selector ) { + return remove( this, selector ); + }, + + text: function( value ) { + return access( this, function( value ) { + return value === undefined ? + jQuery.text( this ) : + this.empty().each( function() { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + this.textContent = value; + } + } ); + }, null, value, arguments.length ); + }, + + append: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.appendChild( elem ); + } + } ); + }, + + prepend: function() { + return domManip( this, arguments, function( elem ) { + if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { + var target = manipulationTarget( this, elem ); + target.insertBefore( elem, target.firstChild ); + } + } ); + }, + + before: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this ); + } + } ); + }, + + after: function() { + return domManip( this, arguments, function( elem ) { + if ( this.parentNode ) { + this.parentNode.insertBefore( elem, this.nextSibling ); + } + } ); + }, + + empty: function() { + var elem, + i = 0; + + for ( ; ( elem = this[ i ] ) != null; i++ ) { + if ( elem.nodeType === 1 ) { + + // Prevent memory leaks + jQuery.cleanData( getAll( elem, false ) ); + + // Remove any remaining nodes + elem.textContent = ""; + } + } + + return this; + }, + + clone: function( dataAndEvents, deepDataAndEvents ) { + dataAndEvents = dataAndEvents == null ? false : dataAndEvents; + deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; + + return this.map( function() { + return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); + } ); + }, + + html: function( value ) { + return access( this, function( value ) { + var elem = this[ 0 ] || {}, + i = 0, + l = this.length; + + if ( value === undefined && elem.nodeType === 1 ) { + return elem.innerHTML; + } + + // See if we can take a shortcut and just use innerHTML + if ( typeof value === "string" && !rnoInnerhtml.test( value ) && + !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { + + value = jQuery.htmlPrefilter( value ); + + try { + for ( ; i < l; i++ ) { + elem = this[ i ] || {}; + + // Remove element nodes and prevent memory leaks + if ( elem.nodeType === 1 ) { + jQuery.cleanData( getAll( elem, false ) ); + elem.innerHTML = value; + } + } + + elem = 0; + + // If using innerHTML throws an exception, use the fallback method + } catch ( e ) {} + } + + if ( elem ) { + this.empty().append( value ); + } + }, null, value, arguments.length ); + }, + + replaceWith: function() { + var ignored = []; + + // Make the changes, replacing each non-ignored context element with the new content + return domManip( this, arguments, function( elem ) { + var parent = this.parentNode; + + if ( jQuery.inArray( this, ignored ) < 0 ) { + jQuery.cleanData( getAll( this ) ); + if ( parent ) { + parent.replaceChild( elem, this ); + } + } + + // Force callback invocation + }, ignored ); + } +} ); + +jQuery.each( { + appendTo: "append", + prependTo: "prepend", + insertBefore: "before", + insertAfter: "after", + replaceAll: "replaceWith" +}, function( name, original ) { + jQuery.fn[ name ] = function( selector ) { + var elems, + ret = [], + insert = jQuery( selector ), + last = insert.length - 1, + i = 0; + + for ( ; i <= last; i++ ) { + elems = i === last ? this : this.clone( true ); + jQuery( insert[ i ] )[ original ]( elems ); + + // Support: Android <=4.0 only, PhantomJS 1 only + // .get() because push.apply(_, arraylike) throws on ancient WebKit + push.apply( ret, elems.get() ); + } + + return this.pushStack( ret ); + }; +} ); +var rnumnonpx = new RegExp( "^(" + pnum + ")(?!px)[a-z%]+$", "i" ); + +var getStyles = function( elem ) { + + // Support: IE <=11 only, Firefox <=30 (#15098, #14150) + // IE throws on elements created in popups + // FF meanwhile throws on frame elements through "defaultView.getComputedStyle" + var view = elem.ownerDocument.defaultView; + + if ( !view || !view.opener ) { + view = window; + } + + return view.getComputedStyle( elem ); + }; + +var swap = function( elem, options, callback ) { + var ret, name, + old = {}; + + // Remember the old values, and insert the new ones + for ( name in options ) { + old[ name ] = elem.style[ name ]; + elem.style[ name ] = options[ name ]; + } + + ret = callback.call( elem ); + + // Revert the old values + for ( name in options ) { + elem.style[ name ] = old[ name ]; + } + + return ret; +}; + + +var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" ); + + + +( function() { + + // Executing both pixelPosition & boxSizingReliable tests require only one layout + // so they're executed at the same time to save the second computation. + function computeStyleTests() { + + // This is a singleton, we need to execute it only once + if ( !div ) { + return; + } + + container.style.cssText = "position:absolute;left:-11111px;width:60px;" + + "margin-top:1px;padding:0;border:0"; + div.style.cssText = + "position:relative;display:block;box-sizing:border-box;overflow:scroll;" + + "margin:auto;border:1px;padding:1px;" + + "width:60%;top:1%"; + documentElement.appendChild( container ).appendChild( div ); + + var divStyle = window.getComputedStyle( div ); + pixelPositionVal = divStyle.top !== "1%"; + + // Support: Android 4.0 - 4.3 only, Firefox <=3 - 44 + reliableMarginLeftVal = roundPixelMeasures( divStyle.marginLeft ) === 12; + + // Support: Android 4.0 - 4.3 only, Safari <=9.1 - 10.1, iOS <=7.0 - 9.3 + // Some styles come back with percentage values, even though they shouldn't + div.style.right = "60%"; + pixelBoxStylesVal = roundPixelMeasures( divStyle.right ) === 36; + + // Support: IE 9 - 11 only + // Detect misreporting of content dimensions for box-sizing:border-box elements + boxSizingReliableVal = roundPixelMeasures( divStyle.width ) === 36; + + // Support: IE 9 only + // Detect overflow:scroll screwiness (gh-3699) + // Support: Chrome <=64 + // Don't get tricked when zoom affects offsetWidth (gh-4029) + div.style.position = "absolute"; + scrollboxSizeVal = roundPixelMeasures( div.offsetWidth / 3 ) === 12; + + documentElement.removeChild( container ); + + // Nullify the div so it wouldn't be stored in the memory and + // it will also be a sign that checks already performed + div = null; + } + + function roundPixelMeasures( measure ) { + return Math.round( parseFloat( measure ) ); + } + + var pixelPositionVal, boxSizingReliableVal, scrollboxSizeVal, pixelBoxStylesVal, + reliableTrDimensionsVal, reliableMarginLeftVal, + container = document.createElement( "div" ), + div = document.createElement( "div" ); + + // Finish early in limited (non-browser) environments + if ( !div.style ) { + return; + } + + // Support: IE <=9 - 11 only + // Style of cloned element affects source element cloned (#8908) + div.style.backgroundClip = "content-box"; + div.cloneNode( true ).style.backgroundClip = ""; + support.clearCloneStyle = div.style.backgroundClip === "content-box"; + + jQuery.extend( support, { + boxSizingReliable: function() { + computeStyleTests(); + return boxSizingReliableVal; + }, + pixelBoxStyles: function() { + computeStyleTests(); + return pixelBoxStylesVal; + }, + pixelPosition: function() { + computeStyleTests(); + return pixelPositionVal; + }, + reliableMarginLeft: function() { + computeStyleTests(); + return reliableMarginLeftVal; + }, + scrollboxSize: function() { + computeStyleTests(); + return scrollboxSizeVal; + }, + + // Support: IE 9 - 11+, Edge 15 - 18+ + // IE/Edge misreport `getComputedStyle` of table rows with width/height + // set in CSS while `offset*` properties report correct values. + // Behavior in IE 9 is more subtle than in newer versions & it passes + // some versions of this test; make sure not to make it pass there! + // + // Support: Firefox 70+ + // Only Firefox includes border widths + // in computed dimensions. (gh-4529) + reliableTrDimensions: function() { + var table, tr, trChild, trStyle; + if ( reliableTrDimensionsVal == null ) { + table = document.createElement( "table" ); + tr = document.createElement( "tr" ); + trChild = document.createElement( "div" ); + + table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate"; + tr.style.cssText = "border:1px solid"; + + // Support: Chrome 86+ + // Height set through cssText does not get applied. + // Computed height then comes back as 0. + tr.style.height = "1px"; + trChild.style.height = "9px"; + + // Support: Android 8 Chrome 86+ + // In our bodyBackground.html iframe, + // display for all div elements is set to "inline", + // which causes a problem only in Android 8 Chrome 86. + // Ensuring the div is display: block + // gets around this issue. + trChild.style.display = "block"; + + documentElement + .appendChild( table ) + .appendChild( tr ) + .appendChild( trChild ); + + trStyle = window.getComputedStyle( tr ); + reliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) + + parseInt( trStyle.borderTopWidth, 10 ) + + parseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight; + + documentElement.removeChild( table ); + } + return reliableTrDimensionsVal; + } + } ); +} )(); + + +function curCSS( elem, name, computed ) { + var width, minWidth, maxWidth, ret, + + // Support: Firefox 51+ + // Retrieving style before computed somehow + // fixes an issue with getting wrong values + // on detached elements + style = elem.style; + + computed = computed || getStyles( elem ); + + // getPropertyValue is needed for: + // .css('filter') (IE 9 only, #12537) + // .css('--customProperty) (#3144) + if ( computed ) { + ret = computed.getPropertyValue( name ) || computed[ name ]; + + if ( ret === "" && !isAttached( elem ) ) { + ret = jQuery.style( elem, name ); + } + + // A tribute to the "awesome hack by Dean Edwards" + // Android Browser returns percentage for some values, + // but width seems to be reliably pixels. + // This is against the CSSOM draft spec: + // https://drafts.csswg.org/cssom/#resolved-values + if ( !support.pixelBoxStyles() && rnumnonpx.test( ret ) && rboxStyle.test( name ) ) { + + // Remember the original values + width = style.width; + minWidth = style.minWidth; + maxWidth = style.maxWidth; + + // Put in the new values to get a computed value out + style.minWidth = style.maxWidth = style.width = ret; + ret = computed.width; + + // Revert the changed values + style.width = width; + style.minWidth = minWidth; + style.maxWidth = maxWidth; + } + } + + return ret !== undefined ? + + // Support: IE <=9 - 11 only + // IE returns zIndex value as an integer. + ret + "" : + ret; +} + + +function addGetHookIf( conditionFn, hookFn ) { + + // Define the hook, we'll check on the first run if it's really needed. + return { + get: function() { + if ( conditionFn() ) { + + // Hook not needed (or it's not possible to use it due + // to missing dependency), remove it. + delete this.get; + return; + } + + // Hook needed; redefine it so that the support test is not executed again. + return ( this.get = hookFn ).apply( this, arguments ); + } + }; +} + + +var cssPrefixes = [ "Webkit", "Moz", "ms" ], + emptyStyle = document.createElement( "div" ).style, + vendorProps = {}; + +// Return a vendor-prefixed property or undefined +function vendorPropName( name ) { + + // Check for vendor prefixed names + var capName = name[ 0 ].toUpperCase() + name.slice( 1 ), + i = cssPrefixes.length; + + while ( i-- ) { + name = cssPrefixes[ i ] + capName; + if ( name in emptyStyle ) { + return name; + } + } +} + +// Return a potentially-mapped jQuery.cssProps or vendor prefixed property +function finalPropName( name ) { + var final = jQuery.cssProps[ name ] || vendorProps[ name ]; + + if ( final ) { + return final; + } + if ( name in emptyStyle ) { + return name; + } + return vendorProps[ name ] = vendorPropName( name ) || name; +} + + +var + + // Swappable if display is none or starts with table + // except "table", "table-cell", or "table-caption" + // See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display + rdisplayswap = /^(none|table(?!-c[ea]).+)/, + rcustomProp = /^--/, + cssShow = { position: "absolute", visibility: "hidden", display: "block" }, + cssNormalTransform = { + letterSpacing: "0", + fontWeight: "400" + }; + +function setPositiveNumber( _elem, value, subtract ) { + + // Any relative (+/-) values have already been + // normalized at this point + var matches = rcssNum.exec( value ); + return matches ? + + // Guard against undefined "subtract", e.g., when used as in cssHooks + Math.max( 0, matches[ 2 ] - ( subtract || 0 ) ) + ( matches[ 3 ] || "px" ) : + value; +} + +function boxModelAdjustment( elem, dimension, box, isBorderBox, styles, computedVal ) { + var i = dimension === "width" ? 1 : 0, + extra = 0, + delta = 0; + + // Adjustment may not be necessary + if ( box === ( isBorderBox ? "border" : "content" ) ) { + return 0; + } + + for ( ; i < 4; i += 2 ) { + + // Both box models exclude margin + if ( box === "margin" ) { + delta += jQuery.css( elem, box + cssExpand[ i ], true, styles ); + } + + // If we get here with a content-box, we're seeking "padding" or "border" or "margin" + if ( !isBorderBox ) { + + // Add padding + delta += jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); + + // For "border" or "margin", add border + if ( box !== "padding" ) { + delta += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + + // But still keep track of it otherwise + } else { + extra += jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + } + + // If we get here with a border-box (content + padding + border), we're seeking "content" or + // "padding" or "margin" + } else { + + // For "content", subtract padding + if ( box === "content" ) { + delta -= jQuery.css( elem, "padding" + cssExpand[ i ], true, styles ); + } + + // For "content" or "padding", subtract border + if ( box !== "margin" ) { + delta -= jQuery.css( elem, "border" + cssExpand[ i ] + "Width", true, styles ); + } + } + } + + // Account for positive content-box scroll gutter when requested by providing computedVal + if ( !isBorderBox && computedVal >= 0 ) { + + // offsetWidth/offsetHeight is a rounded sum of content, padding, scroll gutter, and border + // Assuming integer scroll gutter, subtract the rest and round down + delta += Math.max( 0, Math.ceil( + elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - + computedVal - + delta - + extra - + 0.5 + + // If offsetWidth/offsetHeight is unknown, then we can't determine content-box scroll gutter + // Use an explicit zero to avoid NaN (gh-3964) + ) ) || 0; + } + + return delta; +} + +function getWidthOrHeight( elem, dimension, extra ) { + + // Start with computed style + var styles = getStyles( elem ), + + // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-4322). + // Fake content-box until we know it's needed to know the true value. + boxSizingNeeded = !support.boxSizingReliable() || extra, + isBorderBox = boxSizingNeeded && + jQuery.css( elem, "boxSizing", false, styles ) === "border-box", + valueIsBorderBox = isBorderBox, + + val = curCSS( elem, dimension, styles ), + offsetProp = "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ); + + // Support: Firefox <=54 + // Return a confounding non-pixel value or feign ignorance, as appropriate. + if ( rnumnonpx.test( val ) ) { + if ( !extra ) { + return val; + } + val = "auto"; + } + + + // Support: IE 9 - 11 only + // Use offsetWidth/offsetHeight for when box sizing is unreliable. + // In those cases, the computed value can be trusted to be border-box. + if ( ( !support.boxSizingReliable() && isBorderBox || + + // Support: IE 10 - 11+, Edge 15 - 18+ + // IE/Edge misreport `getComputedStyle` of table rows with width/height + // set in CSS while `offset*` properties report correct values. + // Interestingly, in some cases IE 9 doesn't suffer from this issue. + !support.reliableTrDimensions() && nodeName( elem, "tr" ) || + + // Fall back to offsetWidth/offsetHeight when value is "auto" + // This happens for inline elements with no explicit setting (gh-3571) + val === "auto" || + + // Support: Android <=4.1 - 4.3 only + // Also use offsetWidth/offsetHeight for misreported inline dimensions (gh-3602) + !parseFloat( val ) && jQuery.css( elem, "display", false, styles ) === "inline" ) && + + // Make sure the element is visible & connected + elem.getClientRects().length ) { + + isBorderBox = jQuery.css( elem, "boxSizing", false, styles ) === "border-box"; + + // Where available, offsetWidth/offsetHeight approximate border box dimensions. + // Where not available (e.g., SVG), assume unreliable box-sizing and interpret the + // retrieved value as a content box dimension. + valueIsBorderBox = offsetProp in elem; + if ( valueIsBorderBox ) { + val = elem[ offsetProp ]; + } + } + + // Normalize "" and auto + val = parseFloat( val ) || 0; + + // Adjust for the element's box model + return ( val + + boxModelAdjustment( + elem, + dimension, + extra || ( isBorderBox ? "border" : "content" ), + valueIsBorderBox, + styles, + + // Provide the current computed size to request scroll gutter calculation (gh-3589) + val + ) + ) + "px"; +} + +jQuery.extend( { + + // Add in style property hooks for overriding the default + // behavior of getting and setting a style property + cssHooks: { + opacity: { + get: function( elem, computed ) { + if ( computed ) { + + // We should always get a number back from opacity + var ret = curCSS( elem, "opacity" ); + return ret === "" ? "1" : ret; + } + } + } + }, + + // Don't automatically add "px" to these possibly-unitless properties + cssNumber: { + "animationIterationCount": true, + "columnCount": true, + "fillOpacity": true, + "flexGrow": true, + "flexShrink": true, + "fontWeight": true, + "gridArea": true, + "gridColumn": true, + "gridColumnEnd": true, + "gridColumnStart": true, + "gridRow": true, + "gridRowEnd": true, + "gridRowStart": true, + "lineHeight": true, + "opacity": true, + "order": true, + "orphans": true, + "widows": true, + "zIndex": true, + "zoom": true + }, + + // Add in properties whose names you wish to fix before + // setting or getting the value + cssProps: {}, + + // Get and set the style property on a DOM Node + style: function( elem, name, value, extra ) { + + // Don't set styles on text and comment nodes + if ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) { + return; + } + + // Make sure that we're working with the right name + var ret, type, hooks, + origName = camelCase( name ), + isCustomProp = rcustomProp.test( name ), + style = elem.style; + + // Make sure that we're working with the right name. We don't + // want to query the value if it is a CSS custom property + // since they are user-defined. + if ( !isCustomProp ) { + name = finalPropName( origName ); + } + + // Gets hook for the prefixed version, then unprefixed version + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // Check if we're setting a value + if ( value !== undefined ) { + type = typeof value; + + // Convert "+=" or "-=" to relative numbers (#7345) + if ( type === "string" && ( ret = rcssNum.exec( value ) ) && ret[ 1 ] ) { + value = adjustCSS( elem, name, ret ); + + // Fixes bug #9237 + type = "number"; + } + + // Make sure that null and NaN values aren't set (#7116) + if ( value == null || value !== value ) { + return; + } + + // If a number was passed in, add the unit (except for certain CSS properties) + // The isCustomProp check can be removed in jQuery 4.0 when we only auto-append + // "px" to a few hardcoded values. + if ( type === "number" && !isCustomProp ) { + value += ret && ret[ 3 ] || ( jQuery.cssNumber[ origName ] ? "" : "px" ); + } + + // background-* props affect original clone's values + if ( !support.clearCloneStyle && value === "" && name.indexOf( "background" ) === 0 ) { + style[ name ] = "inherit"; + } + + // If a hook was provided, use that value, otherwise just set the specified value + if ( !hooks || !( "set" in hooks ) || + ( value = hooks.set( elem, value, extra ) ) !== undefined ) { + + if ( isCustomProp ) { + style.setProperty( name, value ); + } else { + style[ name ] = value; + } + } + + } else { + + // If a hook was provided get the non-computed value from there + if ( hooks && "get" in hooks && + ( ret = hooks.get( elem, false, extra ) ) !== undefined ) { + + return ret; + } + + // Otherwise just get the value from the style object + return style[ name ]; + } + }, + + css: function( elem, name, extra, styles ) { + var val, num, hooks, + origName = camelCase( name ), + isCustomProp = rcustomProp.test( name ); + + // Make sure that we're working with the right name. We don't + // want to modify the value if it is a CSS custom property + // since they are user-defined. + if ( !isCustomProp ) { + name = finalPropName( origName ); + } + + // Try prefixed name followed by the unprefixed name + hooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ]; + + // If a hook was provided get the computed value from there + if ( hooks && "get" in hooks ) { + val = hooks.get( elem, true, extra ); + } + + // Otherwise, if a way to get the computed value exists, use that + if ( val === undefined ) { + val = curCSS( elem, name, styles ); + } + + // Convert "normal" to computed value + if ( val === "normal" && name in cssNormalTransform ) { + val = cssNormalTransform[ name ]; + } + + // Make numeric if forced or a qualifier was provided and val looks numeric + if ( extra === "" || extra ) { + num = parseFloat( val ); + return extra === true || isFinite( num ) ? num || 0 : val; + } + + return val; + } +} ); + +jQuery.each( [ "height", "width" ], function( _i, dimension ) { + jQuery.cssHooks[ dimension ] = { + get: function( elem, computed, extra ) { + if ( computed ) { + + // Certain elements can have dimension info if we invisibly show them + // but it must have a current display style that would benefit + return rdisplayswap.test( jQuery.css( elem, "display" ) ) && + + // Support: Safari 8+ + // Table columns in Safari have non-zero offsetWidth & zero + // getBoundingClientRect().width unless display is changed. + // Support: IE <=11 only + // Running getBoundingClientRect on a disconnected node + // in IE throws an error. + ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ? + swap( elem, cssShow, function() { + return getWidthOrHeight( elem, dimension, extra ); + } ) : + getWidthOrHeight( elem, dimension, extra ); + } + }, + + set: function( elem, value, extra ) { + var matches, + styles = getStyles( elem ), + + // Only read styles.position if the test has a chance to fail + // to avoid forcing a reflow. + scrollboxSizeBuggy = !support.scrollboxSize() && + styles.position === "absolute", + + // To avoid forcing a reflow, only fetch boxSizing if we need it (gh-3991) + boxSizingNeeded = scrollboxSizeBuggy || extra, + isBorderBox = boxSizingNeeded && + jQuery.css( elem, "boxSizing", false, styles ) === "border-box", + subtract = extra ? + boxModelAdjustment( + elem, + dimension, + extra, + isBorderBox, + styles + ) : + 0; + + // Account for unreliable border-box dimensions by comparing offset* to computed and + // faking a content-box to get border and padding (gh-3699) + if ( isBorderBox && scrollboxSizeBuggy ) { + subtract -= Math.ceil( + elem[ "offset" + dimension[ 0 ].toUpperCase() + dimension.slice( 1 ) ] - + parseFloat( styles[ dimension ] ) - + boxModelAdjustment( elem, dimension, "border", false, styles ) - + 0.5 + ); + } + + // Convert to pixels if value adjustment is needed + if ( subtract && ( matches = rcssNum.exec( value ) ) && + ( matches[ 3 ] || "px" ) !== "px" ) { + + elem.style[ dimension ] = value; + value = jQuery.css( elem, dimension ); + } + + return setPositiveNumber( elem, value, subtract ); + } + }; +} ); + +jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft, + function( elem, computed ) { + if ( computed ) { + return ( parseFloat( curCSS( elem, "marginLeft" ) ) || + elem.getBoundingClientRect().left - + swap( elem, { marginLeft: 0 }, function() { + return elem.getBoundingClientRect().left; + } ) + ) + "px"; + } + } +); + +// These hooks are used by animate to expand properties +jQuery.each( { + margin: "", + padding: "", + border: "Width" +}, function( prefix, suffix ) { + jQuery.cssHooks[ prefix + suffix ] = { + expand: function( value ) { + var i = 0, + expanded = {}, + + // Assumes a single number if not a string + parts = typeof value === "string" ? value.split( " " ) : [ value ]; + + for ( ; i < 4; i++ ) { + expanded[ prefix + cssExpand[ i ] + suffix ] = + parts[ i ] || parts[ i - 2 ] || parts[ 0 ]; + } + + return expanded; + } + }; + + if ( prefix !== "margin" ) { + jQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber; + } +} ); + +jQuery.fn.extend( { + css: function( name, value ) { + return access( this, function( elem, name, value ) { + var styles, len, + map = {}, + i = 0; + + if ( Array.isArray( name ) ) { + styles = getStyles( elem ); + len = name.length; + + for ( ; i < len; i++ ) { + map[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles ); + } + + return map; + } + + return value !== undefined ? + jQuery.style( elem, name, value ) : + jQuery.css( elem, name ); + }, name, value, arguments.length > 1 ); + } +} ); + + +function Tween( elem, options, prop, end, easing ) { + return new Tween.prototype.init( elem, options, prop, end, easing ); +} +jQuery.Tween = Tween; + +Tween.prototype = { + constructor: Tween, + init: function( elem, options, prop, end, easing, unit ) { + this.elem = elem; + this.prop = prop; + this.easing = easing || jQuery.easing._default; + this.options = options; + this.start = this.now = this.cur(); + this.end = end; + this.unit = unit || ( jQuery.cssNumber[ prop ] ? "" : "px" ); + }, + cur: function() { + var hooks = Tween.propHooks[ this.prop ]; + + return hooks && hooks.get ? + hooks.get( this ) : + Tween.propHooks._default.get( this ); + }, + run: function( percent ) { + var eased, + hooks = Tween.propHooks[ this.prop ]; + + if ( this.options.duration ) { + this.pos = eased = jQuery.easing[ this.easing ]( + percent, this.options.duration * percent, 0, 1, this.options.duration + ); + } else { + this.pos = eased = percent; + } + this.now = ( this.end - this.start ) * eased + this.start; + + if ( this.options.step ) { + this.options.step.call( this.elem, this.now, this ); + } + + if ( hooks && hooks.set ) { + hooks.set( this ); + } else { + Tween.propHooks._default.set( this ); + } + return this; + } +}; + +Tween.prototype.init.prototype = Tween.prototype; + +Tween.propHooks = { + _default: { + get: function( tween ) { + var result; + + // Use a property on the element directly when it is not a DOM element, + // or when there is no matching style property that exists. + if ( tween.elem.nodeType !== 1 || + tween.elem[ tween.prop ] != null && tween.elem.style[ tween.prop ] == null ) { + return tween.elem[ tween.prop ]; + } + + // Passing an empty string as a 3rd parameter to .css will automatically + // attempt a parseFloat and fallback to a string if the parse fails. + // Simple values such as "10px" are parsed to Float; + // complex values such as "rotate(1rad)" are returned as-is. + result = jQuery.css( tween.elem, tween.prop, "" ); + + // Empty strings, null, undefined and "auto" are converted to 0. + return !result || result === "auto" ? 0 : result; + }, + set: function( tween ) { + + // Use step hook for back compat. + // Use cssHook if its there. + // Use .style if available and use plain properties where available. + if ( jQuery.fx.step[ tween.prop ] ) { + jQuery.fx.step[ tween.prop ]( tween ); + } else if ( tween.elem.nodeType === 1 && ( + jQuery.cssHooks[ tween.prop ] || + tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) { + jQuery.style( tween.elem, tween.prop, tween.now + tween.unit ); + } else { + tween.elem[ tween.prop ] = tween.now; + } + } + } +}; + +// Support: IE <=9 only +// Panic based approach to setting things on disconnected nodes +Tween.propHooks.scrollTop = Tween.propHooks.scrollLeft = { + set: function( tween ) { + if ( tween.elem.nodeType && tween.elem.parentNode ) { + tween.elem[ tween.prop ] = tween.now; + } + } +}; + +jQuery.easing = { + linear: function( p ) { + return p; + }, + swing: function( p ) { + return 0.5 - Math.cos( p * Math.PI ) / 2; + }, + _default: "swing" +}; + +jQuery.fx = Tween.prototype.init; + +// Back compat <1.8 extension point +jQuery.fx.step = {}; + + + + +var + fxNow, inProgress, + rfxtypes = /^(?:toggle|show|hide)$/, + rrun = /queueHooks$/; + +function schedule() { + if ( inProgress ) { + if ( document.hidden === false && window.requestAnimationFrame ) { + window.requestAnimationFrame( schedule ); + } else { + window.setTimeout( schedule, jQuery.fx.interval ); + } + + jQuery.fx.tick(); + } +} + +// Animations created synchronously will run synchronously +function createFxNow() { + window.setTimeout( function() { + fxNow = undefined; + } ); + return ( fxNow = Date.now() ); +} + +// Generate parameters to create a standard animation +function genFx( type, includeWidth ) { + var which, + i = 0, + attrs = { height: type }; + + // If we include width, step value is 1 to do all cssExpand values, + // otherwise step value is 2 to skip over Left and Right + includeWidth = includeWidth ? 1 : 0; + for ( ; i < 4; i += 2 - includeWidth ) { + which = cssExpand[ i ]; + attrs[ "margin" + which ] = attrs[ "padding" + which ] = type; + } + + if ( includeWidth ) { + attrs.opacity = attrs.width = type; + } + + return attrs; +} + +function createTween( value, prop, animation ) { + var tween, + collection = ( Animation.tweeners[ prop ] || [] ).concat( Animation.tweeners[ "*" ] ), + index = 0, + length = collection.length; + for ( ; index < length; index++ ) { + if ( ( tween = collection[ index ].call( animation, prop, value ) ) ) { + + // We're done with this property + return tween; + } + } +} + +function defaultPrefilter( elem, props, opts ) { + var prop, value, toggle, hooks, oldfire, propTween, restoreDisplay, display, + isBox = "width" in props || "height" in props, + anim = this, + orig = {}, + style = elem.style, + hidden = elem.nodeType && isHiddenWithinTree( elem ), + dataShow = dataPriv.get( elem, "fxshow" ); + + // Queue-skipping animations hijack the fx hooks + if ( !opts.queue ) { + hooks = jQuery._queueHooks( elem, "fx" ); + if ( hooks.unqueued == null ) { + hooks.unqueued = 0; + oldfire = hooks.empty.fire; + hooks.empty.fire = function() { + if ( !hooks.unqueued ) { + oldfire(); + } + }; + } + hooks.unqueued++; + + anim.always( function() { + + // Ensure the complete handler is called before this completes + anim.always( function() { + hooks.unqueued--; + if ( !jQuery.queue( elem, "fx" ).length ) { + hooks.empty.fire(); + } + } ); + } ); + } + + // Detect show/hide animations + for ( prop in props ) { + value = props[ prop ]; + if ( rfxtypes.test( value ) ) { + delete props[ prop ]; + toggle = toggle || value === "toggle"; + if ( value === ( hidden ? "hide" : "show" ) ) { + + // Pretend to be hidden if this is a "show" and + // there is still data from a stopped show/hide + if ( value === "show" && dataShow && dataShow[ prop ] !== undefined ) { + hidden = true; + + // Ignore all other no-op show/hide data + } else { + continue; + } + } + orig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop ); + } + } + + // Bail out if this is a no-op like .hide().hide() + propTween = !jQuery.isEmptyObject( props ); + if ( !propTween && jQuery.isEmptyObject( orig ) ) { + return; + } + + // Restrict "overflow" and "display" styles during box animations + if ( isBox && elem.nodeType === 1 ) { + + // Support: IE <=9 - 11, Edge 12 - 15 + // Record all 3 overflow attributes because IE does not infer the shorthand + // from identically-valued overflowX and overflowY and Edge just mirrors + // the overflowX value there. + opts.overflow = [ style.overflow, style.overflowX, style.overflowY ]; + + // Identify a display type, preferring old show/hide data over the CSS cascade + restoreDisplay = dataShow && dataShow.display; + if ( restoreDisplay == null ) { + restoreDisplay = dataPriv.get( elem, "display" ); + } + display = jQuery.css( elem, "display" ); + if ( display === "none" ) { + if ( restoreDisplay ) { + display = restoreDisplay; + } else { + + // Get nonempty value(s) by temporarily forcing visibility + showHide( [ elem ], true ); + restoreDisplay = elem.style.display || restoreDisplay; + display = jQuery.css( elem, "display" ); + showHide( [ elem ] ); + } + } + + // Animate inline elements as inline-block + if ( display === "inline" || display === "inline-block" && restoreDisplay != null ) { + if ( jQuery.css( elem, "float" ) === "none" ) { + + // Restore the original display value at the end of pure show/hide animations + if ( !propTween ) { + anim.done( function() { + style.display = restoreDisplay; + } ); + if ( restoreDisplay == null ) { + display = style.display; + restoreDisplay = display === "none" ? "" : display; + } + } + style.display = "inline-block"; + } + } + } + + if ( opts.overflow ) { + style.overflow = "hidden"; + anim.always( function() { + style.overflow = opts.overflow[ 0 ]; + style.overflowX = opts.overflow[ 1 ]; + style.overflowY = opts.overflow[ 2 ]; + } ); + } + + // Implement show/hide animations + propTween = false; + for ( prop in orig ) { + + // General show/hide setup for this element animation + if ( !propTween ) { + if ( dataShow ) { + if ( "hidden" in dataShow ) { + hidden = dataShow.hidden; + } + } else { + dataShow = dataPriv.access( elem, "fxshow", { display: restoreDisplay } ); + } + + // Store hidden/visible for toggle so `.stop().toggle()` "reverses" + if ( toggle ) { + dataShow.hidden = !hidden; + } + + // Show elements before animating them + if ( hidden ) { + showHide( [ elem ], true ); + } + + /* eslint-disable no-loop-func */ + + anim.done( function() { + + /* eslint-enable no-loop-func */ + + // The final step of a "hide" animation is actually hiding the element + if ( !hidden ) { + showHide( [ elem ] ); + } + dataPriv.remove( elem, "fxshow" ); + for ( prop in orig ) { + jQuery.style( elem, prop, orig[ prop ] ); + } + } ); + } + + // Per-property setup + propTween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim ); + if ( !( prop in dataShow ) ) { + dataShow[ prop ] = propTween.start; + if ( hidden ) { + propTween.end = propTween.start; + propTween.start = 0; + } + } + } +} + +function propFilter( props, specialEasing ) { + var index, name, easing, value, hooks; + + // camelCase, specialEasing and expand cssHook pass + for ( index in props ) { + name = camelCase( index ); + easing = specialEasing[ name ]; + value = props[ index ]; + if ( Array.isArray( value ) ) { + easing = value[ 1 ]; + value = props[ index ] = value[ 0 ]; + } + + if ( index !== name ) { + props[ name ] = value; + delete props[ index ]; + } + + hooks = jQuery.cssHooks[ name ]; + if ( hooks && "expand" in hooks ) { + value = hooks.expand( value ); + delete props[ name ]; + + // Not quite $.extend, this won't overwrite existing keys. + // Reusing 'index' because we have the correct "name" + for ( index in value ) { + if ( !( index in props ) ) { + props[ index ] = value[ index ]; + specialEasing[ index ] = easing; + } + } + } else { + specialEasing[ name ] = easing; + } + } +} + +function Animation( elem, properties, options ) { + var result, + stopped, + index = 0, + length = Animation.prefilters.length, + deferred = jQuery.Deferred().always( function() { + + // Don't match elem in the :animated selector + delete tick.elem; + } ), + tick = function() { + if ( stopped ) { + return false; + } + var currentTime = fxNow || createFxNow(), + remaining = Math.max( 0, animation.startTime + animation.duration - currentTime ), + + // Support: Android 2.3 only + // Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497) + temp = remaining / animation.duration || 0, + percent = 1 - temp, + index = 0, + length = animation.tweens.length; + + for ( ; index < length; index++ ) { + animation.tweens[ index ].run( percent ); + } + + deferred.notifyWith( elem, [ animation, percent, remaining ] ); + + // If there's more to do, yield + if ( percent < 1 && length ) { + return remaining; + } + + // If this was an empty animation, synthesize a final progress notification + if ( !length ) { + deferred.notifyWith( elem, [ animation, 1, 0 ] ); + } + + // Resolve the animation and report its conclusion + deferred.resolveWith( elem, [ animation ] ); + return false; + }, + animation = deferred.promise( { + elem: elem, + props: jQuery.extend( {}, properties ), + opts: jQuery.extend( true, { + specialEasing: {}, + easing: jQuery.easing._default + }, options ), + originalProperties: properties, + originalOptions: options, + startTime: fxNow || createFxNow(), + duration: options.duration, + tweens: [], + createTween: function( prop, end ) { + var tween = jQuery.Tween( elem, animation.opts, prop, end, + animation.opts.specialEasing[ prop ] || animation.opts.easing ); + animation.tweens.push( tween ); + return tween; + }, + stop: function( gotoEnd ) { + var index = 0, + + // If we are going to the end, we want to run all the tweens + // otherwise we skip this part + length = gotoEnd ? animation.tweens.length : 0; + if ( stopped ) { + return this; + } + stopped = true; + for ( ; index < length; index++ ) { + animation.tweens[ index ].run( 1 ); + } + + // Resolve when we played the last frame; otherwise, reject + if ( gotoEnd ) { + deferred.notifyWith( elem, [ animation, 1, 0 ] ); + deferred.resolveWith( elem, [ animation, gotoEnd ] ); + } else { + deferred.rejectWith( elem, [ animation, gotoEnd ] ); + } + return this; + } + } ), + props = animation.props; + + propFilter( props, animation.opts.specialEasing ); + + for ( ; index < length; index++ ) { + result = Animation.prefilters[ index ].call( animation, elem, props, animation.opts ); + if ( result ) { + if ( isFunction( result.stop ) ) { + jQuery._queueHooks( animation.elem, animation.opts.queue ).stop = + result.stop.bind( result ); + } + return result; + } + } + + jQuery.map( props, createTween, animation ); + + if ( isFunction( animation.opts.start ) ) { + animation.opts.start.call( elem, animation ); + } + + // Attach callbacks from options + animation + .progress( animation.opts.progress ) + .done( animation.opts.done, animation.opts.complete ) + .fail( animation.opts.fail ) + .always( animation.opts.always ); + + jQuery.fx.timer( + jQuery.extend( tick, { + elem: elem, + anim: animation, + queue: animation.opts.queue + } ) + ); + + return animation; +} + +jQuery.Animation = jQuery.extend( Animation, { + + tweeners: { + "*": [ function( prop, value ) { + var tween = this.createTween( prop, value ); + adjustCSS( tween.elem, prop, rcssNum.exec( value ), tween ); + return tween; + } ] + }, + + tweener: function( props, callback ) { + if ( isFunction( props ) ) { + callback = props; + props = [ "*" ]; + } else { + props = props.match( rnothtmlwhite ); + } + + var prop, + index = 0, + length = props.length; + + for ( ; index < length; index++ ) { + prop = props[ index ]; + Animation.tweeners[ prop ] = Animation.tweeners[ prop ] || []; + Animation.tweeners[ prop ].unshift( callback ); + } + }, + + prefilters: [ defaultPrefilter ], + + prefilter: function( callback, prepend ) { + if ( prepend ) { + Animation.prefilters.unshift( callback ); + } else { + Animation.prefilters.push( callback ); + } + } +} ); + +jQuery.speed = function( speed, easing, fn ) { + var opt = speed && typeof speed === "object" ? jQuery.extend( {}, speed ) : { + complete: fn || !fn && easing || + isFunction( speed ) && speed, + duration: speed, + easing: fn && easing || easing && !isFunction( easing ) && easing + }; + + // Go to the end state if fx are off + if ( jQuery.fx.off ) { + opt.duration = 0; + + } else { + if ( typeof opt.duration !== "number" ) { + if ( opt.duration in jQuery.fx.speeds ) { + opt.duration = jQuery.fx.speeds[ opt.duration ]; + + } else { + opt.duration = jQuery.fx.speeds._default; + } + } + } + + // Normalize opt.queue - true/undefined/null -> "fx" + if ( opt.queue == null || opt.queue === true ) { + opt.queue = "fx"; + } + + // Queueing + opt.old = opt.complete; + + opt.complete = function() { + if ( isFunction( opt.old ) ) { + opt.old.call( this ); + } + + if ( opt.queue ) { + jQuery.dequeue( this, opt.queue ); + } + }; + + return opt; +}; + +jQuery.fn.extend( { + fadeTo: function( speed, to, easing, callback ) { + + // Show any hidden elements after setting opacity to 0 + return this.filter( isHiddenWithinTree ).css( "opacity", 0 ).show() + + // Animate to the value specified + .end().animate( { opacity: to }, speed, easing, callback ); + }, + animate: function( prop, speed, easing, callback ) { + var empty = jQuery.isEmptyObject( prop ), + optall = jQuery.speed( speed, easing, callback ), + doAnimation = function() { + + // Operate on a copy of prop so per-property easing won't be lost + var anim = Animation( this, jQuery.extend( {}, prop ), optall ); + + // Empty animations, or finishing resolves immediately + if ( empty || dataPriv.get( this, "finish" ) ) { + anim.stop( true ); + } + }; + + doAnimation.finish = doAnimation; + + return empty || optall.queue === false ? + this.each( doAnimation ) : + this.queue( optall.queue, doAnimation ); + }, + stop: function( type, clearQueue, gotoEnd ) { + var stopQueue = function( hooks ) { + var stop = hooks.stop; + delete hooks.stop; + stop( gotoEnd ); + }; + + if ( typeof type !== "string" ) { + gotoEnd = clearQueue; + clearQueue = type; + type = undefined; + } + if ( clearQueue ) { + this.queue( type || "fx", [] ); + } + + return this.each( function() { + var dequeue = true, + index = type != null && type + "queueHooks", + timers = jQuery.timers, + data = dataPriv.get( this ); + + if ( index ) { + if ( data[ index ] && data[ index ].stop ) { + stopQueue( data[ index ] ); + } + } else { + for ( index in data ) { + if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) { + stopQueue( data[ index ] ); + } + } + } + + for ( index = timers.length; index--; ) { + if ( timers[ index ].elem === this && + ( type == null || timers[ index ].queue === type ) ) { + + timers[ index ].anim.stop( gotoEnd ); + dequeue = false; + timers.splice( index, 1 ); + } + } + + // Start the next in the queue if the last step wasn't forced. + // Timers currently will call their complete callbacks, which + // will dequeue but only if they were gotoEnd. + if ( dequeue || !gotoEnd ) { + jQuery.dequeue( this, type ); + } + } ); + }, + finish: function( type ) { + if ( type !== false ) { + type = type || "fx"; + } + return this.each( function() { + var index, + data = dataPriv.get( this ), + queue = data[ type + "queue" ], + hooks = data[ type + "queueHooks" ], + timers = jQuery.timers, + length = queue ? queue.length : 0; + + // Enable finishing flag on private data + data.finish = true; + + // Empty the queue first + jQuery.queue( this, type, [] ); + + if ( hooks && hooks.stop ) { + hooks.stop.call( this, true ); + } + + // Look for any active animations, and finish them + for ( index = timers.length; index--; ) { + if ( timers[ index ].elem === this && timers[ index ].queue === type ) { + timers[ index ].anim.stop( true ); + timers.splice( index, 1 ); + } + } + + // Look for any animations in the old queue and finish them + for ( index = 0; index < length; index++ ) { + if ( queue[ index ] && queue[ index ].finish ) { + queue[ index ].finish.call( this ); + } + } + + // Turn off finishing flag + delete data.finish; + } ); + } +} ); + +jQuery.each( [ "toggle", "show", "hide" ], function( _i, name ) { + var cssFn = jQuery.fn[ name ]; + jQuery.fn[ name ] = function( speed, easing, callback ) { + return speed == null || typeof speed === "boolean" ? + cssFn.apply( this, arguments ) : + this.animate( genFx( name, true ), speed, easing, callback ); + }; +} ); + +// Generate shortcuts for custom animations +jQuery.each( { + slideDown: genFx( "show" ), + slideUp: genFx( "hide" ), + slideToggle: genFx( "toggle" ), + fadeIn: { opacity: "show" }, + fadeOut: { opacity: "hide" }, + fadeToggle: { opacity: "toggle" } +}, function( name, props ) { + jQuery.fn[ name ] = function( speed, easing, callback ) { + return this.animate( props, speed, easing, callback ); + }; +} ); + +jQuery.timers = []; +jQuery.fx.tick = function() { + var timer, + i = 0, + timers = jQuery.timers; + + fxNow = Date.now(); + + for ( ; i < timers.length; i++ ) { + timer = timers[ i ]; + + // Run the timer and safely remove it when done (allowing for external removal) + if ( !timer() && timers[ i ] === timer ) { + timers.splice( i--, 1 ); + } + } + + if ( !timers.length ) { + jQuery.fx.stop(); + } + fxNow = undefined; +}; + +jQuery.fx.timer = function( timer ) { + jQuery.timers.push( timer ); + jQuery.fx.start(); +}; + +jQuery.fx.interval = 13; +jQuery.fx.start = function() { + if ( inProgress ) { + return; + } + + inProgress = true; + schedule(); +}; + +jQuery.fx.stop = function() { + inProgress = null; +}; + +jQuery.fx.speeds = { + slow: 600, + fast: 200, + + // Default speed + _default: 400 +}; + + +// Based off of the plugin by Clint Helfers, with permission. +// https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/ +jQuery.fn.delay = function( time, type ) { + time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time; + type = type || "fx"; + + return this.queue( type, function( next, hooks ) { + var timeout = window.setTimeout( next, time ); + hooks.stop = function() { + window.clearTimeout( timeout ); + }; + } ); +}; + + +( function() { + var input = document.createElement( "input" ), + select = document.createElement( "select" ), + opt = select.appendChild( document.createElement( "option" ) ); + + input.type = "checkbox"; + + // Support: Android <=4.3 only + // Default value for a checkbox should be "on" + support.checkOn = input.value !== ""; + + // Support: IE <=11 only + // Must access selectedIndex to make default options select + support.optSelected = opt.selected; + + // Support: IE <=11 only + // An input loses its value after becoming a radio + input = document.createElement( "input" ); + input.value = "t"; + input.type = "radio"; + support.radioValue = input.value === "t"; +} )(); + + +var boolHook, + attrHandle = jQuery.expr.attrHandle; + +jQuery.fn.extend( { + attr: function( name, value ) { + return access( this, jQuery.attr, name, value, arguments.length > 1 ); + }, + + removeAttr: function( name ) { + return this.each( function() { + jQuery.removeAttr( this, name ); + } ); + } +} ); + +jQuery.extend( { + attr: function( elem, name, value ) { + var ret, hooks, + nType = elem.nodeType; + + // Don't get/set attributes on text, comment and attribute nodes + if ( nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + // Fallback to prop when attributes are not supported + if ( typeof elem.getAttribute === "undefined" ) { + return jQuery.prop( elem, name, value ); + } + + // Attribute hooks are determined by the lowercase version + // Grab necessary hook if one is defined + if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { + hooks = jQuery.attrHooks[ name.toLowerCase() ] || + ( jQuery.expr.match.bool.test( name ) ? boolHook : undefined ); + } + + if ( value !== undefined ) { + if ( value === null ) { + jQuery.removeAttr( elem, name ); + return; + } + + if ( hooks && "set" in hooks && + ( ret = hooks.set( elem, value, name ) ) !== undefined ) { + return ret; + } + + elem.setAttribute( name, value + "" ); + return value; + } + + if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { + return ret; + } + + ret = jQuery.find.attr( elem, name ); + + // Non-existent attributes return null, we normalize to undefined + return ret == null ? undefined : ret; + }, + + attrHooks: { + type: { + set: function( elem, value ) { + if ( !support.radioValue && value === "radio" && + nodeName( elem, "input" ) ) { + var val = elem.value; + elem.setAttribute( "type", value ); + if ( val ) { + elem.value = val; + } + return value; + } + } + } + }, + + removeAttr: function( elem, value ) { + var name, + i = 0, + + // Attribute names can contain non-HTML whitespace characters + // https://html.spec.whatwg.org/multipage/syntax.html#attributes-2 + attrNames = value && value.match( rnothtmlwhite ); + + if ( attrNames && elem.nodeType === 1 ) { + while ( ( name = attrNames[ i++ ] ) ) { + elem.removeAttribute( name ); + } + } + } +} ); + +// Hooks for boolean attributes +boolHook = { + set: function( elem, value, name ) { + if ( value === false ) { + + // Remove boolean attributes when set to false + jQuery.removeAttr( elem, name ); + } else { + elem.setAttribute( name, name ); + } + return name; + } +}; + +jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( _i, name ) { + var getter = attrHandle[ name ] || jQuery.find.attr; + + attrHandle[ name ] = function( elem, name, isXML ) { + var ret, handle, + lowercaseName = name.toLowerCase(); + + if ( !isXML ) { + + // Avoid an infinite loop by temporarily removing this function from the getter + handle = attrHandle[ lowercaseName ]; + attrHandle[ lowercaseName ] = ret; + ret = getter( elem, name, isXML ) != null ? + lowercaseName : + null; + attrHandle[ lowercaseName ] = handle; + } + return ret; + }; +} ); + + + + +var rfocusable = /^(?:input|select|textarea|button)$/i, + rclickable = /^(?:a|area)$/i; + +jQuery.fn.extend( { + prop: function( name, value ) { + return access( this, jQuery.prop, name, value, arguments.length > 1 ); + }, + + removeProp: function( name ) { + return this.each( function() { + delete this[ jQuery.propFix[ name ] || name ]; + } ); + } +} ); + +jQuery.extend( { + prop: function( elem, name, value ) { + var ret, hooks, + nType = elem.nodeType; + + // Don't get/set properties on text, comment and attribute nodes + if ( nType === 3 || nType === 8 || nType === 2 ) { + return; + } + + if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) { + + // Fix name and attach hooks + name = jQuery.propFix[ name ] || name; + hooks = jQuery.propHooks[ name ]; + } + + if ( value !== undefined ) { + if ( hooks && "set" in hooks && + ( ret = hooks.set( elem, value, name ) ) !== undefined ) { + return ret; + } + + return ( elem[ name ] = value ); + } + + if ( hooks && "get" in hooks && ( ret = hooks.get( elem, name ) ) !== null ) { + return ret; + } + + return elem[ name ]; + }, + + propHooks: { + tabIndex: { + get: function( elem ) { + + // Support: IE <=9 - 11 only + // elem.tabIndex doesn't always return the + // correct value when it hasn't been explicitly set + // https://web.archive.org/web/20141116233347/http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/ + // Use proper attribute retrieval(#12072) + var tabindex = jQuery.find.attr( elem, "tabindex" ); + + if ( tabindex ) { + return parseInt( tabindex, 10 ); + } + + if ( + rfocusable.test( elem.nodeName ) || + rclickable.test( elem.nodeName ) && + elem.href + ) { + return 0; + } + + return -1; + } + } + }, + + propFix: { + "for": "htmlFor", + "class": "className" + } +} ); + +// Support: IE <=11 only +// Accessing the selectedIndex property +// forces the browser to respect setting selected +// on the option +// The getter ensures a default option is selected +// when in an optgroup +// eslint rule "no-unused-expressions" is disabled for this code +// since it considers such accessions noop +if ( !support.optSelected ) { + jQuery.propHooks.selected = { + get: function( elem ) { + + /* eslint no-unused-expressions: "off" */ + + var parent = elem.parentNode; + if ( parent && parent.parentNode ) { + parent.parentNode.selectedIndex; + } + return null; + }, + set: function( elem ) { + + /* eslint no-unused-expressions: "off" */ + + var parent = elem.parentNode; + if ( parent ) { + parent.selectedIndex; + + if ( parent.parentNode ) { + parent.parentNode.selectedIndex; + } + } + } + }; +} + +jQuery.each( [ + "tabIndex", + "readOnly", + "maxLength", + "cellSpacing", + "cellPadding", + "rowSpan", + "colSpan", + "useMap", + "frameBorder", + "contentEditable" +], function() { + jQuery.propFix[ this.toLowerCase() ] = this; +} ); + + + + + // Strip and collapse whitespace according to HTML spec + // https://infra.spec.whatwg.org/#strip-and-collapse-ascii-whitespace + function stripAndCollapse( value ) { + var tokens = value.match( rnothtmlwhite ) || []; + return tokens.join( " " ); + } + + +function getClass( elem ) { + return elem.getAttribute && elem.getAttribute( "class" ) || ""; +} + +function classesToArray( value ) { + if ( Array.isArray( value ) ) { + return value; + } + if ( typeof value === "string" ) { + return value.match( rnothtmlwhite ) || []; + } + return []; +} + +jQuery.fn.extend( { + addClass: function( value ) { + var classes, elem, cur, curValue, clazz, j, finalValue, + i = 0; + + if ( isFunction( value ) ) { + return this.each( function( j ) { + jQuery( this ).addClass( value.call( this, j, getClass( this ) ) ); + } ); + } + + classes = classesToArray( value ); + + if ( classes.length ) { + while ( ( elem = this[ i++ ] ) ) { + curValue = getClass( elem ); + cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); + + if ( cur ) { + j = 0; + while ( ( clazz = classes[ j++ ] ) ) { + if ( cur.indexOf( " " + clazz + " " ) < 0 ) { + cur += clazz + " "; + } + } + + // Only assign if different to avoid unneeded rendering. + finalValue = stripAndCollapse( cur ); + if ( curValue !== finalValue ) { + elem.setAttribute( "class", finalValue ); + } + } + } + } + + return this; + }, + + removeClass: function( value ) { + var classes, elem, cur, curValue, clazz, j, finalValue, + i = 0; + + if ( isFunction( value ) ) { + return this.each( function( j ) { + jQuery( this ).removeClass( value.call( this, j, getClass( this ) ) ); + } ); + } + + if ( !arguments.length ) { + return this.attr( "class", "" ); + } + + classes = classesToArray( value ); + + if ( classes.length ) { + while ( ( elem = this[ i++ ] ) ) { + curValue = getClass( elem ); + + // This expression is here for better compressibility (see addClass) + cur = elem.nodeType === 1 && ( " " + stripAndCollapse( curValue ) + " " ); + + if ( cur ) { + j = 0; + while ( ( clazz = classes[ j++ ] ) ) { + + // Remove *all* instances + while ( cur.indexOf( " " + clazz + " " ) > -1 ) { + cur = cur.replace( " " + clazz + " ", " " ); + } + } + + // Only assign if different to avoid unneeded rendering. + finalValue = stripAndCollapse( cur ); + if ( curValue !== finalValue ) { + elem.setAttribute( "class", finalValue ); + } + } + } + } + + return this; + }, + + toggleClass: function( value, stateVal ) { + var type = typeof value, + isValidValue = type === "string" || Array.isArray( value ); + + if ( typeof stateVal === "boolean" && isValidValue ) { + return stateVal ? this.addClass( value ) : this.removeClass( value ); + } + + if ( isFunction( value ) ) { + return this.each( function( i ) { + jQuery( this ).toggleClass( + value.call( this, i, getClass( this ), stateVal ), + stateVal + ); + } ); + } + + return this.each( function() { + var className, i, self, classNames; + + if ( isValidValue ) { + + // Toggle individual class names + i = 0; + self = jQuery( this ); + classNames = classesToArray( value ); + + while ( ( className = classNames[ i++ ] ) ) { + + // Check each className given, space separated list + if ( self.hasClass( className ) ) { + self.removeClass( className ); + } else { + self.addClass( className ); + } + } + + // Toggle whole class name + } else if ( value === undefined || type === "boolean" ) { + className = getClass( this ); + if ( className ) { + + // Store className if set + dataPriv.set( this, "__className__", className ); + } + + // If the element has a class name or if we're passed `false`, + // then remove the whole classname (if there was one, the above saved it). + // Otherwise bring back whatever was previously saved (if anything), + // falling back to the empty string if nothing was stored. + if ( this.setAttribute ) { + this.setAttribute( "class", + className || value === false ? + "" : + dataPriv.get( this, "__className__" ) || "" + ); + } + } + } ); + }, + + hasClass: function( selector ) { + var className, elem, + i = 0; + + className = " " + selector + " "; + while ( ( elem = this[ i++ ] ) ) { + if ( elem.nodeType === 1 && + ( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) { + return true; + } + } + + return false; + } +} ); + + + + +var rreturn = /\r/g; + +jQuery.fn.extend( { + val: function( value ) { + var hooks, ret, valueIsFunction, + elem = this[ 0 ]; + + if ( !arguments.length ) { + if ( elem ) { + hooks = jQuery.valHooks[ elem.type ] || + jQuery.valHooks[ elem.nodeName.toLowerCase() ]; + + if ( hooks && + "get" in hooks && + ( ret = hooks.get( elem, "value" ) ) !== undefined + ) { + return ret; + } + + ret = elem.value; + + // Handle most common string cases + if ( typeof ret === "string" ) { + return ret.replace( rreturn, "" ); + } + + // Handle cases where value is null/undef or number + return ret == null ? "" : ret; + } + + return; + } + + valueIsFunction = isFunction( value ); + + return this.each( function( i ) { + var val; + + if ( this.nodeType !== 1 ) { + return; + } + + if ( valueIsFunction ) { + val = value.call( this, i, jQuery( this ).val() ); + } else { + val = value; + } + + // Treat null/undefined as ""; convert numbers to string + if ( val == null ) { + val = ""; + + } else if ( typeof val === "number" ) { + val += ""; + + } else if ( Array.isArray( val ) ) { + val = jQuery.map( val, function( value ) { + return value == null ? "" : value + ""; + } ); + } + + hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ]; + + // If set returns undefined, fall back to normal setting + if ( !hooks || !( "set" in hooks ) || hooks.set( this, val, "value" ) === undefined ) { + this.value = val; + } + } ); + } +} ); + +jQuery.extend( { + valHooks: { + option: { + get: function( elem ) { + + var val = jQuery.find.attr( elem, "value" ); + return val != null ? + val : + + // Support: IE <=10 - 11 only + // option.text throws exceptions (#14686, #14858) + // Strip and collapse whitespace + // https://html.spec.whatwg.org/#strip-and-collapse-whitespace + stripAndCollapse( jQuery.text( elem ) ); + } + }, + select: { + get: function( elem ) { + var value, option, i, + options = elem.options, + index = elem.selectedIndex, + one = elem.type === "select-one", + values = one ? null : [], + max = one ? index + 1 : options.length; + + if ( index < 0 ) { + i = max; + + } else { + i = one ? index : 0; + } + + // Loop through all the selected options + for ( ; i < max; i++ ) { + option = options[ i ]; + + // Support: IE <=9 only + // IE8-9 doesn't update selected after form reset (#2551) + if ( ( option.selected || i === index ) && + + // Don't return options that are disabled or in a disabled optgroup + !option.disabled && + ( !option.parentNode.disabled || + !nodeName( option.parentNode, "optgroup" ) ) ) { + + // Get the specific value for the option + value = jQuery( option ).val(); + + // We don't need an array for one selects + if ( one ) { + return value; + } + + // Multi-Selects return an array + values.push( value ); + } + } + + return values; + }, + + set: function( elem, value ) { + var optionSet, option, + options = elem.options, + values = jQuery.makeArray( value ), + i = options.length; + + while ( i-- ) { + option = options[ i ]; + + /* eslint-disable no-cond-assign */ + + if ( option.selected = + jQuery.inArray( jQuery.valHooks.option.get( option ), values ) > -1 + ) { + optionSet = true; + } + + /* eslint-enable no-cond-assign */ + } + + // Force browsers to behave consistently when non-matching value is set + if ( !optionSet ) { + elem.selectedIndex = -1; + } + return values; + } + } + } +} ); + +// Radios and checkboxes getter/setter +jQuery.each( [ "radio", "checkbox" ], function() { + jQuery.valHooks[ this ] = { + set: function( elem, value ) { + if ( Array.isArray( value ) ) { + return ( elem.checked = jQuery.inArray( jQuery( elem ).val(), value ) > -1 ); + } + } + }; + if ( !support.checkOn ) { + jQuery.valHooks[ this ].get = function( elem ) { + return elem.getAttribute( "value" ) === null ? "on" : elem.value; + }; + } +} ); + + + + +// Return jQuery for attributes-only inclusion + + +support.focusin = "onfocusin" in window; + + +var rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, + stopPropagationCallback = function( e ) { + e.stopPropagation(); + }; + +jQuery.extend( jQuery.event, { + + trigger: function( event, data, elem, onlyHandlers ) { + + var i, cur, tmp, bubbleType, ontype, handle, special, lastElement, + eventPath = [ elem || document ], + type = hasOwn.call( event, "type" ) ? event.type : event, + namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split( "." ) : []; + + cur = lastElement = tmp = elem = elem || document; + + // Don't do events on text and comment nodes + if ( elem.nodeType === 3 || elem.nodeType === 8 ) { + return; + } + + // focus/blur morphs to focusin/out; ensure we're not firing them right now + if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { + return; + } + + if ( type.indexOf( "." ) > -1 ) { + + // Namespaced trigger; create a regexp to match event type in handle() + namespaces = type.split( "." ); + type = namespaces.shift(); + namespaces.sort(); + } + ontype = type.indexOf( ":" ) < 0 && "on" + type; + + // Caller can pass in a jQuery.Event object, Object, or just an event type string + event = event[ jQuery.expando ] ? + event : + new jQuery.Event( type, typeof event === "object" && event ); + + // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) + event.isTrigger = onlyHandlers ? 2 : 3; + event.namespace = namespaces.join( "." ); + event.rnamespace = event.namespace ? + new RegExp( "(^|\\.)" + namespaces.join( "\\.(?:.*\\.|)" ) + "(\\.|$)" ) : + null; + + // Clean up the event in case it is being reused + event.result = undefined; + if ( !event.target ) { + event.target = elem; + } + + // Clone any incoming data and prepend the event, creating the handler arg list + data = data == null ? + [ event ] : + jQuery.makeArray( data, [ event ] ); + + // Allow special events to draw outside the lines + special = jQuery.event.special[ type ] || {}; + if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { + return; + } + + // Determine event propagation path in advance, per W3C events spec (#9951) + // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) + if ( !onlyHandlers && !special.noBubble && !isWindow( elem ) ) { + + bubbleType = special.delegateType || type; + if ( !rfocusMorph.test( bubbleType + type ) ) { + cur = cur.parentNode; + } + for ( ; cur; cur = cur.parentNode ) { + eventPath.push( cur ); + tmp = cur; + } + + // Only add window if we got to document (e.g., not plain obj or detached DOM) + if ( tmp === ( elem.ownerDocument || document ) ) { + eventPath.push( tmp.defaultView || tmp.parentWindow || window ); + } + } + + // Fire handlers on the event path + i = 0; + while ( ( cur = eventPath[ i++ ] ) && !event.isPropagationStopped() ) { + lastElement = cur; + event.type = i > 1 ? + bubbleType : + special.bindType || type; + + // jQuery handler + handle = ( dataPriv.get( cur, "events" ) || Object.create( null ) )[ event.type ] && + dataPriv.get( cur, "handle" ); + if ( handle ) { + handle.apply( cur, data ); + } + + // Native handler + handle = ontype && cur[ ontype ]; + if ( handle && handle.apply && acceptData( cur ) ) { + event.result = handle.apply( cur, data ); + if ( event.result === false ) { + event.preventDefault(); + } + } + } + event.type = type; + + // If nobody prevented the default action, do it now + if ( !onlyHandlers && !event.isDefaultPrevented() ) { + + if ( ( !special._default || + special._default.apply( eventPath.pop(), data ) === false ) && + acceptData( elem ) ) { + + // Call a native DOM method on the target with the same name as the event. + // Don't do default actions on window, that's where global variables be (#6170) + if ( ontype && isFunction( elem[ type ] ) && !isWindow( elem ) ) { + + // Don't re-trigger an onFOO event when we call its FOO() method + tmp = elem[ ontype ]; + + if ( tmp ) { + elem[ ontype ] = null; + } + + // Prevent re-triggering of the same event, since we already bubbled it above + jQuery.event.triggered = type; + + if ( event.isPropagationStopped() ) { + lastElement.addEventListener( type, stopPropagationCallback ); + } + + elem[ type ](); + + if ( event.isPropagationStopped() ) { + lastElement.removeEventListener( type, stopPropagationCallback ); + } + + jQuery.event.triggered = undefined; + + if ( tmp ) { + elem[ ontype ] = tmp; + } + } + } + } + + return event.result; + }, + + // Piggyback on a donor event to simulate a different one + // Used only for `focus(in | out)` events + simulate: function( type, elem, event ) { + var e = jQuery.extend( + new jQuery.Event(), + event, + { + type: type, + isSimulated: true + } + ); + + jQuery.event.trigger( e, null, elem ); + } + +} ); + +jQuery.fn.extend( { + + trigger: function( type, data ) { + return this.each( function() { + jQuery.event.trigger( type, data, this ); + } ); + }, + triggerHandler: function( type, data ) { + var elem = this[ 0 ]; + if ( elem ) { + return jQuery.event.trigger( type, data, elem, true ); + } + } +} ); + + +// Support: Firefox <=44 +// Firefox doesn't have focus(in | out) events +// Related ticket - https://bugzilla.mozilla.org/show_bug.cgi?id=687787 +// +// Support: Chrome <=48 - 49, Safari <=9.0 - 9.1 +// focus(in | out) events fire after focus & blur events, +// which is spec violation - http://www.w3.org/TR/DOM-Level-3-Events/#events-focusevent-event-order +// Related ticket - https://bugs.chromium.org/p/chromium/issues/detail?id=449857 +if ( !support.focusin ) { + jQuery.each( { focus: "focusin", blur: "focusout" }, function( orig, fix ) { + + // Attach a single capturing handler on the document while someone wants focusin/focusout + var handler = function( event ) { + jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ) ); + }; + + jQuery.event.special[ fix ] = { + setup: function() { + + // Handle: regular nodes (via `this.ownerDocument`), window + // (via `this.document`) & document (via `this`). + var doc = this.ownerDocument || this.document || this, + attaches = dataPriv.access( doc, fix ); + + if ( !attaches ) { + doc.addEventListener( orig, handler, true ); + } + dataPriv.access( doc, fix, ( attaches || 0 ) + 1 ); + }, + teardown: function() { + var doc = this.ownerDocument || this.document || this, + attaches = dataPriv.access( doc, fix ) - 1; + + if ( !attaches ) { + doc.removeEventListener( orig, handler, true ); + dataPriv.remove( doc, fix ); + + } else { + dataPriv.access( doc, fix, attaches ); + } + } + }; + } ); +} +var location = window.location; + +var nonce = { guid: Date.now() }; + +var rquery = ( /\?/ ); + + + +// Cross-browser xml parsing +jQuery.parseXML = function( data ) { + var xml, parserErrorElem; + if ( !data || typeof data !== "string" ) { + return null; + } + + // Support: IE 9 - 11 only + // IE throws on parseFromString with invalid input. + try { + xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" ); + } catch ( e ) {} + + parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ]; + if ( !xml || parserErrorElem ) { + jQuery.error( "Invalid XML: " + ( + parserErrorElem ? + jQuery.map( parserErrorElem.childNodes, function( el ) { + return el.textContent; + } ).join( "\n" ) : + data + ) ); + } + return xml; +}; + + +var + rbracket = /\[\]$/, + rCRLF = /\r?\n/g, + rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i, + rsubmittable = /^(?:input|select|textarea|keygen)/i; + +function buildParams( prefix, obj, traditional, add ) { + var name; + + if ( Array.isArray( obj ) ) { + + // Serialize array item. + jQuery.each( obj, function( i, v ) { + if ( traditional || rbracket.test( prefix ) ) { + + // Treat each array item as a scalar. + add( prefix, v ); + + } else { + + // Item is non-scalar (array or object), encode its numeric index. + buildParams( + prefix + "[" + ( typeof v === "object" && v != null ? i : "" ) + "]", + v, + traditional, + add + ); + } + } ); + + } else if ( !traditional && toType( obj ) === "object" ) { + + // Serialize object item. + for ( name in obj ) { + buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add ); + } + + } else { + + // Serialize scalar item. + add( prefix, obj ); + } +} + +// Serialize an array of form elements or a set of +// key/values into a query string +jQuery.param = function( a, traditional ) { + var prefix, + s = [], + add = function( key, valueOrFunction ) { + + // If value is a function, invoke it and use its return value + var value = isFunction( valueOrFunction ) ? + valueOrFunction() : + valueOrFunction; + + s[ s.length ] = encodeURIComponent( key ) + "=" + + encodeURIComponent( value == null ? "" : value ); + }; + + if ( a == null ) { + return ""; + } + + // If an array was passed in, assume that it is an array of form elements. + if ( Array.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) { + + // Serialize the form elements + jQuery.each( a, function() { + add( this.name, this.value ); + } ); + + } else { + + // If traditional, encode the "old" way (the way 1.3.2 or older + // did it), otherwise encode params recursively. + for ( prefix in a ) { + buildParams( prefix, a[ prefix ], traditional, add ); + } + } + + // Return the resulting serialization + return s.join( "&" ); +}; + +jQuery.fn.extend( { + serialize: function() { + return jQuery.param( this.serializeArray() ); + }, + serializeArray: function() { + return this.map( function() { + + // Can add propHook for "elements" to filter or add form elements + var elements = jQuery.prop( this, "elements" ); + return elements ? jQuery.makeArray( elements ) : this; + } ).filter( function() { + var type = this.type; + + // Use .is( ":disabled" ) so that fieldset[disabled] works + return this.name && !jQuery( this ).is( ":disabled" ) && + rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) && + ( this.checked || !rcheckableType.test( type ) ); + } ).map( function( _i, elem ) { + var val = jQuery( this ).val(); + + if ( val == null ) { + return null; + } + + if ( Array.isArray( val ) ) { + return jQuery.map( val, function( val ) { + return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + } ); + } + + return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) }; + } ).get(); + } +} ); + + +var + r20 = /%20/g, + rhash = /#.*$/, + rantiCache = /([?&])_=[^&]*/, + rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg, + + // #7653, #8125, #8152: local protocol detection + rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/, + rnoContent = /^(?:GET|HEAD)$/, + rprotocol = /^\/\//, + + /* Prefilters + * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example) + * 2) These are called: + * - BEFORE asking for a transport + * - AFTER param serialization (s.data is a string if s.processData is true) + * 3) key is the dataType + * 4) the catchall symbol "*" can be used + * 5) execution will start with transport dataType and THEN continue down to "*" if needed + */ + prefilters = {}, + + /* Transports bindings + * 1) key is the dataType + * 2) the catchall symbol "*" can be used + * 3) selection will start with transport dataType and THEN go to "*" if needed + */ + transports = {}, + + // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression + allTypes = "*/".concat( "*" ), + + // Anchor tag for parsing the document origin + originAnchor = document.createElement( "a" ); + +originAnchor.href = location.href; + +// Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport +function addToPrefiltersOrTransports( structure ) { + + // dataTypeExpression is optional and defaults to "*" + return function( dataTypeExpression, func ) { + + if ( typeof dataTypeExpression !== "string" ) { + func = dataTypeExpression; + dataTypeExpression = "*"; + } + + var dataType, + i = 0, + dataTypes = dataTypeExpression.toLowerCase().match( rnothtmlwhite ) || []; + + if ( isFunction( func ) ) { + + // For each dataType in the dataTypeExpression + while ( ( dataType = dataTypes[ i++ ] ) ) { + + // Prepend if requested + if ( dataType[ 0 ] === "+" ) { + dataType = dataType.slice( 1 ) || "*"; + ( structure[ dataType ] = structure[ dataType ] || [] ).unshift( func ); + + // Otherwise append + } else { + ( structure[ dataType ] = structure[ dataType ] || [] ).push( func ); + } + } + } + }; +} + +// Base inspection function for prefilters and transports +function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) { + + var inspected = {}, + seekingTransport = ( structure === transports ); + + function inspect( dataType ) { + var selected; + inspected[ dataType ] = true; + jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) { + var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR ); + if ( typeof dataTypeOrTransport === "string" && + !seekingTransport && !inspected[ dataTypeOrTransport ] ) { + + options.dataTypes.unshift( dataTypeOrTransport ); + inspect( dataTypeOrTransport ); + return false; + } else if ( seekingTransport ) { + return !( selected = dataTypeOrTransport ); + } + } ); + return selected; + } + + return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" ); +} + +// A special extend for ajax options +// that takes "flat" options (not to be deep extended) +// Fixes #9887 +function ajaxExtend( target, src ) { + var key, deep, + flatOptions = jQuery.ajaxSettings.flatOptions || {}; + + for ( key in src ) { + if ( src[ key ] !== undefined ) { + ( flatOptions[ key ] ? target : ( deep || ( deep = {} ) ) )[ key ] = src[ key ]; + } + } + if ( deep ) { + jQuery.extend( true, target, deep ); + } + + return target; +} + +/* Handles responses to an ajax request: + * - finds the right dataType (mediates between content-type and expected dataType) + * - returns the corresponding response + */ +function ajaxHandleResponses( s, jqXHR, responses ) { + + var ct, type, finalDataType, firstDataType, + contents = s.contents, + dataTypes = s.dataTypes; + + // Remove auto dataType and get content-type in the process + while ( dataTypes[ 0 ] === "*" ) { + dataTypes.shift(); + if ( ct === undefined ) { + ct = s.mimeType || jqXHR.getResponseHeader( "Content-Type" ); + } + } + + // Check if we're dealing with a known content-type + if ( ct ) { + for ( type in contents ) { + if ( contents[ type ] && contents[ type ].test( ct ) ) { + dataTypes.unshift( type ); + break; + } + } + } + + // Check to see if we have a response for the expected dataType + if ( dataTypes[ 0 ] in responses ) { + finalDataType = dataTypes[ 0 ]; + } else { + + // Try convertible dataTypes + for ( type in responses ) { + if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[ 0 ] ] ) { + finalDataType = type; + break; + } + if ( !firstDataType ) { + firstDataType = type; + } + } + + // Or just use first one + finalDataType = finalDataType || firstDataType; + } + + // If we found a dataType + // We add the dataType to the list if needed + // and return the corresponding response + if ( finalDataType ) { + if ( finalDataType !== dataTypes[ 0 ] ) { + dataTypes.unshift( finalDataType ); + } + return responses[ finalDataType ]; + } +} + +/* Chain conversions given the request and the original response + * Also sets the responseXXX fields on the jqXHR instance + */ +function ajaxConvert( s, response, jqXHR, isSuccess ) { + var conv2, current, conv, tmp, prev, + converters = {}, + + // Work with a copy of dataTypes in case we need to modify it for conversion + dataTypes = s.dataTypes.slice(); + + // Create converters map with lowercased keys + if ( dataTypes[ 1 ] ) { + for ( conv in s.converters ) { + converters[ conv.toLowerCase() ] = s.converters[ conv ]; + } + } + + current = dataTypes.shift(); + + // Convert to each sequential dataType + while ( current ) { + + if ( s.responseFields[ current ] ) { + jqXHR[ s.responseFields[ current ] ] = response; + } + + // Apply the dataFilter if provided + if ( !prev && isSuccess && s.dataFilter ) { + response = s.dataFilter( response, s.dataType ); + } + + prev = current; + current = dataTypes.shift(); + + if ( current ) { + + // There's only work to do if current dataType is non-auto + if ( current === "*" ) { + + current = prev; + + // Convert response if prev dataType is non-auto and differs from current + } else if ( prev !== "*" && prev !== current ) { + + // Seek a direct converter + conv = converters[ prev + " " + current ] || converters[ "* " + current ]; + + // If none found, seek a pair + if ( !conv ) { + for ( conv2 in converters ) { + + // If conv2 outputs current + tmp = conv2.split( " " ); + if ( tmp[ 1 ] === current ) { + + // If prev can be converted to accepted input + conv = converters[ prev + " " + tmp[ 0 ] ] || + converters[ "* " + tmp[ 0 ] ]; + if ( conv ) { + + // Condense equivalence converters + if ( conv === true ) { + conv = converters[ conv2 ]; + + // Otherwise, insert the intermediate dataType + } else if ( converters[ conv2 ] !== true ) { + current = tmp[ 0 ]; + dataTypes.unshift( tmp[ 1 ] ); + } + break; + } + } + } + } + + // Apply converter (if not an equivalence) + if ( conv !== true ) { + + // Unless errors are allowed to bubble, catch and return them + if ( conv && s.throws ) { + response = conv( response ); + } else { + try { + response = conv( response ); + } catch ( e ) { + return { + state: "parsererror", + error: conv ? e : "No conversion from " + prev + " to " + current + }; + } + } + } + } + } + } + + return { state: "success", data: response }; +} + +jQuery.extend( { + + // Counter for holding the number of active queries + active: 0, + + // Last-Modified header cache for next request + lastModified: {}, + etag: {}, + + ajaxSettings: { + url: location.href, + type: "GET", + isLocal: rlocalProtocol.test( location.protocol ), + global: true, + processData: true, + async: true, + contentType: "application/x-www-form-urlencoded; charset=UTF-8", + + /* + timeout: 0, + data: null, + dataType: null, + username: null, + password: null, + cache: null, + throws: false, + traditional: false, + headers: {}, + */ + + accepts: { + "*": allTypes, + text: "text/plain", + html: "text/html", + xml: "application/xml, text/xml", + json: "application/json, text/javascript" + }, + + contents: { + xml: /\bxml\b/, + html: /\bhtml/, + json: /\bjson\b/ + }, + + responseFields: { + xml: "responseXML", + text: "responseText", + json: "responseJSON" + }, + + // Data converters + // Keys separate source (or catchall "*") and destination types with a single space + converters: { + + // Convert anything to text + "* text": String, + + // Text to html (true = no transformation) + "text html": true, + + // Evaluate text as a json expression + "text json": JSON.parse, + + // Parse text as xml + "text xml": jQuery.parseXML + }, + + // For options that shouldn't be deep extended: + // you can add your own custom options here if + // and when you create one that shouldn't be + // deep extended (see ajaxExtend) + flatOptions: { + url: true, + context: true + } + }, + + // Creates a full fledged settings object into target + // with both ajaxSettings and settings fields. + // If target is omitted, writes into ajaxSettings. + ajaxSetup: function( target, settings ) { + return settings ? + + // Building a settings object + ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) : + + // Extending ajaxSettings + ajaxExtend( jQuery.ajaxSettings, target ); + }, + + ajaxPrefilter: addToPrefiltersOrTransports( prefilters ), + ajaxTransport: addToPrefiltersOrTransports( transports ), + + // Main method + ajax: function( url, options ) { + + // If url is an object, simulate pre-1.5 signature + if ( typeof url === "object" ) { + options = url; + url = undefined; + } + + // Force options to be an object + options = options || {}; + + var transport, + + // URL without anti-cache param + cacheURL, + + // Response headers + responseHeadersString, + responseHeaders, + + // timeout handle + timeoutTimer, + + // Url cleanup var + urlAnchor, + + // Request state (becomes false upon send and true upon completion) + completed, + + // To know if global events are to be dispatched + fireGlobals, + + // Loop variable + i, + + // uncached part of the url + uncached, + + // Create the final options object + s = jQuery.ajaxSetup( {}, options ), + + // Callbacks context + callbackContext = s.context || s, + + // Context for global events is callbackContext if it is a DOM node or jQuery collection + globalEventContext = s.context && + ( callbackContext.nodeType || callbackContext.jquery ) ? + jQuery( callbackContext ) : + jQuery.event, + + // Deferreds + deferred = jQuery.Deferred(), + completeDeferred = jQuery.Callbacks( "once memory" ), + + // Status-dependent callbacks + statusCode = s.statusCode || {}, + + // Headers (they are sent all at once) + requestHeaders = {}, + requestHeadersNames = {}, + + // Default abort message + strAbort = "canceled", + + // Fake xhr + jqXHR = { + readyState: 0, + + // Builds headers hashtable if needed + getResponseHeader: function( key ) { + var match; + if ( completed ) { + if ( !responseHeaders ) { + responseHeaders = {}; + while ( ( match = rheaders.exec( responseHeadersString ) ) ) { + responseHeaders[ match[ 1 ].toLowerCase() + " " ] = + ( responseHeaders[ match[ 1 ].toLowerCase() + " " ] || [] ) + .concat( match[ 2 ] ); + } + } + match = responseHeaders[ key.toLowerCase() + " " ]; + } + return match == null ? null : match.join( ", " ); + }, + + // Raw string + getAllResponseHeaders: function() { + return completed ? responseHeadersString : null; + }, + + // Caches the header + setRequestHeader: function( name, value ) { + if ( completed == null ) { + name = requestHeadersNames[ name.toLowerCase() ] = + requestHeadersNames[ name.toLowerCase() ] || name; + requestHeaders[ name ] = value; + } + return this; + }, + + // Overrides response content-type header + overrideMimeType: function( type ) { + if ( completed == null ) { + s.mimeType = type; + } + return this; + }, + + // Status-dependent callbacks + statusCode: function( map ) { + var code; + if ( map ) { + if ( completed ) { + + // Execute the appropriate callbacks + jqXHR.always( map[ jqXHR.status ] ); + } else { + + // Lazy-add the new callbacks in a way that preserves old ones + for ( code in map ) { + statusCode[ code ] = [ statusCode[ code ], map[ code ] ]; + } + } + } + return this; + }, + + // Cancel the request + abort: function( statusText ) { + var finalText = statusText || strAbort; + if ( transport ) { + transport.abort( finalText ); + } + done( 0, finalText ); + return this; + } + }; + + // Attach deferreds + deferred.promise( jqXHR ); + + // Add protocol if not provided (prefilters might expect it) + // Handle falsy url in the settings object (#10093: consistency with old signature) + // We also use the url parameter if available + s.url = ( ( url || s.url || location.href ) + "" ) + .replace( rprotocol, location.protocol + "//" ); + + // Alias method option to type as per ticket #12004 + s.type = options.method || options.type || s.method || s.type; + + // Extract dataTypes list + s.dataTypes = ( s.dataType || "*" ).toLowerCase().match( rnothtmlwhite ) || [ "" ]; + + // A cross-domain request is in order when the origin doesn't match the current origin. + if ( s.crossDomain == null ) { + urlAnchor = document.createElement( "a" ); + + // Support: IE <=8 - 11, Edge 12 - 15 + // IE throws exception on accessing the href property if url is malformed, + // e.g. http://example.com:80x/ + try { + urlAnchor.href = s.url; + + // Support: IE <=8 - 11 only + // Anchor's host property isn't correctly set when s.url is relative + urlAnchor.href = urlAnchor.href; + s.crossDomain = originAnchor.protocol + "//" + originAnchor.host !== + urlAnchor.protocol + "//" + urlAnchor.host; + } catch ( e ) { + + // If there is an error parsing the URL, assume it is crossDomain, + // it can be rejected by the transport if it is invalid + s.crossDomain = true; + } + } + + // Convert data if not already a string + if ( s.data && s.processData && typeof s.data !== "string" ) { + s.data = jQuery.param( s.data, s.traditional ); + } + + // Apply prefilters + inspectPrefiltersOrTransports( prefilters, s, options, jqXHR ); + + // If request was aborted inside a prefilter, stop there + if ( completed ) { + return jqXHR; + } + + // We can fire global events as of now if asked to + // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118) + fireGlobals = jQuery.event && s.global; + + // Watch for a new set of requests + if ( fireGlobals && jQuery.active++ === 0 ) { + jQuery.event.trigger( "ajaxStart" ); + } + + // Uppercase the type + s.type = s.type.toUpperCase(); + + // Determine if request has content + s.hasContent = !rnoContent.test( s.type ); + + // Save the URL in case we're toying with the If-Modified-Since + // and/or If-None-Match header later on + // Remove hash to simplify url manipulation + cacheURL = s.url.replace( rhash, "" ); + + // More options handling for requests with no content + if ( !s.hasContent ) { + + // Remember the hash so we can put it back + uncached = s.url.slice( cacheURL.length ); + + // If data is available and should be processed, append data to url + if ( s.data && ( s.processData || typeof s.data === "string" ) ) { + cacheURL += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data; + + // #9682: remove data so that it's not used in an eventual retry + delete s.data; + } + + // Add or update anti-cache param if needed + if ( s.cache === false ) { + cacheURL = cacheURL.replace( rantiCache, "$1" ); + uncached = ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + ( nonce.guid++ ) + + uncached; + } + + // Put hash and anti-cache on the URL that will be requested (gh-1732) + s.url = cacheURL + uncached; + + // Change '%20' to '+' if this is encoded form body content (gh-2658) + } else if ( s.data && s.processData && + ( s.contentType || "" ).indexOf( "application/x-www-form-urlencoded" ) === 0 ) { + s.data = s.data.replace( r20, "+" ); + } + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + if ( jQuery.lastModified[ cacheURL ] ) { + jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] ); + } + if ( jQuery.etag[ cacheURL ] ) { + jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] ); + } + } + + // Set the correct header, if data is being sent + if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) { + jqXHR.setRequestHeader( "Content-Type", s.contentType ); + } + + // Set the Accepts header for the server, depending on the dataType + jqXHR.setRequestHeader( + "Accept", + s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[ 0 ] ] ? + s.accepts[ s.dataTypes[ 0 ] ] + + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) : + s.accepts[ "*" ] + ); + + // Check for headers option + for ( i in s.headers ) { + jqXHR.setRequestHeader( i, s.headers[ i ] ); + } + + // Allow custom headers/mimetypes and early abort + if ( s.beforeSend && + ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || completed ) ) { + + // Abort if not done already and return + return jqXHR.abort(); + } + + // Aborting is no longer a cancellation + strAbort = "abort"; + + // Install callbacks on deferreds + completeDeferred.add( s.complete ); + jqXHR.done( s.success ); + jqXHR.fail( s.error ); + + // Get transport + transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR ); + + // If no transport, we auto-abort + if ( !transport ) { + done( -1, "No Transport" ); + } else { + jqXHR.readyState = 1; + + // Send global event + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] ); + } + + // If request was aborted inside ajaxSend, stop there + if ( completed ) { + return jqXHR; + } + + // Timeout + if ( s.async && s.timeout > 0 ) { + timeoutTimer = window.setTimeout( function() { + jqXHR.abort( "timeout" ); + }, s.timeout ); + } + + try { + completed = false; + transport.send( requestHeaders, done ); + } catch ( e ) { + + // Rethrow post-completion exceptions + if ( completed ) { + throw e; + } + + // Propagate others as results + done( -1, e ); + } + } + + // Callback for when everything is done + function done( status, nativeStatusText, responses, headers ) { + var isSuccess, success, error, response, modified, + statusText = nativeStatusText; + + // Ignore repeat invocations + if ( completed ) { + return; + } + + completed = true; + + // Clear timeout if it exists + if ( timeoutTimer ) { + window.clearTimeout( timeoutTimer ); + } + + // Dereference transport for early garbage collection + // (no matter how long the jqXHR object will be used) + transport = undefined; + + // Cache response headers + responseHeadersString = headers || ""; + + // Set readyState + jqXHR.readyState = status > 0 ? 4 : 0; + + // Determine if successful + isSuccess = status >= 200 && status < 300 || status === 304; + + // Get response data + if ( responses ) { + response = ajaxHandleResponses( s, jqXHR, responses ); + } + + // Use a noop converter for missing script but not if jsonp + if ( !isSuccess && + jQuery.inArray( "script", s.dataTypes ) > -1 && + jQuery.inArray( "json", s.dataTypes ) < 0 ) { + s.converters[ "text script" ] = function() {}; + } + + // Convert no matter what (that way responseXXX fields are always set) + response = ajaxConvert( s, response, jqXHR, isSuccess ); + + // If successful, handle type chaining + if ( isSuccess ) { + + // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode. + if ( s.ifModified ) { + modified = jqXHR.getResponseHeader( "Last-Modified" ); + if ( modified ) { + jQuery.lastModified[ cacheURL ] = modified; + } + modified = jqXHR.getResponseHeader( "etag" ); + if ( modified ) { + jQuery.etag[ cacheURL ] = modified; + } + } + + // if no content + if ( status === 204 || s.type === "HEAD" ) { + statusText = "nocontent"; + + // if not modified + } else if ( status === 304 ) { + statusText = "notmodified"; + + // If we have data, let's convert it + } else { + statusText = response.state; + success = response.data; + error = response.error; + isSuccess = !error; + } + } else { + + // Extract error from statusText and normalize for non-aborts + error = statusText; + if ( status || !statusText ) { + statusText = "error"; + if ( status < 0 ) { + status = 0; + } + } + } + + // Set data for the fake xhr object + jqXHR.status = status; + jqXHR.statusText = ( nativeStatusText || statusText ) + ""; + + // Success/Error + if ( isSuccess ) { + deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] ); + } else { + deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] ); + } + + // Status-dependent callbacks + jqXHR.statusCode( statusCode ); + statusCode = undefined; + + if ( fireGlobals ) { + globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError", + [ jqXHR, s, isSuccess ? success : error ] ); + } + + // Complete + completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] ); + + if ( fireGlobals ) { + globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] ); + + // Handle the global AJAX counter + if ( !( --jQuery.active ) ) { + jQuery.event.trigger( "ajaxStop" ); + } + } + } + + return jqXHR; + }, + + getJSON: function( url, data, callback ) { + return jQuery.get( url, data, callback, "json" ); + }, + + getScript: function( url, callback ) { + return jQuery.get( url, undefined, callback, "script" ); + } +} ); + +jQuery.each( [ "get", "post" ], function( _i, method ) { + jQuery[ method ] = function( url, data, callback, type ) { + + // Shift arguments if data argument was omitted + if ( isFunction( data ) ) { + type = type || callback; + callback = data; + data = undefined; + } + + // The url can be an options object (which then must have .url) + return jQuery.ajax( jQuery.extend( { + url: url, + type: method, + dataType: type, + data: data, + success: callback + }, jQuery.isPlainObject( url ) && url ) ); + }; +} ); + +jQuery.ajaxPrefilter( function( s ) { + var i; + for ( i in s.headers ) { + if ( i.toLowerCase() === "content-type" ) { + s.contentType = s.headers[ i ] || ""; + } + } +} ); + + +jQuery._evalUrl = function( url, options, doc ) { + return jQuery.ajax( { + url: url, + + // Make this explicit, since user can override this through ajaxSetup (#11264) + type: "GET", + dataType: "script", + cache: true, + async: false, + global: false, + + // Only evaluate the response if it is successful (gh-4126) + // dataFilter is not invoked for failure responses, so using it instead + // of the default converter is kludgy but it works. + converters: { + "text script": function() {} + }, + dataFilter: function( response ) { + jQuery.globalEval( response, options, doc ); + } + } ); +}; + + +jQuery.fn.extend( { + wrapAll: function( html ) { + var wrap; + + if ( this[ 0 ] ) { + if ( isFunction( html ) ) { + html = html.call( this[ 0 ] ); + } + + // The elements to wrap the target around + wrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true ); + + if ( this[ 0 ].parentNode ) { + wrap.insertBefore( this[ 0 ] ); + } + + wrap.map( function() { + var elem = this; + + while ( elem.firstElementChild ) { + elem = elem.firstElementChild; + } + + return elem; + } ).append( this ); + } + + return this; + }, + + wrapInner: function( html ) { + if ( isFunction( html ) ) { + return this.each( function( i ) { + jQuery( this ).wrapInner( html.call( this, i ) ); + } ); + } + + return this.each( function() { + var self = jQuery( this ), + contents = self.contents(); + + if ( contents.length ) { + contents.wrapAll( html ); + + } else { + self.append( html ); + } + } ); + }, + + wrap: function( html ) { + var htmlIsFunction = isFunction( html ); + + return this.each( function( i ) { + jQuery( this ).wrapAll( htmlIsFunction ? html.call( this, i ) : html ); + } ); + }, + + unwrap: function( selector ) { + this.parent( selector ).not( "body" ).each( function() { + jQuery( this ).replaceWith( this.childNodes ); + } ); + return this; + } +} ); + + +jQuery.expr.pseudos.hidden = function( elem ) { + return !jQuery.expr.pseudos.visible( elem ); +}; +jQuery.expr.pseudos.visible = function( elem ) { + return !!( elem.offsetWidth || elem.offsetHeight || elem.getClientRects().length ); +}; + + + + +jQuery.ajaxSettings.xhr = function() { + try { + return new window.XMLHttpRequest(); + } catch ( e ) {} +}; + +var xhrSuccessStatus = { + + // File protocol always yields status code 0, assume 200 + 0: 200, + + // Support: IE <=9 only + // #1450: sometimes IE returns 1223 when it should be 204 + 1223: 204 + }, + xhrSupported = jQuery.ajaxSettings.xhr(); + +support.cors = !!xhrSupported && ( "withCredentials" in xhrSupported ); +support.ajax = xhrSupported = !!xhrSupported; + +jQuery.ajaxTransport( function( options ) { + var callback, errorCallback; + + // Cross domain only allowed if supported through XMLHttpRequest + if ( support.cors || xhrSupported && !options.crossDomain ) { + return { + send: function( headers, complete ) { + var i, + xhr = options.xhr(); + + xhr.open( + options.type, + options.url, + options.async, + options.username, + options.password + ); + + // Apply custom fields if provided + if ( options.xhrFields ) { + for ( i in options.xhrFields ) { + xhr[ i ] = options.xhrFields[ i ]; + } + } + + // Override mime type if needed + if ( options.mimeType && xhr.overrideMimeType ) { + xhr.overrideMimeType( options.mimeType ); + } + + // X-Requested-With header + // For cross-domain requests, seeing as conditions for a preflight are + // akin to a jigsaw puzzle, we simply never set it to be sure. + // (it can always be set on a per-request basis or even using ajaxSetup) + // For same-domain requests, won't change header if already provided. + if ( !options.crossDomain && !headers[ "X-Requested-With" ] ) { + headers[ "X-Requested-With" ] = "XMLHttpRequest"; + } + + // Set headers + for ( i in headers ) { + xhr.setRequestHeader( i, headers[ i ] ); + } + + // Callback + callback = function( type ) { + return function() { + if ( callback ) { + callback = errorCallback = xhr.onload = + xhr.onerror = xhr.onabort = xhr.ontimeout = + xhr.onreadystatechange = null; + + if ( type === "abort" ) { + xhr.abort(); + } else if ( type === "error" ) { + + // Support: IE <=9 only + // On a manual native abort, IE9 throws + // errors on any property access that is not readyState + if ( typeof xhr.status !== "number" ) { + complete( 0, "error" ); + } else { + complete( + + // File: protocol always yields status 0; see #8605, #14207 + xhr.status, + xhr.statusText + ); + } + } else { + complete( + xhrSuccessStatus[ xhr.status ] || xhr.status, + xhr.statusText, + + // Support: IE <=9 only + // IE9 has no XHR2 but throws on binary (trac-11426) + // For XHR2 non-text, let the caller handle it (gh-2498) + ( xhr.responseType || "text" ) !== "text" || + typeof xhr.responseText !== "string" ? + { binary: xhr.response } : + { text: xhr.responseText }, + xhr.getAllResponseHeaders() + ); + } + } + }; + }; + + // Listen to events + xhr.onload = callback(); + errorCallback = xhr.onerror = xhr.ontimeout = callback( "error" ); + + // Support: IE 9 only + // Use onreadystatechange to replace onabort + // to handle uncaught aborts + if ( xhr.onabort !== undefined ) { + xhr.onabort = errorCallback; + } else { + xhr.onreadystatechange = function() { + + // Check readyState before timeout as it changes + if ( xhr.readyState === 4 ) { + + // Allow onerror to be called first, + // but that will not handle a native abort + // Also, save errorCallback to a variable + // as xhr.onerror cannot be accessed + window.setTimeout( function() { + if ( callback ) { + errorCallback(); + } + } ); + } + }; + } + + // Create the abort callback + callback = callback( "abort" ); + + try { + + // Do send the request (this may raise an exception) + xhr.send( options.hasContent && options.data || null ); + } catch ( e ) { + + // #14683: Only rethrow if this hasn't been notified as an error yet + if ( callback ) { + throw e; + } + } + }, + + abort: function() { + if ( callback ) { + callback(); + } + } + }; + } +} ); + + + + +// Prevent auto-execution of scripts when no explicit dataType was provided (See gh-2432) +jQuery.ajaxPrefilter( function( s ) { + if ( s.crossDomain ) { + s.contents.script = false; + } +} ); + +// Install script dataType +jQuery.ajaxSetup( { + accepts: { + script: "text/javascript, application/javascript, " + + "application/ecmascript, application/x-ecmascript" + }, + contents: { + script: /\b(?:java|ecma)script\b/ + }, + converters: { + "text script": function( text ) { + jQuery.globalEval( text ); + return text; + } + } +} ); + +// Handle cache's special case and crossDomain +jQuery.ajaxPrefilter( "script", function( s ) { + if ( s.cache === undefined ) { + s.cache = false; + } + if ( s.crossDomain ) { + s.type = "GET"; + } +} ); + +// Bind script tag hack transport +jQuery.ajaxTransport( "script", function( s ) { + + // This transport only deals with cross domain or forced-by-attrs requests + if ( s.crossDomain || s.scriptAttrs ) { + var script, callback; + return { + send: function( _, complete ) { + script = jQuery( " +{% endmacro %} + +{% macro body_post() %} + + + +{% endmacro %} \ No newline at end of file diff --git a/en/main/api.html b/en/main/api.html new file mode 100644 index 00000000..4d6d1c6c --- /dev/null +++ b/en/main/api.html @@ -0,0 +1,977 @@ + + + + + + + + + + + + API references — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

API references#

+
+

Main class#

+

The main class which computes brightness temperatures (Tb), mean radiating temperature (Tmr), and integrated absorption (Tau) for +clear or cloudy conditions. Also returns all integrated quantities that the original TBMODEL, Cyber Version, returned ([Schroeder-Westwater-1991]).

+
+ + + + + +

pyrtlib.tb_spectrum.TbCloudRTE(z, p, t, rh, frq)

Initialize TbCloudRTE

+
+

Example:

+

Compute downwelling (rte.satellite == False) brightness temperature for a typical Tropical Atmosphere.

+
from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+ang = np.array([90.])
+frq = np.arange(20, 201, 1)
+
+rte = TbCloudRTE(z, p, t, rh, frq, ang)
+rte.init_absmdl('R19SD')
+rte.satellite = False
+df = rte.execute()
+df = df.set_index(frq)
+df.tbtotal.plot(figsize=(12,8), xlabel="Frequency [GHz]", ylabel="Brightness Temperature [K]", grid=True)
+
+
+
+_images/api-1.png +
+

Also, it is possible to execute a combination of absorption models. The following example use R19SD model for \(O_2\) and +R16 for \(H_2O\): to compute upwelling brightness temperature using emissivity surface.

+
from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.absorption_model import H2OAbsModel
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+ang = np.array([90.])
+frq = np.arange(20, 201, 1)
+
+rte = TbCloudRTE(z, p, t, rh, frq, ang)
+rte.emissivity = 0.9
+rte.init_absmdl('R19SD')
+H2OAbsModel.model = 'R16'
+H2OAbsModel.set_ll()
+df = rte.execute()
+df = df.set_index(frq)
+df.tbtotal.plot(figsize=(12,8), xlabel="Frequency [GHz]", ylabel="Brightness Temperature [K]", grid=True)
+
+
+
+_images/api-2.png +
+
+
+

Standard Atmospheric Profiles#

+

Atmospheric constituent profiles (0-120km) (suplimented with other data) [ANDERSON] +This file was partly copied from FASCOD2 routine MLATMB 10/11/87

+

The file contains 6 model profiles:

+
    +
  • Model 1. Tropical

  • +
  • Model 2. Midlatitude Summer

  • +
  • Model 3. Midlatitude Winter

  • +
  • Model 4. Subarctic Summer

  • +
  • Model 5. Subarctic Winter

  • +
  • Model 6. U.S. Standard

  • +
+

Each of these profile contains data at 50 atmospheric levels: +Altitude (km), Pressure (mb), Density (cm-3), Molec. densities (ppmv): +1(\(H_2O\)), 2(\(CO_2\)), 3(\(O_3\)), 4(\(N_2O\)), 5(\(CO\)), 6(\(CH_4\)), 7(\(O_2\)) +Plus suplimental profiles where available.

+
+ + + + + + + + +

pyrtlib.climatology.AtmosphericProfiles()

AFGL Atmospheric Constituent Profiles (0-120km)

pyrtlib.climatology.ProfileExtrapolation([mode])

+
+

Example:

+
from pyrtlib.climatology import AtmosphericProfiles as atmp
+
+z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL)
+# index of available profiles
+atmp.atm_profiles()
+{0: 'Tropical',
+ 1: 'Midlatitude Summer',
+ 2: 'Midlatitude Winter',
+ 3: 'Subarctic Summer',
+ 4: 'Subarctic Winter',
+ 5: 'US Standard'}
+
+
+
+
+

Radiative Transfer Equation#

+

RTE functions called from pyrtlib.rt_equation.RTEquation:

+
    +
  • bright = compute temperature for the modified Planck radiance

  • +
  • cloudy_absorption = computes cloud (liquid and ice) absorption profiles

  • +
  • cloud_integrated_density = integrates cloud water density of path ds (linear)

  • +
  • cloud_radiating_temperature = computes mean radiating temperature of a cloud

  • +
  • clearsky_absorption = computes clear-sky (\(H_2O\) and \(O_2\)) absorption profiles

  • +
  • exponential_integration = integrates (ln) absorption over profile layers

  • +
  • planck = computes modified planck radiance and related quantities

  • +
  • ray_tracing = computes refracted path length between profile levels

  • +
  • refractivity = computes vapor pressure and refractivity profiles

  • +
  • vapor = computes vapor pressure and vapor density

  • +
+
+ + + + + +

pyrtlib.rt_equation.RTEquation()

This class contains the main Radiative Transfer Equation functions.

+
+
+
+

Absorption Models#

+

Computes absorption coefficient in atmosphere due to water vapor (\(H_2O\)), oxygen in air (\(O_2\)), ozone in air (\(O_3\)), suspended cloud liquid water droplets and +collision-induced power absorption coefficient (neper/km) in air (“dry continuum”, mostly due to \(N_2\)-\(N_2\), but also contributions from \(O_2\)-\(N_2\) and \(O_2\)-\(O_2\))

+
+ + + + + + + + + + + + + + + + + + + + +

pyrtlib.absorption_model.AbsModel()

This is an abstraction class to define the absorption model.

pyrtlib.absorption_model.H2OAbsModel()

This class contains the \(H_2O\) absorption model used in pyrtlib.

pyrtlib.absorption_model.O2AbsModel()

This class contains the \(O_2\) absorption model used in pyrtlib.

pyrtlib.absorption_model.O3AbsModel()

This class contains the \(O_3\) absorption model used in pyrtlib.

pyrtlib.absorption_model.N2AbsModel()

This class contains the absorption model used in pyrtlib.

pyrtlib.absorption_model.LiqAbsModel()

This class contains the absorption model used in pyrtlib.

+
+

To get all implemented models use the following code:

+
from pyrtlib.absorption_model import AbsModel
+
+AbsModel.implemented_models()
+{'Oxygen': ['R98',
+'R03',
+'R16',
+'R17',
+'R18',
+'R19',
+'R19SD',
+'R20',
+'R20SD',
+'R22',
+'R23',
+'R24'],
+'WaterVapour': ['R98',
+'R03',
+'R16',
+'R17',
+'R18',
+'R19',
+'R19SD',
+'R20',
+'R20SD',
+'R21SD',
+'R22SD',
+'R23SD',
+'R24'],
+'Ozone': ['R18', 'R22', 'R23']}
+
+
+
+
+

Weighting Functions#

+

Computes the weighting functions to assess the vertical sensitivity of the brightness temperature to the atmospheric profile.

+
+

Note

+

The weighting functions are computed always using last absorption model available.

+
+
+ + + + + +

pyrtlib.weighting_functions.WeightingFunctions(z, ...)

This class is used to compute the weighting functions

+
+
from pyrtlib.weighting_functions import WeightingFunctions
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies_sat
+
+z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+wf = WeightingFunctions(z, p, t, rh, .1)
+wf.satellite = True
+wf.angle = 48.
+wf.frequencies = get_frequencies_sat('ICI')
+wgt = wf.generate_wf()
+
+wf.plot_wf_grouped(wgt, '', ylim=[0, 20],
+                   grouped_frequencies=[8, 2, 6, 6, 2],
+                   grouped_labels=['176-190', '240-245', '315-334', '440-455', '659-668'])
+
+
+
+_images/api-3.png +
+
+
+

Utility Functions#

+

The utils module contains funtions of general utility used in multiple places throughout pyrtlib.

+
+ + + + + +

pyrtlib.utils

This module contains the utils functions.

+
+
+
+

Uncertainty#

+

This module has some tool to compute the absorption model sensitivity to the uncertainty of spectroscopic parameters, +with the purpose of identifying the most significant contributions to the total uncertainty of modeled upwelling/downwelling +brightness temperture.

+
+ + + + + + + + +

pyrtlib.uncertainty.AbsModUncertainty()

This module provides the uncertainties affecting absorption model coefficients found in the litterature.

pyrtlib.uncertainty.SpectroscopicParameter(...)

Absorption model uncertainties for the spectroscopic parameters

+
+
+
+

API Web Services#

+

Observations dataset web services which may be used in pyrtlib. +Available datasets are the Wyoming Upper Air Archive (University of Wyoming), NCEI’s Integrated Radiosonde Archive version 2 (IGRA2) or the +ERA5 Reanalysis model data (Copernicus Climate Change Service). See examples to get started to use these services.

+
+

Note

+

Parts of the code have been reused from the Siphon library.

+
+
+ + + + + + + + + + + +

pyrtlib.apiwebservices.WyomingUpperAir()

Download and parse data from the University of Wyoming's upper air archive.

pyrtlib.apiwebservices.IGRAUpperAir()

Download and parse data from NCEI's Integrated Radiosonde Archive version 2.

pyrtlib.apiwebservices.ERA5Reanalysis()

Read and Download data from ERA5 CDS Reanalysis model data

+
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/generic_tutorial.html b/en/main/examples/generic_tutorial.html new file mode 100644 index 00000000..6d3d17ae --- /dev/null +++ b/en/main/examples/generic_tutorial.html @@ -0,0 +1,1186 @@ + + + + + + + + + + + + Generic Example — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Generic Example#

+

This example shows how to use calculate the upwelling brigthness temperature by using R16 and R03 absorption model +and then plotting them difference.

+
import matplotlib.pyplot as plt
+
+plt.rcParams.update({'font.size': 15})
+import matplotlib.ticker as ticker
+from matplotlib.ticker import ScalarFormatter
+import numpy as np
+
+
+
+

Import pyrtlib package#

+
from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+
+
atm = ['Tropical',
+       'Midlatitude Summer',
+       'Midlatitude Winter',
+       'Subarctic Summer',
+       'Subarctic Winter',
+       'U.S. Standard']
+
+
+
+
+

Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used.#

+
z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL)
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+mdl = 'R16'
+
+
+
+
+

Performing upwelling brightness temperature calculation#

+

Default calculatoin consideres no cloud

+
ang = np.array([90.])
+frq = np.arange(20, 201, 1)
+nf = len(frq)
+
+
+

Setup matplotlib plot

+
fig, ax = plt.subplots(1, 1, figsize=(12,8))
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('${T_B}$ [K]')
+
+rte = TbCloudRTE(z, p, t, rh, frq, ang)
+rte.init_absmdl(mdl)
+df = rte.execute()
+
+df = df.set_index(frq)
+df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))
+
+ax.legend()
+plt.show()
+
+
+generic tutorial

Print dataframe

+
df
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauiceangle
20298.1100020.0286.9500830.00.1203440.0128520.00.090.0
21297.2456650.0286.3010020.00.1888080.0135200.00.090.0
22296.1535540.0285.0006180.00.2618480.0142540.00.090.0
23296.3402810.0285.6359820.00.2579130.0150610.00.090.0
24297.1584870.0286.7384580.00.2023080.0159490.00.090.0
..............................
196281.7278400.0281.2715110.03.6729750.0254700.00.090.0
197282.2826340.0281.7322020.03.4600000.0256390.00.090.0
198282.7487030.0282.1100040.03.2898480.0258090.00.090.0
199283.1406970.0282.4212000.03.1527100.0259790.00.090.0
200283.4705460.0282.6784630.03.0414240.0261500.00.090.0
+

181 rows × 9 columns

+
+
+
+
+
+

Performing calculation for R03 absorption model#

+
mdl = 'R03'
+rte.init_absmdl(mdl)
+df_r03 = rte.execute()
+df_r03 = df_r03.set_index(frq)
+
+
+

Add brigthness temperature values as new column

+
+
+
df
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauiceangledelta
20298.1100020.0286.9500830.00.1203440.0128520.00.090.00.001587
21297.2456650.0286.3010020.00.1888080.0135200.00.090.0-0.048560
22296.1535540.0285.0006180.00.2618480.0142540.00.090.0-0.142017
23296.3402810.0285.6359820.00.2579130.0150610.00.090.0-0.076094
24297.1584870.0286.7384580.00.2023080.0159490.00.090.00.007044
.................................
196281.7278400.0281.2715110.03.6729750.0254700.00.090.0-0.163239
197282.2826340.0281.7322020.03.4600000.0256390.00.090.0-0.155826
198282.7487030.0282.1100040.03.2898480.0258090.00.090.0-0.148959
199283.1406970.0282.4212000.03.1527100.0259790.00.090.0-0.142665
200283.4705460.0282.6784630.03.0414240.0261500.00.090.0-0.136943
+

181 rows × 10 columns

+
+
+
+

Difference between R16 and R03 brightness temperature

+
fig, ax = plt.subplots(1, 1, figsize=(12,8))
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('$\Delta {T_B}$ [K]')
+df.delta.plot(ax=ax, figsize=(12,8), label='$\Delta {T_B}$ (R16-R03)')
+ax.legend()
+plt.show()
+
+
+generic tutorial
+
+

Performing downwelling brightness temperature calculation#

+
fig, ax = plt.subplots(1, 1, figsize=(12,8))
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('${T_B}$ [K]')
+
+rte.satellite = False
+df_from_ground = rte.execute()
+
+df_from_ground = df_from_ground.set_index(frq)
+df_from_ground.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))
+ax.legend()
+plt.show()
+
+
+generic tutorial +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauiceangle
2038.12874136.134999287.7437660.00.1196540.0128800.00.090.0
2153.63071051.778478287.5231210.00.1832710.0135350.00.090.0
2268.66240866.946561286.8527650.00.2496770.0142540.00.090.0
2368.99593767.297760287.3593340.00.2498660.0150440.00.090.0
2458.55113856.787298288.0545000.00.2016700.0159130.00.090.0
..............................
196290.018674290.011203297.0808770.03.6974740.0249290.00.090.0
197288.150026288.140925296.8588170.03.4869090.0250910.00.090.0
198286.377998286.367374296.6709930.03.3189050.0252550.00.090.0
199284.738957284.726955296.5130820.03.1836920.0254180.00.090.0
200283.252699283.239484296.3809280.03.0741470.0255830.00.090.0
+

181 rows × 9 columns

+
+
+
+

Total running time of the script: (0 minutes 15.012 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/index.html b/en/main/examples/index.html new file mode 100644 index 00000000..6b3bdf60 --- /dev/null +++ b/en/main/examples/index.html @@ -0,0 +1,569 @@ + + + + + + + + + + + + Gallery example — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + + + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_atmosphere.html b/en/main/examples/plot_atmosphere.html new file mode 100644 index 00000000..f0ba2b92 --- /dev/null +++ b/en/main/examples/plot_atmosphere.html @@ -0,0 +1,612 @@ + + + + + + + + + + + + Atmospheric Profiles — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Atmospheric Profiles#

+

This example shows how to use the +pyrtlib.climatology.AtmosphericProfiles method to generate temperature and relative humidity profiles

+
import matplotlib.pyplot as plt
+
+plt.rcParams.update({'font.size': 15})
+import matplotlib.ticker as ticker
+from matplotlib.ticker import ScalarFormatter
+import numpy as np
+
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.utils import ppmv2gkg, mr2rh, height_to_pressure
+
+
+def tick_function(x):
+    v = x - 273.15
+    return ["%.1f" % z for z in v]
+
+
+def tick_function_pressure(p, z, ticks):
+    values = []
+    for tick in ticks:
+        v = p[np.where(z==tick)]
+        values.append(v[0])
+    return values
+
+
+z, p, d, t, md = atmp.gl_atm(atmp.US_STANDARD)
+
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+fig, ax = plt.subplots(1, 2, figsize=(12, 12))
+ax1 = ax[0].twiny()
+
+ax[1].yaxis.set_label_position("right")
+ax[1].yaxis.tick_right()
+ax[1].yaxis.set_major_formatter(ScalarFormatter())
+ax[1].yaxis.set_major_formatter(ticker.FuncFormatter(lambda y, _: '{:g}'.format(y)))
+
+fig.subplots_adjust(bottom=0.2)
+
+ax[0].plot(t, z)
+ax[1].plot(rh * 100, z)
+ax[0].set_xlabel("Temperature [K]")
+ax[1].set_xlabel("Relative Humidity [%]")
+ax[1].axes.get_yaxis().set_visible(False)
+ax[0].set_ylabel("Altitude [km]")
+
+new_tick_locations_pressure = np.arange(0, 140, 20)
+ax3 = ax[0].twinx()
+rspine = ax3.spines['left'].set_position(('axes', -0.2))
+ax3.yaxis.set_ticks_position("left")
+ax3.yaxis.set_label_position("left")
+ax3.set_frame_on(True)
+ax3.patch.set_visible(False)
+ax3.set_ylabel('Pressure [hPa]')
+ax3.set_yticks(new_tick_locations_pressure)
+ax3.set_yticklabels(tick_function_pressure(p, z, new_tick_locations_pressure))
+ax3.set_ylim(ax[1].get_ylim())
+
+new_tick_locations = np.arange(175, 400, 50)
+
+ax1.xaxis.set_ticks_position("bottom")
+ax1.xaxis.set_label_position("bottom")
+
+# Offset the twin axis below the host
+ax1.spines["bottom"].set_position(("axes", -0.1))
+ax1.set_frame_on(True)
+ax1.patch.set_visible(False)
+
+ax1.spines["bottom"].set_visible(True)
+
+ax1.set_xticks(new_tick_locations)
+ax1.set_xticklabels(tick_function(new_tick_locations))
+ax1.set_xlabel("Temperature [°C]")
+ax1.set_xlim(ax[0].get_xlim())
+fig.tight_layout()
+
+
+plot atmosphere

Total running time of the script: (0 minutes 0.211 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_brightness_temperature_down.html b/en/main/examples/plot_brightness_temperature_down.html new file mode 100644 index 00000000..5a742588 --- /dev/null +++ b/en/main/examples/plot_brightness_temperature_down.html @@ -0,0 +1,582 @@ + + + + + + + + + + + + Performing Downwelling Brightness Temperature calculation — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Performing Downwelling Brightness Temperature calculation#

+

This example shows how to use the +pyrtlib.tb_spectrum.TbCloudRTE method to calculate zenith downwelling brightness temperature +for six reference atmosphere climatology with the R17 model.

+
import matplotlib.pyplot as plt
+
+plt.rcParams.update({'font.size': 15})
+import numpy as np
+
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+atm = ['Tropical',
+       'Midlatitude Summer',
+       'Midlatitude Winter',
+       'Subarctic Summer',
+       'Subarctic Winter',
+       'U.S. Standard']
+
+fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+
+for i in range(0, 6):
+    z, p, d, t, md = atmp.gl_atm(i)
+    gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+    rh = mr2rh(p, t, gkg)[0] / 100
+
+    mdl = 'R17'
+
+    ang = np.array([90.])
+    frq = np.arange(20, 61, 0.5)
+    nf = len(frq)
+
+    ax.set_xlabel('Frequency (GHz)')
+    ax.set_ylabel('BT (K)')
+
+    rte = TbCloudRTE(z, p, t, rh, frq, ang)
+    rte.satellite = False
+    rte.init_absmdl(mdl)
+    df = rte.execute()
+
+    df = df.set_index(frq)
+    df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i]))
+
+ax.grid(True, 'both')
+ax.legend()
+ax.set_box_aspect(0.8)
+plt.show()
+
+
+plot brightness temperature down

Total running time of the script: (0 minutes 12.680 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_brightness_temperature_uncertainties.html b/en/main/examples/plot_brightness_temperature_uncertainties.html new file mode 100644 index 00000000..79ba85e4 --- /dev/null +++ b/en/main/examples/plot_brightness_temperature_uncertainties.html @@ -0,0 +1,607 @@ + + + + + + + + + + + + Performing sensitivity of spectroscopic parameters — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Performing sensitivity of spectroscopic parameters#

+

This example shows how to use the +pyrtlib.tb_spectrum.TbCloudRTE method to calculate sensitivity of simulated downwelling brightness temperature +with a perturbed water vapor absorption parameter (\(\gamma_a\) air broadening 22 GHz) from [Cimini-2018].

+
import matplotlib.pyplot as plt
+import numpy as np
+plt.rcParams.update({'font.size': 15})
+
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.absorption_model import H2OAbsModel, O2AbsModel
+from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+atm = ['Tropical',
+       'Midlatitude Summer',
+       'Midlatitude Winter',
+       'Subarctic Summer',
+       'Subarctic Winter',
+       'U.S. Standard']
+
+colors = ["r", "m", "g", "b", "c", "k"]
+
+fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('$\Delta {T_B}$ [K]')
+for i in range(0, 6):
+
+    z, p, d, t, md = atmp.gl_atm(i)
+
+    gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+    rh = mr2rh(p, t, gkg)[0] / 100
+
+    interp = .1
+    frq = np.arange(20, 60 + interp, interp)
+
+    parameters = {**SpectroscopicParameter.water_parameters('R17'), **SpectroscopicParameter.oxygen_parameters('R18')}
+    parameters['gamma_a'].value[0] = 2.688
+    parameters['gamma_a'].uncer[0] = 0.039
+    SpectroscopicParameter.set_parameters(parameters)
+
+    rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters)
+    rte.init_absmdl('R17')
+    O2AbsModel.model = 'R18'
+    O2AbsModel.set_ll()
+    rte.satellite = False
+    df = rte.execute()
+
+    parameters = AbsModUncertainty.parameters_perturbation(['gamma_a'], 'max', index=0)
+    rte.set_amu(parameters)
+    df_gamma = rte.execute()
+    df['delta_max_gamma_a'] = df_gamma.tbtotal - df.tbtotal
+
+    parameters = AbsModUncertainty.parameters_perturbation(['gamma_a'], 'min', index=0)
+    rte.set_amu(parameters)
+    df_gamma = rte.execute()
+    df['delta_min_gamma_a'] = df_gamma.tbtotal - df.tbtotal
+
+    df = df.set_index(frq)
+
+    df.delta_max_gamma_a.plot(ax=ax, style='--', label='_nolegend_', color=colors[i])
+    df.delta_min_gamma_a.plot(ax=ax, label='{}'.format(atm[i]), color=colors[i])
+
+    ax.legend()
+    ax.set_box_aspect(0.7)
+
+ax.grid(True, 'both')
+plt.title("Perturbed parameter: $\ H_2O - \gamma_a$")
+plt.show()
+
+
+Perturbed parameter: $\ H_2O - \gamma_a$

Solid lines correspond to negative perturbation (value − uncertainty), +while dashed lines correspond to positive perturbation (value + uncertainty).

+

Total running time of the script: (3 minutes 3.841 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_brightness_temperature_up.html b/en/main/examples/plot_brightness_temperature_up.html new file mode 100644 index 00000000..73367ab8 --- /dev/null +++ b/en/main/examples/plot_brightness_temperature_up.html @@ -0,0 +1,581 @@ + + + + + + + + + + + + Performing Upwelling Brightness Temperature calculation — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Performing Upwelling Brightness Temperature calculation#

+

This example shows how to use the +pyrtlib.tb_spectrum.TbCloudRTE method to calculate zenith upwelling brightness temperature +for six reference atmosphere climatology with the R19SD model.

+
import matplotlib.pyplot as plt
+
+plt.rcParams.update({'font.size': 15})
+import numpy as np
+
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+atm = ['Tropical',
+       'Midlatitude Summer',
+       'Midlatitude Winter',
+       'Subarctic Summer',
+       'Subarctic Winter',
+       'U.S. Standard']
+
+fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+
+for i in range(0, 6):
+    z, p, d, t, md = atmp.gl_atm(i)
+    gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+    rh = mr2rh(p, t, gkg)[0] / 100
+
+    mdl = 'R19SD'
+
+    ang = np.array([90.])
+    frq = np.arange(20, 61, 1)
+    nf = len(frq)
+
+    ax.set_xlabel('Frequency (GHz)')
+    ax.set_ylabel('BT (K)')
+
+    rte = TbCloudRTE(z, p, t, rh, frq, ang)
+    rte.init_absmdl(mdl)
+    df = rte.execute()
+
+    df = df.set_index(frq)
+    df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i]))
+
+ax.grid(True, 'both')
+ax.legend()
+ax.set_box_aspect(0.8)
+plt.show()
+
+
+plot brightness temperature up

Total running time of the script: (0 minutes 7.780 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_brightness_temperature_wO3.html b/en/main/examples/plot_brightness_temperature_wO3.html new file mode 100644 index 00000000..5b26285c --- /dev/null +++ b/en/main/examples/plot_brightness_temperature_wO3.html @@ -0,0 +1,619 @@ + + + + + + + + + + + + Performing Downwelling Brightness Temperature calculation with Ozone — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Performing Downwelling Brightness Temperature calculation with Ozone#

+

This example shows how to use the +pyrtlib.tb_spectrum.TbCloudRTE method to calculate downwelling brightness temperature with ozone.

+
import matplotlib.pyplot as plt
+
+plt.rcParams.update({'font.size': 15})
+import numpy as np
+
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.absorption_model import H2OAbsModel, O3AbsModel
+from pyrtlib.utils import ppmv2gkg, mr2rh, ppmv_to_moleculesm3, constants
+
+atm = ['Tropical',
+       'Midlatitude Summer',
+       'Midlatitude Winter',
+       'Subarctic Summer',
+       'Subarctic Winter',
+       'U.S. Standard']
+
+fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('${T_B}$ [K]')
+
+z, p, d, t, md = atmp.gl_atm(atmp.US_STANDARD) # 'U.S. Standard'
+
+o3n_ppmv = md[:, atmp.O3]
+o3n = np.zeros(z.shape)
+for k in range(0, len(z)):
+    o3n[k] = ppmv_to_moleculesm3(o3n_ppmv[k], p[k] * 100.0, t[k])
+
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+ang = np.array([90.])
+frq = np.arange(20, 201, 1)
+
+rte = TbCloudRTE(z, p, t, rh, frq, ang, o3n)
+rte.init_absmdl('R20')
+rte.satellite = False
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.set_ll()
+O3AbsModel.model = 'R18'
+O3AbsModel.set_ll()
+df = rte.execute()
+
+df = df.set_index(frq)
+df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.US_STANDARD], 'R21SD'))
+
+style = dict(size=20, color='gray', ha='center')
+ax.text(22, 45, "${H_2O}$", **style)
+ax.text(60, 255, "${O_2}$", **style)
+ax.text(119, 280, "${O_2}$", **style)
+ax.text(142, 100, "${O_3}$", **style)
+ax.text(183, 245, "${H_2O}$", **style)
+
+def ghz_to_mm(ghz):
+    f = ghz * 1e9
+    c = constants('light')[0]
+    return (c/f) * 1e3
+
+def mm_to_ghz(mm):
+    l = mm / 1e3
+    c = constants('light')[0]
+    return (c/l) / 1e9
+
+secax = ax.secondary_xaxis('top', functions=(ghz_to_mm, mm_to_ghz))
+secax.set_xlabel('$\lambda$ [mm]')
+
+ax.legend()
+plt.show()
+
+
+plot brightness temperature wO3

Compute R21SD model without Ozone and plotting difference

+
O3AbsModel.model = ''
+df_no_o3 = rte.execute()
+df_no_o3 = df_no_o3.set_index(frq)
+df['delta'] = df.tbtotal - df_no_o3.tbtotal
+
+fig, ax = plt.subplots(1, 1, figsize=(12,8))
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('$\Delta {T_B}$ [K]')
+df.delta.plot(ax=ax, figsize=(12,8), label='$\Delta {T_B}$ (R21SD-R21SD_w03)')
+ax.legend()
+plt.show()
+
+
+plot brightness temperature wO3

Total running time of the script: (0 minutes 12.127 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_bt_era5.html b/en/main/examples/plot_bt_era5.html new file mode 100644 index 00000000..10da2763 --- /dev/null +++ b/en/main/examples/plot_bt_era5.html @@ -0,0 +1,578 @@ + + + + + + + + + + + + Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations. — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.#

+

This example shows how to use the +pyrtlib.tb_spectrum.TbCloudRTE method to calculate brightness temperature from satellite (upwelling) using +observations from ERA5 Reanalysis hourly pressure levels dataset.

+
import matplotlib.pyplot as plt
+
+plt.rcParams.update({'font.size': 15})
+import numpy as np
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import import_lineshape
+from pyrtlib.absorption_model import H2OAbsModel
+from pyrtlib.apiwebservices import ERA5Reanalysis
+
+# To request dataset via CDS API
+# date = datetime(2020, 2, 22, 12)
+# nc_file = ERA5Reanalysis.request_data(tempfile.gettempdir(), date, lonlat)
+
+# Tito Scalo, Potenza, Italy
+lonlat = (15.8158, 38.2663)
+nc_file = 'era5_reanalysis-2023-05-16T18:00:00.nc'
+df_era5 = ERA5Reanalysis.read_data(nc_file, lonlat)
+
+mdl = 'R21SD'
+ang = np.array([90.])
+frq = np.arange(20, 201, 1)
+nf = len(frq)
+
+rte = TbCloudRTE(df_era5.z.values, df_era5.p.values, df_era5.t.values, df_era5.rh.values, frq, ang)
+rte.init_absmdl('R20')
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.h2oll = import_lineshape('h2oll')
+df = rte.execute()
+df = df.set_index(frq)
+
+fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+plt.title(
+    "ERA5 Reanalysis dataset (hourly pressure levels) {}".format(df_era5.time[0].strftime(format='%Y-%m-%d %H:%M')),
+    ha='center')
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('${T_B}$ [K]')
+df.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(lonlat, mdl))
+ax.grid(True, 'both')
+ax.legend()
+plt.show()
+
+
+ERA5 Reanalysis dataset (hourly pressure levels) 2023-05-16 18:00

Total running time of the script: (0 minutes 4.539 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_bt_era5_cloudy_profile.html b/en/main/examples/plot_bt_era5_cloudy_profile.html new file mode 100644 index 00000000..4cef5037 --- /dev/null +++ b/en/main/examples/plot_bt_era5_cloudy_profile.html @@ -0,0 +1,611 @@ + + + + + + + + + + + + Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition. — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.#

+

This example shows how to use the +pyrtlib.tb_spectrum.TbCloudRTE method to calculate brightness temperature from satellite (upwelling) using +observations from ERA5 Reanalysis hourly pressure levels dataset in cloudy condition.

+
import matplotlib.pyplot as plt
+import matplotlib.gridspec as gridspec
+
+plt.rcParams.update({'font.size': 15})
+import numpy as np
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import import_lineshape, kgkg_to_kgm3
+from pyrtlib.absorption_model import H2OAbsModel
+from pyrtlib.apiwebservices import ERA5Reanalysis
+
+# To request dataset via CDS API
+# date = datetime(2020, 2, 22, 12)
+# nc_file = ERA5Reanalysis.request_data(tempfile.gettempdir(), date, lonlat)
+
+lonlat = (15.13, 37.87)
+nc_file = 'era5_reanalysis-2023-05-16T18:00:00.nc'
+df_era5 = ERA5Reanalysis.read_data(nc_file, lonlat)
+
+mdl = 'R21SD'
+ang = np.array([90.])
+frq = np.arange(20, 101, 1)
+nf = len(frq)
+
+cldh = np.empty((2, 1))
+cldh[:, 0] = np.array([np.min(df_era5.z), np.max(df_era5.z)])
+
+total_mass = 1 - df_era5.ciwc.values - df_era5.clwc.values - df_era5.crwc.values - df_era5.cswc.values
+denice = df_era5.ciwc.values * (1/total_mass) * kgkg_to_kgm3(df_era5.q.values * (1/total_mass),
+                                            df_era5.p.values, df_era5.t.values) * 1000
+denliq = df_era5.clwc.values * (1/total_mass) * kgkg_to_kgm3(df_era5.q.values * (1/total_mass),
+                                            df_era5.p.values, df_era5.t.values) * 1000
+
+fig = plt.figure(figsize=(12, 8))
+gs = gridspec.GridSpec(1, 3,
+                       width_ratios=[3, 1, 1],
+                       height_ratios=[4],
+                       hspace=0, wspace=0.4)
+ax1 = plt.subplot(gs[:, :-1])
+ax2 = plt.subplot(gs[:, 2])
+
+fig.suptitle("ERA5 Reanalysis dataset (hourly pressure levels) {0} \nLon. {1[0]}, Lat. {1[1]}"
+             .format(df_era5.time[0].strftime(format='%Y-%m-%d %H:%M'), lonlat), ha='center')
+ax1.set_xlabel('Frequency [GHz]')
+ax1.set_ylabel('${T_B}$ [K]')
+
+rte = TbCloudRTE(df_era5.z.values, df_era5.p.values, df_era5.t.values, df_era5.rh.values, frq, ang)
+rte.init_absmdl('R20')
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.h2oll = import_lineshape('h2oll')
+for cloudy in [False, True]:
+    rte.cloudy = cloudy
+    rte.emissivity = 0.6
+    rte.init_cloudy(cldh, denice, denliq)
+    df = rte.execute()
+    df = df.set_index(frq)
+    c = '(cloudy)' if cloudy else '(clearsky)'
+    df.tbtotal.plot(ax=ax1, linewidth=2, label='{} {}'.format(mdl, c))
+
+ax2.set_xlabel('Density [$g/m^3$]')
+ax2.set_ylabel('Pressure [hPa]')
+ax2.plot(denliq, df_era5.p.values, label='LWC')
+ax2.plot(denice, df_era5.p.values, label='IWC')
+ax2.invert_yaxis()
+
+ax1.legend()
+ax2.legend()
+
+gs.tight_layout(fig)
+plt.show()
+
+
+ERA5 Reanalysis dataset (hourly pressure levels) 2023-05-16 18:00  Lon. 15.13, Lat. 37.87
/home/runner/work/pyrtlib/pyrtlib/pyrtlib/tb_spectrum.py:221: UserWarning: It seems that TbCloudRTE.cloudy attribute is not set to True. Sets it to True for running model in cloudy condition.
+  warnings.warn("It seems that TbCloudRTE.cloudy attribute is not set to True. "
+
+
+

Total running time of the script: (0 minutes 4.233 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_bt_igra2.html b/en/main/examples/plot_bt_igra2.html new file mode 100644 index 00000000..70f2f582 --- /dev/null +++ b/en/main/examples/plot_bt_igra2.html @@ -0,0 +1,614 @@ + + + + + + + + + + + + Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation). — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).#

+

This example shows how to use the +pyrtlib.tb_spectrum.TbCloudRTE method to calculate brightness temperature from satellite (upwelling) using +observations from IGRA2 Upper Air Archive and comparison of BT with the extrapoletd profile.

+
import numpy as np
+from datetime import datetime
+
+import matplotlib.pyplot as plt
+plt.rcParams.update({'font.size': 15})
+
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.climatology import ProfileExtrapolation
+from pyrtlib.utils import dewpoint2rh, to_kelvin
+from pyrtlib.absorption_model import H2OAbsModel
+from pyrtlib.apiwebservices import IGRAUpperAir
+
+date = datetime(2020, 6, 1, 12)
+station = 'SPM00008221'
+df_igra2, header = IGRAUpperAir.request_data(date, station)
+
+df_igra2 = df_igra2[df_igra2.pressure.notna() &
+                    df_igra2.temperature.notna() &
+                    df_igra2.dewpoint.notna() &
+                    df_igra2.height.notna()]
+
+z, p, t = df_igra2.height.values / 1000, df_igra2.pressure.values, to_kelvin(df_igra2.temperature.values)
+
+rh = dewpoint2rh(df_igra2.dewpoint, df_igra2.temperature).values
+
+mdl = 'R21SD'
+frq = np.arange(20, 201, 1)
+nf = len(frq)
+
+rte = TbCloudRTE(z, p, t, rh, frq)
+rte.init_absmdl('R20')
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.set_ll()
+df = rte.execute()
+df = df.set_index(frq)
+
+
+
/home/runner/work/pyrtlib/pyrtlib/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (14) or minimum pressure value lower than 10 hPa (20.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa
+  warnings.warn(f"Number of levels too low ({len(self.p)}) or "
+
+
+

Extrapolation of profile

+
ex = ProfileExtrapolation()
+zz, pp, tt, rhh = ex.profile_extrapolation(header.latitude.values[0], 6, z, (p, t, rh))
+
+rte = TbCloudRTE(zz, pp, tt, rhh, frq)
+rte.init_absmdl('R20')
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.set_ll()
+dff = rte.execute()
+dff = dff.set_index(frq)
+
+
+
/home/runner/work/pyrtlib/pyrtlib/pyrtlib/climatology/extrapolation.py:511: RuntimeWarning: overflow encountered in exp
+  14.3542 * np.exp(-0.4174 * h - 0.02290 * h**2 +
+
+
+

Plotting

+
fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+plt.suptitle("{}, {}, {} - {}".format(header.site_id.values[0], header.latitude.values[0], header.longitude.values[0], header.date.values[0]), y=0.96)
+plt.title("IGRA2 UpperAir Radiosonde Archive", fontsize=10, ha='center')
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('${T_B}$ [K]')
+df.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(header.site_id.values[0], mdl))
+dff.tbtotal.plot(ax=ax, linewidth=2, label='Extrap {} - {}'.format(header.site_id.values[0], mdl))
+ax.grid(True, 'both')
+ax.legend()
+plt.show()
+
+
+SPM00008221, 40.4653, -3.5797 - 2020-06-01T12:00:00.000000000, IGRA2 UpperAir Radiosonde Archive

Difference BT

+
df['delta'] = dff.tbtotal - df.tbtotal
+df.delta.plot(linewidth=2, xlabel='Frequency [GHz]', ylabel='$\Delta T_B$ [K]', grid=True, figsize=(12, 8))
+
+
+plot bt igra2
<Axes: xlabel='Frequency [GHz]', ylabel='$\\Delta T_B$ [K]'>
+
+
+

Total running time of the script: (0 minutes 7.631 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_bt_wyoming.html b/en/main/examples/plot_bt_wyoming.html new file mode 100644 index 00000000..3aef29ef --- /dev/null +++ b/en/main/examples/plot_bt_wyoming.html @@ -0,0 +1,585 @@ + + + + + + + + + + + + Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations. — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.#

+

This example shows how to use the +pyrtlib.tb_spectrum.TbCloudRTE method to calculate brightness temperature from satellite (upwelling) using +observations from Wyoming Upper Air Archive.

+
import matplotlib.pyplot as plt
+
+plt.rcParams.update({'font.size': 15})
+import numpy as np
+from datetime import datetime
+
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import dewpoint2rh, import_lineshape, to_kelvin
+from pyrtlib.absorption_model import H2OAbsModel
+from pyrtlib.apiwebservices import WyomingUpperAir
+
+date = datetime(2021, 4, 22, 12)
+station = 'LIRE'
+df_w = WyomingUpperAir.request_data(date, station)
+
+z, p, t, q = df_w.height.values / 1000, \
+               df_w.pressure.values, \
+               to_kelvin(df_w.temperature.values), \
+               df_w.mixr.values
+
+rh = dewpoint2rh(df_w.dewpoint, df_w.temperature).values
+
+mdl = 'R21SD'
+ang = np.array([90.])
+frq = np.arange(20, 201, 1)
+nf = len(frq)
+
+rte = TbCloudRTE(z, p, t, rh, frq, ang)
+rte.init_absmdl('R20')
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.h2oll = import_lineshape('h2oll')
+df = rte.execute()
+df = df.set_index(frq)
+
+fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+plt.suptitle(df_w.title[0], y=0.96)
+plt.title("Wyoming UpperAir Radiosonde Archive", fontsize=10, ha='center')
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('${T_B}$ [K]')
+df.tbtotal.plot(ax=ax, linewidth=2, label='{} - {}'.format(df_w.station[0], mdl))
+ax.grid(True, 'both')
+ax.legend()
+plt.show()
+
+
+16245 LIRE Pratica Di Mare Observations at 12Z 22 Apr 2021, Wyoming UpperAir Radiosonde Archive
/home/runner/work/pyrtlib/pyrtlib/pyrtlib/apiwebservices/wyomingupperair.py:147: FutureWarning: The 'delim_whitespace' keyword in pd.read_csv is deprecated and will be removed in a future version. Use ``sep='\s+'`` instead
+  df = pd.read_csv(tabular_data, header=None, skiprows=5, delim_whitespace=True, usecols=[0, 1, 2, 3, 4, 5], names=col_names)
+
+
+

Total running time of the script: (0 minutes 14.256 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_log_dependance_tb.html b/en/main/examples/plot_log_dependance_tb.html new file mode 100644 index 00000000..c6ff55fb --- /dev/null +++ b/en/main/examples/plot_log_dependance_tb.html @@ -0,0 +1,617 @@ + + + + + + + + + + + + Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz#

+

This example shows the logarithmic dependence of monochromatic radiance at 22.235 GHz and 183 GHz +on the water vapor content in the atmosphere. The brigthness temperature are calculated using the +pyrtlib.tb_spectrum.TbCloudRTE method for the zenith view angle and +the following water vapor content: 1/8, 1/4, 1/2, 1, 2, 4, 8 times the water vapor +content of the reference atmosphere. The reference atmosphere is the Tropical atmosphere

+
# Reference: Huang & Bani, 2014.
+
+import numpy as np
+
+import matplotlib.pyplot as plt
+import matplotlib as mpl
+mpl.rcParams["axes.spines.right"] = True
+mpl.rcParams["axes.spines.top"] = True
+plt.rcParams.update({'font.size': 30})
+
+
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.absorption_model import O2AbsModel
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)
+
+tb_23 = []
+tb_183 = []
+tau_23 = []
+tau_183 = []
+m = [1/8, 1/4, 1/2, 1, 2, 4, 8]
+
+for i in range(0, 7):
+    gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O) * m[i]
+    rh = mr2rh(p, t, gkg)[0] / 100
+
+    # frq = np.arange(20, 201, 1)
+    frq = np.array([22.235, 183])
+    rte = TbCloudRTE(z, p, t, rh, frq)
+    rte.init_absmdl('R22SD')
+    O2AbsModel.model = 'R22'
+    df = rte.execute()
+    df['tau'] = df.tauwet + df.taudry
+    tb_23.append(df.tbtotal[0])
+    tb_183.append(df.tbtotal[1])
+    tau_23.append(df.tau[0])
+    tau_183.append(df.tau[1])
+
+tb_023 = np.array(tb_23) - tb_23[3]
+tb_0183 = np.array(tb_183) - tb_183[3]
+
+fig, axes = plt.subplots(2, 2, figsize=(24, 14), sharex=True)
+axes[0, 1].tick_params(axis='both', direction='in', length=10, width=.5)
+axes[0, 1].plot(np.log2(m), tb_0183, linestyle='--', linewidth=3, color='black')
+axes[0, 1].plot(np.log2(m), tb_0183, marker='+', linestyle='None', color='r', ms=20, markeredgewidth=5)
+axes[0, 1].set_title(f"{frq[1]} GHz")
+axes[0, 1].grid(True, 'both')
+axes[0, 1].annotate("c)", xy=(0.02, 0.05), xycoords='axes fraction', fontsize=40)
+
+axes[0, 0].set_ylabel('$\Delta T_B$ [K]')
+axes[0, 0].tick_params(axis='both', direction='in', length=10, width=.5)
+axes[0, 0].plot(np.log2(m), tb_023, linestyle='--', linewidth=3, color='black')
+axes[0, 0].plot(np.log2(m), tb_023, marker='+', linestyle='None', color='r', ms=20, markeredgewidth=5)
+axes[0, 0].set_title(f"{frq[0]} GHz")
+axes[0, 0].grid(True, 'both')
+axes[0, 0].annotate("a)", xy=(0.02, 0.05), xycoords='axes fraction', fontsize=40)
+
+axes[1, 1].set_xlabel('$log_2(SF_{q_{H_2O}}))$')
+axes[1, 1].tick_params(axis='both', direction='in', length=10, width=.5)
+axes[1, 1].plot(np.log2(m), tau_183, linestyle='--', linewidth=3, color='black')
+axes[1, 1].plot(np.log2(m), tau_183, marker='+', linestyle='None', color='blue', ms=20, markeredgewidth=5)
+axes[1, 1].grid(True, 'both')
+axes[1, 1].annotate("d)", xy=(0.02, 0.88), xycoords='axes fraction', fontsize=40)
+
+axes[1, 0].set_xlabel('$log_2(SF_{q_{H_2O}})$')
+axes[1, 0].set_ylabel('$\\tau$ [Np]')
+axes[1, 0].tick_params(axis='both', direction='in', length=10, width=.5)
+axes[1, 0].plot(np.log2(m), tau_23, linestyle='--', linewidth=3, color='black')
+axes[1, 0].plot(np.log2(m), tau_23, marker='+', linestyle='None', color='blue', ms=20, markeredgewidth=5)
+axes[1, 0].grid(True, 'both')
+axes[1, 0].annotate("b)", xy=(0.02, 0.88), xycoords='axes fraction', fontsize=40)
+
+plt.tight_layout()
+
+plt.show()
+
+
+22.235 GHz, 183.0 GHz

Total running time of the script: (0 minutes 1.254 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_model_cloudy.html b/en/main/examples/plot_model_cloudy.html new file mode 100644 index 00000000..1ee75cb2 --- /dev/null +++ b/en/main/examples/plot_model_cloudy.html @@ -0,0 +1,606 @@ + + + + + + + + + + + + Performing Downwelling Brightness Temperature calculation in cloudy condition. — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Performing Downwelling Brightness Temperature calculation in cloudy condition.#

+

This example shows how to use the +pyrtlib.tb_spectrum.TbCloudRTE method to calculate brightness temperature from ground (downwelling) in cloudy condition

+
import matplotlib.pyplot as plt
+from matplotlib.ticker import FixedLocator, FormatStrFormatter
+plt.rcParams.update({'font.size': 15})
+import numpy as np
+np.seterr('raise')
+
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+atm = ['Tropical',
+       'Midlatitude Summer',
+       'Midlatitude Winter',
+       'Subarctic Summer',
+       'Subarctic Winter',
+       'U.S. Standard']
+
+fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+
+z, p, d, t, md = atmp.gl_atm(atmp.MIDLATITUDE_SUMMER)
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+mdl = 'R19SD'
+
+ang = np.array([90.])
+frq = np.arange(20, 61, 1)
+nf = len(frq)
+
+denliq = np.zeros(z.shape)
+denice = np.zeros(z.shape)
+cldh = np.empty((2, 2))
+
+for i in [False, True]:
+    if not i:
+        text_plot = 'clear-sky'
+    else:
+        # build a cloud
+        ib = 1
+        it = 3
+        denliq[ib:it + 1] = 10 * np.ones((it - ib + 1))
+        cldh[:, 0] = np.array([z[ib], z[it]])
+        ib = 29
+        it = 31
+        denice[ib:it + 1] = 0.1 * np.ones((it - ib + 1))
+        cldh[:, 1] = np.array([z[ib], z[it]])
+        text_plot = 'cloudy'
+
+    ax.set_xlabel('Frequency (GHz)')
+    ax.set_ylabel('BT (K)')
+
+    rte = TbCloudRTE(z, p, t, rh, frq, ang)
+    rte.satellite = False
+    rte.cloudy = i
+    rte.init_cloudy(cldh, denice, denliq)
+    rte.init_absmdl(mdl)
+    df = rte.execute()
+
+    df = df.set_index(frq)
+    df.tbtotal.plot(x=frq, ax=ax, linewidth=1,
+                    label='{} - {} ({})'.format(atm[atmp.MIDLATITUDE_SUMMER], mdl, text_plot))
+
+ax.grid(True, 'both')
+ax.legend()
+plt.show()
+
+
+plot model cloudy
/home/runner/work/pyrtlib/pyrtlib/pyrtlib/tb_spectrum.py:221: UserWarning: It seems that TbCloudRTE.cloudy attribute is not set to True. Sets it to True for running model in cloudy condition.
+  warnings.warn("It seems that TbCloudRTE.cloudy attribute is not set to True. "
+
+
+

Total running time of the script: (0 minutes 2.609 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_water_vapour_profile.html b/en/main/examples/plot_water_vapour_profile.html new file mode 100644 index 00000000..39ee1e91 --- /dev/null +++ b/en/main/examples/plot_water_vapour_profile.html @@ -0,0 +1,616 @@ + + + + + + + + + + + + Water Vapour Absorption Profiles — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Water Vapour Absorption Profiles#

+

This example shows how to use the +pyrtlib.rt_equation.RTEquation.clearsky_absorption() method to generate water vapor absorption profil and +dry air absorption profile using R16 model.

+
import matplotlib.pyplot as plt
+
+plt.rcParams.update({'font.size': 15})
+import matplotlib.ticker as ticker
+from matplotlib.ticker import ScalarFormatter
+import numpy as np
+
+from pyrtlib.rt_equation import RTEquation
+from pyrtlib.absorption_model import H2OAbsModel, O2AbsModel, AbsModel
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.utils import ppmv2gkg, mr2rh, import_lineshape, height_to_pressure
+
+z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL)
+frq = np.arange(20, 61, 1)
+ice = 0
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+e, rho = RTEquation.vapor(t, rh, ice)
+
+mdl = 'R19SD'
+AbsModel.model = mdl
+H2OAbsModel.h2oll = import_lineshape('h2oll')
+O2AbsModel.o2ll = import_lineshape('o2ll')
+
+awet = np.zeros((len(frq), len(z)))
+adry = np.zeros((len(frq), len(z)))
+
+for j in range(0, len(frq)):
+    awet[j, :], adry[j, :] = RTEquation.clearsky_absorption(p, t, e, frq[j])
+
+fig, ax = plt.subplots(1, 2, figsize=(12, 12))
+axis_lim = [0, 7]
+
+
+def tick_function_pressure(x):
+    v = height_to_pressure(x * 1000)
+    return ["%.2f" % z for z in v]
+
+
+ax[1].yaxis.set_label_position("right")
+ax[1].yaxis.tick_right()
+ax[1].yaxis.set_major_formatter(ScalarFormatter())
+ax[1].yaxis.set_major_formatter(ticker.FuncFormatter(lambda y, _: '{:g}'.format(y)))
+
+mask = np.isin(frq, [20, 22, 60])
+freq = np.nonzero(mask)
+for i in freq[0]:
+    ax[0].plot(awet[i, :], z, label='{} GHz - {}'.format(frq[i], mdl))
+    ax[1].plot(adry[i, :], z, label='{} GHz - {}'.format(frq[i], mdl))
+
+# ax[0].plot(rho, z, label='Vapor density [g/m3]', linestyle='--')
+
+ax[0].set_xlabel("WV [Np/km]")
+ax[1].set_xlabel("DryAir [Np/km]")
+ax[1].axes.get_yaxis().set_visible(False)
+ax[0].set_ylabel("Altitude [km]")
+
+ax[0].set_ylim(axis_lim)
+ax[1].set_ylim(axis_lim)
+
+new_tick_locations_pressure = np.arange(0, 120, 1)
+
+ax3 = ax[0].twinx()
+rspine = ax3.spines['left'].set_position(('axes', -0.2))
+ax3.yaxis.set_ticks_position("left")
+ax3.yaxis.set_label_position("left")
+ax3.set_frame_on(True)
+ax3.patch.set_visible(False)
+ax3.set_ylabel('Pressure [hPa]')
+ax3.set_yticks(new_tick_locations_pressure)
+ax3.set_yticklabels(tick_function_pressure(new_tick_locations_pressure))
+ax3.set_ylim(ax[1].get_ylim())
+
+ax[0].legend(loc="upper right")
+ax[1].legend(loc="upper right")
+
+fig.tight_layout()
+
+
+plot water vapour profile

Total running time of the script: (0 minutes 1.503 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/plot_weighting_functions.html b/en/main/examples/plot_weighting_functions.html new file mode 100644 index 00000000..654c1429 --- /dev/null +++ b/en/main/examples/plot_weighting_functions.html @@ -0,0 +1,592 @@ + + + + + + + + + + + + Computation of Weighting Functions — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Computation of Weighting Functions#

+

This example shows how to use the pyrtlib.weighting_functions.WeightingFunctions method +to compute the weighting functions for the MWS channels for the U.S. standard atmospheric profile.

+
import numpy as np
+import warnings
+warnings.filterwarnings("ignore", category=UserWarning)
+from pyrtlib.weighting_functions import WeightingFunctions
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies_sat
+
+z, p, _, t, md = atmp.gl_atm(atmp.US_STANDARD)
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+wf = WeightingFunctions(z, p, t, rh)
+wf.frequencies = np.array([50.5, 53.2, 54.35, 54.9, 59.4, 58.825, 58.4])
+wgt = wf.generate_wf()
+
+wf.plot_wf(wgt, 'Downlooking', ylim=[0, 60], legend=True, figsize=(8, 6), dpi=100)
+
+
+Downlooking

As above but with the weighting functions computed in uplooking mode.

+
wf.satellite = False
+wgt = wf.generate_wf()
+
+wf.plot_wf(wgt, 'Uplooking', ylim=[0, 10], figsize=(8, 6), dpi=100)
+
+
+Uplooking

The weighting functions can also be computed for a different set of channels. +The bandpass values are used to compute the weighting functions for the ATMS channels. +The following code compute the weighting functions for the ATMS channels 5-15.

+
cf53 = 53.596
+cf57 = 57.290344
+frq = np.array([52.8, cf53-0.115, cf53+0.115, 54.4, 54.94, 55.5, cf57,
+       cf57-0.217, cf57+0.217,
+       cf57-0.3222-0.048, cf57-0.3222+0.048, cf57+0.3222-0.048, cf57+0.3222+0.048,
+       cf57-0.3222-0.022, cf57-0.3222+0.022, cf57+0.3222-0.022, cf57+0.3222+0.022,
+       cf57-0.3222-0.010, cf57-0.3222+0.010, cf57+0.3222-0.010, cf57+0.3222+0.010,
+       cf57-0.3222-0.0045, cf57-0.3222+0.0045, cf57+0.3222-0.0045, cf57+0.3222+0.0045])
+
+wf.satellite = True
+wf.frequencies = frq
+wf.bandpass = np.array([1, 2, 1, 1, 1, 1, 2, 4, 4, 4, 4])
+wf.legend_labels = [f'Channel {i+5}' for i in range(len(wf.bandpass))]
+wgt = wf.generate_wf()
+
+wf.plot_wf(wgt, 'ATMS Channels 5-15', ylim=[0, 70], xlim=[0, 0.11], legend=True, figsize=(8, 6), dpi=100)
+
+
+ATMS Channels 5-15

The weighting functions can also be computed for a different set of frequencies. +The following code compute the weighting functions for the MWS channels for a standard tropical atmosphere. +for grouped frequencies.

+
wf.satellite = True
+wf.frequencies = get_frequencies_sat('MWS')
+wgt = wf.generate_wf()
+wf.plot_wf_grouped(wgt, 'MWS Channels (grouped)', ylim=[0, 60],
+                  grouped_frequencies=[4, 9, 19, 1, 13],
+                  grouped_labels=['23-52', '53-55', '57', '89', '164-229'], dpi=350)
+
+
+MWS Channels (grouped)

Total running time of the script: (0 minutes 9.727 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/sg_execution_times.html b/en/main/examples/sg_execution_times.html new file mode 100644 index 00000000..203e9db9 --- /dev/null +++ b/en/main/examples/sg_execution_times.html @@ -0,0 +1,571 @@ + + + + + + + + + + + + Computation times — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + + + +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

Computation times#

+

09:08.777 total execution time for 15 files from examples:

+
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Example

Time

Mem (MB)

Uncertainty Example (uncertainty_tutorial.py)

04:31.371

0.0

Performing sensitivity of spectroscopic parameters (plot_brightness_temperature_uncertainties.py)

03:03.841

0.0

Generic Example (generic_tutorial.py)

00:15.012

0.0

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations. (plot_bt_wyoming.py)

00:14.256

0.0

Performing Downwelling Brightness Temperature calculation (plot_brightness_temperature_down.py)

00:12.680

0.0

Performing Downwelling Brightness Temperature calculation with Ozone (plot_brightness_temperature_wO3.py)

00:12.127

0.0

Computation of Weighting Functions (plot_weighting_functions.py)

00:09.727

0.0

Performing Upwelling Brightness Temperature calculation (plot_brightness_temperature_up.py)

00:07.780

0.0

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation). (plot_bt_igra2.py)

00:07.631

0.0

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations. (plot_bt_era5.py)

00:04.539

0.0

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition. (plot_bt_era5_cloudy_profile.py)

00:04.233

0.0

Performing Downwelling Brightness Temperature calculation in cloudy condition. (plot_model_cloudy.py)

00:02.609

0.0

Water Vapour Absorption Profiles (plot_water_vapour_profile.py)

00:01.503

0.0

Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz (plot_log_dependance_tb.py)

00:01.254

0.0

Atmospheric Profiles (plot_atmosphere.py)

00:00.211

0.0

+
+
+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/examples/uncertainty_tutorial.html b/en/main/examples/uncertainty_tutorial.html new file mode 100644 index 00000000..8fd68267 --- /dev/null +++ b/en/main/examples/uncertainty_tutorial.html @@ -0,0 +1,729 @@ + + + + + + + + + + + + Uncertainty Example — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ + +
+

Uncertainty Example#

+

This example shows how to use the uncertainty module by simulating the downwelling brightness temperature +and then calculate the uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameter.

+
import matplotlib.pyplot as plt
+
+plt.rcParams.update({'font.size': 15})
+import matplotlib.ticker as ticker
+from matplotlib.ticker import ScalarFormatter
+import numpy as np
+import pandas as pd
+
+
+
+

Import pyrtlib package and tools#

+
from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.absorption_model import O2AbsModel
+from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies, constants
+from pyrtlib.uncertainty import covariance_matrix
+
+
+
+
+

Define spectroscopic parameters to be perturbed and them uncertainties#

+
O2_parameters = {
+    'O2S': range(1),
+    'X05': [None],
+    'WB300': [None],
+    'O2gamma': range(34),
+    'Y300': range(34),
+    'O2_V': range(34)
+}
+
+HO2_parameters = {
+    'con_Cf_factr': [None],
+    'con_Cs_factr': [None],
+    'gamma_a': range(1),
+    'S': range(1),
+    'con_Xf': [None],
+    'SR': range(1),
+    'con_Xs': [None]
+}
+
+
+
parameters = {**SpectroscopicParameter.oxygen_parameters('R18'),
+              **SpectroscopicParameter.water_parameters('R17')}
+
+parameters['O2S'].uncer = parameters['O2S'].value / 100
+parameters['X05'].uncer = 0.05
+parameters['WB300'].uncer = 0.05
+parameters['O2gamma'].uncer[0: 34] = np.array([0.05, 0.0138964, 0.0138964, 0.0138964, 0.0138964,
+                                               0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,
+                                               0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,
+                                               0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,
+                                               0.0138964, 0.01131274, 0.01131274, 0.01453087, 0.01453087,
+                                               0.01789881, 0.01789881, 0.02116733, 0.02134575, 0.02476584,
+                                               0.02476584, 0.02839177, 0.02839177, 0.03203582])
+parameters['Y300'].uncer[0: 34] = np.array([0.01, 0.00404133, 0.00502581, 0.00786035, 0.00820458,
+                                            0.00935381, 0.00809901, 0.0078214, 0.00544132, 0.00460658,
+                                            0.00225117, 0.00209907, 0.0039399, 0.00484963, 0.00799499,
+                                            0.00878031, 0.01202685, 0.01261821, 0.01577055, 0.01615187,
+                                            0.01907464, 0.01926978, 0.0218633, 0.02188287, 0.02416567,
+                                            0.02401716, 0.02604178, 0.02575469, 0.02762271, 0.02720018,
+                                            0.02897909, 0.02843003, 0.03019027, 0.02951218])
+parameters['O2_V'].uncer[0: 34] = np.array([0.00288243, 0.04655306, 0.03914166, 0.06110402, 0.0494057,
+                                            0.05728709, 0.06444876, 0.07279906, 0.06385863, 0.07007177,
+                                            0.05963384, 0.06373721, 0.11789158, 0.12307213, 0.10151855,
+                                            0.10427449, 0.08328802, 0.08486523, 0.10130857, 0.10244286,
+                                            0.15750036, 0.15814743, 0.24421784, 0.24343211, 0.3084326,
+                                            0.30576201, 0.34568212, 0.34107696, 0.36123446, 0.35507902,
+                                            0.37305309, 0.36544166, 0.38490936, 0.37583782])
+
+parameters['gamma_a'].uncer[0] = 0.039
+parameters['S'].uncer[0] = 0.043 * 1e-25 * constants('light')[0] * 100
+parameters['con_Xf'].uncer = 0.8
+parameters['SR'].uncer[0] = 0.0014
+parameters['con_Xs'].uncer = 0.6
+
+SpectroscopicParameter.set_parameters(parameters)
+
+
+
+
+

Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used.#

+
z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)
+
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+
+
+
+

Use frequencies set of HATPRO Radiometer#

+
interp = 0.5
+frq = sorted(list(set().union(get_frequencies('hat'), np.arange(20, 60 + interp, interp).tolist())))
+
+
+
+
+

Performing uncertainty of brightness temperature#

+

Default calculatoin consideres no cloud and no perturbation

+
rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters)
+rte.satellite = False
+rte.init_absmdl('R17')
+O2AbsModel.model = 'R18'
+O2AbsModel.set_ll()
+df = rte.execute()
+
+
+
df_out = pd.DataFrame()
+df_out['freq'] = frq
+df_out['tb'] = df.tbtotal
+
+
+
+
+

Calculate Jacobian matrix#

+

\(Cov(T_{b}) = K_{p} \times Cov(p) \times K_{p}^T\)

+
cnt = 0
+for k, v in (O2_parameters | HO2_parameters).items():
+    for i in v:
+        amu_p = AbsModUncertainty.parameters_perturbation([k], 'max', index=i)
+        rte.set_amu(amu_p)
+        df = rte.execute()
+        if k =='O2S':
+            parameters[k].uncer = parameters[k].uncer / parameters[k].value * 100
+        if k in ['con_Cf_factr', 'con_Cs_factr']:
+            parameters[k].uncer = parameters[k[0:6]].value * parameters[k].uncer
+        field_name = 'p_{}{}'.format(k, '_' + str(i) if i else '')
+        delta_tb = df.tbtotal.values - df_out.tb.values
+        if i is not None:
+            o = pd.Series(delta_tb / parameters[k].uncer[i], name=field_name)
+        else:
+            o = pd.Series(delta_tb / parameters[k].uncer, name=field_name)
+        df_out = pd.concat([df_out, o], axis=1)
+        cnt += 1
+
+
+
+
+

Calculate uncertainty (sigma) for BT#

+

Using covariance matrix by [Cimini-2018] which identifies 111 parameters (6 for water vapor and 105 for oxygen)

+
+
+

Using covariance matrix by [Cimini-2019] which add the \({n_{CS}}\) parameter for water vapour

+
Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq'])].values
+covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_112), Kp.T)
+sigma_tb = np.sqrt(np.diag(covtb))
+params['sigma_tb_with_con_Xs'] = sigma_tb
+
+
+
params.plot(x='freq', y=['sigma_tb', 'sigma_tb_with_con_Xs'],
+            title="${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters",
+            xlabel='Frequency [GHz]', ylabel='$\sigma_{T_B}$ [K]',
+            label=[atmp.atm_profiles()[atmp.TROPICAL],
+                   atmp.atm_profiles()[atmp.TROPICAL] + ' with ${H_2 O}$ ${n_{CS}}$ parameter'],
+                   figsize=(12,8))
+plt.grid()
+
+
+${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters

Total running time of the script: (4 minutes 31.371 seconds)

+ +

Gallery generated by Sphinx-Gallery

+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.AbsModel.__init__.html b/en/main/generated/pyrtlib.absorption_model.AbsModel.__init__.html new file mode 100644 index 00000000..b57c8c4d --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.AbsModel.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.absorption_model.AbsModel.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.AbsModel.__init__#

+
+
+AbsModel.__init__() None#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.AbsModel.html b/en/main/generated/pyrtlib.absorption_model.AbsModel.html new file mode 100644 index 00000000..9fc4f08c --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.AbsModel.html @@ -0,0 +1,720 @@ + + + + + + + + + + + + pyrtlib.absorption_model.AbsModel — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.AbsModel#

+
+
+class pyrtlib.absorption_model.AbsModel#
+

Bases: object

+

This is an abstraction class to define the absorption model.

+

Methods

+
+ + + + + + + + + + + +

__init__()

implemented_models()

Return all the implemented absorption models.

set_ll()

Set the linelist to the absorption model.

+
+

Attributes

+
+ + + + + +

model

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.AbsModel.implemented_models.html b/en/main/generated/pyrtlib.absorption_model.AbsModel.implemented_models.html new file mode 100644 index 00000000..43e6fd2d --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.AbsModel.implemented_models.html @@ -0,0 +1,735 @@ + + + + + + + + + + + + pyrtlib.absorption_model.AbsModel.implemented_models — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.AbsModel.implemented_models#

+
+
+static AbsModel.implemented_models() Dict[str, List[str]]#
+

Return all the implemented absorption models.

+
+
Returns:
+

The list the implemented absorption models

+
+
Return type:
+

List[str]

+
+
+
+

Example

+
>>> from pyrtlib.absorption_model import AbsModel
+>>> AbsModel.implemented_models()
+{'Oxygen': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R22'],
+    'WaterVapour': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R21SD',
+    'R22SD'],
+    'Ozone': ['R18', 'R22']}
+
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.AbsModel.set_ll.html b/en/main/generated/pyrtlib.absorption_model.AbsModel.set_ll.html new file mode 100644 index 00000000..f2b48437 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.AbsModel.set_ll.html @@ -0,0 +1,714 @@ + + + + + + + + + + + + pyrtlib.absorption_model.AbsModel.set_ll — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.AbsModel.set_ll#

+
+
+static AbsModel.set_ll() None#
+

Set the linelist to the absorption model.

+
+

See also

+

import_lineshape()

+
+
+

Example

+
from pyrtlib.absorption_model import H2OAbsModel
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.set_ll()
+
+
+
+
+

Note

+

Model must be set with model property before calling this method (see Example).

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.__init__.html b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.__init__.html new file mode 100644 index 00000000..5c0d6965 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.absorption_model.H2OAbsModel.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.H2OAbsModel.__init__#

+
+
+H2OAbsModel.__init__() None#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.html b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.html new file mode 100644 index 00000000..399029fa --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.html @@ -0,0 +1,748 @@ + + + + + + + + + + + + pyrtlib.absorption_model.H2OAbsModel.h2o_absorption — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.H2OAbsModel.h2o_absorption#

+
+
+H2OAbsModel.h2o_absorption(pdrykpa: ndarray, vx: ndarray, ekpa: ndarray, frq: ndarray, amu: Optional[dict] = None) Optional[Tuple[ndarray, ndarray]]#
+

Compute absorption coefficients in atmosphere due to water vapor for all models.

+
+
Parameters:
+
+
+
Returns:
+

WV line and continuum absorption terms (ppm)

+
+
Return type:
+

Union[ Tuple[numpy.ndarray, numpy.ndarray], None]

+
+
+

References

+ +
+

Example

+
import numpy as np
+from pyrtlib.rt_equation import RTEquation
+from pyrtlib.absorption_model import H2OAbsModel, AbsModel
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.utils import ppmv2gkg, mr2rh, import_lineshape
+
+z, p, d, tk, md = atmp.gl_atm(atmp.TROPICAL)
+frq = np.arange(20, 201, 1)
+ice = 0
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, tk, gkg)[0] / 100
+
+e, rho = RTEquation.vapor(tk, rh, ice)
+
+AbsModel.model = 'R16'
+H2OAbsModel.h2oll = import_lineshape('h2oll')
+for i in range(0, len(z)):
+    v = 300.0 / tk[i]
+    ekpa = e[i] / 10.0
+    pdrykpa = p[i] / 10.0 - ekpa
+    for j in range(0, len(frq)):
+        _, _ = H2OAbsModel().h2o_absorption(pdrykpa, v, ekpa, frq[j])
+
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.html b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.html new file mode 100644 index 00000000..d95f199a --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.html @@ -0,0 +1,714 @@ + + + + + + + + + + + + pyrtlib.absorption_model.H2OAbsModel.h2o_continuum — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.H2OAbsModel.h2o_continuum#

+
+
+H2OAbsModel.h2o_continuum(frq: ndarray, vx: ndarray, nfreq: int) ndarray#
+

Compute the self-continuum absorption of water vapor. +Fit a curve to mtckd 4.1 self-continuum adapted from mt_ckd_h2o_module.f90 (March 20, 2023)

+
+
Parameters:
+
    +
  • frq (np.ndarray) – Frequency (GHz)

  • +
  • vx (np.ndarray) – Theta (adim) - (normalised temperature 300/t(K))

  • +
  • nfreq (int) – Number of frequencies

  • +
+
+
Returns:
+

self-continuum term ((1/cm)/mbar**2)

+
+
Return type:
+

np.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.html b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.html new file mode 100644 index 00000000..72ea1779 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.html @@ -0,0 +1,729 @@ + + + + + + + + + + + + pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24 — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24#

+
+
+H2OAbsModel.h2o_continuum_mwl24(frq: ndarray, vx: ndarray) ndarray#
+

H2O self-continuum absorption normalized to the squared water vapor pressure (1/cm)/mbar**2 +Based on the known measurements meta-analysis and theoretical calculations

+
+
Parameters:
+
    +
  • frq (np.ndarray) – Frequency (GHz)

  • +
  • vx (np.ndarray) – Theta (adim) - (normalised temperature 300/t(K))

  • +
+
+
Returns:
+

self-continuum term ((1/cm)/mbar**2), multiply by pvap**2 * 1.E5 to get Np/km

+
+
Return type:
+

np.ndarray

+
+
+
+
Reference:
+ + + +
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.html b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.html new file mode 100644 index 00000000..ce7ab1b9 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.html @@ -0,0 +1,734 @@ + + + + + + + + + + + + pyrtlib.absorption_model.H2OAbsModel — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.H2OAbsModel#

+
+
+class pyrtlib.absorption_model.H2OAbsModel#
+

Bases: AbsModel

+

This class contains the \(H_2O\) absorption model used in pyrtlib.

+

Methods

+
+ + + + + + + + + + + + + + + + + + + + +

__init__()

h2o_absorption(pdrykpa, vx, ekpa, frq[, amu])

Compute absorption coefficients in atmosphere due to water vapor for all models.

h2o_continuum(frq, vx, nfreq)

Compute the self-continuum absorption of water vapor.

h2o_continuum_mwl24(frq, vx)

H2O self-continuum absorption normalized to the squared water vapor pressure (1/cm)/mbar**2 Based on the known measurements meta-analysis and theoretical calculations

implemented_models()

Return all the implemented absorption models.

set_ll()

Set the linelist to the absorption model.

+
+

Attributes

+
+ + + + + + + + +

h2oll

REFERENCES FOR MEASUREMENTS (freq in GHz, S in Hz*cm^2, W's,D's in GHZ/bar, X's & A dimensionless) updated Dec.

model

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.html b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.html new file mode 100644 index 00000000..260b1e16 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.html @@ -0,0 +1,735 @@ + + + + + + + + + + + + pyrtlib.absorption_model.H2OAbsModel.implemented_models — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.H2OAbsModel.implemented_models#

+
+
+static H2OAbsModel.implemented_models() Dict[str, List[str]]#
+

Return all the implemented absorption models.

+
+
Returns:
+

The list the implemented absorption models

+
+
Return type:
+

List[str]

+
+
+
+

Example

+
>>> from pyrtlib.absorption_model import AbsModel
+>>> AbsModel.implemented_models()
+{'Oxygen': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R22'],
+    'WaterVapour': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R21SD',
+    'R22SD'],
+    'Ozone': ['R18', 'R22']}
+
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.html b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.html new file mode 100644 index 00000000..9b1e5d96 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.html @@ -0,0 +1,724 @@ + + + + + + + + + + + + pyrtlib.absorption_model.H2OAbsModel.set_ll — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.H2OAbsModel.set_ll#

+
+
+static H2OAbsModel.set_ll() None#
+

Set the linelist to the absorption model.

+
+

See also

+

import_lineshape()

+
+
+

Example

+
from pyrtlib.absorption_model import H2OAbsModel
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.set_ll()
+
+
+
+
+

Note

+

Model must be set with model property before calling this method (see Example).

+
+
+ +
+

Examples using pyrtlib.absorption_model.H2OAbsModel.set_ll#

+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).

+
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.__init__.html b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.__init__.html new file mode 100644 index 00000000..b23b5868 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.absorption_model.LiqAbsModel.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.LiqAbsModel.__init__#

+
+
+LiqAbsModel.__init__() None#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.html b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.html new file mode 100644 index 00000000..22e5f19e --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.html @@ -0,0 +1,723 @@ + + + + + + + + + + + + pyrtlib.absorption_model.LiqAbsModel — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.LiqAbsModel#

+
+
+class pyrtlib.absorption_model.LiqAbsModel#
+

Bases: AbsModel

+

This class contains the absorption model used in pyrtlib.

+

Methods

+
+ + + + + + + + + + + + + + +

__init__()

implemented_models()

Return all the implemented absorption models.

liquid_water_absorption(water, freq, temp)

Computes absorption in Nepers/km by suspended liquid water droplets.

set_ll()

Set the linelist to the absorption model.

+
+

Attributes

+
+ + + + + +

model

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.html b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.html new file mode 100644 index 00000000..66b69b31 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.html @@ -0,0 +1,735 @@ + + + + + + + + + + + + pyrtlib.absorption_model.LiqAbsModel.implemented_models — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.LiqAbsModel.implemented_models#

+
+
+static LiqAbsModel.implemented_models() Dict[str, List[str]]#
+

Return all the implemented absorption models.

+
+
Returns:
+

The list the implemented absorption models

+
+
Return type:
+

List[str]

+
+
+
+

Example

+
>>> from pyrtlib.absorption_model import AbsModel
+>>> AbsModel.implemented_models()
+{'Oxygen': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R22'],
+    'WaterVapour': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R21SD',
+    'R22SD'],
+    'Ozone': ['R18', 'R22']}
+
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.html b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.html new file mode 100644 index 00000000..a4ff6002 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.html @@ -0,0 +1,743 @@ + + + + + + + + + + + + pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption#

+
+
+static LiqAbsModel.liquid_water_absorption(water: ndarray, freq: ndarray, temp: ndarray) ndarray#
+

Computes absorption in Nepers/km by suspended liquid water droplets.

+
+
Parameters:
+
    +
  • water (numpy.ndarray) – Liquid water content (\(g/m^3\)) - (mass of liquid water per volume of dry air).

  • +
  • freq (numpy.ndarray) – Frequency (GHz) - (valid from 0 to 1000 GHz).

  • +
  • temp (numpy.ndarray) – Temperature (K).

  • +
+
+
Returns:
+

Liquid water particels absorption (Np/km)

+
+
Return type:
+

np.ndarray

+
+
+

References

+ +
+

Note

+

Revision history:

+
    +
  • PWR 08/03/92 Original Version

  • +
  • PWR 12/14/98 Temp dependence of eps2 eliminated to agree with MPM93

  • +
  • PWR 06/05/15 Using dilec12 for complex dielectric constant

  • +
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.html b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.html new file mode 100644 index 00000000..21534a33 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.html @@ -0,0 +1,714 @@ + + + + + + + + + + + + pyrtlib.absorption_model.LiqAbsModel.set_ll — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.LiqAbsModel.set_ll#

+
+
+static LiqAbsModel.set_ll() None#
+

Set the linelist to the absorption model.

+
+

See also

+

import_lineshape()

+
+
+

Example

+
from pyrtlib.absorption_model import H2OAbsModel
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.set_ll()
+
+
+
+
+

Note

+

Model must be set with model property before calling this method (see Example).

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.N2AbsModel.__init__.html b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.__init__.html new file mode 100644 index 00000000..eb03bf09 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.absorption_model.N2AbsModel.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.N2AbsModel.__init__#

+
+
+N2AbsModel.__init__() None#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.N2AbsModel.html b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.html new file mode 100644 index 00000000..3b539d44 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.html @@ -0,0 +1,726 @@ + + + + + + + + + + + + pyrtlib.absorption_model.N2AbsModel — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.N2AbsModel#

+
+
+class pyrtlib.absorption_model.N2AbsModel#
+

Bases: AbsModel

+

This class contains the absorption model used in pyrtlib.

+

Methods

+
+ + + + + + + + + + + + + + + + + +

__init__()

implemented_models()

Return all the implemented absorption models.

n2_absorption(t, p, f)

Collision-Induced Power Absorption Coefficient (Neper/km) in air with modification of 1.34 to account for O2-O2 and O2-N2 collisions, as calculated by [Boissoles-2003].

n2_absorption_mwl24(t, p, f)

Calculation of the collision-induced absorption by N2-N2 molecular pairs Based on the Classic Trajectory Calcs by Vigasin/Chistikov/Finenko

set_ll()

Set the linelist to the absorption model.

+
+

Attributes

+
+ + + + + +

model

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.html b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.html new file mode 100644 index 00000000..2bbb3ed7 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.html @@ -0,0 +1,735 @@ + + + + + + + + + + + + pyrtlib.absorption_model.N2AbsModel.implemented_models — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.N2AbsModel.implemented_models#

+
+
+static N2AbsModel.implemented_models() Dict[str, List[str]]#
+

Return all the implemented absorption models.

+
+
Returns:
+

The list the implemented absorption models

+
+
Return type:
+

List[str]

+
+
+
+

Example

+
>>> from pyrtlib.absorption_model import AbsModel
+>>> AbsModel.implemented_models()
+{'Oxygen': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R22'],
+    'WaterVapour': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R21SD',
+    'R22SD'],
+    'Ozone': ['R18', 'R22']}
+
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.html b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.html new file mode 100644 index 00000000..7f703982 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.html @@ -0,0 +1,732 @@ + + + + + + + + + + + + pyrtlib.absorption_model.N2AbsModel.n2_absorption — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.N2AbsModel.n2_absorption#

+
+
+static N2AbsModel.n2_absorption(t: ndarray, p: ndarray, f: ndarray) ndarray#
+

Collision-Induced Power Absorption Coefficient (Neper/km) in air +with modification of 1.34 to account for O2-O2 and O2-N2 collisions, as calculated by [Boissoles-2003].

+
+
Parameters:
+
+
+
Raises:
+

ValueError – Raises to error whether inputn model is unorrect or not available

+
+
Returns:
+

Nitrogen continum absorption terms in Np/km

+
+
Return type:
+

np.ndarray

+
+
+

References

+ +
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.html b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.html new file mode 100644 index 00000000..b3604bbf --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.html @@ -0,0 +1,726 @@ + + + + + + + + + + + + pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24 — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24#

+
+
+static N2AbsModel.n2_absorption_mwl24(t: ndarray, p: ndarray, f: ndarray) ndarray#
+

Calculation of the collision-induced absorption by N2-N2 molecular pairs +Based on the Classic Trajectory Calcs by Vigasin/Chistikov/Finenko

+
+
Parameters:
+
    +
  • f (np.ndarray) – frequency (Ghz)

  • +
  • p (np.ndarray) – dry air pressure (mbar) (recalculations to Torr are used inside)

  • +
  • t (np.ndarray) – air temperature (K)

  • +
+
+
Returns:
+

N2-N2 absorption coefficient in 1/cm

+
+
Return type:
+

np.ndarray

+
+
+
+

Note

+

Convert to Np/km by multiplying by 1.E5. +Convert to dry air absorption by multiplying by 0.84 (see [Meshkov-DeLucia-2007])

+
+

References

+ +
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.N2AbsModel.set_ll.html b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.set_ll.html new file mode 100644 index 00000000..b793dc08 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.N2AbsModel.set_ll.html @@ -0,0 +1,714 @@ + + + + + + + + + + + + pyrtlib.absorption_model.N2AbsModel.set_ll — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.N2AbsModel.set_ll#

+
+
+static N2AbsModel.set_ll() None#
+

Set the linelist to the absorption model.

+
+

See also

+

import_lineshape()

+
+
+

Example

+
from pyrtlib.absorption_model import H2OAbsModel
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.set_ll()
+
+
+
+
+

Note

+

Model must be set with model property before calling this method (see Example).

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O2AbsModel.__init__.html b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.__init__.html new file mode 100644 index 00000000..eac2e5b3 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O2AbsModel.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O2AbsModel.__init__#

+
+
+O2AbsModel.__init__() None#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O2AbsModel.html b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.html new file mode 100644 index 00000000..0352d6a7 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.html @@ -0,0 +1,728 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O2AbsModel — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O2AbsModel#

+
+
+class pyrtlib.absorption_model.O2AbsModel#
+

Bases: AbsModel

+

This class contains the \(O_2\) absorption model used in pyrtlib.

+

Methods

+
+ + + + + + + + + + + + + + +

__init__()

implemented_models()

Return all the implemented absorption models.

o2_absorption(pdrykpa, vx, ekpa, frq[, amu])

Returns power absorption coefficient due to oxygen in air in nepers/km.

set_ll()

Set the linelist to the absorption model.

+
+

Attributes

+
+ + + + + + + + +

model

o2ll

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.html b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.html new file mode 100644 index 00000000..c98f27bd --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.html @@ -0,0 +1,735 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O2AbsModel.implemented_models — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O2AbsModel.implemented_models#

+
+
+static O2AbsModel.implemented_models() Dict[str, List[str]]#
+

Return all the implemented absorption models.

+
+
Returns:
+

The list the implemented absorption models

+
+
Return type:
+

List[str]

+
+
+
+

Example

+
>>> from pyrtlib.absorption_model import AbsModel
+>>> AbsModel.implemented_models()
+{'Oxygen': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R22'],
+    'WaterVapour': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R21SD',
+    'R22SD'],
+    'Ozone': ['R18', 'R22']}
+
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.html b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.html new file mode 100644 index 00000000..3bd1722f --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.html @@ -0,0 +1,790 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O2AbsModel.o2_absorption — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O2AbsModel.o2_absorption#

+
+
+O2AbsModel.o2_absorption(pdrykpa: float, vx: float, ekpa: float, frq: float, amu: Optional[dict] = None) Tuple[ndarray, ndarray]#
+

Returns power absorption coefficient due to oxygen in air in nepers/km.

+

History:

+
    +
  • 5/1/95 P. Rosenkranz

  • +
  • 11/5/97 P. Rosenkranz - 1- line modification.

  • +
  • 12/16/98 pwr - updated submm freq’s and intensities from HITRAN96

  • +
  • 8/21/02 pwr - revised width at 425

  • +
  • 3/20/03 pwr - 1- line mixing and width revised

  • +
  • 9/29/04 pwr - new widths and mixing, using HITRAN intensities for all lines

  • +
  • 6/12/06 pwr - chg. T dependence of 1- line to 0.8

  • +
  • 10/14/08 pwr - moved isotope abundance back into intensities, added selected O16O18 lines.

  • +
  • 5/30/09 pwr - remove common block, add weak lines.

  • +
  • 12/18/14 pwr - adjust line broadening due to water vapor.

  • +
  • 9/29/18 pwr - 2nd-order line mixing

  • +
  • 8/20/19 pwr - adjust intensities according to Koshelev meas.

  • +
+
+
Parameters:
+
+
+
Returns:
+

Oxigen line and continuum absorption terms (ppm)

+
+
Return type:
+

[numpy.ndarray]

+
+
+

References

+ +

Line intensities from HITRAN2004. +Non-resonant intensity from JPL catalog.

+
+

Note

+
    +
  1. The mm line-width coefficients are from Tretyakov et al 2005, +Makarov et al 2008, and Koshelev et al 2016; +submm line-widths from Golubiatnikov & Krupnov, except 234-GHz line width from Drouin. +Mixing coeff. from Makarov’s 2018 revision.

  2. +
  3. The same temperature dependence (X) is used for submillimeter +line widths as in the 60 GHz band: (1/T)**X (Koshelev et al 2016).

  4. +
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O2AbsModel.set_ll.html b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.set_ll.html new file mode 100644 index 00000000..e4c21366 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O2AbsModel.set_ll.html @@ -0,0 +1,724 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O2AbsModel.set_ll — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O2AbsModel.set_ll#

+
+
+static O2AbsModel.set_ll() None#
+

Set the linelist to the absorption model.

+
+

See also

+

import_lineshape()

+
+
+

Example

+
from pyrtlib.absorption_model import H2OAbsModel
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.set_ll()
+
+
+
+
+

Note

+

Model must be set with model property before calling this method (see Example).

+
+
+ +
+

Examples using pyrtlib.absorption_model.O2AbsModel.set_ll#

+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O3AbsModel.__init__.html b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.__init__.html new file mode 100644 index 00000000..934047f8 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O3AbsModel.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O3AbsModel.__init__#

+
+
+O3AbsModel.__init__() None#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O3AbsModel.html b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.html new file mode 100644 index 00000000..845749ae --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.html @@ -0,0 +1,728 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O3AbsModel — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O3AbsModel#

+
+
+class pyrtlib.absorption_model.O3AbsModel#
+

Bases: AbsModel

+

This class contains the \(O_3\) absorption model used in pyrtlib.

+

Methods

+
+ + + + + + + + + + + + + + +

__init__()

implemented_models()

Return all the implemented absorption models.

o3_absorption(t, p, f, o3n[, amu])

This function computes power absorption coeff (Np/km) in the atmosphere due to selcted lines of ozone (\(O_3\)).

set_ll()

Set the linelist to the absorption model.

+
+

Attributes

+
+ + + + + + + + +

model

o3ll

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.html b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.html new file mode 100644 index 00000000..33319059 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.html @@ -0,0 +1,735 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O3AbsModel.implemented_models — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O3AbsModel.implemented_models#

+
+
+static O3AbsModel.implemented_models() Dict[str, List[str]]#
+

Return all the implemented absorption models.

+
+
Returns:
+

The list the implemented absorption models

+
+
Return type:
+

List[str]

+
+
+
+

Example

+
>>> from pyrtlib.absorption_model import AbsModel
+>>> AbsModel.implemented_models()
+{'Oxygen': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R22'],
+    'WaterVapour': ['R98',
+    'R03',
+    'R16',
+    'R17',
+    'R18',
+    'R19',
+    'R19SD',
+    'R20',
+    'R20SD',
+    'R21SD',
+    'R22SD'],
+    'Ozone': ['R18', 'R22']}
+
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.html b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.html new file mode 100644 index 00000000..ddf11612 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.html @@ -0,0 +1,717 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O3AbsModel.o3_absorption — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O3AbsModel.o3_absorption#

+
+
+O3AbsModel.o3_absorption(t: ndarray, p: ndarray, f: ndarray, o3n: ndarray, amu: Optional[dict] = None) ndarray#
+

This function computes power absorption coeff (Np/km) in the atmosphere +due to selcted lines of ozone (\(O_3\)).

+
+
Parameters:
+
    +
  • t (np.ndarray) – Temperature (K)

  • +
  • p (np.ndarray) – Total pressure (mb)

  • +
  • f (np.ndarray) – Frequency (GHz)

  • +
  • o3n (np.ndarray) – Ozone number density (molecules/m^3)

  • +
+
+
Returns:
+

Ozone power absorption coeff. (Np/km)

+
+
Return type:
+

np.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.absorption_model.O3AbsModel.set_ll.html b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.set_ll.html new file mode 100644 index 00000000..a789c290 --- /dev/null +++ b/en/main/generated/pyrtlib.absorption_model.O3AbsModel.set_ll.html @@ -0,0 +1,721 @@ + + + + + + + + + + + + pyrtlib.absorption_model.O3AbsModel.set_ll — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.absorption_model.O3AbsModel.set_ll#

+
+
+static O3AbsModel.set_ll() None#
+

Set the linelist to the absorption model.

+
+

See also

+

import_lineshape()

+
+
+

Example

+
from pyrtlib.absorption_model import H2OAbsModel
+H2OAbsModel.model = 'R21SD'
+H2OAbsModel.set_ll()
+
+
+
+
+

Note

+

Model must be set with model property before calling this method (see Example).

+
+
+ +
+

Examples using pyrtlib.absorption_model.O3AbsModel.set_ll#

+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.html b/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.html new file mode 100644 index 00000000..8e1010ca --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.ERA5Reanalysis.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.ERA5Reanalysis.__init__#

+
+
+ERA5Reanalysis.__init__()#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.html b/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.html new file mode 100644 index 00000000..b7ca66c4 --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.html @@ -0,0 +1,711 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.ERA5Reanalysis — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.ERA5Reanalysis#

+
+
+class pyrtlib.apiwebservices.ERA5Reanalysis#
+

Bases: object

+

Read and Download data from ERA5 CDS Reanalysis model data

+

Methods

+
+ + + + + + + + + + + +

__init__()

read_data(file, lonlat)

Read data from the ERA5 Reanalysis dataset.

request_data(path, time, lonlat[, ...])

Download ERA5Reanalysis data from the Copernicus Climate Change Service.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.html b/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.html new file mode 100644 index 00000000..7abbb5c8 --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.html @@ -0,0 +1,753 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.ERA5Reanalysis.read_data — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.ERA5Reanalysis.read_data#

+
+
+classmethod ERA5Reanalysis.read_data(file: str, lonlat: tuple) DataFrame#
+

Read data from the ERA5 Reanalysis dataset.

+
+
Parameters:
+
    +
  • file (str) – The netcdf file

  • +
  • lonlat (tuple) – longitude and latitude

  • +
+
+
Returns:
+

Dataframe containing the variables retrieved.

+
+
Return type:
+

pandas.DataFrame

+
+
+
+

Note

+

Variables name and units information are reported within the attribute units of +the returned dataframe (see example below).

+
+
+

Example

+
>>> from pyrtlib.apiwebservices import ERA5Reanalysis
+>>> lonlat = (15.8158, 38.2663)
+>>> date = datetime(2020, 2, 22, 12)
+>>> nc_file = ERA5Reanalysis.request_data(tempfile.gettempdir(), date, lonlat)
+>>> df_era5 = ERA5Reanalysis.read_data(nc_file, lonlat)
+>>> df_era5.attrs['units']
+{'p': 'hPa',
+'z': 'km',
+'t': 'K',
+'rh': '%',
+'clwc': 'kg kg-1',
+'ciwc': 'kg kg-1',
+'crwc': 'kg kg-1',
+'cswc': 'kg kg-1',
+'o3': 'kg kg-1',
+'q': 'kg kg-1'}
+
+
+
+
+

Note

+

To convert specific cloud water content (CLWC) or specific cloud ice water content (CIWC) +from kg kg-1 to g m-3 using this function pyrtlib.utils.kgkg_to_gm3()

+
+
+ +
+

Examples using pyrtlib.apiwebservices.ERA5Reanalysis.read_data#

+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.
+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.html b/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.html new file mode 100644 index 00000000..6a165814 --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.html @@ -0,0 +1,715 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.ERA5Reanalysis.request_data — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.ERA5Reanalysis.request_data#

+
+
+static ERA5Reanalysis.request_data(path: str, time: datetime, lonlat: tuple, resolution: Optional[float] = 0.25, offset: Optional[float] = 0.4) str#
+

Download ERA5Reanalysis data from the Copernicus Climate Change Service.

+
+
Parameters:
+
    +
  • path (str) – The output directory

  • +
  • time (datetime) – The date and time of the desired observation.

  • +
  • lonlat (tuple) – The coordinatre in degrees, longitude and latitude

  • +
  • resolution (Optional[float], optional) – The pixel size of the requested grid data. Defaults to 0.25.

  • +
  • offset (Optional[float], optional) – The offset to apply to coordinates to get the extent. Defaults to 0.3.

  • +
+
+
Returns:
+

The path to downloaded netcdf file

+
+
Return type:
+

str

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.html b/en/main/generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.html new file mode 100644 index 00000000..d6de2b40 --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.html @@ -0,0 +1,698 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.IGRAUpperAir.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.IGRAUpperAir.__init__#

+
+
+IGRAUpperAir.__init__() None#
+

Set http site address and file suffix based on desired dataset.

+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.IGRAUpperAir.html b/en/main/generated/pyrtlib.apiwebservices.IGRAUpperAir.html new file mode 100644 index 00000000..b6bb019d --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.IGRAUpperAir.html @@ -0,0 +1,708 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.IGRAUpperAir — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.IGRAUpperAir#

+
+
+class pyrtlib.apiwebservices.IGRAUpperAir#
+

Bases: HTTPEndPoint

+

Download and parse data from NCEI’s Integrated Radiosonde Archive version 2.

+

Methods

+
+ + + + + + + + +

__init__()

Set http site address and file suffix based on desired dataset.

request_data(time, site_id[, beg2021, derived])

Retreive IGRA version 2 data files contain the full period of record.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.html b/en/main/generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.html new file mode 100644 index 00000000..fb02a328 --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.html @@ -0,0 +1,748 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.IGRAUpperAir.request_data — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.IGRAUpperAir.request_data#

+
+
+classmethod IGRAUpperAir.request_data(time: datetime, site_id: str, beg2021: Optional[bool] = False, derived: Optional[bool] = False) Tuple[DataFrame, DataFrame]#
+

Retreive IGRA version 2 data files contain the full period of record.

+
+
Parameters:
+
    +
  • time (datetime) – The date and time of the desired observation. If list of two times is given, +dataframes for all dates within the two dates will be returned.

  • +
  • site_id (str) – 11-character IGRA2 station identifier.

  • +
  • beg2021 (Optional[bool], optional) – If True retrieve files of derived sounding parameters. Defaults to False.

  • +
  • derived (Optional[bool], optional) – If True retrieve files only contain soundings from the current +(or current and previous) year. Defaults to False.

  • +
+
+
Returns:
+

A dataframe containing the data and header information.

+
+
Return type:
+

Tuple[pandas.DataFrame, pandas.DataFrame]

+
+
+
+

Note

+

Variables name and units information are reported within the attribute units of +the returned dataframe (see example below).

+
+
+

Example

+
>>> from pyrtlib.apiwebservices import IGRAUpperAir
+>>> from datetime import datetime
+>>> date = datetime(2022, 6, 22, 12)
+>>> station = 'SPM00060018'
+>>> df, header = IGRAUpperAir.request_data(date, station)
+>>> df.attrs['units']
+{'etime': 'second',
+ 'pressure': 'hPa',
+ 'height': 'meter',
+ 'temperature': 'degC',
+ 'dewpoint': 'degC',
+ 'direction': 'degrees',
+ 'speed': 'meter / second',
+ 'u_wind': 'meter / second',
+ 'v_wind': 'meter / second'}
+
+
+
+
+ +
+

Examples using pyrtlib.apiwebservices.IGRAUpperAir.request_data#

+
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).

+
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.html b/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.html new file mode 100644 index 00000000..bb29c25b --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.html @@ -0,0 +1,698 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.WyomingUpperAir.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.WyomingUpperAir.__init__#

+
+
+WyomingUpperAir.__init__() None#
+

Set up endpoint.

+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.html b/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.html new file mode 100644 index 00000000..b9226388 --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.html @@ -0,0 +1,747 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.WyomingUpperAir.get_stations — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.WyomingUpperAir.get_stations#

+
+
+classmethod WyomingUpperAir.get_stations(region: Optional[str] = 'europe') DataFrame#
+

Retrieve list of available stations from the Wyoming archive.

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

region

name

naconf

North America

samer

South America

pac

South Pacific

nz

New Zealand

ant

Antarctica

np

Arctic

europe

Europe

africa

Africa

seasia

Southeast Asia

mideast

Mideast

+
+
+
Parameters:
+

region (Optional[str], optional) – The name of region from which to get stations list. Defaults to ‘europe’.

+
+
Returns:
+

A dDataFrame of stations id and name

+
+
Return type:
+

pandas.DataFrame

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.html b/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.html new file mode 100644 index 00000000..52eb40ad --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.html @@ -0,0 +1,711 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.WyomingUpperAir — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.WyomingUpperAir#

+
+
+class pyrtlib.apiwebservices.WyomingUpperAir#
+

Bases: HTTPEndPoint

+

Download and parse data from the University of Wyoming’s upper air archive.

+

Methods

+
+ + + + + + + + + + + +

__init__()

Set up endpoint.

get_stations([region])

Retrieve list of available stations from the Wyoming archive.

request_data(time, site_id, **kwargs)

Retrieve upper air observations from the Wyoming archive.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.html b/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.html new file mode 100644 index 00000000..79a14f89 --- /dev/null +++ b/en/main/generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.html @@ -0,0 +1,748 @@ + + + + + + + + + + + + pyrtlib.apiwebservices.WyomingUpperAir.request_data — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.apiwebservices.WyomingUpperAir.request_data#

+
+
+classmethod WyomingUpperAir.request_data(time: datetime, site_id: Union[str, int], **kwargs) DataFrame#
+

Retrieve upper air observations from the Wyoming archive.

+
+
Parameters:
+
    +
  • time (datetime.datetime) – The date and time of the desired observation.

  • +
  • site_id (Union[str, int]) – The three letter ICAO identifier of the station for which data should be +downloaded.

  • +
+
+
Returns:
+

A dataframe containing the data

+
+
Return type:
+

pandas.DataFrame

+
+
+
+

Note

+

Variables name and units information are reported within the attribute units of +the returned dataframe (see example below).

+
+
+

Example

+
>>> from pyrtlib.apiwebservices import WyomingUpperAir
+>>> from datetime import datetime
+>>> date = datetime(2022, 6, 22, 12)
+>>> station = 'LIRE'
+>>> df = WyomingUpperAir.request_data(date, station)
+>>> df.attrs['units']
+{'pressure': 'hPa',
+ 'height': 'meter',
+ 'temperature': 'degC',
+ 'dewpoint': 'degC',
+ 'rh': '%',
+ 'mixr': 'g/kg',
+ 'station': None,
+ 'station_number': None,
+ 'time': None,
+ 'latitude': 'degrees',
+ 'longitude': 'degrees',
+ 'elevation': 'meter'}
+
+
+
+
+ +
+

Examples using pyrtlib.apiwebservices.WyomingUpperAir.request_data#

+
+

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.

+
Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.__init__.html b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.__init__.html new file mode 100644 index 00000000..5812927a --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.climatology.AtmosphericProfiles.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.AtmosphericProfiles.__init__#

+
+
+AtmosphericProfiles.__init__()#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.html b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.html new file mode 100644 index 00000000..2ab19dc7 --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.html @@ -0,0 +1,713 @@ + + + + + + + + + + + + pyrtlib.climatology.AtmosphericProfiles.atm_profiles — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.AtmosphericProfiles.atm_profiles#

+
+
+static AtmosphericProfiles.atm_profiles() Dict[int, str]#
+

Convenient function to ger the list of the buolt-in Atmospheric profiles.

+
+
Returns:
+

A dictionary of standard profiles atmospheric.

+
+
Return type:
+

Dict[int, str]

+
+
+
+ +
+

Examples using pyrtlib.climatology.AtmosphericProfiles.atm_profiles#

+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.html b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.html new file mode 100644 index 00000000..4c47ba5b --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.html @@ -0,0 +1,801 @@ + + + + + + + + + + + + pyrtlib.climatology.AtmosphericProfiles.gl_atm — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.AtmosphericProfiles.gl_atm#

+
+
+static AtmosphericProfiles.gl_atm(atm: int) Tuple[ndarray, ndarray, ndarray, ndarray, ndarray]#
+

Returns the Atmopshere profile.

+

This method contains 6 model profiles:

+
+ + + + + + + + + + + + + + + + + + + + + + + +

option

model

1

Tropical

2

Midlatitude Summer

3

Midlatitude Winter

4

Subarctic Summer

5

Subarctic Winter

6

U.S. Standard

+
+
+
Parameters:
+

option (int) – the atmosphere profile.

+
+
Returns:
+

    +
  • a (numpy.ndarray): Altitudes (km) (50x1)

  • +
  • p (numpy.ndarray): Pressure (mbar)

  • +
  • d (numpy.ndarray): Total density (cm-3)

  • +
  • t (numpy.ndarray): Temperature (K)

  • +
  • md (numpy.ndarray): Molecular densities (ppmv)

  • +
+

+
+
Return type:
+

Tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray, numpy.ndarray, numpy.ndarray]

+
+
+
+

Example

+
>>> from pyrtlib.climatology import AtmosphericProfiles as atmp
+>>> z, p, _, t, md = atmp.gl_atm(atmp.US_STANDARD)
+>>> md[:, atmp.H2O]
+array([7.745e+03, 6.071e+03, 4.631e+03, 3.182e+03, 2.158e+03, 1.397e+03,
+      9.254e+02, 5.720e+02, 3.667e+02, 1.583e+02, 6.996e+01, 3.613e+01,
+      1.906e+01, 1.085e+01, 5.927e+00, 5.000e+00, 3.950e+00, 3.850e+00,
+      3.825e+00, 3.850e+00, 3.900e+00, 3.975e+00, 4.065e+00, 4.200e+00,
+      4.300e+00, 4.425e+00, 4.575e+00, 4.725e+00, 4.825e+00, 4.900e+00,
+      4.950e+00, 5.025e+00, 5.150e+00, 5.225e+00, 5.250e+00, 5.225e+00,
+      5.100e+00, 4.750e+00, 4.200e+00, 3.500e+00, 2.825e+00, 2.050e+00,
+      1.330e+00, 8.500e-01, 5.400e-01, 4.000e-01, 3.400e-01, 2.800e-01,
+      2.400e-01, 2.000e-01])
+
+
+
+
+

Note

+

adapted from glatm.dat. DCT 3/26/97

+
+
+ +
+

Examples using pyrtlib.climatology.AtmosphericProfiles.gl_atm#

+
+

Generic Example

+
Generic Example
+
+

Atmospheric Profiles

+
Atmospheric Profiles
+
+

Performing Downwelling Brightness Temperature calculation

+
Performing Downwelling Brightness Temperature calculation
+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Performing Upwelling Brightness Temperature calculation

+
Performing Upwelling Brightness Temperature calculation
+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+

Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz

+
Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz
+
+

Performing Downwelling Brightness Temperature calculation in cloudy condition.

+
Performing Downwelling Brightness Temperature calculation in cloudy condition.
+
+

Water Vapour Absorption Profiles

+
Water Vapour Absorption Profiles
+
+

Computation of Weighting Functions

+
Computation of Weighting Functions
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.html b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.html new file mode 100644 index 00000000..b43a458d --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.html @@ -0,0 +1,725 @@ + + + + + + + + + + + + pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor#

+
+
+static AtmosphericProfiles.gl_atm_minor(gas_minor: int) ndarray#
+

Returns the minor gas profiles (gas ID’s 8-28)

+
+
Parameters:
+

gas_minor (int) – HITRAN gas ID #’s (#gases x 1)

+
+
Returns:
+

molecular densities (ppmv) (50x #gases)

+
+
Return type:
+

numpy.ndarray

+
+
+
+

Example

+
>>> from pyrtlib.climatology import AtmosphericProfiles as atmp
+>>> atmp.gl_atm_minor(atmp.NO)
+array([3.00e-04, 3.00e-04, 3.00e-04, 3.00e-04, 3.00e-04, 3.00e-04,
+       3.00e-04, 3.00e-04, 3.00e-04, 3.00e-04, 3.00e-04, 3.00e-04,
+       3.00e-04, 2.99e-04, 2.95e-04, 2.83e-04, 2.68e-04, 2.52e-04,
+       2.40e-04, 2.44e-04, 2.55e-04, 2.77e-04, 3.07e-04, 3.60e-04,
+       4.51e-04, 6.85e-04, 1.28e-03, 2.45e-03, 4.53e-03, 7.14e-03,
+       9.34e-03, 1.12e-02, 1.19e-02, 1.17e-02, 1.10e-02, 1.03e-02,
+       1.01e-02, 1.01e-02, 1.03e-02, 1.15e-02, 1.61e-02, 2.68e-02,
+       7.01e-02, 2.13e-01, 7.12e-01, 2.08e+00, 4.50e+00, 7.98e+00,
+       1.00e+01, 1.00e+01])
+
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.html b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.html new file mode 100644 index 00000000..0a6c40cb --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.html @@ -0,0 +1,740 @@ + + + + + + + + + + + + pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace#

+
+
+static AtmosphericProfiles.gl_atm_trace(gas_trace: int) ndarray#
+

Returns the trace gas profiles (ID’s 29-31,51-63)

+
+
Parameters:
+

gas_trace (int) – HITRAN gas ID

+
+
Returns:
+

molecular densities (ppmv) (50x #gases)

+
+
Return type:
+

numpy.ndarray

+
+
+
+

Example

+
>>> from pyrtlib.climatology import AtmosphericProfiles as atmp
+>>> atmp.gl_atm_trace(atmp.H2S)
+array([1.00e-04, 5.48e-05, 3.00e-05, 2.45e-05, 2.00e-05, 1.61e-05,
+      1.30e-05, 1.14e-05, 1.00e-05, 8.37e-06, 7.00e-06, 4.58e-06,
+      3.00e-06, 1.73e-06, 1.00e-06, 5.48e-07, 3.00e-07, 1.73e-07,
+      1.00e-07, 5.48e-08, 3.00e-08, 1.73e-08, 1.00e-08, 5.48e-09,
+      3.00e-09, 1.73e-09, 1.00e-09, 1.00e-10, 1.00e-11, 1.00e-12,
+      1.00e-13, 1.00e-14, 1.00e-15, 1.00e-15, 1.00e-15, 1.00e-15,
+      1.00e-15, 1.00e-15, 1.00e-15, 1.00e-15, 1.00e-15, 1.00e-15,
+      1.00e-15, 1.00e-15, 1.00e-15, 1.00e-15, 1.00e-15, 1.00e-15,
+      1.00e-15, 1.00e-15])
+
+
+
+

References

+ +
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.html b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.html new file mode 100644 index 00000000..e76adaa0 --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.AtmosphericProfiles.html @@ -0,0 +1,919 @@ + + + + + + + + + + + + pyrtlib.climatology.AtmosphericProfiles — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.AtmosphericProfiles#

+
+
+class pyrtlib.climatology.AtmosphericProfiles#
+

Bases: object

+

AFGL Atmospheric Constituent Profiles (0-120km)

+

Each of these profile contains data at 50 atmospheric levels. +Altitude (km), Pressure (mb), Density (cm-3), Molec. densities (ppmv):

+
    +
  • 0 (H2O),

  • +
  • 1 (CO2),

  • +
  • 2 (O3),

  • +
  • 3 (N2O),

  • +
  • 4 (CO),

  • +
  • 5 (CH4),

  • +
  • 6 (O2)

  • +
+

Plus suplimental profiles where available. +The last set of data sets are constituent profiles of molecular +densities (ppmv) for the minor absorbing atmospheric gases.

+

References

+ +
+

Examples

+
>>> from pyrtlib.climatology import AtmosphericProfiles as atmp
+>>> atmp.atm_profiles()
+{0: 'Tropical',
+1: 'Midlatitude Summer',
+2: 'Midlatitude Winter',
+3: 'Subarctic Summer',
+4: 'Subarctic Winter',
+5: 'US Standard'}
+>>> atmp.TROPICAL, atmp.H2O
+(0, 0)
+
+
+
+

Methods

+
+ + + + + + + + + + + + + + + + + +

__init__()

atm_profiles()

Convenient function to ger the list of the buolt-in Atmospheric profiles.

gl_atm(atm)

Returns the Atmopshere profile.

gl_atm_minor(gas_minor)

Returns the minor gas profiles (gas ID's 8-28)

gl_atm_trace(gas_trace)

Returns the trace gas profiles (ID's 29-31,51-63)

+
+

Attributes

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

AIR

C2CL2F4

C2CL3F3

C2CLF5

C2H2

C2H6

CCL2F2

CCL3F

CCL4

CCLF3

CF4

CH3CL

CH4

CHCLF2

CHCl2F

CLO

CLONO2

CO

CO2

COF2

H2CO

H2O

H2O2

H2S

HBR

HCL

HCN

HF

HI

HNO3

HNO4

HOCL

MIDLATITUDE_SUMMER

MIDLATITUDE_WINTER

N2

N2O

N2O5

NH3

NO

NO2

O2

O3

OCS

OH

PH3

SF6

SO2

SUBARCTIC_SUMMER

SUBARCTIC_WINTER

TROPICAL

US_STANDARD

+
+
+ +
+

Examples using pyrtlib.climatology.AtmosphericProfiles#

+
+

Atmospheric Profiles

+
Atmospheric Profiles
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.__init__.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.__init__.html new file mode 100644 index 00000000..e2b1cfad --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.__init__.html @@ -0,0 +1,714 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation.__init__#

+
+
+ProfileExtrapolation.__init__(mode: Optional[str] = 'ITU-Annex1')#
+

Initialize what extrapolation to be used. +Only ITU-835-6 Annex1 has been implemented rigth now.

+
+
Parameters:
+

mode (str, optional) – Recommendation of extrapolation. Defaults to ‘ITU-Annex1’.

+
+
Raises:
+

ValueError – Raise an error if mode is not set or if unsupported.

+
+
+

References

+ +
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.html new file mode 100644 index 00000000..9001c703 --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.html @@ -0,0 +1,744 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation#

+
+
+class pyrtlib.climatology.ProfileExtrapolation(mode: Optional[str] = 'ITU-Annex1')#
+

Bases: object

+

Methods

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

__init__([mode])

Initialize what extrapolation to be used.

pressure(lat, h[, season])

Determine the atmospheric pressure at a given latitude and height.

profile_extrapolation(lat, month, z, q)

Extrapolation of atmospheres to be used to determine temperature, pressure and water-vapour pressure as a function of altitude and latitude, for calculating gaseous attenuation when more reliable local data are not available.

standard_pressure(h, T_0, P_0)

Determine the standard pressure at a given height.

standard_temperature(h, T_0)

Determine the standard temperature at a given height.

standard_water_vapour_density(h, h_0, rho_0)

Determine the standard water vapour density at a given height.

standard_water_vapour_pressure(h[, h_0, rho_0])

Determine the standard water vapour pressure at a given height.

temperature(lat, h[, season])

Determine the temperature at a given latitude and height.

water_vapour_density(lat, h[, season])

Determine the water vapour density at a given latitude and height.

+
+

Attributes

+
+ + + + + +

height

Getter/Setter for altitude vector

+
+
+ +
+

Examples using pyrtlib.climatology.ProfileExtrapolation#

+
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).

+
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.pressure.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.pressure.html new file mode 100644 index 00000000..d3ea97f8 --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.pressure.html @@ -0,0 +1,720 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation.pressure — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation.pressure#

+
+
+ProfileExtrapolation.pressure(lat: float, h: ndarray, season: Optional[str] = 'summer') ndarray#
+

Determine the atmospheric pressure at a given latitude and height.

+

Method to determine the pressure as a function of altitude and latitude, +for calculating gaseous attenuation along an Earth-space path. +This method is recommended when more reliable local data are not available.

+
+
Parameters:
+
    +
  • lat (numpy.ndarray) – Latitude (degree)

  • +
  • h (numpy.ndarray) – Height (km)

  • +
  • season (str) – Season of the year (available values, ‘summer’, and ‘winter’). +Default ‘summer’

  • +
+
+
Returns:
+

P – Pressure (hPa)

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+

[1] Reference Standard Atmospheres +https://www.itu.int/rec/R-REC-P.835/en

+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.html new file mode 100644 index 00000000..aeb4d8f5 --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.html @@ -0,0 +1,724 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation#

+
+
+ProfileExtrapolation.profile_extrapolation(lat: float, month: int, z: ndarray, q: Tuple[ndarray, ndarray, ndarray]) Tuple[ndarray, ndarray, ndarray, ndarray]#
+

Extrapolation of atmospheres to be used to determine +temperature, pressure and water-vapour pressure as a function +of altitude and latitude, for calculating gaseous attenuation when more reliable +local data are not available.

+
+
Parameters:
+
    +
  • lat (float) – Latitude (degree)

  • +
  • month (int) – Month of the year

  • +
  • z (np.ndarray) – Height (km)

  • +
  • q (Tuple[np.ndarray, np.ndarray, np.ndarray]) – Pressure (hPa), Temperature (K) and Relative humisity (frac) profiles

  • +
+
+
Returns:
+

Height, Pressure, Temperature, RH extrapolated profiles

+
+
Return type:
+

Tuple[np.ndarray, np.ndarray, np.ndarray, np.ndarray]

+
+
+
+ +
+

Examples using pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation#

+
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).

+
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.html new file mode 100644 index 00000000..8063274e --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.html @@ -0,0 +1,721 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation.standard_pressure — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation.standard_pressure#

+
+
+ProfileExtrapolation.standard_pressure(h: ndarray, T_0: float, P_0: float) ndarray#
+

Determine the standard pressure at a given height.

+

Method to compute the total atmopsheric pressure of an standard atmosphere +at a given height.

+

The reference standard atmosphere is based on the United States Standard +Atmosphere, 1976, in which the atmosphere is divided into seven successive +layers showing linear variation with temperature.

+
+
Parameters:
+
    +
  • h (numpy.ndarray) – Height (km)

  • +
  • T_0 (float) – Surface temperature (K)

  • +
  • P_0 (float) – Surface pressure (hPa)

  • +
+
+
Returns:
+

P – Pressure (hPa)

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+

[1] Reference Standard Atmospheres +https://www.itu.int/rec/R-REC-P.835/en

+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.html new file mode 100644 index 00000000..45d7a25a --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.html @@ -0,0 +1,719 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation.standard_temperature — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation.standard_temperature#

+
+
+ProfileExtrapolation.standard_temperature(h: ndarray, T_0: float) ndarray#
+

Determine the standard temperature at a given height.

+

Method to compute the temperature of an standard atmosphere at +a given height. The reference standard atmosphere is based on the United +States Standard Atmosphere, 1976, in which the atmosphere is divided into +seven successive layers showing linear variation with temperature.

+
+
Parameters:
+
+
+
Returns:
+

T – Temperature (K)

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+

[1] Reference Standard Atmospheres +https://www.itu.int/rec/R-REC-P.835/en

+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.html new file mode 100644 index 00000000..b6f006e2 --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.html @@ -0,0 +1,719 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density#

+
+
+ProfileExtrapolation.standard_water_vapour_density(h: ndarray, h_0: float, rho_0: float) ndarray#
+

Determine the standard water vapour density at a given height.

+

The reference standard atmosphere is based on the United States Standard +Atmosphere, 1976, in which the atmosphere is divided into seven successive +layers showing linear variation with temperature.

+
+
Parameters:
+
    +
  • h (numpy.ndarray) – Height (km)

  • +
  • h_0 (float) – Scale height (km)

  • +
  • rho_0 (float) – Surface water vapour density (g/m^3)

  • +
+
+
Returns:
+

rho – Water vapour density (g/m^3)

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+

[1] Reference Standard Atmospheres +https://www.itu.int/rec/R-REC-P.835/en

+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.html new file mode 100644 index 00000000..b6a6eb27 --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.html @@ -0,0 +1,721 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure#

+
+
+ProfileExtrapolation.standard_water_vapour_pressure(h: ndarray, h_0: Optional[float] = 2.0, rho_0: Optional[float] = 7.5) ndarray#
+

Determine the standard water vapour pressure at a given height.

+

The reference standard atmosphere is based on the United States Standard +Atmosphere, 1976, in which the atmosphere is divided into seven successive +layers showing linear variation with temperature.

+
+
Parameters:
+
    +
  • h (numpy.ndarray) – Height (km)

  • +
  • h_0 (float) – Scale height (km) +Default 2.

  • +
  • rho_0 (float) – Surface water vapour density (g/m^3) +Default 7.5

  • +
+
+
Returns:
+

e – Water vapour pressure (hPa)

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+

[1] Reference Standard Atmospheres +https://www.itu.int/rec/R-REC-P.835/en

+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.temperature.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.temperature.html new file mode 100644 index 00000000..8959c29a --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.temperature.html @@ -0,0 +1,720 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation.temperature — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation.temperature#

+
+
+ProfileExtrapolation.temperature(lat: float, h: ndarray, season: Optional[str] = 'summer') ndarray#
+

Determine the temperature at a given latitude and height.

+

Method to determine the temperature as a function of altitude and latitude, +for calculating gaseous attenuation along an Earth-space path. This method +is recommended when more reliable local data are not available.

+
+
Parameters:
+
    +
  • lat (numpy.ndarray) – Latitude (degree)

  • +
  • h (numpy.ndarray) – Height (km)

  • +
  • season (str) – Season of the year (available values, ‘summer’, and ‘winter’). +Default ‘summer’

  • +
+
+
Returns:
+

T – Temperature (K)

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+

[1] Reference Standard Atmospheres +https://www.itu.int/rec/R-REC-P.835/en

+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.html b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.html new file mode 100644 index 00000000..26821e5f --- /dev/null +++ b/en/main/generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.html @@ -0,0 +1,721 @@ + + + + + + + + + + + + pyrtlib.climatology.ProfileExtrapolation.water_vapour_density — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.climatology.ProfileExtrapolation.water_vapour_density#

+
+
+ProfileExtrapolation.water_vapour_density(lat: float, h: ndarray, season: Optional[str] = 'summer') ndarray#
+

Determine the water vapour density at a given latitude and height.

+

Method to determine the water-vapour density as a +function of altitude and latitude, for calculating gaseous attenuation +along an Earth-space path. This method is recommended when more reliable +local data are not available.

+
+
Parameters:
+
    +
  • lat (numpy.ndarray) – Latitude (degree)

  • +
  • h (numpy.ndarray) – Height (km)

  • +
  • season (str) – Season of the year (available values, ‘summer’, and ‘winter’). +Default ‘summer’

  • +
+
+
Returns:
+

rho – Water vapour density (g/m^3)

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+

[1] Reference Standard Atmospheres +https://www.itu.int/rec/R-REC-P.835/en

+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.__init__.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.__init__.html new file mode 100644 index 00000000..7e95d16e --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.__init__#

+
+
+RTEquation.__init__()#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.bright.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.bright.html new file mode 100644 index 00000000..9753b127 --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.bright.html @@ -0,0 +1,717 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.bright — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.bright#

+
+
+static RTEquation.bright(hvk: ndarray, boft: ndarray) ndarray#
+

Function to compute temperature from the modified Planck +radiance (Planck function without the constants \(\frac{2h\nu^3}{c^2}\).

+
+\[B_{\nu}(\nu,T) = \frac{1}{ e^{\frac{h\nu}{k_{B}T}}-1}\implies T_b = \frac{h\nu}{k_{B}}\times\frac{1}{\ln(1+\frac{1}{B_{\nu}(\nu,T)})}\]
+
+
Parameters:
+
+
+
Returns:
+

Temperature (K)

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.html new file mode 100644 index 00000000..bd831da8 --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.html @@ -0,0 +1,739 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.clearsky_absorption — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.clearsky_absorption#

+
+
+static RTEquation.clearsky_absorption(p: ndarray, t: ndarray, e: ndarray, frq: ndarray, o3n: Optional[ndarray] = None, amu: Optional[dict] = None) Tuple[ndarray, ndarray]#
+

Computes profiles of water vapor and dry air absorption +for a given set of frequencies. Subroutines \(H_2O\) and \(O_2\) +contain the absorption model of [Liebe-Layton] with oxygen +interference coefficients from [Rosenkranz-1988].

+
+
Parameters:
+
+
+
Raises:
+

ValueError – Raises error if absorption model is not defined.

+
+
Returns:
+

    +
  • awet: Water vapor absorption profile (np/km).

  • +
  • adry: Dry air absorption profile (np/km).

  • +
+

+
+
Return type:
+

Tuple[numpy.ndarray, numpy.ndarray]

+
+
+ +
+ +
+

Examples using pyrtlib.rt_equation.RTEquation.clearsky_absorption#

+
+

Water Vapour Absorption Profiles

+
Water Vapour Absorption Profiles
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.html new file mode 100644 index 00000000..49596bcf --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.html @@ -0,0 +1,716 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.cloud_integrated_density — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.cloud_integrated_density#

+
+
+static RTEquation.cloud_integrated_density(dencld: ndarray, ds: ndarray, lbase: ndarray, ltop: ndarray) ndarray#
+

Integrates cloud water density over path ds (linear algorithm).

+
+
Parameters:
+
    +
  • dencld (np.ndarray) – Cloud cloud water density profile (\(g/m^3\))

  • +
  • ds (np.ndarray) – Vector containing layer depth profiles (km)

  • +
  • lbase (np.ndarray) – Array containing profile levels corresponding to cloud bases.

  • +
  • ltop (np.ndarray) – Array containing profile levels corresponding to cloud tops.

  • +
+
+
Returns:
+

integrated cloud water density (cm)

+
+
Return type:
+

np.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.html new file mode 100644 index 00000000..ab5d9b11 --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.html @@ -0,0 +1,727 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature#

+
+
+static RTEquation.cloud_radiating_temperature(ibase: float, itop: float, hvk: ndarray, tauprof: ndarray, boftatm: ndarray) Optional[ndarray]#
+

Computes the mean radiating temperature of a cloud with base and top at +profile levels ibase and itop, respectively. The algorithm assumes that +the input cloud is the lowest (or only) cloud layer observed. +If absorption is not too big, compute tmr of lowest cloud layer (base +at level ibase, top at level itop). Otherwise, set error flag and return.

+
+
Parameters:
+
    +
  • ibase (float) – Profile level at base of lowest cloud.

  • +
  • itop (float) – Profile level at top of lowest cloud.

  • +
  • hvk (np.ndarray) – (Planck constant * frequency) / Boltzmann constant.

  • +
  • tauprof (np.ndarray) – Integral profile of absorption (np; i = integral (0,i)).

  • +
  • boftatm (np.ndarray) – Integral profile of atmospheric planck radiance.

  • +
+
+
Returns:
+

tmr of lowest cloud layer (k)

+
+
Return type:
+

np.ndarray | None

+
+
+
+

Note

+

This algorithm is not designed for multiple cloud layers

+
+
+

Note

+

hvk, tauprof, and boftatm can be obtained from subroutine planck().

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.html new file mode 100644 index 00000000..b8489d51 --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.html @@ -0,0 +1,726 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.cloudy_absorption — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.cloudy_absorption#

+
+
+static RTEquation.cloudy_absorption(t: ndarray, denl: ndarray, deni: ndarray, frq: ndarray) Tuple[ndarray, ndarray]#
+

Multiplies cloud density profiles by a given fraction and computes the +corresponding cloud liquid and ice absorption profiles, using Rosenkranz’s +cloud liquid absorption and ice absorption by [Westwater-1972].

+
+
Parameters:
+
+
+
Returns:
+

    +
  • aliq: Liquid absorption profile (np/km)

  • +
  • aice: Ice absorption profile (np/km)

  • +
+

+
+
Return type:
+

Tuple[numpy.ndarray, numpy.ndarray]

+
+
+ +
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.exponential_integration.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.exponential_integration.html new file mode 100644 index 00000000..30c0e2df --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.exponential_integration.html @@ -0,0 +1,721 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.exponential_integration — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.exponential_integration#

+
+
+static RTEquation.exponential_integration(zeroflg: bool, x: ndarray, ds: ndarray, ibeg: int, iend: int, factor: float) Tuple[ndarray, ndarray]#
+

EXPonential INTegration: Integrate the profile in array x over the layers defined in +array ds, saving the integrals over each layer.

+
+
Parameters:
+
    +
  • zeroflg (bool) – Flag to handle zero values (0:layer=0, 1:layer=avg).

  • +
  • x (numpy.ndarray) – Profile array.

  • +
  • ds (numpy.ndarray) – Array of layer depths (km).

  • +
  • ibeg (int) – Lower integration limit (profile level number).

  • +
  • iend (int) – Upper integration limit (profile level number).

  • +
  • factor (float) – Factor by which result is multiplied (e.g., unit change).

  • +
+
+
Returns:
+

    +
  • xds (numpy.ndarray): Array containing integrals over each layer ds

  • +
  • sxds (numpy.ndarray): Integral of x*ds over levels ibeg to iend

  • +
+

+
+
Return type:
+

Tuple[numpy.ndarray, numpy.ndarray]

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.html new file mode 100644 index 00000000..9db5ddba --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.html @@ -0,0 +1,737 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation#

+
+
+class pyrtlib.rt_equation.RTEquation#
+

Bases: object

+

This class contains the main Radiative Transfer Equation functions.

+

Methods

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

__init__()

bright(hvk, boft)

Function to compute temperature from the modified Planck radiance (Planck function without the constants \(\frac{2h\nu^3}{c^2}\).

clearsky_absorption(p, t, e, frq[, o3n, amu])

Computes profiles of water vapor and dry air absorption for a given set of frequencies.

cloud_integrated_density(dencld, ds, lbase, ltop)

Integrates cloud water density over path ds (linear algorithm).

cloud_radiating_temperature(ibase, itop, ...)

Computes the mean radiating temperature of a cloud with base and top at profile levels ibase and itop, respectively.

cloudy_absorption(t, denl, deni, frq)

Multiplies cloud density profiles by a given fraction and computes the corresponding cloud liquid and ice absorption profiles, using Rosenkranz's cloud liquid absorption and ice absorption by [Westwater-1972].

exponential_integration(zeroflg, x, ds, ...)

EXPonential INTegration: Integrate the profile in array x over the layers defined in array ds, saving the integrals over each layer.

planck(frq, t, taulay)

Computes the modified planck function (equation (4) in [Schroeder-Westwater-1992] for the cosmic background temperature, the mean radiating temperature, and a profile of the atmospheric integral with and without the cosmic background.

ray_tracing(z, refindx, angle, z0)

Ray-tracing algorithm of Dutton, Thayer, and Westwater, rewritten for readability & attempted documentation.

refractivity(p, t, e)

Computes profiles of wet refractivity, dry refractivity, refractive index.

vapor(t, rh[, ice])

Compute saturation vapor pressure (es,in mb) over water or ice at temperature t (kelvins), using the Goff-Gratch formulation (List,1963).

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.planck.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.planck.html new file mode 100644 index 00000000..e14fc4be --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.planck.html @@ -0,0 +1,728 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.planck — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.planck#

+
+
+static RTEquation.planck(frq: ndarray, t: ndarray, taulay: ndarray) Tuple[ndarray, ndarray, ndarray, ndarray, ndarray, ndarray, ndarray]#
+

Computes the modified planck function (equation (4) in [Schroeder-Westwater-1992] +for the cosmic background temperature, the mean radiating +temperature, and a profile of the atmospheric integral with and without +the cosmic background. Also computes an integral profile of atmospheric +absorption. For the integral profiles, the value at profile level i +represents the integral from the antenna to level i. +Also returns the cosmic background term for the rte.

+
+
Parameters:
+
+
+
Returns:
+

    +
  • hvk: (Planck constant * frequency) / Boltzmann constant.

  • +
  • boft: Modified planck function for raob temperature profile.

  • +
  • bakgrnd: Background term of radiative transfer equation.

  • +
  • boftatm: Array of atmospheric planck radiance integrated (0,i).

  • +
  • boftotl: Total planck radiance from the atmosphere plus bakgrnd.

  • +
  • boftmr: Modified planck function for mean radiating temperature.

  • +
  • tauprof: Array of integrated absorption (np; 0,i).

  • +
+

+
+
Return type:
+

Tuple[np.ndarray, np.ndarray, np.ndarray, np.ndarray, np.ndarray, np.ndarray, np.ndarray]

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.ray_tracing.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.ray_tracing.html new file mode 100644 index 00000000..237c403a --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.ray_tracing.html @@ -0,0 +1,720 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.ray_tracing — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.ray_tracing#

+
+
+static RTEquation.ray_tracing(z: ndarray, refindx: ndarray, angle: float, z0: float) Optional[ndarray]#
+

Ray-tracing algorithm of Dutton, Thayer, and Westwater, rewritten for +readability & attempted documentation. Based on the technique shown in Radio Meteorology +by Bean and Dutton (Fig. 3.20 and surrounding text) [Bean-Dutton].

+
+
Parameters:
+
    +
  • z (numpy.ndarray) – Height profile (km above observation height, z0).

  • +
  • refindx (numpy.ndarray) – Refractive index profile.

  • +
  • angle (float) – Elevation angle (degrees).

  • +
  • z0 (float) – Observation height (km msl).

  • +
+
+
Returns:
+

Array containing slant path length profiles (km)

+
+
Return type:
+

numpy.ndarray

+
+
+
+

Note

+

The algorithm assumes that x decays exponentially over each layer.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.refractivity.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.refractivity.html new file mode 100644 index 00000000..4f9ea591 --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.refractivity.html @@ -0,0 +1,720 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.refractivity — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.refractivity#

+
+
+static RTEquation.refractivity(p: ndarray, t: ndarray, e: ndarray) Tuple[ndarray, ndarray, ndarray]#
+

Computes profiles of wet refractivity, dry refractivity, refractive index. +Refractivity equations were taken from [Thayer-1974].

+

These equations were intended for frequencies under 20 GHz

+
+
Parameters:
+
+
+
Returns:
+

    +
  • dryn (numpy.ndarray): Dry refractivity profile

  • +
  • wetn (numpy.ndarray): Wet refractivity profile

  • +
  • refindx (numpy.ndarray): Refractive index profile

  • +
+

+
+
Return type:
+

Tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray]

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.rt_equation.RTEquation.vapor.html b/en/main/generated/pyrtlib.rt_equation.RTEquation.vapor.html new file mode 100644 index 00000000..5d2bd80f --- /dev/null +++ b/en/main/generated/pyrtlib.rt_equation.RTEquation.vapor.html @@ -0,0 +1,728 @@ + + + + + + + + + + + + pyrtlib.rt_equation.RTEquation.vapor — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.rt_equation.RTEquation.vapor#

+
+
+static RTEquation.vapor(t: ndarray, rh: ndarray, ice: Optional[bool] = False) Tuple[ndarray, ndarray]#
+

Compute saturation vapor pressure (es,in mb) over water or ice at +temperature t (kelvins), using the Goff-Gratch formulation (List,1963).

+
+
Parameters:
+
    +
  • t (numpy.ndarray) – Temperature (K).

  • +
  • rh (numpy.ndarray) – Relative Humidity (fraction).

  • +
  • ice (Optional[bool], optional) – Switch to calculate saturation vapor pressure over +water only (True) or water and ice, depending on T. Defaults to False.

  • +
+
+
Returns:
+

    +
  • e (np.ndarray): Vapor pressure (mb)

  • +
  • rho (np.ndarray): Vapor density (\(g/m^3\))

  • +
+

+
+
Return type:
+

Tuple[numpy.ndarray, numpy.ndarray]

+
+
+
+ +
+

Examples using pyrtlib.rt_equation.RTEquation.vapor#

+
+

Water Vapour Absorption Profiles

+
Water Vapour Absorption Profiles
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.html b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.html new file mode 100644 index 00000000..c6d41acd --- /dev/null +++ b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.html @@ -0,0 +1,726 @@ + + + + + + + + + + + + pyrtlib.tb_spectrum.TbCloudRTE.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.tb_spectrum.TbCloudRTE.__init__#

+
+
+TbCloudRTE.__init__(z: ndarray, p: ndarray, t: ndarray, rh: ndarray, frq: ndarray, angles: Optional[ndarray] = array([90.]), o3n: Optional[ndarray] = None, amu: Optional[Tuple] = None, absmdl: Optional[str] = '', ray_tracing: Optional[bool] = False, from_sat: Optional[bool] = True, cloudy: Optional[bool] = False)#
+

Main class which computes brightness temperatures (Tb), mean +radiating temperature (Tmr), and integrated absorption (Tau) for +clear or cloudy conditions. Also returns all integrated quantities +that the original TBMODEL, Cyber Version, returned. The input +profiles are not modified within this subroutine. It is assumed +that the input profiles start at the antenna height (zX(1)). The +input profiles must reach 50.0 mb. This subroutine uses the +algorithms described in [Schroeder-Westwater-1991].

+
+
Parameters:
+
    +
  • z (np.ndarray) – Height profile (km).

  • +
  • p (np.ndarray) – Pressure profile (mb).

  • +
  • t (np.ndarray) – Temperature profile (K).

  • +
  • rh (np.ndarray) – Relative humidity profile (fraction).

  • +
  • frq (np.ndarray) – Channel frequencies (GHz).

  • +
  • angles (Optional[np.ndarray], optional) – Elevation anglesX (deg).. Defaults to 90.

  • +
  • o3n (Optional[np.ndarray], optional) – Ozone profile. Defaults to None.

  • +
  • amu (Optional[Tuple], optional) – Absorption model uncertainties. Defined by SpectroscopicParameter(). Defaults to None.

  • +
  • absmdl (Optional[str], optional) – Absorption model. Defaults to ‘’.

  • +
  • ray_tracing (Optional[bool], optional) – Wether True it computes ray tracing for +distance between layers, otherwise use simple plane +parallel assumption. Defaults to False.

  • +
  • from_sat (Optional[bool], optional) – Wether True (default) compute upwelling Tb, +otherwise downwelling Tb are computed. Defaults to True.

  • +
  • cloudy (Optional[bool], optional) – Wether True CLW must be passed. Defaults to False.

  • +
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.html b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.html new file mode 100644 index 00000000..bb44612a --- /dev/null +++ b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.html @@ -0,0 +1,813 @@ + + + + + + + + + + + + pyrtlib.tb_spectrum.TbCloudRTE.execute — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.tb_spectrum.TbCloudRTE.execute#

+
+
+TbCloudRTE.execute(only_bt: bool = True) Union[DataFrame, Tuple[DataFrame, Dict[str, ndarray]]]#
+

This function computes Brightness Temperature and other radiometric parameters.

+
+
Parameters:
+

only_bt (bool) – If True returns only brightness temperature. Default to True.

+
+
+

Returns a pandas dataframe containing:

+
+
+
tbtotal:

brightness temperature (K) includes cosmic background; +indexed by frequency and elevation angle

+
+
tbatm:

atmospheric brightness temperature (K), no cosmic; +background;indexed by frequency and elevation angle

+
+
tmr:

mean radiating temperature of the atmosphere (K); +indexed by frequency and elevation angle

+
+
tmrcld:

mean radiating temperature (K) of the lowest cloud layer; +indexed by frequency and elevation angle

+
+
taudry:

dry air absorption integrated over each ray path (Np); +indexed by frequency and elevation angle

+
+
tauwet:

water vapor absorption integrated over each ray path (Np); +indexed by frequency and elevation angle

+
+
tauliq:

cloud liquid absorption integrated over each ray path (Np); +indexed by frequency and elevation angle

+
+
tauice:

cloud ice absorption integrated over each ray path (Np); +indexed by frequency and elevation angle

+
+
+
+

and with only_bt=False also a dictionary containing:

+
+
+
taulaydry:

dry air absorption integrated over each ray path (Np); +indexed by frequency, elevation angle and height profile

+
+
taulaywet:

water vapor absorption integrated over each ray path (Np); +indexed by frequency, elevation angle and height profile

+
+
taulayliq:

cloud liquid absorption integrated over each ray path (Np); +indexed by frequency, elevation angle and height profile

+
+
taulayice:

cloud ice absorption integrated over each ray path (Np); +indexed by frequency, elevation angle and height profile

+
+
srho:

water vapor density integrated along each ray path (cm); +indexed by elevation angle

+
+
swet:

wet refractivity integrated along each ray path (cm); +indexed by elevation angle

+
+
sdry:

dry refractivity integrated along each ray path (cm); +indexed by elevation angle

+
+
sliq:

cloud ice density integrated along each ray path (cm); +indexed by elevation angle

+
+
sice:

cloud liquid density integrated along each ray path (cm); +indexed by elevation angle

+
+
+
+
+
Returns:
+

A pandas Dataframe with the brigthness temperature simulated. +If only_bt = False it also returns all intermediate RT variables.

+
+
Return type:
+

Union[pandas.DataFrame, Tuple[pandas.DataFrame, Dict[str, numpy.ndarray]]]

+
+
+
+ +
+

Examples using pyrtlib.tb_spectrum.TbCloudRTE.execute#

+
+

Generic Example

+
Generic Example
+
+

Performing Downwelling Brightness Temperature calculation

+
Performing Downwelling Brightness Temperature calculation
+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Performing Upwelling Brightness Temperature calculation

+
Performing Upwelling Brightness Temperature calculation
+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.
+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.
+
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).

+
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.

+
Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.
+
+

Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz

+
Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz
+
+

Performing Downwelling Brightness Temperature calculation in cloudy condition.

+
Performing Downwelling Brightness Temperature calculation in cloudy condition.
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.html b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.html new file mode 100644 index 00000000..2be01b68 --- /dev/null +++ b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.html @@ -0,0 +1,769 @@ + + + + + + + + + + + + pyrtlib.tb_spectrum.TbCloudRTE — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.tb_spectrum.TbCloudRTE#

+
+
+class pyrtlib.tb_spectrum.TbCloudRTE(z: ndarray, p: ndarray, t: ndarray, rh: ndarray, frq: ndarray, angles: Optional[ndarray] = array([90.]), o3n: Optional[ndarray] = None, amu: Optional[Tuple] = None, absmdl: Optional[str] = '', ray_tracing: Optional[bool] = False, from_sat: Optional[bool] = True, cloudy: Optional[bool] = False)#
+

Bases: object

+

Initialize TbCloudRTE

+

Methods

+
+ + + + + + + + + + + + + + + + + +

__init__(z, p, t, rh, frq[, angles, o3n, ...])

Main class which computes brightness temperatures (Tb), mean radiating temperature (Tmr), and integrated absorption (Tau) for clear or cloudy conditions.

execute([only_bt])

This function computes Brightness Temperature and other radiometric parameters.

init_absmdl(absmdl)

Initialize absorption models.

init_cloudy(cldh, denice, denliq)

Initialize cloudy conditions parameters.

set_amu(amu)

Set absorption model uncertainties

+
+

Attributes

+
+ + + + + + + + +

emissivity

Surface emissivity.

satellite

If True computes an upward-propagating brightness-temperature spectrum otherwise a downward-propagating brightness-temperature spectrum at the bottom of the atmosphere will be performed.

+
+
+ +
+

Examples using pyrtlib.tb_spectrum.TbCloudRTE#

+
+

Generic Example

+
Generic Example
+
+

Performing Downwelling Brightness Temperature calculation

+
Performing Downwelling Brightness Temperature calculation
+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Performing Upwelling Brightness Temperature calculation

+
Performing Upwelling Brightness Temperature calculation
+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.
+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.
+
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).

+
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.

+
Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.
+
+

Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz

+
Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz
+
+

Performing Downwelling Brightness Temperature calculation in cloudy condition.

+
Performing Downwelling Brightness Temperature calculation in cloudy condition.
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.html b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.html new file mode 100644 index 00000000..0b44162e --- /dev/null +++ b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.html @@ -0,0 +1,743 @@ + + + + + + + + + + + + pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl#

+
+
+TbCloudRTE.init_absmdl(absmdl: str)#
+

Initialize absorption models.

+
+
Parameters:
+

absmdl (str) – Absorption model.

+
+
+
+ +
+

Examples using pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl#

+
+

Generic Example

+
Generic Example
+
+

Performing Downwelling Brightness Temperature calculation

+
Performing Downwelling Brightness Temperature calculation
+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Performing Upwelling Brightness Temperature calculation

+
Performing Upwelling Brightness Temperature calculation
+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.
+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.
+
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).

+
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.

+
Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.
+
+

Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz

+
Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz
+
+

Performing Downwelling Brightness Temperature calculation in cloudy condition.

+
Performing Downwelling Brightness Temperature calculation in cloudy condition.
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.html b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.html new file mode 100644 index 00000000..469a4553 --- /dev/null +++ b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.html @@ -0,0 +1,719 @@ + + + + + + + + + + + + pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy#

+
+
+TbCloudRTE.init_cloudy(cldh: ndarray, denice: ndarray, denliq: ndarray) None#
+

Initialize cloudy conditions parameters.

+
+
Parameters:
+
+
+
+
+ +
+

Examples using pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy#

+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.
+
+

Performing Downwelling Brightness Temperature calculation in cloudy condition.

+
Performing Downwelling Brightness Temperature calculation in cloudy condition.
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.html b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.html new file mode 100644 index 00000000..3230e8fd --- /dev/null +++ b/en/main/generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.html @@ -0,0 +1,717 @@ + + + + + + + + + + + + pyrtlib.tb_spectrum.TbCloudRTE.set_amu — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + + + + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.html b/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.html new file mode 100644 index 00000000..9df663c5 --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.uncertainty.AbsModUncertainty.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.uncertainty.AbsModUncertainty.__init__#

+
+
+AbsModUncertainty.__init__()#
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.html b/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.html new file mode 100644 index 00000000..26f6228a --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.html @@ -0,0 +1,741 @@ + + + + + + + + + + + + pyrtlib.uncertainty.AbsModUncertainty — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.uncertainty.AbsModUncertainty#

+
+
+class pyrtlib.uncertainty.AbsModUncertainty#
+

Bases: object

+

This module provides the uncertainties affecting absorption model +coefficients found in the litterature. +The baseline are the routines of Rosenkranz 2016 + modification to water-2-air by [Koshelev-2015].

+

For a more exaustive example on how uncertainty work look at Community example.

+

References

+ +

Methods

+
+ + + + + + + + + + + +

__init__()

parameters_perturbation([what, mode, index])

This functoin execute the perturbatoin of the spectroscopic parameters provided.

uncertainty_propagation(fun, A, B, sA, sB[, ...])

This function propagates uncertainty given two variables A, B and their associated uncertainty.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.html b/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.html new file mode 100644 index 00000000..6426ed3a --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.html @@ -0,0 +1,726 @@ + + + + + + + + + + + + pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation#

+
+
+static AbsModUncertainty.parameters_perturbation(what: Optional[list] = [], mode: Optional[str] = 'non', index: Optional[int] = None) Dict#
+

This functoin execute the perturbatoin of the spectroscopic parameters provided.

+
+
Parameters:
+
    +
  • what (Optional[list], optional) – The name of the parameter/s being perturbed. Defaults to [].

  • +
  • mode (Optional[str], optional) – The type of perturbation (max or min). Defaults to ‘non’.

  • +
  • index (Optional[int], optional) – The index of the coefficient being perturbed. Defaults to None.

  • +
+
+
Raises:
+

ValueError – If argument mode is not set or invalid

+
+
Returns:
+

The new dictionary that includes perturbed parameters.

+
+
Return type:
+

dict

+
+
+
+ +
+

Examples using pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation#

+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.html b/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.html new file mode 100644 index 00000000..d0b14e8d --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.html @@ -0,0 +1,757 @@ + + + + + + + + + + + + pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation#

+
+
+static AbsModUncertainty.uncertainty_propagation(fun: str, A: ndarray, B: ndarray, sA: ndarray, sB: ndarray, a: Optional[float] = 1.0, b: Optional[float] = 1.0, sAB: Optional[float] = 0.0) Tuple[ndarray, ndarray]#
+

This function propagates uncertainty given two variables A, B and their +associated uncertainty.

+
+ + + + + + + + + + + + + + + + + + + + + + + +

Function

Standard deviation

\(f=aA\)

\(\sigma_{f}=|a|\sigma _{A}\)

\(\displaystyle f=aA+bB\)

\(\displaystyle \sigma _{f}={\sqrt {a^{2}\sigma _{A}^{2}+b^{2}\sigma _{B}^{2}+2ab\,\sigma _{AB}}}\)

\(\displaystyle f=aA-bB\)

\(\displaystyle \sigma _{f}={\sqrt {a^{2}\sigma _{A}^{2}+b^{2}\sigma _{B}^{2}-2ab\,\sigma _{AB}}}\)

\(\displaystyle f=AB\)

\(\displaystyle \sigma _{f}\approx \left|f\right|{\sqrt {\left({\frac {\sigma _{A}}{A}}\right)^{2}+\left({\frac {\sigma _{B}}{B}}\right)^{2}+2{\frac {\sigma _{AB}}{AB}}}}\)

\(\displaystyle f={\frac {A}{B}}\)

\(\displaystyle \sigma _{f}\approx \left|f\right|{\sqrt {\left({\frac {\sigma _{A}}{A}}\right)^{2}+\left({\frac {\sigma _{B}}{B}}\right)^{2}-2{\frac {\sigma _{AB}}{AB}}}}\)

\(\displaystyle f=A^{a}\)

\(\displaystyle \sigma _{f}=|a|A^{a-1}\sigma _{A}\)

+
+
+
Parameters:
+
    +
  • fun (str) – [description].

  • +
  • A (numpy.ndarray) – variable A

  • +
  • B (numpy.ndarray) – variable B

  • +
  • sA (numpy.ndarray) – uncertainty on A

  • +
  • sB (numpy.ndarray) – uncertainty on B

  • +
  • a (float) – multiplier for A. Defaults to 1.0.

  • +
  • b (float) – multiplier for B. Defaults to 1.0.

  • +
  • sAB (float) – sqrt of covariance between A and B. Defaults to 0.0.

  • +
+
+
Raises:
+

ValueError – Raise if fun argument is not defined.

+
+
Returns:
+

function computed with imput variables and uncertainty on function used

+
+
Return type:
+

tuple

+
+
+

References

+ +
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.html b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.html new file mode 100644 index 00000000..05e21a03 --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.html @@ -0,0 +1,697 @@ + + + + + + + + + + + + pyrtlib.uncertainty.SpectroscopicParameter.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + + + + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.html b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.html new file mode 100644 index 00000000..eee917fc --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.html @@ -0,0 +1,770 @@ + + + + + + + + + + + + pyrtlib.uncertainty.SpectroscopicParameter — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.uncertainty.SpectroscopicParameter#

+
+
+class pyrtlib.uncertainty.SpectroscopicParameter(value: ndarray, uncer: ndarray, units: Optional[str] = '', refer: Optional[str] = '', name: Optional[str] = '')#
+

Bases: object

+

Absorption model uncertainties for the spectroscopic parameters

+
+

Example

+
>>> from pyrtlib.uncertainty import SpectroscopicParameter
+>>> parameters = SpectroscopicParameter.water_parameters('R18')
+>>> parameters['con_Cf'].value
+5.95e-10
+
+
+

New value may be added to parameters using SpectroscopicParameter() class as following

+
>>> parameters['con_Xs'] = SpectroscopicParameter(2.3, 0.001, 'unitless', 'Tretyakov, JMS, 2016')
+>>> parameters['con_Xs'].value
+2.3
+>>> parameters['con_Xs'].uncer
+'unitless'
+>>> parameters['con_Xs'].refer
+'Tretyakov, JMS, 2016'
+
+
+

Also, existing parameters may be modified as following

+
>>> parameters['w2a'].value = 1.333
+>>> parameters['w2a'].value
+1.333
+
+
+
+
+

Note

+

If new value will be added or modified it is necessary to save the new values by calling +the set_parameters() function.

+
+

Methods

+
+ + + + + + + + + + + + + + + + + +

__init__(value, uncer[, units, refer, name])

oxygen_parameters(model)

This method is used for uncertainty analysis and returns the dictionary with the whole spectroscopic parameters for \(O_2\).

ozono_parameters(model)

This method is used for uncertainty analysis and returns the dictionary with the whole spectroscopic parameters for \(O_3\).

set_parameters(SP)

Set new values and uncertainties to spectroscopic parameters.

water_parameters(model)

This method is used for uncertainty analysis and returns the dictionary with the whole spectroscopic parameters for \(H_2O\).

+
+

Attributes

+
+ + + + + + + + + + + + + + + + + +

name

The name or description of the parameter

refer

The reference of the parameter

units

The units of the parameter

value

The value associated to the parameter

uncer

The uncertainty of the parameter

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.html b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.html new file mode 100644 index 00000000..da6fae51 --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.html @@ -0,0 +1,722 @@ + + + + + + + + + + + + pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters#

+
+
+static SpectroscopicParameter.oxygen_parameters(model: str) Dict#
+

This method is used for uncertainty analysis and returns the dictionary +with the whole spectroscopic parameters for \(O_2\).

+
+
Parameters:
+

model (str) – The absorption model.

+
+
Returns:
+

The \(O_2\) spectroscopic parameters dictionary

+
+
Return type:
+

Dict

+
+
+
+ +
+

Examples using pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters#

+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.html b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.html new file mode 100644 index 00000000..13a5a93c --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.html @@ -0,0 +1,712 @@ + + + + + + + + + + + + pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters#

+
+
+static SpectroscopicParameter.ozono_parameters(model: str) Dict#
+

This method is used for uncertainty analysis and returns the dictionary +with the whole spectroscopic parameters for \(O_3\).

+
+
Parameters:
+

model (str) – The absorption model.

+
+
Returns:
+

The Ozono (\(O_3\)) spectroscopic parameters dictionary

+
+
Return type:
+

Dict

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.html b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.html new file mode 100644 index 00000000..84ac9a8b --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.html @@ -0,0 +1,722 @@ + + + + + + + + + + + + pyrtlib.uncertainty.SpectroscopicParameter.set_parameters — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.uncertainty.SpectroscopicParameter.set_parameters#

+
+
+static SpectroscopicParameter.set_parameters(SP: dict) None#
+

Set new values and uncertainties to spectroscopic parameters.

+
+
Parameters:
+

SP (dict) – The new dictionary with the spectroscopic parameters

+
+
+
+

Example

+
>>> parameters = SpectroscopicParameter.water_parameters('R17')
+>>> parameters['gamma_a'].value[0] = 2.688
+>>> parameters['gamma_a'].uncer[0] = 0.039
+>>> SpectroscopicParameter.set_parameters(parameters)
+
+
+
+
+ +
+

Examples using pyrtlib.uncertainty.SpectroscopicParameter.set_parameters#

+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.html b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.html new file mode 100644 index 00000000..da09b508 --- /dev/null +++ b/en/main/generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.html @@ -0,0 +1,734 @@ + + + + + + + + + + + + pyrtlib.uncertainty.SpectroscopicParameter.water_parameters — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.uncertainty.SpectroscopicParameter.water_parameters#

+
+
+static SpectroscopicParameter.water_parameters(model: str) Dict#
+

This method is used for uncertainty analysis and returns the dictionary +with the whole spectroscopic parameters for \(H_2O\).

+
+
Parameters:
+

model (str) – The absorption model.

+
+
Returns:
+

The \(H_2O\) spectroscopic parameters dictionary

+
+
Return type:
+

Dict

+
+
+
+

Example

+
>>> sp = SpectroscopicParameter.water_parameters("R19")
+>>> sp['con_Xs']
+SpectroscopicParameter(value=7.5,
+                       uncer=0.0,
+                       units='unitless',
+                       refer='Tretyakov, JMS, 2016',
+                       name='Self broadening temperature dependence exponents')
+
+
+
+
+ +
+

Examples using pyrtlib.uncertainty.SpectroscopicParameter.water_parameters#

+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.atmospheric_tickness.html b/en/main/generated/pyrtlib.utils.atmospheric_tickness.html new file mode 100644 index 00000000..3c300433 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.atmospheric_tickness.html @@ -0,0 +1,725 @@ + + + + + + + + + + + + pyrtlib.utils.atmospheric_tickness — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.atmospheric_tickness#

+
+
+pyrtlib.utils.atmospheric_tickness(p: ndarray, t: ndarray, mr: Optional[ndarray] = None) ndarray#
+

Calculate the thickness of a layer via the hypsometric equation. +This thickness calculation uses the pressure and temperature profiles (and optionally +mixing ratio) via the hypsometric equation with virtual temperature adjustment.

+
+\[Z_2 - Z_1 = -\frac{R_d}{g} \int_{p_1}^{p_2} T_v d\ln p,\]
+

Which is based off of Equation 3.24 in [Hobbs2006]. +This assumes a hydrostatic atmosphere.

+
+
Parameters:
+
    +
  • p (numpy.ndarray) – Atmospheric pressure profile (mb)

  • +
  • t (numpy.ndarray) – Atmospheric temperature profile (K).

  • +
  • mr (Optional[numpy.ndarray], optional) – Mass mixing ratio (dimensionless kg/kg-1). Defaults to None.

  • +
+
+
Returns:
+

The thickness of the layers in kilometers

+
+
Return type:
+

numpy.ndarray

+
+
+
+

Note

+

This function is based on metpy.calc.thickness_hydrostatic method.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.constants.html b/en/main/generated/pyrtlib.utils.constants.html new file mode 100644 index 00000000..e0d97a32 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.constants.html @@ -0,0 +1,778 @@ + + + + + + + + + + + + pyrtlib.utils.constants — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.constants#

+
+
+pyrtlib.utils.constants(name: Optional[str] = None) Union[Tuple[float, str], List]#
+

This routine will provide values and units for all the +universal constants necessary to pyrtlib.

+
+
Parameters:
+

name (Optional[str], optional) – String specifying which constant is needed. Defaults to None.

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

string

description

‘avogadro’

Avogadro number [mol-1]

‘boltzmann’

Boltzmann constant [J K-1]

‘EarthRadius’

Earth radius [km]

‘light’

Light speed [m s-1]

‘Np2dB’

Neper to Decibel [dB/Np]

‘planck’

Planck constant [J Hz-1]

‘Rdry’

Gas constant of dry air [J kg-1 K-1]

‘Rwatvap’

Gas constant of water vapor [J kg-1 K-1]

‘R’

Gas constant [J mol-1 K-1]

‘Tcosmicbkg’

Cosmic Background Temperature [K]

+
+
+
Raises:
+

ValueError – Raises error wheter no costant available.

+
+
Returns:
+

Union[Tuple[float, str], List] Numerical Value of the asked constant and string specifying which units are used

+
+
+

References

+ +
+

Note

+

# +/- 0.017 [K] Cosmic Background Temperature (see ref. 2) +Tcosmicbkg = 2.736;

+
+
+ +
+

Examples using pyrtlib.utils.constants#

+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.dewpoint2rh.html b/en/main/generated/pyrtlib.utils.dewpoint2rh.html new file mode 100644 index 00000000..37113ecc --- /dev/null +++ b/en/main/generated/pyrtlib.utils.dewpoint2rh.html @@ -0,0 +1,740 @@ + + + + + + + + + + + + pyrtlib.utils.dewpoint2rh — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.dewpoint2rh#

+
+
+pyrtlib.utils.dewpoint2rh(td: float, t: float, ice: Optional[bool] = False, method: Optional[str] = 'arm') float#
+

Calculate relative humidity from temperature and dewpoint. +Value is calculated using the August-Roche-Magnus approximation. [August-1828] [Magnus-1844].

+
+\[RH = \frac {\exp(\frac{a T_d}{b+T_d})} {\exp(\frac{a T}{b+T})}\]
+
+\[where \ a = 17.625, b = 243.04\]
+
+\[RH = \frac {6.1078\times10^{\frac{aT_d}{b + T_db}}}{6.1078\times10^{\frac{a T}{b + T}}}\]
+
+\[where \ a = 7.5, b = 265.5\]
+
+
Parameters:
+
    +
  • td (float) – The dew point temperature in Celsius

  • +
  • t (float) – The temperature in Celsius

  • +
+
+
Returns:
+

The relative humidity to the provided dew point temperature

+
+
Return type:
+

float

+
+
+

References

+ +
+ +
+

Examples using pyrtlib.utils.dewpoint2rh#

+
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).

+
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.

+
Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.
+
+
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.dilec12.html b/en/main/generated/pyrtlib.utils.dilec12.html new file mode 100644 index 00000000..f1718520 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.dilec12.html @@ -0,0 +1,734 @@ + + + + + + + + + + + + pyrtlib.utils.dilec12 — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.dilec12#

+
+
+pyrtlib.utils.dilec12(f: ndarray, t: ndarray) ndarray#
+

Computes the complex dielectric constant for liquid water, with a +negative imaginary part representing dissipation.

+

Complex logarithm is used here. It should be defined with +imaginary part in the range -pi to +pi.

+
+
Parameters:
+
+
+
Returns:
+

Dielectric constant for liquid water.

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+ +
+

Note

+

validated for 20<f<220 GHz at 248<tk<273; 1<f<1000 GHz at 273<tk<330.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.e2mr.html b/en/main/generated/pyrtlib.utils.e2mr.html new file mode 100644 index 00000000..7e6f1c7a --- /dev/null +++ b/en/main/generated/pyrtlib.utils.e2mr.html @@ -0,0 +1,715 @@ + + + + + + + + + + + + pyrtlib.utils.e2mr — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.e2mr#

+
+
+pyrtlib.utils.e2mr(p: ndarray, e: ndarray) ndarray#
+

Compute \(H_2O\) mass mixing ratio (g/kg) given pressure (mbar) +and \(H_2O\) partial pressure (mbar)

+
+
Parameters:
+
+
+
Returns:
+

\(H_2O\) Mass Mixing Ratio (g/kg)

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.esice_goffgratch.html b/en/main/generated/pyrtlib.utils.esice_goffgratch.html new file mode 100644 index 00000000..8371fbc8 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.esice_goffgratch.html @@ -0,0 +1,720 @@ + + + + + + + + + + + + pyrtlib.utils.esice_goffgratch — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.esice_goffgratch#

+
+
+pyrtlib.utils.esice_goffgratch(t: ndarray) ndarray#
+

Compute water vapor saturation pressure over ice using Goff-Gratch formulation.

+
+
Parameters:
+

t (numpy.ndarray) – Temperature profile (K).

+
+
Returns:
+

Water vapor saturation pressure over ice (mb).

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+ +
+

Note

+

svp returned for all values of input T, but results not valid for T >= 370 K and T <= 160 K.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.eswat_goffgratch.html b/en/main/generated/pyrtlib.utils.eswat_goffgratch.html new file mode 100644 index 00000000..cb3e77f3 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.eswat_goffgratch.html @@ -0,0 +1,720 @@ + + + + + + + + + + + + pyrtlib.utils.eswat_goffgratch — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.eswat_goffgratch#

+
+
+pyrtlib.utils.eswat_goffgratch(t: ndarray) ndarray#
+

Compute water vapor saturation pressure over water using Goff-Gratch formulation.

+
+
Parameters:
+

t (numpy.ndarray) – Temperature profile (K).

+
+
Returns:
+

Water vapor saturation pressure over water (mb).

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+ +
+

Note

+

svp returned for all values of input T, but results not valid for T >= 370 K and T <= 160 K.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.gas_mass.html b/en/main/generated/pyrtlib.utils.gas_mass.html new file mode 100644 index 00000000..33b138bb --- /dev/null +++ b/en/main/generated/pyrtlib.utils.gas_mass.html @@ -0,0 +1,709 @@ + + + + + + + + + + + + pyrtlib.utils.gas_mass — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.gas_mass#

+
+
+pyrtlib.utils.gas_mass(gasid: int) float#
+

Returns the mass of the HITRAN gas ID

+
+
Parameters:
+

gasid (int) – The gas ID defined in AtmosphericProfiles

+
+
Returns:
+

The mass of the HITRAN gas ID.

+
+
Return type:
+

float

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.get_frequencies.html b/en/main/generated/pyrtlib.utils.get_frequencies.html new file mode 100644 index 00000000..84cfa0d3 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.get_frequencies.html @@ -0,0 +1,716 @@ + + + + + + + + + + + + pyrtlib.utils.get_frequencies — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.get_frequencies#

+
+
+pyrtlib.utils.get_frequencies(instrument: Optional[str] = 'hat') List#
+

Get frequencies list from main ground instrument.

+
+
Parameters:
+

instrument (Optional[str], optional) – Abbreviation of radiometer name. Defaults to ‘hat’.

+
+
Returns:
+

Frequencies list (GHz) of the radiometer chosen.

+
+
Return type:
+

List

+
+
+
+ +
+

Examples using pyrtlib.utils.get_frequencies#

+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.get_frequencies_sat.html b/en/main/generated/pyrtlib.utils.get_frequencies_sat.html new file mode 100644 index 00000000..1b4032f1 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.get_frequencies_sat.html @@ -0,0 +1,727 @@ + + + + + + + + + + + + pyrtlib.utils.get_frequencies_sat — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.get_frequencies_sat#

+
+
+pyrtlib.utils.get_frequencies_sat(instrument: str) ndarray#
+

Get frequencies list from main satellite sensors.

+
+
Parameters:
+

instrument (str) – Instrument from which getting frequencies

+
+
Returns:
+

Frequencies (GHz) of the instrument selected

+
+
Return type:
+

numpy.ndarray

+
+
+ +
+

Example

+
from pyrtlib.utils import get_frequencies_sat
+mwi = get_frequencies_sat("MWI")
+
+
+
+
+ +
+

Examples using pyrtlib.utils.get_frequencies_sat#

+
+

Computation of Weighting Functions

+
Computation of Weighting Functions
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.height_to_pressure.html b/en/main/generated/pyrtlib.utils.height_to_pressure.html new file mode 100644 index 00000000..452f9032 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.height_to_pressure.html @@ -0,0 +1,721 @@ + + + + + + + + + + + + pyrtlib.utils.height_to_pressure — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.height_to_pressure#

+
+
+pyrtlib.utils.height_to_pressure(height: float) float#
+

Convert height data to pressures using the U.S. standard atmosphere [NOAA1976]. +The implementation inverts the formula outlined in [Hobbs1977] pg.60-61.

+
+\[p = p_0 e^{\frac{g}{R \Gamma} \text{ln}(1-\frac{Z \Gamma}{T_0})}\]
+
+
Parameters:
+

height (float) – The height value in meters

+
+
Returns:
+

The pressure to the provided height

+
+
Return type:
+

float

+
+
+
+ +
+

Examples using pyrtlib.utils.height_to_pressure#

+
+

Water Vapour Absorption Profiles

+
Water Vapour Absorption Profiles
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.html b/en/main/generated/pyrtlib.utils.html new file mode 100644 index 00000000..dc810c3c --- /dev/null +++ b/en/main/generated/pyrtlib.utils.html @@ -0,0 +1,758 @@ + + + + + + + + + + + + pyrtlib.utils — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils#

+

This module contains the utils functions.

+

Functions

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

atmospheric_tickness(p, t[, mr])

Calculate the thickness of a layer via the hypsometric equation.

constants([name])

This routine will provide values and units for all the universal constants necessary to pyrtlib.

dewpoint2rh(td, t[, ice, method])

Calculate relative humidity from temperature and dewpoint.

dilec12(f, t)

Computes the complex dielectric constant for liquid water, with a negative imaginary part representing dissipation.

e2mr(p, e)

Compute \(H_2O\) mass mixing ratio (g/kg) given pressure (mbar) and \(H_2O\) partial pressure (mbar)

esice_goffgratch(t)

Compute water vapor saturation pressure over ice using Goff-Gratch formulation.

eswat_goffgratch(t)

Compute water vapor saturation pressure over water using Goff-Gratch formulation.

gas_mass(gasid)

Returns the mass of the HITRAN gas ID

get_frequencies([instrument])

Get frequencies list from main ground instrument.

get_frequencies_sat(instrument)

Get frequencies list from main satellite sensors.

height_to_pressure(height)

Convert height data to pressures using the U.S.

import_lineshape(name)

Import a named object from a module in the context of this function.

kgkg_to_kgm3(q, p, t)

Utils function to convert from \(kg/kg\) to \(kg/m^3\).

mr2e(p, mr)

Compute \(H_2O\) partial pressure (mbar) given pressure (mbar) and \(H_2O\) mass mixing ratio (g/kg)

mr2rh(p, t, w[, Tconvert])

Determine relative humidity (rh) given reference pressure (mbar), temperature (K), and water vapor mass mixing ratio (g/kg)

mr2rho(mr, t, p)

Determine water vapor density (\(g/m^3\)) given reference pressure (mbar), temperature (K), and water vapor mass mixing ratio (g/kg)

ppmv2gkg(ppmv, gasid)

Convert volume mixing ratio in ppmv to mass mixing ratio in g/kg.

ppmv_to_moleculesm3(mr, p, t)

For any gas, this function converts mixing ratio (in ppmv) to number density (\(molecules/m^3\)).

pressure_to_height(pressure)

Convert pressure data to height using the U.S.

rho2mr(rho, t, p)

Determine water vapor mass mixing ratio (g/kg) given reference pressure (mbar), temperature (t,K), and water vapor density (\(g/m^3\)).

rho2rh(rho, t, p)

Convert water vapor density to relative humidity.

satmix(p, t[, Tconvert])

Compute saturation mixing ratio (g/kg) given reference pressure, p (mbar]) and temperature, T (K).

satvap(t[, Tconvert])

Compute saturation vapor pressure (mbar) given temperature, T (K).

tk2b_mod(hvk, t)

Get modified Planck function (Planck function without the constants \(\frac{2h\nu^3}{c^2}\)) by T and hvk (Planck constant * frequency) / Boltzmann constant, (equation (4) from [Schroeder-Westwater-1991])

to_celsius(t)

Convert T from Kelvin to Celsius

to_kelvin(t)

Convert T from Celsius to Kelvin

virtual_temperature(t, mr)

Calculate virtual temperature.

+
+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.import_lineshape.html b/en/main/generated/pyrtlib.utils.import_lineshape.html new file mode 100644 index 00000000..066e4eae --- /dev/null +++ b/en/main/generated/pyrtlib.utils.import_lineshape.html @@ -0,0 +1,742 @@ + + + + + + + + + + + + pyrtlib.utils.import_lineshape — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.import_lineshape#

+
+
+pyrtlib.utils.import_lineshape(name: str) module#
+

Import a named object from a module in the context of this function. +Used to import line list for absorption models.

+
+
Parameters:
+

name (str) – Absorption model name.

+
+
Returns:
+

Dictionary of line list of the absorption model chose.

+
+
Return type:
+

types.ModuleType

+
+
+
+

See also

+

set_ll()

+
+
+

Examples

+
>>> from pyrtlib.absorption_model import H2OAbsModel
+>>> from pyrtlib.utils import import_lineshape
+>>> H2OAbsModel.model = 'R21SD'
+>>> H2OAbsModel.h2oll = import_lineshape('h2oll')
+>>> H2OAbsModel.h2oll.aself
+array([0., 12.6,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,
+0.,  0.,  0.,  0.,  0.])
+
+
+
+
+ +
+

Examples using pyrtlib.utils.import_lineshape#

+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.
+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.
+
+

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.

+
Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.
+
+

Water Vapour Absorption Profiles

+
Water Vapour Absorption Profiles
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.kgkg_to_kgm3.html b/en/main/generated/pyrtlib.utils.kgkg_to_kgm3.html new file mode 100644 index 00000000..4cf0bfb3 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.kgkg_to_kgm3.html @@ -0,0 +1,745 @@ + + + + + + + + + + + + pyrtlib.utils.kgkg_to_kgm3 — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.kgkg_to_kgm3#

+
+
+pyrtlib.utils.kgkg_to_kgm3(q: ndarray, p: ndarray, t: ndarray) ndarray#
+

Utils function to convert from \(kg/kg\) to \(kg/m^3\). [Jacobson]

+

NWP models provide cloud liquid and ice water content in units \(kg/kg\). To convert +to \(g/m^3\) multiply the result of this function to the value in \(kg/kg\).

+
+\[LWC = q_{liq} \frac{10^2 P}{R_{moist} T}\]
+
+\[R_{moist} = R_{dry} (1 + \frac{1 - \epsilon}{\epsilon} q_{h2o})\]
+
+\[\epsilon = \frac{M_{h2o}}{M_{dry}}\]
+
+\[R_{dry} = \frac{R}{M_{dry}}\]
+

where: +\(q_{liq}\) is the mass mixing ratio for liquid cloud, \(P\) is the atmospheric pressure +in hPa, \(T\) is the atmospheric temperature in K, \(R_{moist}\) is the moist +air gas constant (in J kg-1 K-1), \(R_{dry}\) is the gas constant for dry air and \(q_{h2o}\) is the specific humidity +(given as the ratio between the mass of water vapor and the mass of moist air)

+

The same equations are used for ice clouds, by replacing LWC by IWC and \(q_{liq}\) by \(q_{ice}\)

+
+
Parameters:
+
+
+
Returns:
+

[description]

+
+
Return type:
+

numpy.ndarray

+
+
+

References

+ +
+ +
+

Examples using pyrtlib.utils.kgkg_to_kgm3#

+
+

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.

+
Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.
+
+
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.mr2e.html b/en/main/generated/pyrtlib.utils.mr2e.html new file mode 100644 index 00000000..053342df --- /dev/null +++ b/en/main/generated/pyrtlib.utils.mr2e.html @@ -0,0 +1,716 @@ + + + + + + + + + + + + pyrtlib.utils.mr2e — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.mr2e#

+
+
+pyrtlib.utils.mr2e(p: ndarray, mr: ndarray) ndarray#
+

Compute \(H_2O\) partial pressure (mbar) given pressure (mbar) +and \(H_2O\) mass mixing ratio (g/kg)

+

DCT 3/6/00

+
+
Parameters:
+
+
+
Returns:
+

\(H_2O\) partial pressure (mb).

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.mr2rh.html b/en/main/generated/pyrtlib.utils.mr2rh.html new file mode 100644 index 00000000..0b1559c9 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.mr2rh.html @@ -0,0 +1,759 @@ + + + + + + + + + + + + pyrtlib.utils.mr2rh — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.mr2rh#

+
+
+pyrtlib.utils.mr2rh(p: ndarray, t: ndarray, w: ndarray, Tconvert: Optional[ndarray] = None) Tuple[ndarray, ndarray]#
+

Determine relative humidity (rh) given reference pressure (mbar), temperature (K), and +water vapor mass mixing ratio (g/kg)

+

Two RHs are returned: rh1 is with RH defined as the ratio of water vapor partial pressure +to saturation vapor pressure and rh2 is with RH defined as the ratio of water vapor mixing ratio to +saturation mixing ratio.

+

if input, Tconvert is used as the temperature point to switch +from using saturation vapor pressure over water to over ice.

+
+
Parameters:
+
    +
  • p (numpy.ndarray) – Pressure profile (mb).

  • +
  • t (numpy.ndarray) – Temperature profile (K).

  • +
  • w (numpy.ndarray) – Water Vapor Mixing ratio (g/kg).

  • +
  • Tconvert (numpy.ndarray, optional) – Threshold temperature below which saturation +water pressure is calculated over ice instead of liquid water. Defaults to None.

  • +
+
+
Returns:
+

Relative humidity using ratios of gas pressures (%) +numpy.ndarray: Relative humidity using WMO definition (%)

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+

Examples using pyrtlib.utils.mr2rh#

+
+

Generic Example

+
Generic Example
+
+

Atmospheric Profiles

+
Atmospheric Profiles
+
+

Performing Downwelling Brightness Temperature calculation

+
Performing Downwelling Brightness Temperature calculation
+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Performing Upwelling Brightness Temperature calculation

+
Performing Upwelling Brightness Temperature calculation
+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+

Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz

+
Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz
+
+

Performing Downwelling Brightness Temperature calculation in cloudy condition.

+
Performing Downwelling Brightness Temperature calculation in cloudy condition.
+
+

Water Vapour Absorption Profiles

+
Water Vapour Absorption Profiles
+
+

Computation of Weighting Functions

+
Computation of Weighting Functions
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.mr2rho.html b/en/main/generated/pyrtlib.utils.mr2rho.html new file mode 100644 index 00000000..5096c6e4 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.mr2rho.html @@ -0,0 +1,717 @@ + + + + + + + + + + + + pyrtlib.utils.mr2rho — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.mr2rho#

+
+
+pyrtlib.utils.mr2rho(mr: ndarray, t: ndarray, p: ndarray) ndarray#
+

Determine water vapor density (\(g/m^3\)) given reference pressure (mbar), temperature (K), and +water vapor mass mixing ratio (g/kg)

+

Equations were provided by Holger Linne’ from Max Planck Institute.

+
+
Parameters:
+
+
+
Returns:
+

Water Vapor Density (\(g/m^3\))

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.ppmv2gkg.html b/en/main/generated/pyrtlib.utils.ppmv2gkg.html new file mode 100644 index 00000000..853fb9e5 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.ppmv2gkg.html @@ -0,0 +1,753 @@ + + + + + + + + + + + + pyrtlib.utils.ppmv2gkg — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.ppmv2gkg#

+
+
+pyrtlib.utils.ppmv2gkg(ppmv: ndarray, gasid: int) ndarray#
+

Convert volume mixing ratio in ppmv to mass mixing ratio in g/kg.

+
+
Parameters:
+
    +
  • ppmv (numpy.ndarray) – mass mixing ratio (g/kg).

  • +
  • gasid (int) – HITRAN gas id.

  • +
+
+
Returns:
+

Mass mixing ratio in g/kg

+
+
Return type:
+

numpy.ndarray

+
+
+
+

See also

+

gas_mass()

+
+
+ +
+

Examples using pyrtlib.utils.ppmv2gkg#

+
+

Generic Example

+
Generic Example
+
+

Atmospheric Profiles

+
Atmospheric Profiles
+
+

Performing Downwelling Brightness Temperature calculation

+
Performing Downwelling Brightness Temperature calculation
+
+

Performing sensitivity of spectroscopic parameters

+
Performing sensitivity of spectroscopic parameters
+
+

Performing Upwelling Brightness Temperature calculation

+
Performing Upwelling Brightness Temperature calculation
+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+

Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz

+
Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz
+
+

Performing Downwelling Brightness Temperature calculation in cloudy condition.

+
Performing Downwelling Brightness Temperature calculation in cloudy condition.
+
+

Water Vapour Absorption Profiles

+
Water Vapour Absorption Profiles
+
+

Computation of Weighting Functions

+
Computation of Weighting Functions
+
+

Uncertainty Example

+
Uncertainty Example
+
+
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.ppmv_to_moleculesm3.html b/en/main/generated/pyrtlib.utils.ppmv_to_moleculesm3.html new file mode 100644 index 00000000..5363b791 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.ppmv_to_moleculesm3.html @@ -0,0 +1,722 @@ + + + + + + + + + + + + pyrtlib.utils.ppmv_to_moleculesm3 — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.ppmv_to_moleculesm3#

+
+
+pyrtlib.utils.ppmv_to_moleculesm3(mr: ndarray, p: ndarray, t: ndarray) ndarray#
+

For any gas, this function converts mixing ratio (in ppmv) to number density (\(molecules/m^3\)).

+
+
Parameters:
+
+
+
Returns:
+

[description]

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+

Examples using pyrtlib.utils.ppmv_to_moleculesm3#

+
+

Performing Downwelling Brightness Temperature calculation with Ozone

+
Performing Downwelling Brightness Temperature calculation with Ozone
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.pressure_to_height.html b/en/main/generated/pyrtlib.utils.pressure_to_height.html new file mode 100644 index 00000000..41f8680b --- /dev/null +++ b/en/main/generated/pyrtlib.utils.pressure_to_height.html @@ -0,0 +1,714 @@ + + + + + + + + + + + + pyrtlib.utils.pressure_to_height — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.pressure_to_height#

+
+
+pyrtlib.utils.pressure_to_height(pressure: float) float#
+

Convert pressure data to height using the U.S. standard atmosphere [NOAA1976]. +The implementation uses the formula outlined in [Hobbs1977] pg.60-61.

+
+\[Z = \frac{T_0}{\Gamma}[1-\frac{p}{p_0}^\frac{R\Gamma}{g}]\]
+
+
Parameters:
+

pressure (float) – The pressure value in mbar

+
+
Returns:
+

The height in meters to the provided pressure

+
+
Return type:
+

float

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.rho2mr.html b/en/main/generated/pyrtlib.utils.rho2mr.html new file mode 100644 index 00000000..149a2083 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.rho2mr.html @@ -0,0 +1,716 @@ + + + + + + + + + + + + pyrtlib.utils.rho2mr — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.rho2mr#

+
+
+pyrtlib.utils.rho2mr(rho: ndarray, t: ndarray, p: ndarray) ndarray#
+

Determine water vapor mass mixing ratio (g/kg) given reference pressure (mbar), +temperature (t,K), and water vapor density (\(g/m^3\)).

+
+
Parameters:
+
    +
  • rho (np.ndarray) – Water vapor density (\(g/m^3\))

  • +
  • t (np.ndarray) – Temperature (K)

  • +
  • p (np.ndarray) – Pressure (mb).

  • +
+
+
Returns:
+

H2O Mass Mixing Ratio (g/kg)

+
+
Return type:
+

np.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.rho2rh.html b/en/main/generated/pyrtlib.utils.rho2rh.html new file mode 100644 index 00000000..cdacddda --- /dev/null +++ b/en/main/generated/pyrtlib.utils.rho2rh.html @@ -0,0 +1,716 @@ + + + + + + + + + + + + pyrtlib.utils.rho2rh — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.rho2rh#

+
+
+pyrtlib.utils.rho2rh(rho: ndarray, t: ndarray, p: ndarray) Tuple[ndarray, ndarray]#
+

Convert water vapor density to relative humidity.

+
+
Parameters:
+
    +
  • rho (np.ndarray) – Water vapor density (\(g/m^3\))

  • +
  • t (np.ndarray) – Temperature (K)

  • +
  • p (np.ndarray) – Pressure (mb).

  • +
+
+
Returns:
+

Relative humidity using ratios of gas pressures (%) +numpy.ndarray: Relative humidity using WMO definition (%)

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.satmix.html b/en/main/generated/pyrtlib.utils.satmix.html new file mode 100644 index 00000000..73e2ce1c --- /dev/null +++ b/en/main/generated/pyrtlib.utils.satmix.html @@ -0,0 +1,718 @@ + + + + + + + + + + + + pyrtlib.utils.satmix — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.satmix#

+
+
+pyrtlib.utils.satmix(p: ndarray, t: ndarray, Tconvert: Optional[ndarray] = None) ndarray#
+

Compute saturation mixing ratio (g/kg) given reference pressure, +p (mbar]) and temperature, T (K). If Tconvert input, the calculation uses +the saturation vapor pressure over ice (opposed to over water) +for temperatures less than Tconvert [K].

+

DCT, updated 3/5/00

+
+
Parameters:
+
    +
  • p (numpy.ndarray) – Pressure profile (mb).

  • +
  • t (numpy.ndarray) – Temperature profile (K).

  • +
  • Tconvert (Optional[numpy.ndarray], optional) – Threshold temperature below which saturation +water pressure is calculated over ice instead of liquid water. Defaults to None.

  • +
+
+
Returns:
+

Saturation mixing ratio (g/kg).

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.satvap.html b/en/main/generated/pyrtlib.utils.satvap.html new file mode 100644 index 00000000..947a6ebc --- /dev/null +++ b/en/main/generated/pyrtlib.utils.satvap.html @@ -0,0 +1,716 @@ + + + + + + + + + + + + pyrtlib.utils.satvap — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.satvap#

+
+
+pyrtlib.utils.satvap(t: ndarray, Tconvert: Optional[ndarray] = None) ndarray#
+

Compute saturation vapor pressure (mbar) given temperature, T (K). +If Tconvert is input, the calculation uses the saturation vapor +pressure over ice (opposed to over water) for temperatures less than +Tconvert (K).

+
+
Parameters:
+
    +
  • t (numpy.ndarray) – Temperature profile (K).

  • +
  • Tconvert (Optional[numpy.ndarray], optional) – Threshold temperature below which saturation +water pressure is calculated over ice instead of liquid water. Defaults to None.

  • +
+
+
Returns:
+

Saturation vapor pressure (mbar).

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.tk2b_mod.html b/en/main/generated/pyrtlib.utils.tk2b_mod.html new file mode 100644 index 00000000..21ad3233 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.tk2b_mod.html @@ -0,0 +1,717 @@ + + + + + + + + + + + + pyrtlib.utils.tk2b_mod — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.tk2b_mod#

+
+
+pyrtlib.utils.tk2b_mod(hvk: ndarray, t: ndarray) ndarray#
+

Get modified Planck function (Planck function without the constants \(\frac{2h\nu^3}{c^2}\)) +by T and hvk (Planck constant * frequency) / Boltzmann constant, (equation (4) from [Schroeder-Westwater-1991])

+
+\[\tilde{B} = \frac{1}{ e^{\frac{h\nu}{k_{B}T}}-1}\]
+
+
Parameters:
+
+
+
Returns:
+

Modified Planck function.

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.to_celsius.html b/en/main/generated/pyrtlib.utils.to_celsius.html new file mode 100644 index 00000000..593031c4 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.to_celsius.html @@ -0,0 +1,709 @@ + + + + + + + + + + + + pyrtlib.utils.to_celsius — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.to_celsius#

+
+
+pyrtlib.utils.to_celsius(t: ndarray) ndarray#
+

Convert T from Kelvin to Celsius

+
+
Parameters:
+

t (numpy.ndarray) – Temperature (K)

+
+
Returns:
+

Temperature (°C)

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.to_kelvin.html b/en/main/generated/pyrtlib.utils.to_kelvin.html new file mode 100644 index 00000000..f9e4e167 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.to_kelvin.html @@ -0,0 +1,719 @@ + + + + + + + + + + + + pyrtlib.utils.to_kelvin — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.to_kelvin#

+
+
+pyrtlib.utils.to_kelvin(t: ndarray) ndarray#
+

Convert T from Celsius to Kelvin

+
+
Parameters:
+

t (numpy.ndarray) – Temperature (°C)

+
+
Returns:
+

Temperature (K)

+
+
Return type:
+

numpy.ndarray

+
+
+
+ +
+

Examples using pyrtlib.utils.to_kelvin#

+
+

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).

+
Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).
+
+

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.

+
Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.
+
+
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.utils.virtual_temperature.html b/en/main/generated/pyrtlib.utils.virtual_temperature.html new file mode 100644 index 00000000..2e7d21f4 --- /dev/null +++ b/en/main/generated/pyrtlib.utils.virtual_temperature.html @@ -0,0 +1,730 @@ + + + + + + + + + + + + pyrtlib.utils.virtual_temperature — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.utils.virtual_temperature#

+
+
+pyrtlib.utils.virtual_temperature(t: ndarray, mr: ndarray) ndarray#
+

Calculate virtual temperature. +This calculation must be given an air parcel’s temperature and mixing ratio. +The implementation uses the formula outlined in [Hobbs2006] pg.80.

+
+\[T_v = T \frac{\text{w} + \epsilon}{\epsilon\,(1 + \text{w})}\]
+
+
Parameters:
+
+
+
Returns:
+

Corresponding virtual temperature of the parcel

+
+
Return type:
+

numpy.ndarray

+
+
+
+

Examples

+
>>> from pyrtlib.utils import virtual_temperature
+>>> virtual_temperature(283.2, 12*1e-3)
+285.2412547754703
+
+
+
+
+

Note

+

This function is based on metpy.calc.virtual_temperature method.

+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.html b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.html new file mode 100644 index 00000000..b9c4f1e3 --- /dev/null +++ b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.html @@ -0,0 +1,728 @@ + + + + + + + + + + + + pyrtlib.weighting_functions.WeightingFunctions.__init__ — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.weighting_functions.WeightingFunctions.__init__#

+
+
+WeightingFunctions.__init__(z: ndarray, p: ndarray, t: ndarray, rh: ndarray, value_prof_interpolation: Optional[float] = 1) None#
+

Constructor for the WeightingFunctions class.

+
+
Parameters:
+
    +
  • z (np.ndarray) – Height profile.

  • +
  • p (np.ndarray) – Pressure profile.

  • +
  • t (np.ndarray) – Temperature profile.

  • +
  • rh (np.ndarray) – Relative humidity profile.

  • +
  • value_prof_interpolation (Optional[float], optional) – The value for the interpolation of the profiles. Defaults to 1.

  • +
+
+
Raises:
+

ValueError – If the input values are not valid arrays.

+
+
Returns:
+

None

+
+
+
+

Note

+
+
The input arrays must have the same size. Units for the arrays are:
    +
  • z: km

  • +
  • p: hPa

  • +
  • t: K

  • +
  • rh: fraction

  • +
  • value_prof_interpolation: km

  • +
+
+
+
+
+ +
+ + +
+ + + + + +
+ + + +
+ + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.html b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.html new file mode 100644 index 00000000..a7ab33b1 --- /dev/null +++ b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.html @@ -0,0 +1,719 @@ + + + + + + + + + + + + pyrtlib.weighting_functions.WeightingFunctions.generate_wf — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.weighting_functions.WeightingFunctions.generate_wf#

+
+
+WeightingFunctions.generate_wf() ndarray#
+

Generate the weighting function.

+
+\[\frac{\partial \tau}{\partial s} = -{\tau (\nu, s)}\times{\alpha (\nu, s)}\]
+

This method calculates the weighting function based on the provided data. +It performs calculations and returns the resulting weighting function.

+
+
Returns:
+

The calculated weighting function.

+
+
Return type:
+

np.ndarray

+
+
+
+ +
+

Examples using pyrtlib.weighting_functions.WeightingFunctions.generate_wf#

+
+

Computation of Weighting Functions

+
Computation of Weighting Functions
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.html b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.html new file mode 100644 index 00000000..c45e68fa --- /dev/null +++ b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.html @@ -0,0 +1,737 @@ + + + + + + + + + + + + pyrtlib.weighting_functions.WeightingFunctions — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.weighting_functions.WeightingFunctions#

+
+
+class pyrtlib.weighting_functions.WeightingFunctions(z: ndarray, p: ndarray, t: ndarray, rh: ndarray, value_prof_interpolation: Optional[float] = 1)#
+

Bases: object

+

This class is used to compute the weighting functions

+
+

Note

+

The weighting functions are computed always using last absorption model available.

+
+

Methods

+
+ + + + + + + + + + + + + + +

__init__(z, p, t, rh[, value_prof_interpolation])

Constructor for the WeightingFunctions class.

generate_wf()

Generate the weighting function.

plot_wf(wgt[, title, ylim, xlim, legend, ...])

Plot the weighting functions

plot_wf_grouped(wgt[, title, ylim, ...])

Plot the weighting functions

+
+

Attributes

+
+ + + + + + + + +

frequencies

Returns the frequencies array.

satellite

If True computes an upward-propagating brightness-temperature spectrum otherwise a downward-propagating brightness-temperature spectrum at the bottom of the atmosphere will be performed.

+
+
+ +
+

Examples using pyrtlib.weighting_functions.WeightingFunctions#

+
+

Computation of Weighting Functions

+
Computation of Weighting Functions
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.html b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.html new file mode 100644 index 00000000..7be61690 --- /dev/null +++ b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.html @@ -0,0 +1,718 @@ + + + + + + + + + + + + pyrtlib.weighting_functions.WeightingFunctions.plot_wf — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.weighting_functions.WeightingFunctions.plot_wf#

+
+
+WeightingFunctions.plot_wf(wgt: ndarray, title: Optional[str] = '', ylim: Optional[Tuple[int, int]] = None, xlim: Optional[Tuple[int, int]] = None, legend: Optional[bool] = True, normalized: Optional[bool] = False, **kwargs) None#
+

Plot the weighting functions

+
+
Parameters:
+
    +
  • wgt (ndarray) – The weighting functions to be plotted.

  • +
  • title (Optional[str], optional) – The title of the plot. Defaults to ‘’.

  • +
  • ylim (Optional[Tuple[int, int]], optional) – The y-axis limits of the plot. Defaults to None.

  • +
  • xlim (Optional[Tuple[int, int]], optional) – The x-axis limits of the plot. Defaults to None.

  • +
  • legend (Optional[bool], optional) – Whether to show the legend. Defaults to True.

  • +
  • normalized (Optional[bool], optional) – Whether to normalize to the max the weighting functions. Defaults to False.

  • +
  • **kwargs – Additional keyword arguments (figsize, dpi)

  • +
+
+
+
+ +
+

Examples using pyrtlib.weighting_functions.WeightingFunctions.plot_wf#

+
+

Computation of Weighting Functions

+
Computation of Weighting Functions
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.html b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.html new file mode 100644 index 00000000..71fd924f --- /dev/null +++ b/en/main/generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.html @@ -0,0 +1,721 @@ + + + + + + + + + + + + pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped#

+
+
+WeightingFunctions.plot_wf_grouped(wgt: ndarray, title: Optional[str] = '', ylim: Optional[Tuple[int, int]] = None, grouped_frequencies: Optional[List[int]] = None, grouped_labels: Optional[List[str]] = None, **kwargs) None#
+

Plot the weighting functions

+
+
Parameters:
+
    +
  • wgt (ndarray) – The weighting functions to be plotted.

  • +
  • title (Optional[str], optional) – The title of the plot. Defaults to ‘’.

  • +
  • ylim (Optional[Tuple[int, int]], optional) – The y-axis limits of the plot. Defaults to None.

  • +
  • grouped_frequencies (List[int]) – The number of frequencies to be grouped.

  • +
  • grouped_labels (List[str]) – The labels for the grouped frequencies.

  • +
  • dpi (Optional[int], optional) – The dpi of the plot. Defaults to 150.

  • +
  • **kwargs – Additional keyword arguments (figsize, dpi)

  • +
+
+
Raises:
+

ValueError – If the plot is not available for the current satellite mode.

+
+
+
+ +
+

Examples using pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped#

+
+

Computation of Weighting Functions

+
Computation of Weighting Functions
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/genindex.html b/en/main/genindex.html new file mode 100644 index 00000000..4fd1eeff --- /dev/null +++ b/en/main/genindex.html @@ -0,0 +1,903 @@ + + + + + + + + + + + Index — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + + + +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+ + + + + +
+ + +

Index

+ +
+ _ + | A + | B + | C + | D + | E + | G + | H + | I + | K + | L + | M + | N + | O + | P + | R + | S + | T + | U + | V + | W + +
+

_

+ + +
+ +

A

+ + + +
+ +

B

+ + +
+ +

C

+ + + +
+ +

D

+ + + +
+ +

E

+ + + +
+ +

G

+ + + +
+ +

H

+ + + +
+ +

I

+ + + +
+ +

K

+ + +
+ +

L

+ + + +
+ +

M

+ + + +
+ +

N

+ + + +
+ +

O

+ + + +
+ +

P

+ + + +
+ +

R

+ + + +
+ +

S

+ + + +
+ +

T

+ + + +
+ +

U

+ + +
+ +

V

+ + + +
+ +

W

+ + + +
+ + + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/index.html b/en/main/index.html new file mode 100644 index 00000000..c99d5bd0 --- /dev/null +++ b/en/main/index.html @@ -0,0 +1,743 @@ + + + + + + + + + + + + PyRTlib documentation — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + + + +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+ + + + + +
+ +
+

PyRTlib documentation#

+

PyRTlib allows to simulate and calculate radiometric parameters and estimting propogation parameters using as input meteorological data. +Some meteorological dataset are built-in in PyRTlib which can be download and used directly in PyRTlib. It considers atmospheric profiles from both radiosounding observations (RAOB) and model reanalysis (ERA5). +RAOB profiles come from Wyoming Upper Air Archive (University of Wyoming) and NCEI’s Integrated Radiosonde Archive version 2 (IGRA2) by the National Climatic Data Center (NCDC) of the National Oceanic and Atmospheric Administration (NOAA).

+

PyRTlib also allows to quantify absorption model uncertainty due to uncertainty in the underlying spectroscopic parameters. [Cimini-2018] +The approach is applied to a widely used microwave absorption model [Rosenkranz-2017], on which PyRTlib is based, and radiative transfer calculations at any frequencies range, +which are commonly exploited for atmospheric sounding by microwave radiometer (MWR).

+
+
+
+
+
+
+Getting started
+
+ +
+
+
+
+
+
+API reference
+
+ +
+
+
+
+
+
+Gallery example
+
+ +
+
+
+
+
+
+Community example
+
+ +
+
+
+
+

The source code for pyrtlib python package is hosted on github.

+
+

Note

+

The software is intended as an educational tool with limited ranges of +applicability, so no guarantees are attached to any of the codes.

+
+
+

Quick start#

+
from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.utils import mr2rh, ppmv2gkg
+
+
+

Atmospheric profile definition:

+
z, p, _, t, md = atmp.gl_atm(atmp.MIDLATITUDE_SUMMER)
+
+
+

Units conversion:

+
gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+
+
+

Relative humidity of \(H_2O\) (water vapor)

+
rh = mr2rh(p, t, gkg)[0] / 100
+
+
+

Deifinition of angles and frequencies:

+
ang = np.array([90.])
+frq = np.arange(20, 1001, 1)
+
+
+

Initialize parameters for main execution:

+
rte = TbCloudRTE(z, p, t, rh, frq, ang)
+
+
+

Set absorption model:

+
rte.init_absmdl('R22SD')
+
+
+

Execute model by computing upwelling radiances:

+
df = rte.execute()
+df.tbtotal
+0      293.119811
+1      292.538088
+2      291.736672
+3      291.913658
+4      292.493971
+         ...
+976    230.179993
+977    231.435965
+978    232.592915
+979    233.666322
+980    234.667522
+Name: tbtotal, Length: 981, dtype: float64
+
+
+

Preview of the output dataframe (see pyrtlib.tb_spectrum.TbCloudRTE.execute() for more info):

+
++++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

tbtotal

tbatm

tmr

tmrcld

tauwet

taudry

tauliq

tauice

293.119811

0.0

282.644145

0.0

0.085189

0.012949

0.0

0.0

292.538088

0.0

282.188067

0.0

0.135297

0.013615

0.0

0.0

234.667522

0.0

234.667522

0.0

474.835275

0.329120

0.0

0.0

+
+

Plotting result:

+_images/spectrum_r22.jpeg +

Plotting of upwelling \(\Delta T_b\) using the last two absorption models available in PyRTlib for six reference atmosphere climatology.

+_images/spectrum_r23_r24.png +
+
+

Cite as#

+

Please cite us:

+

Larosa, S., Cimini, D., Gallucci, D., Nilo, S. T., and Romano, F.: PyRTlib: an educational Python-based library for non-scattering atmospheric microwave radiative transfer computations, Geosci. Model Dev., 17, 2053–2076, https://doi.org/10.5194/gmd-17-2053-2024, 2024.

+

Larosa, S., Cimini, D., Gallucci, D., Nilo, S. T., & Romano, F. (2024). PyRTlib: a python package for non-scattering line-by-line microwave Radiative Transfer simulations.. Zenodo. https://doi.org/10.5281/zenodo.8219145

+
+
+

Installation#

+ +
+
+

API References#

+ +
+ +
+

Community Example#

+ +
+
+

References#

+
+ +
+
+ +
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/installation.html b/en/main/installation.html new file mode 100644 index 00000000..2135b7c9 --- /dev/null +++ b/en/main/installation.html @@ -0,0 +1,659 @@ + + + + + + + + + + + + Installation instructions — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

Installation instructions#

+

pyrtlib can be installed on any computer supporting Python 3.8 (or higher). +The actual installation procedure depends on the operating system. The +instructions below are for Ubuntu and MacOS.

+
+

Python Installation (ubuntu)#

+
$ sudo apt update && sudo apt upgrade
+$ sudo apt install python3 python3-pip
+
+
+
+
+

Python Installation (macos)#

+

Python3 installation via Homebrew

+
$ brew install python3
+
+
+

Python3 can also be installed by downloading the installer from Python Releases for Mac OS X.

+
+
+

Installing PyRTlib via PyPi#

+

pyrtlib can be installed via pip from PyPI. To install the package using the following command:

+
$ pip install pyrtlib
+
+
+
+

Note

+

To get an up-to-date +version of pyrtlib, download it directly from GitHub.

+
+
+
+

Virtual Environment#

+

To install virtualenv via pip run:

+
$ pip3 install virtualenv
+
+
+

Create a new virtual environment and activate it:

+
$ virtualenv -p python3 <desired-path>
+
+
+

Activate the virtualenv:

+
$ source <desired-path>/bin/activate
+
+
+

Deactivate the virtualenv:

+
$ deactivate
+
+
+
+
+

Installing PyRTlib from source#

+

Download latest release of pyrtlib source from this link.

+
$ tar zxvf pyrtlib.tar.gz
+$ cd pyrtlib
+$ <desired-path>/bin/python3 setup.py install
+
+
+

pyrtlib is now ready to be used from that virtual environment. For a quickly test run the following command into the terminal app

+
$ <desired-path>/python3 <desired-path>/pyrtlib/hello_spectrum.py
+
+
+

if pyrtlib has been properly installed you should see something like

+
$ <desired-path>/python3 <desired-path>/pyrtlib/hello_spectrum.py
+Progress: |██████████████████████████████████████████████████| 100.0% Complete
+Hello Spectrum!
+
+            tbtotal  tbatm         tmr  tmrcld     tauwet    taudry  tauliq  tauice
+18.7000   298.689123    0.0  286.716080     0.0   0.069040  0.012013     0.0     0.0
+23.8000   297.014923    0.0  286.634107     0.0   0.214403  0.015643     0.0     0.0
+31.4000   298.285354    0.0  285.140186     0.0   0.076330  0.025881     0.0     0.0
+50.3000   290.594440    0.0  274.191598     0.0   0.124585  0.316968     0.0     0.0
+52.6100   278.442378    0.0  267.163248     0.0   0.134824  0.924593     0.0     0.0
+53.2400   270.032638    0.0  262.487813     0.0   0.137720  1.458056     0.0     0.0
+53.7500   259.296109    0.0  255.080703     0.0   0.140096  2.219325     0.0     0.0
+89.0000   295.336793    0.0  286.913337     0.0   0.370017  0.047366     0.0     0.0
+115.5503  283.409636    0.0  274.910320     0.0   0.634700  0.435743     0.0     0.0
+116.6503  273.105313    0.0  265.583070     0.0   0.647756  0.864176     0.0     0.0
+117.3503  258.382394    0.0  253.279983     0.0   0.656168  1.551855     0.0     0.0
+117.5503  251.887074    0.0  247.840191     0.0   0.658587  1.892017     0.0     0.0
+119.9503  252.319901    0.0  248.289379     0.0   0.688148  1.857808     0.0     0.0
+120.1503  258.829337    0.0  253.792452     0.0   0.690658  1.519190     0.0     0.0
+120.8503  273.470564    0.0  266.281272     0.0   0.699499  0.837028     0.0     0.0
+121.9503  283.508571    0.0  275.765375     0.0   0.713579  0.414934     0.0     0.0
+164.7750  287.382258    0.0  285.293882     0.0   1.912160  0.019109     0.0     0.0
+166.2250  286.768856    0.0  284.923583     0.0   2.061262  0.019146     0.0     0.0
+174.9100  279.316272    0.0  279.136791     0.0   4.721552  0.019642     0.0     0.0
+177.2100  274.918510    0.0  274.902966     0.0   7.354952  0.019836     0.0     0.0
+178.4100  271.637064    0.0  271.635743     0.0   9.944304  0.019946     0.0     0.0
+179.9100  265.916650    0.0  265.916645     0.0  15.761551  0.020091     0.0     0.0
+181.3100  258.183942    0.0  258.183942     0.0  26.052880  0.020233     0.0     0.0
+185.3100  258.248076    0.0  258.248076     0.0  26.149293  0.020672     0.0     0.0
+186.7100  265.558982    0.0  265.558979     0.0  16.344414  0.020837     0.0     0.0
+188.2100  270.889844    0.0  270.889228     0.0  10.732092  0.021020     0.0     0.0
+189.4100  273.904425    0.0  273.897462     0.0   8.196430  0.021170     0.0     0.0
+191.7100  277.820891    0.0  277.740367     0.0   5.586945  0.021468     0.0     0.0
+
+PyRTlib successfully installed
+
+
+
+
+
+

Build and run the Docker image#

+

To build docker image it is necessary to download the latest pyrtlib release from this link and then run the following command from you prefer terminal.

+
$ tar zxvf pyrtlib.tar.gz
+$ cd pyrtlib
+
+
+

From within pyrtlib folder run the following docker command to build the docker image

+
$ docker build --pull --rm -f "Dockerfile" -t pyrtlib:latest "."
+$ docker run --rm -it  pyrtlib:latest
+
+
+

To test run the example script from within the docker image

+
$ root@993587e5fea9:/home/dev/pyrtlib# python3 hello_spectrum.py
+
+
+
+
+

My first run with PyRTlib (Colab Notebook)#

+

To run the example script in a Google Colab Notebook, you can use the following code:

+
!pip install pyrtlib
+!python3 hello_spectrum.py
+
+
+
+

Note

+

The example script is available at this link.

+
+
!wget https://raw.githubusercontent.com/SatCloP/pyrtlib/main/pyrtlib/hello_spectrum.py
+!python3 hello_spectrum.py
+
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/notebook/Pressure_Broadening_effect.html b/en/main/notebook/Pressure_Broadening_effect.html new file mode 100644 index 00000000..a84149f8 --- /dev/null +++ b/en/main/notebook/Pressure_Broadening_effect.html @@ -0,0 +1,687 @@ + + + + + + + + + + + + Example by Loretta-Pearl-Poku — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

Example by Loretta-Pearl-Poku#

+

This notebook example was created by Loretta-Pearl-Poku

+

The code highlights the fluctuations in the downwelling brightness temperature at high resolution and high pressure levels explaining the broadening effect of oxygen line mixing. Also the fluctuations in the downwelling brightness temperature in the V-band (50 - 70 GHz) at high resolution.

+
+
[2]:
+
+
+
import matplotlib.pyplot as plt
+import datetime
+import numpy as np
+plt.rcParams.update({'font.size': 15})
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import ppmv2gkg, mr2rh
+from pyrtlib.apiwebservices import WyomingUpperAir
+from pyrtlib.utils import import_lineshape
+from pyrtlib.absorption_model import H2OAbsModel
+
+
+
+
+
+
+
+
+/usr/local/lib/python3.10/dist-packages/pyrtlib/apiwebservices/erafive.py:19: UserWarning: Module CDSAPI must be installed to download ERA5 Reanalysis dataset.
+  warnings.warn(
+
+
+
+
[7]:
+
+
+
date = datetime.datetime(2023, 6, 12, 12)
+station = 'DIAP' #Abidgan
+df = WyomingUpperAir.request_data(date, station)
+df.attrs['units']
+
+
+
+
+
[7]:
+
+
+
+
+{'pressure': 'hPa',
+ 'height': 'meter',
+ 'temperature': 'degC',
+ 'dewpoint': 'degC',
+ 'rh': '%',
+ 'mixr': 'g/kg',
+ 'station': None,
+ 'station_number': None,
+ 'time': None,
+ 'latitude': 'degrees',
+ 'longitude': 'degrees',
+ 'elevation': 'meter'}
+
+
+
+
[16]:
+
+
+
#WyomingUpperAir.get_stations(region = 'africa')
+date = datetime.datetime(2023, 6, 12, 12)
+station = 'DIAP' #Abidgan
+df = WyomingUpperAir.request_data(date, station)
+df.attrs['units']
+
+fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+mdl = 'R17'
+ang = np.array([90.])
+frq = np.arange(50, 70, 0.1)
+nf = len(frq)
+ax.set_xlabel('Frequency (GHz)')
+ax.set_ylabel('BT (K)')
+
+pressure = df.pressure.values[42:65]
+rh = df.rh.values[42:65]/100
+height = df.height.values[42:65]/1000
+temp = df.temperature.values[42:65]+273
+
+'''
+pressure = df.pressure.values
+rh = df.rh.values/100
+height = df.height.values/1000
+temp = df.temperature.values+273
+'''
+
+rte1 = TbCloudRTE(df.height.values/1000, df.pressure.values, df.temperature.values+273, df.rh.values/100, frq, ang)
+rte1.satellite = False
+rte1.init_absmdl(mdl)
+
+rte = TbCloudRTE(height, pressure, temp, rh, frq, ang)
+rte.satellite = False
+rte.init_absmdl(mdl)
+
+
+df1 = rte1.execute()
+df = rte.execute()
+
+df = df.set_index(frq)
+df1 = df1.set_index(frq)
+
+df.tbtotal.plot(ax=ax, linewidth=1,label=('200-50'))
+df1.tbtotal.plot(ax=ax,linewidth=1,label=('1000-50'),linestyle='--')
+
+ax.grid(True, 'both')
+ax.legend()
+ax.set_title('Pressure broadening effect on oxygen line mixing')
+ax.set_box_aspect(0.8)
+plt.show()
+
+
+
+
+
+
+
+
+/usr/local/lib/python3.10/dist-packages/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (65) or minimum pressure value lower than 10 hPa (50.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa
+  warnings.warn(f"Number of levels too low ({len(self.p)}) or "
+/usr/local/lib/python3.10/dist-packages/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (23) or minimum pressure value lower than 10 hPa (50.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa
+  warnings.warn(f"Number of levels too low ({len(self.p)}) or "
+
+
+
+
+
+
+../_images/notebook_Pressure_Broadening_effect_5_1.png +
+
+
+
[11]:
+
+
+
atm = ['Tropical',
+       'Midlatitude Summer',
+       'Midlatitude Winter',
+       'Subarctic Summer',
+       'Subarctic Winter',
+       'U.S. Standard']
+
+
+fig, ax = plt.subplots(1, 1, figsize=(12, 8))
+
+for i in range(0, 6):
+    z, p, d, t, md = atmp.gl_atm(i)
+    gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+    rh = mr2rh(p, t, gkg)[0] / 100
+
+    mdl = 'R19SD'
+
+    ang = np.array([90.])
+    frq = np.arange(50, 70, 0.1)
+    nf = len(frq)
+
+    ax.set_xlabel('Frequency (GHz)')
+    ax.set_ylabel('BT (K)')
+
+    rte = TbCloudRTE(z, p, t, rh, frq, ang)
+    rte.init_absmdl(mdl)
+    df = rte.execute()
+
+    df = df.set_index(frq)
+    df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i]))
+
+ax.grid(True, 'both')
+ax.legend()
+ax.set_title('Upwelling Brightness Temperature calculation from 50 to 70 GHz')
+ax.set_box_aspect(0.8)
+plt.show()
+
+
+
+
+
+
+
+../_images/notebook_Pressure_Broadening_effect_6_0.png +
+
+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/notebook/Pressure_Broadening_effect.ipynb b/en/main/notebook/Pressure_Broadening_effect.ipynb new file mode 100644 index 00000000..863ad75a --- /dev/null +++ b/en/main/notebook/Pressure_Broadening_effect.ipynb @@ -0,0 +1,259 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Example by Loretta-Pearl-Poku" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This notebook example was created by [Loretta-Pearl-Poku](https://github.com/Loretta-Pearl-Poku)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The code highlights the fluctuations in the downwelling brightness temperature at high resolution and high pressure levels explaining the broadening effect of oxygen line mixing. Also the fluctuations in the downwelling brightness temperature in the V-band (50 - 70 GHz) at high resolution." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "GvOSln_QzdCn", + "outputId": "d626e99c-6a88-40b4-cfe3-0ff5b845e78f" + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/usr/local/lib/python3.10/dist-packages/pyrtlib/apiwebservices/erafive.py:19: UserWarning: Module CDSAPI must be installed to download ERA5 Reanalysis dataset.\n", + " warnings.warn(\n" + ] + } + ], + "source": [ + "import matplotlib.pyplot as plt\n", + "import datetime\n", + "import numpy as np\n", + "plt.rcParams.update({'font.size': 15})\n", + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh\n", + "from pyrtlib.apiwebservices import WyomingUpperAir\n", + "from pyrtlib.utils import import_lineshape\n", + "from pyrtlib.absorption_model import H2OAbsModel" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/" + }, + "id": "fQLIqiPM0L84", + "outputId": "e054ef95-fd04-4d63-fbf6-4bc86113cc22" + }, + "outputs": [ + { + "data": { + "text/plain": [ + "{'pressure': 'hPa',\n", + " 'height': 'meter',\n", + " 'temperature': 'degC',\n", + " 'dewpoint': 'degC',\n", + " 'rh': '%',\n", + " 'mixr': 'g/kg',\n", + " 'station': None,\n", + " 'station_number': None,\n", + " 'time': None,\n", + " 'latitude': 'degrees',\n", + " 'longitude': 'degrees',\n", + " 'elevation': 'meter'}" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "date = datetime.datetime(2023, 6, 12, 12)\n", + "station = 'DIAP' #Abidgan\n", + "df = WyomingUpperAir.request_data(date, station)\n", + "df.attrs['units']" + ] + }, + { + "cell_type": "code", + "execution_count": 16, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 824 + }, + "id": "gyPSA8xCzwGN", + "outputId": "22b7fb19-4de3-42b2-a8b4-5b17f66903ee" + }, + "outputs": [ + { + "name": "stderr", + "output_type": "stream", + "text": [ + "/usr/local/lib/python3.10/dist-packages/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (65) or minimum pressure value lower than 10 hPa (50.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa\n", + " warnings.warn(f\"Number of levels too low ({len(self.p)}) or \"\n", + "/usr/local/lib/python3.10/dist-packages/pyrtlib/tb_spectrum.py:82: UserWarning: Number of levels too low (23) or minimum pressure value lower than 10 hPa (50.0). Please considering profile extrapolation. Levels number must be higher than 25 and pressure value lower than 10 hPa\n", + " warnings.warn(f\"Number of levels too low ({len(self.p)}) or \"\n" + ] + }, + { + "data": { + "image/png": "iVBORw0KGgoAAAANSUhEUgAAA2EAAALOCAYAAAAgMRuwAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAAD8TElEQVR4nOzdd3wUdf7H8dem904JhN57R6QIIh0sIIoFBeztFPFsd/oT23l28fTOCvZKsQLSpBelCUjvHZKQ3pOd3x9DVkIKKbuZTfJ+Ph55QGbmO/vZb2Z357PfZjMMw0BEREREREQqhYfVAYiIiIiIiNQkSsJEREREREQqkZIwERERERGRSqQkTEREREREpBIpCRMREREREalESsJEREREREQqkZIwERERERGRSqQkTEREREREpBIpCRMREREREalESsJExGmmTp2KzWZjwIABVodimYMHD2Kz2bDZbBw8eNDqcArIj2vp0qVWh1Lpzpw5w/3330+zZs3w9fV11EViYqLjmMOHDzNp0iQaNmyIj48PNpuNsLAwy2IWqWwlvUfU5PePknz00UfYbDYaN27s1PNOnDgRm83GxIkTnXpecR9eVgcgMnXqVJ5++ulC2319fYmKiqJr166MHz+ea665BpvNZkGEIlKV5eXlcdlll7F582YAgoKCCA8PB8DDw/wuMikpiT59+nD06FEAQkND8fPzIzQ01JKYARITE3njjTcAmDx5shJCEZFqREmYuJU6deo4/p+UlMSxY8c4duwYP/74Ix999BFz5szB19fXwghFqq5WrVoBEBAQYHEklWvhwoVs3rwZb29vlixZQt++fQsd8+WXX3L06FHCw8NZvXo1rVu3tiDSghITEx1fUE2cOFFJmFiqpr5/XEhoaCitWrWifv36Tj1vdHQ0rVq1Ijo62qnnFfehJEzcysmTJx3/t9vt7NixgwcffJCFCxcyb948nnjiCV5++WULIxSpunbu3Gl1CJbYunUrAB07diwyATv3mIEDB7pFAibibmrq+8eFjB49mtGjRzv9vC+88AIvvPCC088r7kNjwsRteXh40K5dO3744QeaN28OwLvvvktubq7FkYlIVZKeng6Y3RArcoyIiIizKAkTt+fn58c111wDQEpKiuPbuPMnQNi3bx933HEHTZo0wdfXt9AgWbvdzueff86IESOoU6cOPj4+1KpViyFDhvDll19iGEaRj5+bm8t7773HgAEDiIqKwtvbm8jISFq1asW4ceP48MMPiyz39ddfM3z4cOrUqYO3tzdhYWG0aNGCK664grfffpvMzMwCxw8YMACbzcbUqVOLrYuSJr44t3xOTg6vvvoq3bt3JywsrMjB1Nu2beOOO+6gRYsWBAQEEBQURMeOHfnnP/9JXFxcsTGUxTfffEP//v2JiIggMDCQbt268dZbb5GXl1fk8ecORDYMgw8++IC+ffsSGRmJzWbjo48+KnD80qVLueaaa6hfv75jDOFll13GjBkzin2MnJwcfvjhB+644w66d+9OdHQ0Pj4+1K5dm6FDh5Z4LeQ7duwYd955Jw0aNMDX15eYmBgmTZrE3r17S1Uv2dnZ/Pe//+XSSy8lKioKHx8f6taty5VXXsm8efOKLXfuwPiUlBSeeOIJWrdujb+/P5GRkYwaNYp169aVqvy5zn8tnTp1igceeIAmTZrg5+dHnTp1uO666y74TfihQ4e49dZbiYmJKVQvzpiwpKz1ln895b+mli1b5oghf3v+6yb/2vr4448LHHP+NVfe95F8O3bs4N5776Vt27YEBwcTFBREq1atuO6665g1axZ2ux0wX89NmjRxlGvSpEmBuMoz+c3Jkyd5+OGHadeuHYGBgQQGBtKuXTseeeQRTp06VWQZZ10bF5KUlMQzzzxD165dCQkJwd/fnxYtWnD33Xezf//+Qse/+OKL2Gw2fHx8+O2334o859y5c/Hw8MBms/H5558DMH/+fGw2G15eXhw/frzEmPr161fsxAgVvdateg+oCFe/f1T0tVWcxo0bO17L6enpTJ06lTZt2hAQEEC9evW46aabOHDggOP4uLg4Hn30UVq2bIm/vz9169bltttuK/Y1UtzEHKtXr8bLywubzcbrr79eZNmjR486Pt9uv/32AvtKmpjj3M97wzB4//33ueiiiwgJCSE4OJiLL76Yzz77rMR6ycnJ4bXXXqNz584EBgYSERHBgAEDmDlzZqHHEBcxRCz21FNPGYBR0uX49ttvO45ZtWqVYRiGceDAAce2zz//3AgKCjIAIyAgwAgMDDQaNWrkKB8fH29ccskljuMBIzQ0tMDvV1xxhZGVlVXgcXNzc43BgwcXKufr61tg2/kmTZpUYH9QUJAREBBQYNuBAwcKlOnfv78BGE899dQF66p/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XXc5btjyv7A415EjRxxfPtx7773FxlCea+NC8hMib29vY+vWrYX2JycnG40bNzYAY+TIkYX2z5071/HFzkcffWQYhmG88MILjnOe+8VcvtOnTztaOIp6H8zMzHRcr+e/D1X0Wrf6PeBCKpqElecaqchrqzTykzB/f/8i/2YffvihI7Y6deoYcXFxhY558skni/1cKCkJMwzDOHr0qBEZGWkAxsSJEw3DMIyVK1c6em4U9YWfYZQuCQOMJUuWFNqfmZnpuG967rnnCuw7dOiQo/W9uNbgcz+LlYS5jsaEidtKTExk8eLFDBw40NF3/4EHHnCs63Ou++67r9gB9fljtu6+++5i1/zp1q0b7dq1Izs7m19//dWxPX9K6HNnbbyQ/DKxsbHFjktypXbt2nH55ZcXuW/WrFkkJibSpUsXhg4dWuQxXl5eXH/99QD88ssv5Y7j//7v/4rc/vDDD+Pv709ubi6zZs0q8pjw8HDuvPPOIvctXLiQM2fOABTbV/2ee+5xTOv7xRdflCnukSNHArBv375Cf/evvvoKgGuuuYY2bdoUKlu3bl3uuuuuYs+dfy1OmTIFb2/vIo+56qqrCAkJIS4ujg0bNhR5zB133EHt2rULbe/QoYNjHNGWLVuKjaMkDz30EP7+/oW2Dx8+HB8fH+CvmQTzffvttwCMGzfOMYnOuaKiorj77rvLFQ84r94qoiLvIzNnziQlJQVvb29ee+21Sl3v0DAMvvnmGwDuuusu6tatW+iYmJgYx3Wbf40XpTzXxoV8/fXXAIwdO5b27dsX2h8cHMwjjzwCwLx580hKSir02A8++CBgfg589tlnjveef/3rX3Tv3r3QOWvVqsXVV18NwHvvvVdo/5w5c4iLi8Pf35+bbrqpwL6KXutV4T2gIspzjVTktVUWV199dZF/s3M/C++44w4iIyOLPWbfvn2kpaWV6XHr16/P9OnTAXP82P/+9z9uuOEG8vLyGDVqFPfff3+ZzneuPn36cOmllxba7uvr64j5/Osgf+xpQECA47VzvieffLLcMUnpKQkTt3LuwPPw8HAGDRrk+BAaP348//znP4ss16dPnyK35+XlsXbtWsC8Ya9bt26xP7t27QLMAdf5RowYgc1m44cffmD48OF8+eWXFxzMfdlll+Hn58emTZvo168fH374YYFBv65WXF0ArFq1CjAnByipLp555hmgYF2URYMGDYr8sAMICQmhW7duAKxfv77IY3r06OH4wD5ffpkGDRrQsmXLIo/x9PRk4MCBxT5GSkoKL7/8Mv3796d27dr4+Pg4rrtz18DJX7gXzIH0505jXpzi9h07dsxRn7feemuxdR8dHU1qaipQfP1fdNFFxT5+vXr1AByJalkVd24vLy9q1apV6NzZ2dn8+eefAPTv37/Y85ZnIglwbr2VV0XfR1avXg2YN5KVvebPgQMHHH+vQYMGFXvc4MGDAYiPjy/2/aqs18aFZGdnO24QSxOb3W5n48aNhfa/8MILdO3aldTUVG666SZycnIYMmQIDz30ULHnzE86f/zxx0ITLrz//vsAXHvttQXWZqvotV5V3gMqoqzXSEVfW2XRs2fPIrefuz5pjx49LnhMYmJimR/7iiuu4L777gPMLwkPHz5MdHQ0M2bMKPO5zlWe6yD/NdS9e3cCAwOLLNusWTMaNGhQodjkwrROmLiVc9/o8me769KlCzfeeGOR3/bkK+obQTDffLKysgBISEgoVQz5U1UD9O3blxdffJEnnniC+fPnM3/+fMD85njQoEHcfPPNheJq1qwZH3zwAXfddRdr1qxhzZo1gPnt66WXXsoNN9zAFVdc4bJvw4urC8CRQGZmZhaanbEo59ZFWVxo0cr8/adPny5yf0nPIb/MhR4jJiamyMfYvXs3l112WYEEKyAggLCwMEcra/5N2bnfeJ45c8axPEJJj53/uOc7N3kv7eyTxdV/cHBwsWW8vMy39ZycnFI9RkXPfebMGUeLb/6HflHKu5CpM+utvCr6PpLfotqoUSOnxlUa517/pb1uT58+XWBmxnzOvu7OvXbKEtv5fHx8+Pjjj+nQoQNgLp6bP8tlcS655BLatm3L9u3bmTFjBo899hgAe/fudbS0nN8aX9Frvaq8B1REed4/KvLackZs+XGV9pjy1usrr7zCnDlzOHbsGADTp08nKiqqXOfKV57rIDY2Fij5GgbzOj5y5EiF4pOSqSVM3MrJkycdP4cOHWLDhg188MEHJSZgYLZ8FOXc7oDz5s3DMMdBlvhzfhe3hx9+mAMHDvD6669z1VVXUbt2bY4ePcpHH33EwIEDueaaawq9yd14440cOnSId955h3HjxtGgQQNiY2P55ptvuOqqq+jfvz/Jycnlq6QLKK4u4K/6GDduXKnqorxTiVdUSc+hoiZNmsTRo0dp3Lgx3377LfHx8aSlpXH69GlOnjzp+IAEyj0lclHOvRZ37NhRqvovampid+aKLxbcod4q+j5Smd0Pa6pzuxUmJyezefPmC5bJbw374IMPHK/1/P+3b9+eiy++uNiy5fmbusO17G6c8RldVfz8888FPl+WLVtmYTR6X3IHSsKkWouMjHR8G1SRLkr16tVj8uTJzJkzh1OnTrFlyxZuu+02wBzv8b///a9QmYiICO68806++uorDh8+zN69e3nsscew2WysWLGi0AdJfpwltVCdPx6irPLHgzi7u9b5zv2gKWl/SS1exckvc25LVlHy95/7GEeOHHF0Dfvyyy8ZO3YsERERBcoVN/4vIiLCkRyW9PyK23fuWBxX139lOrdeSuqqe6FrojjuUG8VfR+prNddUc69/kt6zZy7rzyvy/I499qpSGw//fQT//nPfwDo2LEjhmEwYcKEYtd1ynfzzTcTEBDAvn37WLJkCTk5OY514Yoak1rRa90drmV346zPaHd35MgRxz1Dx44dAXjppZdYsmRJpceS3y30QkMryvueLaWnJEyqNW9vb0c/8B9//NFp5+3QoQPvv/++Y/zVwoULL1imWbNmvPDCC9xwww1FlgkPDwcosfm/ootw5se7YcMGTpw4UaFzleTIkSPs27evyH0pKSmOcX5FDZq/kPwyR48eZffu3UUek5eX5+hSdG4f/3PrtkuXLkWWXbRoUZHbfXx8HB+eJQ0ML+5DtXHjxo5uSs68Fq3m4+NDu3btAAot4nqukvaVxB3qraLvI7179wbM8Ylled2dOwlReVtlmzRp4viiYfHixcUel3/dR0ZGFtkV0RXOfU2VJjYPDw+6du1aYN+JEyeYNGkSYLZyL1++nMaNG3P69GkmTJhQYr2FhoY6JiF67733HOPD/P39GT9+fJHxVuRad4dr2d246jPaneTl5XHjjTeSkJBA27ZtWbt2LaNHj8Zut3PTTTcRHx9fqfHkv4bWr19f7CQj+/fvV1fESqAkTKq9O+64A4C5c+cyd+7cEo89fwBrfl/14uTPAnXuzVJ5ygB06tQJMGckLOqNccmSJY7xZeV1zTXXEBYWRk5ODlOmTCnxBsVut5drAHK+Z599tsjtr776KhkZGXh5eTlmKCuLwYMHO2avKq5byrvvvuv4li//JgsoMPPW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ZGTg008/xfTp0zFlyhRkZGSgR48eiIyMRG5uLrZt24aqqips3769yUIc3ujevTsWLFiAm2++GdOmTcOzzz6LPn36wGw2Y/fu3cjJyUFZWVl9mXq3888/H8OHD8e6deuQmJiIyZMnt/rao0aNgl6vxy+//NLkMZ988gkMBgPef/99jB49Gp06dULfvn2h0+lQUFCAAwcO4MSJE4iIiMC0adNaHUNT/va3vwEAkpOT8eCDD3o85rHHHqsvSQ8Aa9euhd1ux6RJk3wWBxFRMGFPGBER+cTzzz+P1atXY8qUKTh58iS++uorrFq1Cg6HA7NmzcLXX3/d4PiYmBisXbsWs2bNghACX331FbKzs/Hiiy/ijTfeaPI68+fPx2OPPQaDwYAffvgBx44dw+OPP45PP/20yXOuvPJK7Nq1C/fccw9kMhmysrKwYsUKFBYWYvLkyfj888/Rs2fPc26DadOmYcuWLbjxxhthNpuxdOlSbN26FR07dsTcuXMblfx3Gzt2LADglltu8aqn6Gx6vR433HADDh061GRvmEqlwnvvvYdNmzbhzjvvhFqtxk8//YQlS5Zg9+7d6Nq1K5555hkcPHgQL774YqtjaIrD4QAA/Pbbb/jggw88/pw9l2/RokUA2tYrSEQUCmRCCCF1EERERGeTyWRIT09vtGB0uBFCoEePHjhw4AAOHTrUbNn25uzYsQP9+/fH7Nmzm01ig11NTQ2Sk5PRvXt3bNy4UepwiIj8gj1hREREElqyZAn279+PiRMntjkBA1wFLK699lq8//779Ys3h6L//Oc/KC8vxz/+8Q+pQyEi8hv2hBERUVAK956w22+/HeXl5fjmm29QV1eHjRs3YuDAgef0mocPH0aPHj1w77334uWXX/ZRpIFTU1ODLl26oH///vj222+lDoeIyG+YhBERUVAK9yRMJpMhIiIC3bp1w7PPPoupU6dKHRIREQUIkzAiIiIiIqIA4pwwIiIiIiKiAGISRkREREREFEBMwoiIiIiIiAKISRgREREREVEAMQkjIiIiIiIKICZhREREREREAcQkjIiIiIiIKICYhBEREREREQXQ/wNaj7Hij/HnsQAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "#WyomingUpperAir.get_stations(region = 'africa')\n", + "date = datetime.datetime(2023, 6, 12, 12)\n", + "station = 'DIAP' #Abidgan\n", + "df = WyomingUpperAir.request_data(date, station)\n", + "df.attrs['units']\n", + "\n", + "fig, ax = plt.subplots(1, 1, figsize=(12, 8))\n", + "mdl = 'R17'\n", + "ang = np.array([90.])\n", + "frq = np.arange(50, 70, 0.1)\n", + "nf = len(frq)\n", + "ax.set_xlabel('Frequency (GHz)')\n", + "ax.set_ylabel('BT (K)')\n", + "\n", + "pressure = df.pressure.values[42:65]\n", + "rh = df.rh.values[42:65]/100\n", + "height = df.height.values[42:65]/1000\n", + "temp = df.temperature.values[42:65]+273\n", + "\n", + "'''\n", + "pressure = df.pressure.values\n", + "rh = df.rh.values/100\n", + "height = df.height.values/1000\n", + "temp = df.temperature.values+273\n", + "'''\n", + "\n", + "rte1 = TbCloudRTE(df.height.values/1000, df.pressure.values, df.temperature.values+273, df.rh.values/100, frq, ang)\n", + "rte1.satellite = False\n", + "rte1.init_absmdl(mdl)\n", + "\n", + "rte = TbCloudRTE(height, pressure, temp, rh, frq, ang)\n", + "rte.satellite = False\n", + "rte.init_absmdl(mdl)\n", + "\n", + "\n", + "df1 = rte1.execute()\n", + "df = rte.execute()\n", + "\n", + "df = df.set_index(frq)\n", + "df1 = df1.set_index(frq)\n", + "\n", + "df.tbtotal.plot(ax=ax, linewidth=1,label=('200-50'))\n", + "df1.tbtotal.plot(ax=ax,linewidth=1,label=('1000-50'),linestyle='--')\n", + "\n", + "ax.grid(True, 'both')\n", + "ax.legend()\n", + "ax.set_title('Pressure broadening effect on oxygen line mixing')\n", + "ax.set_box_aspect(0.8)\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": { + "colab": { + "base_uri": "https://localhost:8080/", + "height": 708 + }, + "id": "P1kBgWxM0Cti", + "outputId": "e65ad5fd-87fd-40cb-8d11-7ca703dfa60b" + }, + "outputs": [ + { + "data": { + "image/png": "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IEwIIYQQQgghjiAJwoQQQgghhBDiCJIgTAghhBBCCCGOIAnChBBCCCGEEOIIkiBMCCGEEEIIIY4gCcKEEEIIIYQQ4giSIEwIIYQQQgghjiAJwoQQ4gSnaVqPP7Nnz/6iT1EkYdu2bVitVu64446423zyySfceOONjBw5kvT0dKxWK/n5+Zxxxhn84he/YPfu3d1e8+ijj6JpGtdff32Px589ezaapvH+++/36fw9Hg+FhYWcd955fXq9EEIcC8xf9AkIIYQ4Olx33XUxHx8xYsQRPhNxKH7wgx9gtVq58847uz3n9/u55ZZbeOihhwAoLy9n9uzZpKSkUFNTwyeffMK7777LPffcw6OPPsqCBQuO9OnjcDi48847+e53v8u7777L6aeffsTPQQghDjcJwoQQQgDhTIc4tn366acsXLiQ2267jdzc3G7PX3PNNTz77LMMGzaMBx54gFmzZnV6PhgM8vLLL3P33XezY8eOI3Xa3dx0003ce++9/OAHP2D58uVf2HkIIcThIuWIQgghxHHib3/7GwDXXnttt+eefvppnn32WQoLC/noo4+6BWAAZrOZSy+9lJUrV3LJJZcc7tONy+FwMG/ePFasWMHq1au/sPMQQojDRYIwIYQQCbn++uujc33efPNN5syZQ0ZGBpqm0dDQEN3ujTfe4Pzzzyc3NxebzcagQYP47ne/y8GDB2Put66ujltvvZWioiLsdjujRo3iD3/4A0opNE2jvLy80/b33HMPmqbFzdyVl5ejaVrM5zZu3Mj1119PaWkpNpuN/Px85s+fz/r167ttG5kDdc8997Bnzx4WLFhAbm4uDoeDKVOm8PLLL8cdq40bN/Jf//VflJeXY7PZyMvLY/r06fzud78jGAwCMGbMGDRNY/PmzTH3UVFRgclkYuDAgSil4h4roqWlhaeffpqhQ4cyefLkbs//7ne/A+CnP/1pzCxZR1arlTFjxvR6zERFrp2efrrOIYuUQv7jH//ot/MQQoijhZQjCiGESMqTTz7Jgw8+yJQpUzj33HPZvn17NOi56667+PWvf43VamXq1KkUFhayZs0a7r//fl566SWWLFlCfn5+dF/19fXMmDGDjRs3UlBQwMUXX0xdXR23334727Zt69fzfuGFF5g/fz4+n48JEyYwbdo0KioqeOaZZ3j55Zd5/fXXY2aHdu3axdSpU0lNTeWMM85gz549LFu2jEsuuYTXX3+duXPndtr+2Wef5ctf/jI+n4+RI0dy6aWX0tjYyPr167njjju44YYbyMjI4MYbb+S2227jwQcf5Le//W234z788MMYhsENN9wQN6jsaPHixbS0tMRspFJTU8OqVavQdZ2rrroq8UHrJzNmzIj5eCgU4qmnniIUCmEymTo9d+qpp2KxWHj11VePxCkKIcSRpYQQQpzQAJXIn4Prrrsuuu3TTz/d7flnnnlGAWrMmDFq69at0ccNw1A/+clPFKCuuuqqTq+56aabFKDOOecc1draGn18+fLlyuVyKUANGDCg02vuvvtuBahHHnkk5nkOGDCg2/vZuXOnSklJUS6XSy1atKjTc6+//rqyWCyqtLRU+Xy+6OOPPPJI9P1+73vfU6FQKPrc/fffrwA1c+bMTvvasmWLstvtymw2qyeeeKLTc4ZhqDfffFN5vV6llFINDQ3K6XSq3NzcTsdVSqlQKKTKysqUyWRS+/bti/k+u/r+97+vAPWPf/yj23OLFi1SgBoyZEhC+4olMh7XXXddj9uddtppClDvvfder/u87bbbFKAuuOCCTuMbMXnyZAWoHTt29PGshRDi6CTliEIIIYD4rep37drVabvzzz8/Zjbl5z//OQBPPfUUQ4YM6bTfe+65hwkTJrBw4UJqa2sBaG1t5bHHHkPXdf785z/jdDqjrznppJP4xje+0W/v7X//939pbW3ll7/8JWeeeWan58455xxuvvlmKioqYmZdBg4cyC9+8Qt0vf1P5q233kpmZiYff/wxfr8/+vj999+P1+vlhhtu6NZZUNM05s6di81mAyA9PZ358+dTU1PDiy++2Gnbt956iz179nD++edTVFSU0Htcu3YtAMOHD+/2XKQUNCcnJ+ZrX375Za6//vpOP7fffnvMbR977LEeywoXL16c0Pk++OCD/PGPf2TUqFE8+eSTncY3ItKZ87PPPkton0IIcayQckQhhBBA/Bb1Lper078vuuiibttUV1ezZs0ahg4dGnMukaZpTJ8+nc8++4xVq1Zx9tlns2rVKjweDyeddBKDBw/u9pqrr76aX//61318N5299dZbAFx22WUxn585cyZ//OMfWbFiBZdeemmn52bPno3Vau30mNlsZuDAgXz66accPHiQwsJCAN5++20AbrzxxoTO66abbuLhhx/m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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "atm = ['Tropical',\n", + " 'Midlatitude Summer',\n", + " 'Midlatitude Winter',\n", + " 'Subarctic Summer',\n", + " 'Subarctic Winter',\n", + " 'U.S. Standard']\n", + "\n", + "\n", + "fig, ax = plt.subplots(1, 1, figsize=(12, 8))\n", + "\n", + "for i in range(0, 6):\n", + " z, p, d, t, md = atmp.gl_atm(i)\n", + " gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + " rh = mr2rh(p, t, gkg)[0] / 100\n", + "\n", + " mdl = 'R19SD'\n", + "\n", + " ang = np.array([90.])\n", + " frq = np.arange(50, 70, 0.1)\n", + " nf = len(frq)\n", + "\n", + " ax.set_xlabel('Frequency (GHz)')\n", + " ax.set_ylabel('BT (K)')\n", + "\n", + " rte = TbCloudRTE(z, p, t, rh, frq, ang)\n", + " rte.init_absmdl(mdl)\n", + " df = rte.execute()\n", + "\n", + " df = df.set_index(frq)\n", + " df.tbtotal.plot(ax=ax, linewidth=1, label='{}'.format(atm[i]))\n", + "\n", + "ax.grid(True, 'both')\n", + "ax.legend()\n", + "ax.set_title('Upwelling Brightness Temperature calculation from 50 to 70 GHz')\n", + "ax.set_box_aspect(0.8)\n", + "plt.show()" + ] + } + ], + "metadata": { + "colab": { + "provenance": [] + }, + "kernelspec": { + "display_name": "Python 3", + "name": "python3" + }, + "language_info": { + "name": "python" + } + }, + "nbformat": 4, + "nbformat_minor": 0 +} diff --git a/en/main/notebook/first_run.html b/en/main/notebook/first_run.html new file mode 100644 index 00000000..83683358 --- /dev/null +++ b/en/main/notebook/first_run.html @@ -0,0 +1,614 @@ + + + + + + + + + + + + My first test with PyRTlib — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + + + +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +

Open In Colab

+
+

My first test with PyRTlib#

+

Installing PyRTlib via pip. Note that the following command will also install all requirements to execute properly PyRTlib package. It is possible to test development version by installing the package directly from github repository.

+
!pip install https://github.com/SatCloP/pyrtlib/archive/refs/heads/dev.zip
+
+
+
+
[1]:
+
+
+
!pip install pyrtlib
+
+
+
+
+
+
+
+
+Defaulting to user installation because normal site-packages is not writeable
+Collecting pyrtlib
+  Downloading pyrtlib-1.1.0-py3-none-any.whl (246 kB)
+     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 246.2/246.2 KB 10.7 MB/s eta 0:00:00
+Requirement already satisfied: netCDF4 in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (1.7.1.post2)
+Requirement already satisfied: numpy in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (2.1.1)
+Collecting bs4
+  Downloading bs4-0.0.2-py2.py3-none-any.whl (1.2 kB)
+Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from pyrtlib) (2.25.1)
+Requirement already satisfied: pandas in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (2.2.2)
+Requirement already satisfied: matplotlib in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (3.9.2)
+Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from pyrtlib) (59.6.0)
+Requirement already satisfied: scikit-learn in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (1.5.2)
+Requirement already satisfied: scipy in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (1.14.1)
+Requirement already satisfied: beautifulsoup4 in /home/runner/.local/lib/python3.10/site-packages (from bs4->pyrtlib) (4.12.3)
+Requirement already satisfied: kiwisolver>=1.3.1 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (1.4.7)
+Requirement already satisfied: pillow>=8 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (10.4.0)
+Requirement already satisfied: pyparsing>=2.3.1 in /usr/lib/python3/dist-packages (from matplotlib->pyrtlib) (2.4.7)
+Requirement already satisfied: cycler>=0.10 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (0.12.1)
+Requirement already satisfied: python-dateutil>=2.7 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (2.9.0.post0)
+Requirement already satisfied: contourpy>=1.0.1 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (1.3.0)
+Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib->pyrtlib) (24.1)
+Requirement already satisfied: fonttools>=4.22.0 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (4.53.1)
+Requirement already satisfied: cftime in /home/runner/.local/lib/python3.10/site-packages (from netCDF4->pyrtlib) (1.6.4)
+Requirement already satisfied: certifi in /usr/lib/python3/dist-packages (from netCDF4->pyrtlib) (2020.6.20)
+Requirement already satisfied: pytz>=2020.1 in /usr/lib/python3/dist-packages (from pandas->pyrtlib) (2022.1)
+Requirement already satisfied: tzdata>=2022.7 in /home/runner/.local/lib/python3.10/site-packages (from pandas->pyrtlib) (2024.1)
+Requirement already satisfied: joblib>=1.2.0 in /home/runner/.local/lib/python3.10/site-packages (from scikit-learn->pyrtlib) (1.4.2)
+Requirement already satisfied: threadpoolctl>=3.1.0 in /home/runner/.local/lib/python3.10/site-packages (from scikit-learn->pyrtlib) (3.5.0)
+Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.7->matplotlib->pyrtlib) (1.16.0)
+Requirement already satisfied: soupsieve>1.2 in /home/runner/.local/lib/python3.10/site-packages (from beautifulsoup4->bs4->pyrtlib) (2.6)
+Installing collected packages: bs4, pyrtlib
+Successfully installed bs4-0.0.2 pyrtlib-1.1.0
+
+
+

Import necessary packages to perform and plotting your first spectrum in PyRTlib.

+
+
[2]:
+
+
+
# This requires jupyter-matplotlib a.k.a. ipympl.
+# ipympl can be install via pip or conda.
+%matplotlib inline
+import matplotlib.pyplot as plt
+plt.rcParams.update({'font.size': 15})
+import numpy as np
+
+
+
+

Load standard climnatology and utils functions necessary to run the code.

+
+
[3]:
+
+
+
from pyrtlib.absorption_model import O2AbsModel
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+
+
+

The following code allows to performing spectra for one typical climatologies (Tropical) at 90° elevation angles. Please refer to the PyRTlib documentation for more details on how to use the library.

+
+
[4]:
+
+
+
z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)
+
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+frq = np.arange(20, 1001, 1)
+
+rte = TbCloudRTE(z, p, t, rh, frq)
+rte.init_absmdl('R22SD')
+O2AbsModel.model = 'R22'
+O2AbsModel.set_ll()
+df = rte.execute()
+df = df.set_index(frq)
+
+
+
+

Plotting zenith upwelling brigthness temperature.

+
+
[5]:
+
+
+
df.tbtotal.plot(figsize=(25, 8), linewidth=3, xlabel="Frequency [GHz]", ylabel="Brightness Temperature [K]", grid=True)
+
+
+
+
+
[5]:
+
+
+
+
+<Axes: xlabel='Frequency [GHz]', ylabel='Brightness Temperature [K]'>
+
+
+
+
+
+
+../_images/notebook_first_run_11_1.png +
+
+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/notebook/first_run.ipynb b/en/main/notebook/first_run.ipynb new file mode 100644 index 00000000..96d9c90b --- /dev/null +++ b/en/main/notebook/first_run.ipynb @@ -0,0 +1,252 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/SatCloP/pyrtlib/blob/main/docs/source/notebook/first_run.ipynb)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# My first test with PyRTlib" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Installing PyRTlib via pip. Note that the following command will also install all requirements to execute properly PyRTlib package. It is possible to test development version by installing the package directly from github repository.\n", + "```console\n", + "!pip install https://github.com/SatCloP/pyrtlib/archive/refs/heads/dev.zip\n", + "```" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defaulting to user installation because normal site-packages is not writeable\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Collecting pyrtlib\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Downloading pyrtlib-1.1.0-py3-none-any.whl (246 kB)\r\n", + "\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/246.2 KB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r", + "\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m246.2/246.2 KB\u001b[0m \u001b[31m10.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\r\n", + "\u001b[?25hRequirement already satisfied: netCDF4 in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (1.7.1.post2)\r\n", + "Requirement already satisfied: numpy in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (2.1.1)\r\n", + "Collecting bs4\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + " Downloading bs4-0.0.2-py2.py3-none-any.whl (1.2 kB)\r\n", + "Requirement already satisfied: requests in /usr/lib/python3/dist-packages (from pyrtlib) (2.25.1)\r\n", + "Requirement already satisfied: pandas in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (2.2.2)\r\n", + "Requirement already satisfied: matplotlib in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (3.9.2)\r\n", + "Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (from pyrtlib) (59.6.0)\r\n", + "Requirement already satisfied: scikit-learn in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (1.5.2)\r\n", + "Requirement already satisfied: scipy in /home/runner/.local/lib/python3.10/site-packages (from pyrtlib) (1.14.1)\r\n", + "Requirement already satisfied: beautifulsoup4 in /home/runner/.local/lib/python3.10/site-packages (from bs4->pyrtlib) (4.12.3)\r\n", + "Requirement already satisfied: kiwisolver>=1.3.1 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (1.4.7)\r\n", + "Requirement already satisfied: pillow>=8 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (10.4.0)\r\n", + "Requirement already satisfied: pyparsing>=2.3.1 in /usr/lib/python3/dist-packages (from matplotlib->pyrtlib) (2.4.7)\r\n", + "Requirement already satisfied: cycler>=0.10 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (0.12.1)\r\n", + "Requirement already satisfied: python-dateutil>=2.7 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (2.9.0.post0)\r\n", + "Requirement already satisfied: contourpy>=1.0.1 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (1.3.0)\r\n", + "Requirement already satisfied: packaging>=20.0 in /usr/local/lib/python3.10/dist-packages (from matplotlib->pyrtlib) (24.1)\r\n", + "Requirement already satisfied: fonttools>=4.22.0 in /home/runner/.local/lib/python3.10/site-packages (from matplotlib->pyrtlib) (4.53.1)\r\n", + "Requirement already satisfied: cftime in /home/runner/.local/lib/python3.10/site-packages (from netCDF4->pyrtlib) (1.6.4)\r\n", + "Requirement already satisfied: certifi in /usr/lib/python3/dist-packages (from netCDF4->pyrtlib) (2020.6.20)\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: pytz>=2020.1 in /usr/lib/python3/dist-packages (from pandas->pyrtlib) (2022.1)\r\n", + "Requirement already satisfied: tzdata>=2022.7 in /home/runner/.local/lib/python3.10/site-packages (from pandas->pyrtlib) (2024.1)\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: joblib>=1.2.0 in /home/runner/.local/lib/python3.10/site-packages (from scikit-learn->pyrtlib) (1.4.2)\r\n", + "Requirement already satisfied: threadpoolctl>=3.1.0 in /home/runner/.local/lib/python3.10/site-packages (from scikit-learn->pyrtlib) (3.5.0)\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: six>=1.5 in /usr/lib/python3/dist-packages (from python-dateutil>=2.7->matplotlib->pyrtlib) (1.16.0)\r\n", + "Requirement already satisfied: soupsieve>1.2 in /home/runner/.local/lib/python3.10/site-packages (from beautifulsoup4->bs4->pyrtlib) (2.6)\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Installing collected packages: bs4, pyrtlib\r\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Successfully installed bs4-0.0.2 pyrtlib-1.1.0\r\n" + ] + } + ], + "source": [ + "!pip install pyrtlib" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Import necessary packages to perform and plotting your first spectrum in PyRTlib." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "# This requires jupyter-matplotlib a.k.a. ipympl.\n", + "# ipympl can be install via pip or conda.\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "plt.rcParams.update({'font.size': 15})\n", + "import numpy as np" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Load standard climnatology and utils functions necessary to run the code." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from pyrtlib.absorption_model import O2AbsModel\n", + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The following code allows to performing spectra for one typical climatologies (Tropical) at 90° elevation angles. Please refer to the PyRTlib documentation for more details on how to use the library." + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)\n", + "\n", + "gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + "rh = mr2rh(p, t, gkg)[0] / 100\n", + "\n", + "frq = np.arange(20, 1001, 1)\n", + "\n", + "rte = TbCloudRTE(z, p, t, rh, frq)\n", + "rte.init_absmdl('R22SD')\n", + "O2AbsModel.model = 'R22'\n", + "O2AbsModel.set_ll()\n", + "df = rte.execute()\n", + "df = df.set_index(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Plotting zenith upwelling brigthness temperature." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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aOnSpbrnnnv00ksv6dNPP1VGhvGZlBUVFZo7d65WrVql7OxszZkzR5K0fft2PfPMM7rmmms0cOBAw3uWLVum0047TY2NjZo+fbqGDh2qzz77TLfeequWLl2ql19+mXATEdFe6/XuIjjuWeb7R3st9M2PTID1mNthB63AbzGOxUYR4AO9WaIpiK9upwLf/EiNBDcBviTFuIyPEWlpte7i2C/zynXoj+Yop10zR6S2/4ZeICvRGOCXdDPAf/ObAt39n/WH/Hkv0RtfF+i3356k40emdevYAAAAAAAAOKhLFfhTp07Vxo0b21rmz507V36/X3fccYc2b96s2tpaPfLII1q1apWmTJnS6eO7XC794Ac/0MaNG7Vx40b9+9//1vvvv68tW7ZoypQp2rx5s+bPn294j9/v18UXX6xVq1bpnnvu0e7du/X666/r9ddf19q1a7Vjxw6NHTvW8B6Px6PLL79cjY2N+u1vf6svv/xSL7/8srZt26aZM2fqlVde0XPPPdeVLxHQbeaW6qGqwPf6CfB7UuBCjP3/a76e5o4LsB5zC/3aoBX45hb6joB9APQe5gr89gL8WlMFvrljR3/lcgT+DPSF6O8zobZ0R7lh+5ghA+R29e57uDnAL+5GC/29lQ368StrAharFNc06Yq/r9DSHWVdPjYAAAAAAACMuhTgn3feeSorK9O7774rSZo0aZK+853vaM2aNTrqqKOUnJysO++8U06nU7/61a86ffwrr7xSf/nLXzRu3DjDeHZ2tp588klJ0uuvv66WloMtG1955RV98sknuuSSS3TvvfcGVP4PHz5caWnGypA33nhDO3fu1KRJk3Trrbe2jcfHx+uJJ56QJP3mN7/p9PyBUDAH694QPdLB/ItzKr/Dy7w+wttOBb456If1mNvhmwM7iRb6QF9jboVf1W6Abww1E6nAlxR8kWCoFiSG2jJTgH98L6++l6RMUwv9mqZWNbQELj7riKc+y5PHG/zatfr8+tkb69Xc6g36OgAAAAAAADqnSwH+ZZddpsbGRp199tltY88995weeOABHXvssRo5cqTmzZunjz76SNOnTw/ZZKX9iwUkqbm5WeXlB3/R9tRTT0mSbrrppg4f68AChIsvvjjgtalTp2r48OFav3698vPzuzFjoGvMv/Q2P7u+q8y/OHdQ+R1W5mDefyDAN3VCMHdcgPWY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fvopTj31VFx++eVev/57772H8847D6+99hrUajXOOecczJ49G4cPH8ZDDz2EadOmob7e/Y/mjTfewLJlyzwu2n366aeYO3cuvv32W4wfPx7z58/HgQMHsGjRItxzzz1ej50gAg3vflLqwFdyR0HxmqGBr2DnocNAEARBEJ6RRuiz4loH58BP0lMEMY+7wtBIceDzSQse9/dS8I92dGq+CEPOgU8OLm+55cShzOO2bhveXVseptHIE40OfFEU8ciXu5iof6NOjfvnjwzfoMIEf03qOlogwl/LAGr/QoQXyVzBKYYk6WVghgFpBvlrenmTCe+uC885We7UG0UGfOyrZU1wg7ONcZV+EglI0pPsPV8gB1c8S2u0hBy5kgh9zwJ+Ax+hn0IR+t7Cx+ivOdQUppG4Z0NZM8549mfM/9cqrDnUGO7hEEHApyu2Wq3G0qVLccstt6C6uhovvfQSAGDLli147rnnUFFRgRtuuAFLlizxyfWi1Wpx4403Yvfu3di9ezc++ugjfPvtt9i3bx8mTZqEvXv34s4773T59w0NDfj973+P0047DcXFxS73a25uxrXXXguHw4FPPvkEK1aswCeffIK9e/di6NChePrpp7FixQqvx08QgYQXf5VGdSlZ4KF4zdDg6TRISQgEQRAE4Rnekdhm8uTAjy9hVwnuWjNFigjsbYS+t/tHO/y80SlKiy9oju89I/KSceroXGbbyz8fhtnmCNOIpIhR2Hrzy+012Fjewmy7dd7QuFxINnICfvfR7xafJiMIQJKOBHwifPDmevkI/cDPEVQqAb8/bYRLg8NLq0qZ1j+hQtaBH0UFVfvrWAf+sFyKzw81Wq740urKgU/zN0KGPC5Cv77D7FYbsDmcaOpiE7PJge89s4ZmMY/31bZLDAPhRhRF3PXhVuypacfe2g7c9eHWqGrxQijD5xlXQkICXnjhBRw5cgQffvgh/v73v+Pxxx/H22+/jfLycrz44otISPDtpmzRokV48cUXMWrUKGZ7fn4+XnjhBQDA4sWLZeP7AeDOO++EyWTCf/7zH7fv88orr6C9vR0LFy7E+eef37c9NzcX//jHPwAATz/9tE//BoIIFHwFJj/Bc4WS+wm+spoIDp4j9Ok4EARBEIQneAGf73nP31CTg1GKVPztmTA6naJk7hg2B77XEfrxdZz54+IURUn7A3Jw+catJ7Eu/MZOCz7e5LoVX6iJNgd+t9WBJ5buYbYVZxhw7axBYRpReEnUqZnHNocIq90pLT7Ta+g+nQgrcnMFG9eqhRckA8WVMwdi5b0n4bs75+Cjm45jnqtpM+PbnbVBeV93yJ16o+l0zAv4I0jADzmSCP2j7SDsDhLwCc/wEfo2h4hmk7wmBvTMX3lIwPeecYWpzG/XKQJbKlrDNyAZjrR040hLd9/junYL9tS2h3FERDDwe7UjOzsbF154YSDGoogJEyYAACwWC5qampCfn888/+233+K9997DX//6VwwZMsTta3399dcAgAsuuEDy3JlnnomEhAT8+OOPMJvNPhcjEIS/SCL0Fd4pKFng8RTtTgQGTwY2OgoEQRAE4ZkUTpCXCvisCMLvT7iO0JcrEA3XIqK3vZ/j3YEvijILwNRD1ScmDkjDCUOzsPrgsfjJl1YdwmXTiyOiKCKK9CIAwCs/l6Kai3n905mjkKBVu/iL2MYo46rvtjokDnxvz4EEEWjkTCTSQrHgpfQMyDD0/f9JxWmMYPLaL4dx9oSCoL23HLICfhSdkXkBf3huUphGEr9ouQj93iQJSfuqICRbENFPVpIOKoFt3VHbZkZWkrwoX9/OCvgalYB0gy6YQ4xJErRqjC1MweZ+16CN5S2YMzw7fIPikNN+nFGY2EW4J+quDKWlpQB6YvYzMjKY57q6unDLLbdg5MiRuO+++zy+1rZt2wAAkydPljyn0+kwduxYmM1m7N+/PwAjJwjfkFQ/K3XgK9gnEhai4gFPDnyK0CcIgiAIz0j7B7PR1h0WitD3hKsIfX4BEQijA58EfLfw00aHU5QuAIep/UEs8NuTWBNAZXM3ftgdesenHNHkwG/usuKlVaXMtllDM3Ea16YgnuAd+ADQZbVLitG8TSEhiEAj18aRLxTThmiOcN0JbGLHlopWbK5ocbF3cJAT66Mlobip04LGTtapO5wc+CFHywnzxyL0udYUtEZLyKBRq5DNOejrO8wu9gbqO1gBPztZT8k+PjK1hNUeN5U3h2kkRDzjly1lxYoVWLVqFWpqamCxSOM5gJ5o6FdffdWft2F49tlnAQDz58+HXs+evB588EGUlZVhxYoV0OncVxa1t7ejra0NAFBUVCS7T1FRETZu3Ijy8nKMHz8+AKMnCO+ROPAVR+grcODTBTwkeBbwQzQQgiAIgohiDJyAb7Kygr0khpgc+BKkfW17/pdfQATC5+L2Njkh3sQu+Qh9imANFMcNzsTYwhTsrDoWP/nq6sOYPzbfzV+FhmgS8P+z/CBTVCUIwJ8WjI7r1mEGGQHfJOPAp2sXEW54occhE6EfqjnC/DF5KEhNYNI83vm1HJOL00Py/oC8WB8tp+P9dZ3MY51GhYGZxjCNJn7Rcw58q92FA5/mb4QLMo161PVz1jd3ue7F3sAJ+BSf7ztTBrLXmi0VrbA7nNBQWgYRQny6M2hra8PChQvx888/exQJAyngL126FK+++iq0Wi3++te/Ms9t3rwZzz77LBYtWoS5c+d6fK3OzmOTGIPBILuP0dgzqeno6JB9HuiJ8u9fvNDe3nOjb7PZYLO5PplGC73/hlj4t0Qr/PzNarMrOh42u8PjPqLTScc2BDgddvfP03EgfIDOzwRBxBt6TvvosrBzonauF6BRqwr5OTLSz80iJ9Q7nA7YbDaYLdLxig5HWP4dSTrvFkSMWiFiP+9g4HSwc3ynKMLK/ftVQuR+B6OBq48biHs+2dH3eENZCzYdbsT4otQwjgqwWmV+p2LkHevq1m68tbac2XbO+HwMy04M61gj4fysVQuMENpuMqOli11oT9arI+6YEnGGyM0VHE5Y7eyaRiivM5fPGIAnvz/Q9/jrHTX4vzOGhyyBxylT5Gi3K1uXCzd7qluZx0OyjHA67HB6Xi4MGZFwbg42Avebstp75ti9Qn4vKpHWBgl50hJZCa+po9vld6W21cQ8zkrS0ffKRyYUsC1HTFYHdh5pwZiClDCNiMVml+oNgbw+xcP5OZwo/Vx9EvD/8Ic/YNWqVRg6dChuvvlmDB8+HMnJwY3g2bt3L6644gqIoognn3wSEyZM6HvO4XDg+uuvR1paGp566qmgjoPn8ccfxyOPPCLZ/v3337ssDIhGfvjhh3APIW7pNqnRv0v6xk2b4Sj3XO67pUkA4L6/4PZtW6Gp2uLnCAlPNHQD7k63Bw7sw1LT3pCNh4gt6PxMEES8cKCNndu0dnZj6dKlfY9Lj6jQv0NYVdlBLF16AOEgUs/NB6rYz7C2rh5Lly5Fhw3g5yrLf1qGpDCY2w80e57D9mfzul9wZHvwxhNp8L+DbrMF23fuYra1tTQxvw3COwQnkKpVo8127B7sb5/8ikXDw9tUstUC8L9Ti9USccf6vYMqWO3HzsVqQcR4VSWWLq0M46iOEc7zs1ZQw9bv3n75ql+ws4W9drU31UXcMSXii90t7HWm09SN0sPlYOZYlRVYurQsJONJtQFqQQ2H2PPbsdideOL9HzE7LzQ2+OYWdk0OAPbu24elXZG/hvNzGXt+SbS1Rez5JVLnzoFgJze3bevowtKlS9Haxn63dmzfBm311pCPj4h8utvY3/KGHXuR17Zbdt+Npey+3S00r/CH7AQ1GszHfqdvf/ML5uRHRgxLoxng7w1W/7IaFUmyu/tMLJ+fw4nJZPK8E3wU8D///HPk5uZi7dq1kj70waCqqgrz589HS0sL7r77btxxxx3M8//617+wZcsWvPrqq8jKylL0mklJx77JJpMJKSnSypmuri4AcFuc8Mc//hF333133+P29nYMGDAAp512muxrRhs2mw0//PADTj31VGi18RVPGSm8cGgN6rqPJUaMnzgRC8YriHDcUYs39rtfzZw6ZTLmj4nfPoShoqLZhEe3rnb5/MgRI7FgziCXzxOEHHR+Jggi3th+pA3P717X99gONRYsOL3v8RtH1gGtbX2Pp0wYiwXTB4R0jJF+bq75pQxfVOzve5yZlY0FC6agrt0MbFzF7Dv/tFO97kcfCDIPN+PVfRsV73/GqfOQm5IQxBFFFuvLmvH87mOfj1arw/CRg4CyY8c1N7vnuBK+U51ciqd/PNj3eHuLGpNmnYj81PB912razHhoM/s71ev0WLDgxPAMSIYD9Z3YsHYNs+2y6cW46qxRYRrRMSLh/PzE7lUw9YsCHz9lGmp31wM1VX3bRg0twYIFI8MxPIIAACQfbMSLezf3PdbrE5BflAnUV/dtGzp4EBacMSJkY1rdvQ3f7qrre7yzOw2PnTEzJG05Xq1YC3S2M9uGDR+BBScODvp7+8sPH20Hamr7Hk8eNRgLTh8exhFJiYRzc7BJPtCIl/cd+01p9AlYsGAunj3wC9Dd1bd9yuRJOGNsXjiGSEQ46x17sKXpWCFkZn4xFiwYLbvvF+9uAeoa+h5PHT0MC+YNCfoYY5UV5p34bMux6x8yBmDBgrHhG1A/yptN+OsWVm+YNWsWxhUGJjUsHs7P4aQ3yd0TPkfoL1iwICTifXNzM0477TSUl5fjmmuukXXYf/nllxAEAW+++Sbeeust5rna2p6JyoUXXgi9Xo/7778f8+fPR0pKClJTU9HW1oYjR45g9GjpSe/IkSMAgIEDB7ocn16vh14v7SWi1Wpj6osda/+eaELN9VURVCpFx0Kl9uxc0mk1dFxDgM7DZ6zRqOk4ED5D52eCIOKFVCM757bYnRBU6r4edJ0WNg80zagP2/kxUs/NWg17+yeiZ6yCWhq/l6DXQasNfS/mNKN3AmmKMSEiP+tgwc8rnaIIEez9gpbmln5z5fGD8J+Vh9Ft6zmv2J0i3ttQhfvPCJ+wqlJLYxYFARF1rP+17BDTL9qgU+N3p4yIqDGG8/xs0LH36BaH9NqVagjftYsgAEDPff8cIuAUWaFcpw3tdeayGQMZAX9vbQf21JkwYUBa8N9cpkhAEJSty4Wbhk62vVReamLEjjtS586BIEHP/rtsDhFarRZOri2xXhe7nwHhH5nJ7P1Ru9nu8rvSyP/u0wz0vfKDMQWpjIB/sMEUMZ8nf28PABpN4LWeWD4/hxOln6l3DQaPMmzYsD53ejDp7OzEGWecgd27d+P888/Hyy+/7LK6UhRFrFq1CitXrmT+6+1Pv3btWqxcubJP0AfQF8O/efNmyevZbDbs3LkTCQkJGD48sqoTifiC0+/hUJjcyE8EZV87BNXKBKBSuf+cPTxNEARBEAQAg056g2qyHRM+OsysCJ2SQDeZPGpuztHb1tXhkM4b1WGaoCTqlMfnA4BB693+0Q5/WJwi4OD684br2MUSaQYdfjOlkNn2/voKmKzSYpdQIX97FznHemdVG77fXcdsu/6EQchOlhoe4hWjnr2OmawOtJvZwoyUhNAXThFEf1TcOpHD6YSNW4jSqnxaTvaZE4ZmoSg9kdn2wYaKkLy33NqaiMiIT/ZEfYeFeRxPiUWRhF7D/l5s9p7fk93Jfo80NH8jXJBuYO9rm7usLvaU/u5zaB7mF8Nz2WTug3UdEBVoLqFAbhhCBN0bEIHBpxnX7bffjhUrVuDgwYOed/YRi8WChQsXYv369Tj99NPx/vvvQ+3CUbxixQqIoij7X697vrKyEqIo4uqrr+77uzPPPBMA8Mknn0he86uvvoLZbMYpp5yChASa4BDhQ83dGPELdH69Nr+KSwQFT4US/A0yQRAEQRBSeOciAHRb+wv4rAiSTCKIBL6o0HH0rt8uM78M1yKi3HF2hU6j6ktgiBf4eaNTFGkBOEhcM4ttcdXWbcPizVUu9g4+8gXakbGACADP/XSAeZxu0OKGOZEfMR1KErmCI5PFLi0+C0PrEoLoD18E5nCKsHOFfpoQryWpVAIunsq2RfpiazW6LMEvqpI79Toj59Trlrp2M/OYBPzwoOXmqtajBTHS31V8zWkJ5aQbdMzjVpM0lQkAnE4RDbyAn0ICvj/wAn6X1YGq1u4wjYZFiXmTiH58ujJcf/31+N3vfoe5c+fi9ddf74uaDxQOhwOXXnopfvrpJ8yePRuLFy+GTqfz/Idecv311yMlJQWff/45Fi9e3Le9vr4e9913HwDg97//fcDflyC8gb8vIgd+9EFrqARBEAThP3IO/N6FW4dTRJeVjSFOJge+BIn4e3QF2iGzEh0uF7fBi9h+b8T+WEFOwOePHznwA8OQ7CScPDKH2fbuuoqwuW4iWTDaU9OO73ax7vsb5gym8zCHxIFvc6C9m3fg02dGhBdeQ3SK0kI/XpAMBRdMLWLWVrqsDny1vdr1HwQI2XNvFIgmnRY7TNzcOJeEvLCg00gFfJEKMAkvSDeyulizSd6B39ptk3yvKAnJP3JT9BJjwIG6zjCNhkXu+hQtCTGEcnyypfQ64UVRxPXXX+92X0EQYLd7VxH5/PPP47PPPgMAZGVl4be//a3sfk899RSysrK8eu3+ZGRk4LXXXsNFF12ECy64ACeeeCIyMzPx448/orW1FXfffTdOPPFEn1+fIAKBpPpZ4Y2Ckt1ocS80uGr90Qs58AmCIAjCMzqNClq1AFs/t0rvwmSnWXq/QQ58Ka7mlfxCj1oleJy/BAtvIvTjLT4fkCvCkB6/cAgrscpVx5dg2d76vsd7atqxpbIVk4vTQz6WSInrlOP55Ww6Y2qiFlcdVxKewUQw/PnNZHFIis+M+vg7rxGRhTQFMjKExvzURJw0Ioc5J7+/vhIXTysO6vvKnXsjuaCqF959DwA5yeTADwf8vEwUe35X1AKJUAofod9qskIURcn9WquMsM+79wnvEAQBw3OTsam8pW/b/roOnMQV+YaDSL43IAKHT6taAwYMCOqCTkvLsR9Er5Avx8MPP+yXgA8Av/nNb7Bq1So8+uijWLt2LaxWK0aPHo3bbrsNixYt8uu1CSIQuHJKeULJbiQchwZPc3CaoxMEQRCEMgw6Ddr6uRV7Hfh8D2GABHw5+PSl3vliJDm4dRoVNCpBIhbI4Y3YHyvwbYedogi7gxaAg8XsoVkYkJGIyuZjUZnvrq0Ii4Av/5MI/7E+WN+BpTtqmG3XzhqEJD2dg3mMvIBvdcBsYwV8PmafIEINP1dwiHIR+uEpFLtkejEj4G+tbMWBug4M4yKOA4mcPhINDkdewE9O0MTlvCkS0Mn8XqwOZ0QUxhDRAS/C2xw96XP8XKuNS/XRa1RIoHmF3wzPTeIE/Ah24Ef+5YnwEp/uqMrKygI8DJaHH34YDz/8cEBeS8lYZ82ahW+++SYg70cQgUau/5gSlFRhhbpvWbziqVAiXA43giAIgog2DDo1szBhOip88D2EBQEwykTuxzv8lKO3MDTSFhATdWrJMZVDrq1CrCMXoR9pxy+WUKkEXDZ9IP7+7d6+bV9tr8afzxqFtBA7miLVZfPC8kPMYmGyXoOrZ5WEbTyRDH/OMlntsNjYAhxaaCfCjaRQzCnC5uAj9MNznTlpRDZykvWo79fjecnWKtx7+sigvaecWB8NDvz6drYPdm4Kue/DBR+hDwA2O7VAIpTDR+gDQEuX1aOAn2agtjyBYFgOWyR2oL4jTCNhkdOIlLRUJqILytYjiAjHdwHf8z7kwA8Nnj5nmqMTBEEQhDL4nucmy9EIfQsr9ibpNFDRBVaCq3llpEV4Ku1tH49OMqmAD4kzMtzHL9a4cGoRI1ZZ7E58sulIyMchfxsY3kW6ssYufL61itm26PgSpCbSgrEc/Dmrw2KH1cEL+LRMR4QXuXY70kKx8HxPNWoVFk4sYLYt2VKtOKnSF6LV4cg78HNTqA92uJBrbWR1OKXJFmH6XRGRj1GnlhROtcjE5fMCPs3HAsNwLuXlQF1nUK87SpET6yNgWESA8enKMG/ePPzjH//wuN9TTz2FefPm+fIWBEEcxVWvUk8oifSixb3Q4GkOTg58giAIglCGkXMZdFl7hPtuPoI4DoVdJfBzv96bfukCYrgFfGXOeqVCfywhl1ps5wowwn38Yo2sJD3mj81ntr23riLkjvhIdIH+b+UhZgwGnRrXnjAofAOKcPgI/ZYu6eK7XhN/5zUisuAj9EUREgd+OK8z504qZB5XtXZjY79o40Ajd66P1ESU/vRPKQCA3GRy4IcLOQd+T4Q+97uilFTCBYIgSGL0W0zSFnIk4AeH4blJzONumwNVrd0u9g4dcpcicuDHHj4J+CtWrMDevXs97rdv3z6sXLnSl7cgCOIokv5jAXTg869NBAfPDnw6DgRBEAShBL43cLe1R7iX9BCOQ2FXCXLx64B0fqkOswNIaQ/oeGyTIFf4abVH1vGLRS6fUcw8Lm3swq+lTSEdA7fODyC8IlJjpwWLt7Du+ytnDkSGTMwr0UMid85qlhHwKUKfCDdyCUZ8q4dwCo2j81MkYspn3LkokMidZqNBHuEd+DkUoR825FpOWGwOSREeFWAS7pAI+DJziDYTCfjBIDtZL/ksIyFGX9aBH+7qXiLgBPXO3mw2Q6OJv0UVgggk/M2T0hOxkt3IgR8aPAn0pN8TBEEQhDJcOfAlAj4JILLwc5Je4T7SeqhThL5r5OaVfAQ3ObgCz4xBGRiSbWS2vbuuIqRjiLSYzHfXVsBqP/bd06lVuG42ue/dwTvw5QV8KsAhwouc0cNiZ+dZGrk4mBAhCILEhf/19mrmfBRIolUgqW/nHPgUoR82tDKFlWab9PtKa7SEO/h+9koi9FNIwA8IgiBI7gOOtITfgR9p9wZEcAjajKu9vR1r1qxBfn6+550JgnCJxIFPEfpRhyeBng4DQRAEQSiDF3ZNlp4F5V4nfi/kYJSHX2/vvcGXOvDDOzlRKszHZYS+rAOfE1ZochlwBEHA5TMGMtu+21mLpk6Li78IPJEUk2m2OfD22jJm2zkTC5BDEc1u4c9tcovvdP0iwo3cHMDCiePaMF9nFk5kBfx2sx2/HGwMynvJnWWjQR+p6+Ac+HR+DhsqlSBx4Xfb7JL9NJSgRLiBTzhSEqGflkipSIEiPy2ReVzdanaxZ+iQuw+IhhYvhHcotscPHjyYefzJJ59gxYoVsvva7XbU1dXBbrfjtttu82uABBHvqNW+Regrc+D7MiLCWzw78GmRlSAIgiCUwEem9zrwu228gE+THDkUO/DD7OAmB75r5KaNNkdkJSjEKr+ZXIS/f7u3T8iyO0V8ua0aV88KjetcfpEuJG8t4Ytt1WjsZMXna0P0OUQz/DWM/+2qVQK0dJNOhBklAn44HfgAUJiWiCkD07GpvKVv21fba3DSyJyAv5e8wzGyBRJRFMmBH2Fo1SrYHMfuV0xc8TEgXf8liP6kKYjQb+2mCP1gkc+1IalpiwQHvrJtRHSjWMAvKyvr+/+CIKCzsxOdnZ2y+2q1WhQUFOCcc87B448/7vcgCSKekTjwlZ6JFdxQUH/M0OBpDZWm6ARBEAShDF6w7XXe8zGUFKEvD78o3zuvdHDNtcPtwDco7G1v0MZfuza53sR8bDDN8YNDqkGL08fk4Ytt1X3bFm+pCpmAL+sCDYOIJIoiXlt9mNk2a2gmRhekhHws0Yan4qQEDf12ifAjK+Db+Aj98K9inDkunxHwv99dC4t9LPSawM4B5U6zEa7fo8NilxS35qaQAz+c6DQqRrSXE/DDnWxBRDbpPkTopybG371SsOAd+DVtEeDAl9GIlCY3E9GD4rsDp9PZ958oirj66quZbf3/s1gsOHz4MJ599lkYDIZgjp8gYh7JQqvCE7EiBz45v0OCp0VwTw59giAIgiB6MOrZRdmuo4tf/CJlPDqzlcDPOXrFP4kDP8wLiEojpClCvwerg3dG0twyWJw/mY1t3n6kDQfqOkLy3pHS5/KXg03YW8v+m687gdz3SjDo3S+kU3w+EQnIrU9II/TDX2yyYBzbsrXDbMfqA4GP0ZcX8CNbIKlvlwpL2cnkwA8nfLqK2SbjwCcBn3ADH6HfKhOh384L+AZy4AeKgtRoceBH9vWJ8B6fZlyvv/46rrvuukCPhSAIGfibJ7nqKjmU3FBEwD1XXOApIp+OA0EQBEEog3dmmyw9Efr8IhiJIPLw7u3ewlA+4SncDm6K0HeN3NquzRFZCQqxzAlDs5DDiSCLt1SF5L3l7u/CsUj36upS5vHgbCNOHB742OpYxKMDn65dRAQgdw2JtFY7AJCXmoBpJenMtq+21wT8feTPvQF/m4BSx8Xnpxm0dH4JMzpOwO+WceBraHGQcAMfod8sE6HPO/DTEnWSfQjfyOME/No2s2KNJljIXZ8ivcCM8B6frgyLFi3CrFmzAj0WgiBk4B1Q3PqcSxQ58GlxL2S4+6gFCtEnCIIgCEXw4keXtUfA5xfBaJFSHmlrpp7/tUdYD3WlAj6fyBAPyBWG8hH64T5+sYxGrcK5k1gX/mebq5S3OfMDubcI9RrdoYZOLN/XwGy7dtYg2dYOhBRP7V30WhJviPCjJKlRGwECPiB14S/bUycpavMX2XOvbFOTyIEX8TIMJOKFGx3XIkUuQl8dIb8rIjLJMLJu+lYFEfopieTADxQFXIS+zSGiSaaIIpTIOvADewkkIgC/GmGYTCZs3LgRNTU1sFgsLve76qqr/HkbgohrJE4phWdiJbcTJOCHDpUguHTIUII+QRAEQSjDyDnwe4V73oHvSSSJV3hjj9OlAz+8kxOlzvpEbfz1dZQ7NrxYQQJ+cDl/ciFeWnXMhV7bbsavh5pwwrCsoL6vbIxziEWk99dVMI/TDFr8ZnJRSMcQzRg9RegHuHc3QfiCEhNwpDiFTx+Th0e+3N33uN1sx7rS5oCej+XOs8Gu2RJFEa//UoavtldDJQjISdHjN5OLcPKoXEV/33k0oaoXT+ceIvjwRS98+y+A5m+EeyQOfE7At9qdksKQVBLwA0ZWkh4alcAk0tS0dYe1PYlcm2WK0I89fL6CP/jgg/jnP/8Jk8nkch9RFCEIAgn4BOEHXMqS7MlZDiWRKUoqq4nA0NMKQf6YyPWYIwiCIAhCikHPO/B7Fin4RTAS8OWRtGY6Ol+UROOG24Gv8PgpderHEnKHhnfgq/kbCCKgjMxLwZiCFOyqbu/btnjzkaAL+HILcqFM7jTbHPh08xFm28VTB8RlKwtf8RyhT79dIvwoEecjIUIf6HFEji9KxfYjbX3bvt9dG9DzcTjST/754wH8e9kBZtu3O2vx/g0zMWNwpse/N0kEfDpPhxutogj9yPhdEZFJOifgm21OmG2OvuQ53n0PkIAfSNQqAbkpCahq7e7bVtNmxvgw1rHK3xuQgB9r+CTg/+Mf/8Cjjz4KtVqNM888E8OHD0dycnKgx0YQBFxHnXpCyfk63O6qeMKdRk/6PUEQBEEog3fg9y5QShz4JCjJws/9ep33fMJTuOeIBp2y29R4FPApQj8yOH9yEXZVH3N9frOzFn85146kILocw71I992uWrSY2MXhS6YXh+z9YwG9RgWV4Lrwgq5dRCSgxFzPi5Hh5PQxeayAv6sOj5wzRvZ66Quy6SdBPPd+tKFSIt4DPeeN/648pEjA7+LE4WBemwhlKIrQp/kb4YZ0g1SMbzXZkJdKAn6oyE/lBPx+/z8cyF2LQlncS4QGn67gL7/8MhITE/Hzzz9j8uTJgR4TQRD94CP0nQrPxEriFGlyGDrcfdbkwCcIgiAIZfDihskm78DXayJnYTmSkDjwnS4c+GF21imO0I9DsUtuTml1RFYLhHjgnAkFeGzpnr4imG6bA9/urMUFU4Jnw5EXkYL2dhI+WF/JPD5+SCYGZRlDN4AYQBAEGHQaSbx1LxShT0QCSpIaI6lQ7LTRuXjyu319j2vbzdh+pA0TBqQF5PXlBJJgnXvLGrvwpyU7XD6/Yl8Dyhq7UOLh3MufY5QWRhLBQ+LA5+5d1CohYEUnRGwi1wqjy3rst84L+AadWlI4QvhHXmoC87imzazo75xOER1mO1ISNQH9nct1WQ5Eca/d4cQlL63F5OJUGDp6iv6pFCR8+PQrrqysxNy5c0m8J4gQwN8Y8QusrlCyGy3uhQ53Ij0dBoIgCIJQhtSB37P4Zbaxd6/xKOwqQeLAF3sd+LwAHN7FHqXO+nhckJabN9oc5MAPNdnJeswdns1s+3xrVVDf09WCXDCdoL2UNnTi19ImZtul5L73CXfntwRq/0JEAErWiSLJgT80JwmDOUH7h911AXt9uTNssNJPnv5hP2wO96/99tpyj68jjdCPv/lSpMEXF3db2WNE67OEJ7RqlUSQ77L0F/CtzHPkvg88BWmJzGNPAv6m8hYsem09JjzyPSb85XvMfXIFDtZ3BGw8wWqvtbmiFRvLW/DSz2X4104NZv1jpWzCAxEafJpx5eXlwWikSmuCCAUSB77CGwUlu5HzO3S4/6jpOBAEQRCEEgxcD0+rwwmr3SnpI5lIIogs/Npg7w2+xIEf5kVEpQUY8RihLzd/5yP0aRE4NJw3qZB5vOZQE1q6/r+9+46TpKr3Pv7t6cl5NufMwi5hCbJIXjKCgsSLiAKKihEv4H2896ogV70qIOpVn6sYwEcFJamIKDkjOQgsbGR32RxmdnfyTHc9fywzO3Uqdk+Hqp7P+/Xi9aKrq7urp7ZPnTq/8/udXo+9h8/r/q4QpTJ//5w9+76ltkIn7j0+/x9cgvzaraqK6ARFMXIlEonAZf6KXalnqEQioRPm29ujh97clLP3dxuDy0ez+9ra7br7lXW2bR89dLo+ceRM27Y/PL9Gnb3uVTwGtPfY+8V1I7C/FDXmpBezhH6x+96IB3M5jPYe7wx8Avi5N9GRge9dQr+1o1cfu+k5Pbpks3a+e55Wb+vUp/7fC47l/7Lldg8QtnKznwcW2yfBjW2o4t9TEWV1d3DeeefpkUceUUdHR66PB4DBLF9mZkh5CRPoZ3CvcMjABwBg+MwMfEnq6k05boIJ4LvzKqHvzMAvbuckbGY9AfxdzAz8KGVGlrJj9xqn6iEB11Ta0v2Lc5f1afK6v8tXJuiAnv6UbnvhHdu2sw+aoirKvWfFr30jAx9REVRGv9j9BNOxe42zPX5j/Q5tCFnaOIhbMCQf7e7QZQAkqbG6XFecsKc+8t4ZtgkVO7v79dzbrb7v1UEGfuRUGJNezBL6BPARhnnv0zlkss72TnsAv5GAa845A/je15l7X9vgmrW+fHOHvn3vmzk5HvcM/BwE8I0qNsftNdZjTxRCVnf2V199tebNm6fTTjtNy5Yty/UxARjCq9RpTt6bDPyC8euLUwkBAIBw3DKzO/v6HYNgBEHcefUr+1PRysCnhL43t1NjVlCIWmClVNVVlWvRXHvQ6K//XJ+3z/POwM9vAP/+NzZqm1FZ4DzK52fNt4Q+kyIQEWYlSFNFkZfaMR00vUUN1fY+wSNv5SYL37WFzXGzu2TjTj26ZLNt26WLZquptkLTRtdq38lNtudWb/VPqOswMvTNrF0UXqXRvpvVw8qZfIkQzN/y0N/69i77776ZAH7OTWyyl9DfuKPbM+P9769v8Hyfm556W8+9vW3Yx5OPEvrLN7drxRb7NYYAfnGFuoIfe+yxjm3pdFqPPPKI5s2bp+nTp2vKlCkqc+nAJRIJPfjgg8M/UmCE8sqUChK0XyIRfFOG3PEbSI3YvS8AAJHlFvjo6HFm4BPAd2f2Ryxr1/rZqXS0SrCHraBQ7OMshjATP4s9AWMked++E/S3IQN0Ty7bou2dfWqqzf2gqVegPs/xe936rL18/sKZozR7bH1+P7SE+S0RUk0JfUREeVlCfguCRKmEvrQr+HnU3LG659Xdk6geenNTTiYbubWxuZ449RtjXfvRdZW66LAZg4+njarVq+9sH3y8elun7/uZGfjmElQoPPMn05uKVt8b8WDeC3cMzcCnhH7eTWy2Z+D3pSxtae/RuEb79h3dfXpq+Rbf9/r54yt08IxRwzoe1xL6w7w+mdn3TRWW9p7YOKz3xPCECuA/8sgjns+lUimtWLFCK1ascH0+QWYpMCzmAJyZYeMlaC+y7wvLry1MiHMBAEAYFckyVZaX2db87ux1ZuCHXUN9pHEbG0xbzv5lsQPAI7E0flhhJuAyCFw4x+41ztYm9aUsPbB4o846aErOP8vrNjCfAfwN27v1pDEAeT7Z98PithTMACafISqCxouiuFTLsXuOswXwn1y2RT39qWEv92HlIcNxqPaeft354lrbtg8tnGarMjR1VK3t+TXbvNddluxBPYkM/ChIGpk7PX32AH6x+96IB3M5jKGTddq67NOuCODn3pi6KpUl7NeALe29jgD+w29uUt+QCneVyTJdevQs/fCh3ZXMH1i8SRt3dGu88dpMuF2f3LZl4gFjObC9R1kkgBZZqCv4ypUr830cADyYjWTYDPyg9pqBvcLy+3MzlwIAgPBqK5O2AH57T7+6jUGwsBncI41b9nYqbSnlKMFe3IH5MKXxR3Jf1hw4MpVT3qlgGqordNQeY22DXfe+tj4vAXyvAbl8ltD/y6vrbPeVDVXlOnmfCXn7vJHAt4Q+GfiIiKDB+igGG4/ec6wSid1jYR29KT23slVH7DFmWO/rdr3NZav7x5fWqn1IEK4sIX3oEPtEqWlGAD8wA98ooe83cQiFYf5mevrtkyxGcr8W4ZmTcYa2HTvIwM+7srKEGqorbNUOdnQ717k3y+cfNme0Ljlqlm58fOVg4kEqbekPz63R54/bI+vjcbsHMIp7ZGRre49eWNVq27ZPS55LfSFQqCv49OnT830cADx4rVUaJGggh85hYfmVOw1TChUAAOxSV1muts7dN8qtHc6bZoIg7tz6f2nLilwGflV58PmriFj53kIqSyR8+/r08wvr1P0m2AL4jy3Zoh3dfWqszu3AqdekjXwG8P/08jrb45P2mUCW+DD5lbLmb4uoCLqORPE6M6a+SvtNadYra9oGtz2+bPOwA/iWS7g+l+3uLc+utj0+bt54TW62r7M8tcXMwO+UZVmelR4poR895qSYnn57lC2KVS0QPeYk584hk3UcJfTzsJwTdk2MGPq3Nv/u6bSlR9/abNt20t4T1FhdodMWTNLvn9+9NNWtz63RZ46Zk/U1Ne0SrB/O9enxpVts9xs1FWWa29Tv/QIUBFcHIOLM0mVmhpQXSuhHi1+QnlMBAEB4Zvbito4exz5k4LsLnYFf5OB4mDJ9I3mgM2jy50ie3FAMx80bb/ub96bSemjxppx/jlcGfr7C9ys2t+ufa7fbtp2+/6Q8fdrI4VdhpHqYpb6BXPG7zlQkE5FdLvUoI1j/xFL/NYjDcB2Cy1HDu2xTu15ft8O27YL3OpPozAz8nT39jqDRUB29lNCPGnNybK8RwI/ipBhET70xGad9yHIZjgA+Gfh5Yf5dzb/7lvYeRxt89NyxkqTzjeoqa9u69PTyrVkfi1uS53BK6D+2xD7x4NBZo0VeRPFldQpWr14d6r8NGzaop8c5oAYgPEcJ/ZANcVCDzfolheV3f0sGPgAA4dUag5Bb2nsd+1Szhror7wz8+K3DOaID+AFfnUHgwmqsrtCRe4y1bfvrP9d77J09r3nc1jBKZfr58yv27Psx9VU6dNbo/HzYCOJXQr+KUVJEhN8lNsrLtBwxxx7Af33dDm1tH+a4tEvbm6sMfLOdHddQ5fgOkjSxudqxLOOabV2u79mXSjuCw+a62Sg8s29mZuDHoe+N4jPvg4dm4O/stmdKNxLAz4vGGvs5MJcuWLe92/a4IpnQhHfXud9vSpP2ntRoe/7+N+zl9jPhFvsJmffp+l6PGZPejtyDfn8UZNXrmjFjhmbOnBn43+TJk1VXV6e9995b3/72t9Xb6xxcA+DP7MT1p8IG8DN7X+SX30Aq8XsAAMKrrTAz8F0C+GQxunKbNJhOOys8xSEAPJKzzIMmf0Y5uFKq3mesC//Iks22dUlzwa2Ms5SfEvqWZenPRvn89+83UeUjeOJMrjT4LK1ACX1EhV/FxvIIX38PmNbimCTz5DCyGyX3NjYXze6udnatbdup+0107YNVJMs0scleVn/1tk7X9zXL50u7lp9CcZnnlQx8ZMOspjH0995pZH2b98zIDTMD3wzgb9hun1w1vrF6MIkykUjolH0n2p6//42NWWfNuwXrs70veHPDTm0xJrwdMYcAfhRkdfd11FFH6b3vfa8sy5JlWWppadGCBQu0YMECjRo1anD7IYccolmzZmnp0qX6z//8Tx199NHq7u4O/gAAg7LNwA/ajwz8wvItoS/OBQAAYdUZpQO3GiX0k2WJER3c9eMW101ZlmOCaBwmelaWj9xAYlAAn0Hgwjtx/gTb76a3P+1Y/3K4vDJq8hHAf23tDq3Y0mHbRvn83GjxWZOWAD6iwm8pnShXwKksL9N7jUohTywdXlvs1sLmot3959rtenurPQh/2gLvdtYso7+m1SOAbwTxJGffGYXnCOCnyMBH5uoqzRL6uwP4XX1GAJ+JO3kRVEJ/XZs99jmxqdr2+Ph54+37b+92LKUSltu1KOzSy6bHjWvllJYaTTeuOyiOrHpd99xzj/r7+7X//vvr/vvv15YtW/Tiiy/qxRdf1ObNm/XAAw/owAMPVCqV0ksvvaQVK1bomGOO0bPPPqvvf//7Of4KQGkzZz6HbYiD9vKbUY3c8y+hX7jjAAAg7szBiK1GCf2aimRk12YtNrf+XyptuWTgR3dwfkCUAwj5FtR3jHJ2ZKlqqq3QobPtQaMH39yY08/wys7Jffhe+pORFTptVK32n9qch08aeVpqKz2fqx7BE5MQLb4Z+BEfwDjcKEH/xNItw1oT2DUDP+t32+1uo3x+UDs7dVT2GfgE8oovaHIlFW4QhrOE/q6gfSptOao61FTybyofzKUJzAD+eiMD36yeMnd8vWNC1gOLs7tncAsRZXu5e9won3/U3LGMqUREVr/kr33ta1q2bJkefPBBHXfccY7njz32WN13331atmyZvvKVr2jKlCn67W9/q7q6Ot12223DPmhgJDH7cCEr6AfOCCYzp7D8MqWohgAAQHjVxhrB5k0zGYze3Pp/lmWpPx3DDPwRPNAZ1Hekn18cZkbNI29tzjoLxo3X/V2uM/BTaUt3v2oPLJ2+/yQG8XKkpc4ngM/1CxHhd52J+gS6I/ewB/DXbe92ZLpnwq2JHc6EgIHX3/eGPWDzgQUTfdtZRwa+RwDfXL6lpiJJvyACgpKoOEcIwyyhP/B7N7PvJamGiTt50WgshbSj297mrt/un4GfSCQc9wz3v5FdAN/tWpTNfUF3X0rPrNxm23aUcS1F8WTV67r99tt17LHHqqWlxXOfUaNG6ZhjjtEdd9whSRo/frwOOuggLVmyJLsjBUYoMwMqlU577GkIaK/pHBaW35+bMwEAQHjmwLG57pwZ4MdubgPDKcstA7/4vZOgSQRRDyDkU1AJ/YoYVFAoRcfuNc72eFtHr15e05az9/e6Dcx1Bf1nVm7Vxh32pUkon587lNBHHPhm4Ee8ysse4+o1tqHKtu2ZFVuzei/PyifDbHeXb27XKmNSwcl7T/TYe5epIQP4nT32QF5dFUG8KAjMwI9A3xvRV2uU0B+ouNHZ66y8UUOfIi+CSugHBfAl6YT59gD+6+t2aOOOzJcdd5sonM3c4ZdWt9kqOJQlpENnEcCPiqzu7Ddt2qS+vr7A/VKplDZv3r1+wsSJE5VKOWcEAfDmyMDPTfw+EgOzI4nfQCvZLAAAhGeufW7Oemewwptb/y+VttSfjt46nEEB+qgHEPIpKIDvt3Yx8mfqqFrNHV9v2/ZgliUx3Xjd3+U6A/+eV9fbHs+f2Kg54xpy+hkjWbNPCX2uX4gKv/GiKPQR/CQSCR0yc5Rtm5lZGJZXIGS47e79b2yyPR7fWKV9Jjf6vsYM4K9t63IN3pgZ+HVVtCtREDQGyxgtwjAz8Acm7HT3OoMF9CnyIyiAv8EM4DfbS+hL0sEzWtRQbT+XTy/PfKKZ2zUqm+vTs8Y1cv6kRjX5TDhFYWUVwJ8+fboeeughrV+/3nOfdevW6cEHH9T06dMHt23cuFGjRo3yfA0AJ3OALh1yKlXQfvQNC8u3hD7nAgCA0MwAvqNUaCWDFV7cMurSaefs/SgEgCsCjmFkZ+D7Px/14EopO84oifnQm5s89syc14BcLuP36bTlKOP5/gX+WaHITGN1uWeghgoyiAq/8Ys4XH8PmTXa9viZFVuzKnvvmYGf1VHtZk7uOn7e+MDEjilGEKgvZWlbR69jvw4zgE8Z7UggAx+5YFbU6Ojtl2VZ6uxzZuDTp8iPRp8AfiptacOO4Az88mSZY6JZNgF81xL6WaTgP7PS/tmHzBztsSeKIatf8sUXX6z29nYdddRRuuWWW9Tbu7vD0Nvbq1tvvVWLFi1SR0eHPvaxj0mS+vv79fLLL2vffffNzZEDI4TZyUuFvOkI2quc0poF5ffnJgMfAIDwqgIGjilB7M2tP5K2LPUbN/pRGEQ0J2o4no9BACFfAjPwI3D+RqrjjDL6b27YqXVtXTl5b69AUi4z8F9a06ZNO+3l80/ae0LO3h+77v28yuhXcf1CRPhdR+JwjXmvERhZt71b77Rm3hZ7Z+Bnc1S7bG3v0QurW23bjjfKKbtpqHa2G25ls81tZsYuiiMwgD+C+7UIz5yQk7ak7r60unrtFa9rKpKMNeeJmYE/dDm/Le09jonxE5ucGfiS9F5jotnTWSz14nYPkOn1qbc/rReNa9LCmSRgR0lWV4crrrhCH/zgB7V8+XJdcMEFqq2t1YQJEzRhwgTV1tbqwx/+sJYtW6YPfvCDuuKKKyRJixcv1sKFC3XxxRfn9AsApc7MlAqdgR8wkFMWg5uuUkIGPgAAuRGU+UUA35tbfyRlWc4M/AhM9Aw6zzPH1BXoSKKHLK7oOmBai5qN4OzjSzd77J0Zr9vAXGbg3/fGBtvjOePqNXtsvcfeyJZXGX2y5RAVviX0YxBonDOuXqPr7L+zbMroWx6pMdlk8w94+K3Ntna7tjKpQ2cFZztWV5TJ7MZ19jqXqW3vsW+rpYR+JAT1zei7IQy3JTHae/odAfxaKtLljRnA7+lPq7tv19/fnLRbkUw4rkUDDp1tb/dXb+vU2gwn/eaihP4/17apu8++BMPCGQTwoySrXld5ebnuvPNO/frXv9ahhx6q8vJybdq0SZs2bVIymdRhhx2m//f//p/uuOMOJZO7Gox9991X9957r84999ycfgGg1Jk3TmaGlJeg9joG91wlxW/mY1AWFQAA2C0oM7uGAIgn9xL6lvpT0cvA9wvglyWkzx4zp4BHEy1BXcc4ZEeWqmRZQofPGWPb9tiSLTl5b68BuVxl4FuWpftet5d1Pmnv4KxQZM4tAz+RGNmVRRAtfteRihhcYxKJhCOD8Jksshu9mtfhNLtPGJO6jpgzJtTk00QioVpjP7cMfEcJfTLwI4HqScgFt99zR0+/uvrsAXwmtOdPY7XzHAxk4W/Ybi+fP6Gp2jOBct6ERsek30zL6LvdA2Q6wcyc3Lbn+Aa1eEw6QHEM6+7gggsu0BNPPKH29natX79e69evV0dHhx5//HF9+MMfztUxAiOao4R+6AC+/35uA7jIH7++OKcCAIDwggP4DFh4cRtAcM/AL37npDzpPIaPHzFTx88br5suXqgJLusJjhRBg8BxWJ+4lB29x1jb4yeWbQl9D+cnH4GkoZZtatfKLR22bZTPzw+3DPzqcsrdIjr8xovcrs9RZK4vnFUGvmcJ/ewaXsuy9MQye4DmqLljPfZ2qjWCd24Z+B1mCf1KAvhREPS7icLkWURfVXmZ4z6to7ff0RaQgZ8/jTXOSZjb3w3grzMC+BMb3cvnS7vuy83rVMYBfJf7i7BLLw94ZoX92njILLLvoyYnd/bl5eUaP368xo8fr/JyOgZALpkDrWFvFIL2isLA7EjiN9CaEOcCAICwAgP4DFj4MvuA6bTUn7aXzYvCIOL/OXkv2+MzDpisr75/vn5+4XsyGuwuRUH9ePr5xXXkXHsG/vauPr3yTtuw39drgnauMvAfWLzJ9nhiU7X2ndyUk/eG3Si3AD7VYxAhfivpxGWS2MKZzvLEm3f2ZPQeXu1rts3uWxt3aku7/RiO3GOMx95OdUYft6PHJYBvZOBTQj8agjPw4/G7QnElEgnXdsDMwOd+OH8qkmWOc7CjeyAD314Cf2Kz/4Rzc/mUZ1ZmmoEfbpvn69OWXlzdattmVq9B8XF1ACLOnPkcPgM/4H0Z2Csovxns9NMBAAgvaOC4qpwBCz9mFzAd0Qz8Y/cap2P3GidJmtRUrU8eNavIRxQdgSX0yeItqolNNZo73r5u/GNLNnvsHZ7XbWAOkvslSQ+/ZQ/gHzdvHBnhedJc58zeotwtosSvHxCFSX5h7DmhQfVGxroZqAji1bxmO3HqiaX2JVWmtNRo2qja0K+vqTQz8F1K6BuZuObfAMUR9LupiEllCxSfWUa/o7d/cA32AVSkyy8zC98rAz+oYtwhRgD/ndaujCaauV2LMrk+rdjSrp3d9uvIe6YTwI+aUFfxY489VolEQjfffLOmTJmiY489NvQHJBIJPfjgg1kfIDDSObKkQjbEQfux7nph+f25ORcAAIRXRQb+sOzqd+zuJ6bSlvqNCGAUyuNWJMv0iwvfo60dvaqvKie4NYRf37Es4b5UAgrrqD3GasnG9sHHjy3ZrC8eP3dY7+l9fzf8CP72rj69sMoe2Dpmz3HDfl+4a3HNwKeNQ3T4XWfKY5KBnyxLaMHUJj05pGT9i6tbM1oaxDMDP8tjemKZPYB/xJwxGU2UMrM+XUvoGxn4bmtmo/CC+mZRmDyLeHAE8HucJfS5H86vppoKrR8SrB8I4G8wAviTmrxL6EvS3PENqqtM2iZevbymTSfMHx/qONwm8WYyv+yl1W22xxMaq0f0MnVRFeoq/sgjjyiRSKizs3PwcVjM2AaGx+zEmQOsXoL2isLA7EjiX0IfAACEVRkwcEzGgT+zb5lyzcCPxuB8IpHQmPqqYh9G5PiuTRyRczfSHTV3rH7+xMrBx6+8s13tPf3DyoT0Xos567cc9MTSLbZ2oLK8TIfOHu3zCgxHS60zAz9ochpQSH7BxDhlCh84rcUWwDeDFUGstMf2LDLwe/vTjrWGD58Tvny+5AzKuWbgmwF8AnmREJSBH5fKFig+Zwn9fnWZAXzuh/PKkYHfuSuA39rZa9sedB+bLEto3ylN+seQa8PLa1pDB/DdrkXpDG4MXl7TZnu8/9Tm0K9F4YS6e1y5cteN5+TJk22PAeSfY5A1dAl9MvCjxG8slYlOAACEF1RCnwELf2bw17JcMvAZRIw0v64jGVzRcPCMUapIJtSX2vXbSqUtPff2tmFltXtlgmZbynmoh960l88/dNZo1VaStZkvzWTgI+L8+gFxmih2wLRm2+NX32lTXyod2JccYHmkxmTT7L68ps2xTnWmAfw6Rwl9twx8+zYy8KMhqH8WlcmziD5nBn7K0baQgZ9fTUYAf8e7Zeg7He1v8HnYf2qLEcBvC30cbjGiVAYXKEcA37hmIhpCXcWnT5/u+xhA/piB9rAzqYLaawb3Ciuo1CkAAAinMiBLsbqCATA/ZpcklXbe/NNPjDbf0sacu0ioqUxq/6nNeu7t3WXp/7F867AC+J4Z+B4ZomGl05YeXWIP4B+z59jhvSl8japzC+Bz7UJ0+JfQj8915oCpLbbH3X1pvbl+p/ad0hTq9V7Db9lMnHrubXv2/byJja5tgZ/aMCX0eymhH0VBfes4/a5QXG4l9MnAL6zGaiMD/90S+mZVlDCTYc2s91fWbFcqbYW6Hx9OCf2u3pTe3LDT91gQDVndIRx44IE655xzcn0sAFy4lTkNI+iGwq/0JnLP78JLBj4AAOEFB/AZsPDjVt2p34gAEgSONr9+JQPA0XHoLHsJ+qdXbPXYMxzvtZiHl4H/xvod2tJuL/m5aBgTDRDMrYR+nLKaUfp8S+jH6N9qS12lZo2ps217cXWrx95OXpUts2l1nzcC+AtntHjs6a22KpsS+gTwoyBoDJa+N8IyS+i39/Y7JvOYk32QW2YG/u4AfubnwawU097Tr+Wb20Mdh2sJ/ZBxo9fWbbdN4i9LSPtODje5DYWVVa/rrbfeUkWF84YDQO6ZnbywGRZk4EeLX2edUwEAQHhBAXxKBvoz+4Bpy1IqRQZ+nPidHkqwRsehs+2lkV9bu31wgC8bXpmgw62g//Ry+8SC6aNrNcMIeCG33Erod/c5M2mBYikroYliZkngTAL43hn4mR1DOm3p+VX2z33PjFGZvYlcSuj3hCmhT784CgIz8Ol7IyQzA7+zJ+XoQ5CBn19uAfze/rRjWbowAfzxjdWa2FRt2/by6rZQx+EWrA8bwDc/Y+74Biq2RFRWd/d77LGHtm4d3uxxAOGYnTwzQ8pL0A0FA7OF5XcD7FeeDgAA2FUGrFtaXc6AhR+z37ErA9/ecSQTNNr8qjcxABwdB0xrtk04SlvSsyu3+bzCn1emfTalnId6cvkW2+PDZme2JjMy11zjTIhxK4UNFItfAkLY9eOj4sBp9kz3f76zPfRrPSucZNjuvrVxp3Z22zPjD84igG9OUjXL5afSlmMtbAIy0RA0BssETITlVkLfrMZRQ+WNvGqssf99d3T1uVZECdv+mqXrXzLWpvfiFvsJO8HslXfsn0H5/OjK6urw8Y9/XI8++qjefPPNXB8PAIMzS8q7jNdQQaUU/QLKyD0GUwEAyA0y8IfHDOCnLctWPk9iomfU+Z0fzl10VFckdZARODKz3TPhdQuYaSboUL39acekgsNmj/bYG7lS7hIAJQMfUeK7VEvMrjP7Gevdr9jSoZ3d4aqh5KrdNcvnTx1VowlGxmUYjgx8Y+KPGdCXCOBHRWAGfswqW6B4zHago7ffMXGnpoIJIfnkloHvNhEz7LiEGTx/fV24iWauGfghL1BvrNthe7zflGb3HVF0Wf2aP//5z+uiiy7S0UcfrRtuuEHLli1Tb29v8AsBZMxtcnOotjhgn7jddMWdbwY+5wIAgNACM/ApGejLrYS+IwOfQcRI8+s6cu6i5VAjGP7c29ln4HsNyIWZ3O3llXfaHAOOBPCLwxx8B4rJr0pgMmbXmT0nNDjGv143AhdevAP4mbW7z71tL59/8PTMs+8lZzDIbL+7XQJItfSLIyE4Az9evysUj7ksRkdPSl2OtdeZuJNPZgDfKwM/bPu79yT7RLO3Nux0TLB343ZvEOb61Nnbr5VbO4xjaAx8HYojqwB+MpnUjTfeqM2bN+vKK6/UnnvuqZqaGiWTScd/5eU0GMBwuN04hWrEAxpsv5JoyD2/vzf9dAAAwgvMwGeg0pdZoTOVdvYtGUSMNr8S+py7aDFLJL+xfoc6epwDfGHkai3moZ5aZq8IsNeEBo2ur8r+DZE1MvARJX4JHxUxK/VdVZ7U3PENtm2vrc0+u1HKuIK+IwP/PVmUz5ecgTszgN+bci65GdRvRmEEZuDTf0NIZlWN9h5nBn41FenyqtEM4Hf3O9rjyvIy14pLbuZNtF+jevrTWrmlw2Pv3bItof/mhp2261hZYtdkN0RTVtH1qVOn+g4aAMgdtzVIwwTwg/Yg67uw/DrjCXEuAAAIK2jt1WpKBvoyJxWm0pb60/YBXwYRo813beKYBVZK3f5Tm1VelhiscpFKW3p5TZsOn5P5OvPegaTsI/hPLt9ie3zY7MyPC7kxbVRtsQ8BGOQ3XhTHSi/7Tm7SG+t3Z92HDeB7ta6ZZOBv2N6tddu7bdsOntHisbe/mgqzhL59Qlh/ynlccTxfpSgoiYq+N8IyA/idriX0CeDnk/n37elPqaPHfg7qMphEMbq+SuMaqrRpZ8/gtsXrd2jOuHrf17mW0A9xfTLL588aW08VwwjLKoD/9ttv5/gwAHhxG4NLhWiMg2L8ZOAXlm8JfU4FAAChBWbgk3Hgy+yTWJZFBn7M+MXoOXfRUlOZ1N6Tm/TKmrbBbc+9vS2rAL53ICm7Y0unLb36TpttG+XzC+fL79tL3773zcHHXzppryIeDWDnN1cyaCJlFO0zpUm/f37N4ON/hs3AH06Jk3e9YrSzDVXlmj3WPyjjJSgDv88lA5+JfdEQNJEiGcPfFYrDDAx39KTU02+W0Od+OJ+qjPGIvpSldqPCVqbLGMyb2KhNOzcPPl68foc+sGCS72vcLlFh5pctXm8P4M+fSPn8KOPqAESc2yBcqAz8oBL6zMItKL8JE1Q0AQAgPPOG2UTGgT9zeaaUZQ1mBw9wqwCF6PBbm5hMu+h5z3R7puULq1o99vTndX+XbQb++h3d6u6zB3v2ndLksTdy7aOHTtdHD52uBVOa9OX37cXkCUSK3/hFHDOF951sb9tWbOlwBFvceDWvmWTgmxOl9p3SlHVFTDMg1Gl8hz4jA78sQfXNqPDru0nx/F2hONyyv7uMyTxkU+dXVbnz79vW2Wt7nOkkinlGEN0MsrtxuwcIEzN6wwzgTyKAH2UsUA9EnNuNU5hZwEH3E2TgF5bfhAlOBQAA4QWX0GfAwo/ZB+xPWY5+I1nc0eY3CMy5i56DZ7ToF0+sHHz84qpW9afSodfFHOAVMMo2QXTF5nbb47rKpMY1VGX3ZshYbWW5rjl9n2IfBuDKv4R+/Cb57TWhQcmyxGBgw7J2lRBeONN/LXrLo/ZJJvOmXn3Hnu2/35Tm8C82mAGhzr6ULMsaTAoxl0SKY7WEUhU0OZb+G8KqMCaz9/Sn1dlHBn4hVbks2dfW2Wd7nHkA374G/eL1OwNfk00J/VTa0pvGe5uTBxAtGV3JU6mUXn31Vb344ovascM+U2Pp0qW6/PLL9YEPfEAf+tCH9Jvf/CanBwqMVG43TmFK6HvdaAygc1hYfhMmgmbiAgCA3ZJlCc9+TCIRnKE/0pl9y95+Z7lVsoCize/0cO6i56Dp9gBRR29Kb24IHpQzeQXqs83AX7G5w/Z41th6KoMBkOQ/flERw0ov1RVJ7WGsJRymjL5Xuxs2A9+yLJcAfvaVTuqMDHzLkq2SipmBTwA/OoKKW9F/Q1iVxu96Z3e/Y1IRFenyyzwHkrTNkYGfWd60WcZ+w45utXb0euy9i8uqKYETzFZt7VCXMeGDEvrRFvpKfuutt2rixIk64IADdPDBB2vcuHG6/PLLJUl/+9vftM8+++gHP/iB7rnnHv3+97/XhRdeqDPOOCNvBw6MFG6duDDlUNIujfhQBI0Ly2/CBP10AAAy43bTLEnV5UkCUAHMP12vy50/Ez2jjQz8eBnbUKUZo2tt255/e1vG7+Ndyjmbo3Jm4M8aW5fdGwEoOX7Xkrgus2OW0c+2PLGkgHSZ3VZv69T2LntW5nAC+DUuGZ0dvbvL6PcZfTqW1YmOoN9NHCtboDgqQ0xWJwM/v9wz8IdXQn/mmDrHuV28wf865XaNCppgZpbPH9tQpbFU4Iq0UFeHp59+Wh/+8Ie1ZcsWJZNJjRo1Sr29vfrBD36gn/zkJ7rwwgtVXV2tK664Qj/+8Y91xRVXqL6+Xn/+859188035/s7ACXNNQM/TAn9gFsKOvKF5XcDTKABAIDMeA1cuA1sws4M/rpm4NNPjDS/0sZk20XTgdNbbI9feSc489PkHUjKMgN/iz0Df+YYAvgAdvEN4Me0j7CXkWG4ZGOY8sTu28MWPjHb+tF1lZrcXBPuxS7qqpz93KFrX/cbGfhxnWxRioK6Z2TgI6wwAfxq7onzyi2ZoLXDKKFflVkGfnmyTHuOz6yMfjYl9CmfHz+hruTXX3+9LMvSl7/8ZXV0dGjz5s1avny5DjroIP3Hf/yHtm3bpscee0zf/e539elPf1rXXnutHnnkESUSCf3617/O93cASppb6bJQAfyAXcjALyz/AH4BDwQAgBLgGcCnXGAgRwCfDPzY8Ts9nLtoOmBqs+3xK2vaMn4PrwG57DPwnSX0AUDyv5bEsYS+JEdgZMnGnSHG1jwmToWM4L9qtPX7TWkaVgLHrkpT9m22DHyjFGdlTM9VKUoGTKag/4awvCrRDcU9cX6VJ8sck25azQz8LM7BnhPs16llm9o99tzF7RLmVlZ/qOVGBa49x9P/j7rQGfhz5szRt771LVVUVEiSZs6cqe9973vasWOHDjnkEC1YsMD2mgMOOEDvfe979eqrr+b+qIERxK0TF2a9raD7EJJzCstvwgSTKQAAyIzXwIVbOTvYmX1L1wx8MrYiza/vSAZXNC0wAvgrtnQ4yioHGe5azEN196W0bnuXbdssMvABvMv/OhPPPoIZGOnuS2vNtk7f13i3u+E+89W19gz8fac0h3uhh7KyhCMw1zkkA7+v3yyhH89zVYrckrOGov+GsIIy8CuSCSpyFYB5HhwBfJeKKUHmjLMH081gu8ntHiBogpk5KWA2E3gjL9SvefPmzY4AvbQrSC9J06dPd33d9OnT1dbWlv3RAXC9cQqTgR+0KlfQ7E/kll/fiX46AACZIQM/e+YAorleqkQWUNT5ldDn3EXTXhMaHROP/plhGX2vQH3YTNChVm7pcFRsmzWWAD6AXUoxA39MfaVG1VXatr25wb88sVfzGmbpEsuytHidfa3h/SY3Bb4uSG2lvSxzZ8+QEvrGWGFclzsoRcmAc0H/DWEFZeBXcz9cEFWOAL5RQj+LZQzMybRmtSyT2zXKb2Jvfyqtt7fa39OcNIDoCRXB6+/vV0NDg2N7Xd2uf1RVVVWur6usrFQ6HVC3AYAvt1mY/WlL77R2ame3d9ZGYAY+Wd8F5TdhIiHOBQAAmfAauCCAH8zsArpn4NM3ibJSzIwsdZXlZZo3yb7G5CvvtGX0Hp6BpCxK6JsDghObqh1BIQAjl18wMa7XmUQi4VpG34/n0iUhhrrXtnVpZ0+/bdv8ScNfa9gMCnUOLaGfMkvox/NclaKgMVgyphFWUAZ+NoFjZK6q3P53bjMz8LPoV882gulb2nu0vdM79uOW4OkXD1q1rVN9KfsOBPCjj6sDEHFuGTYX/+o5HfGdh3XUdx/W829vc31dUCYGfcPC8uusM5cCAIDMVJS7XzxrGLAIZA7K97gE8MkCija/08O5i679p9gzL1821kYO4nV/F7aU81ArjJKcZN8DGMp3oliMs7rNMvpvZZuBH2LmlPneDdXlmthUHfi6IM4A/pAM/BQZ+FEV1D+j/4awgiZ7MKG9MMyJFGZgPJuJFNNG1Tom0i/f4l1G322SmV8G/nKjfP6Y+ko111Z67I2oIIQHxIDZkVvbtmu9wtbOPn3zr4tdXxM0kONXehO5519Cn3MBAEAmvDKKzJnwcDL7lb2U0I8dv4mhDNZH14KpzbbHr2aYge+9FnPmEfylxgDerDFk3wDYzW/8Is6Zwo4AfpYZ+GFaXbM8/7wJjUrkYOzHDAp1+GTgx7VaQikK6ltT/QphBS1jUkNFpYIwS+ib6rI4DxXJMk0bXWvb5ldG3+3ewO++YJljAi/9/zgIfSW/+eablUwmHf8lEgnP537961/n89iBEcNvkO6l1W2u24NuKOgcFpZvCX1OBQAAGfEqHUgGfjBz4iAl9OPHLwDAuYuu/aY02x5v3NGjDdu7Q7/eM5CUYQB/W0ev7n9jo20b5TMBDOU3fhHnSX5mAH/llg719Kc89vbOwA8zcWrx+h22x3tNdC5Nm426KntQqGtIBn6fEc0JCvShcMjAR64kEgnfMvo1FUzcKYSqgL9ztuMS5qTa5Zu9M/Dd7gH8lnhZZkzgpf8fD6F/0ZZlZfUfgOHLpiMX9Psj67uwyMAHACB3Kj0y7RmwCGZ2K80AfnlZIicZYsgf/xL6/AaiataYOjUYgZdMsvC9MvAzHXa56am31dW3O+BTXpbQ8fPHZ/YmAEqaX9w3zhn4c8fbg+iptKXlm7yzGy2P1Jgw7a5ZQn+vCY3BLwrBkYHfM7SEvr1PF+dzVWqCJlhSLQGZqPL5bWez9joyF1T5r64quwD+7HH2Za3MZa+GGm4J/Tlk4MdCqKtDOp3O+r9UynsmI4BwssmkCbqhYHZnYfkF6TkVAABkptJjZJk1/4KZfUAz84wS7NHn148nAz+6ysoS2nuyPYCzeL1/+WY79xu8oKXThuro6dfNT71t23ba/pM0ubkmg+MAUOr8rjPVMZ4sWV9Vrikt9vZuiU8Zfe+lS/w/p7svpRVb7BMDzOz/bJnBuc6+3SX0+401mMsJ4EdGYAl9+t/IQIVPBn4198MF4bWk34CaiuwmUsx2ZOBnVkLfKx5kWZbjvWaTgR8LXMmBGEhm0ZHzmik8gMG9wvL7e5PlBgBAZrzKBjJgEcycVNjjyMDnFjHq/PqOTNKNtnkT7QH8N9ZvD/1ar5KYYUo5D/jjy2u1vavPtu3So2eHfj2AkaHM51oSlHUYdWbJYDPQPpR3ZUv/dnfZpnaljMhK7gL49r9/55AM/F4zA58+QWQEBvA5V8iAX/DYbCOQH0El9HOVgb9qa4ejusoAt3uAlMd1a+OOHrX39Nu2UUI/HhidAWIgm46c35onkv8NGXLPq7NO7B4AgMx5DVoQwA9m9kkcJfTJAIo8v248A8DRNt8RwN/hsaeTV6A+kwD+syu32R4ft9c4R0lpAEj6DFRU+WR+xsHMMfbgyEqfAH62Gfhm+fxpo2pVX5WbstaOAH7v0BL6ZgY+fYKo8PtNSUzARGa8JrNLVKQrlKBrYbYTKWYZGfh9KUtrWrtc982khP5yoxR/bWVSk5qqszpGFFa8e13ACJFNRy4oAz+o84jc8pow4VdaHwAAuPMatKgh4yCQ2fdwBPDJwI883xL6lMuNtPmT7AH8Ndu6tKO7z2Nvu0xK5Xv551p7xv+ivcYN/00BlBzfDPwYl9CXpFmOAL73+sJemfbemfm7vLnBPjkrV9n3kksJ/d4hJfSNTJ4K+gSRUVaW8E3gof+NTPgG8LkfLoigajRmWx1WS12lWmorbNtWbHa/Trklb3rdL6ze1ml7PH10HRWBY4KrAxAD2XTkggZ4yMAvLK9sKM4CAACZ8xqQrI55VlghmH1AZwl9eidR5zcBlPMXbXPG1TvO0ZvrvddfHsprgnbYDPz2nn5Hpum+k5tCvRbAyOKfgR/v4NCssfbsxpWbOzwD8tlm4C/dZA+27JXTAL53Br6jhD4B/Ejx+11ls3QqRi6/3zYB/MLwm0QhDW8pgxnGRLM1RvB9gNs9gNf1zBHAH1Wb5dGh0LiSAzGQVSmlgBsKBvcKy2uglQx8AAAyRwZ+9szxQUrox49f95ESrNFWVZ50rDf5xrrtHnvbecXpg5ZOG/D62u229ygvS+Q0qASgdPj1BUqthH5Hb0qbd/a47uvV7gZl4JuTpWaPzd06w7VVPhn4Zgl9+gSR4tdHq6D/jQxQQr/4gkvoZ79sypQWe3D9HY8S+m6XIq+JvWYAf+qomuwODgUX714XMEJk0+kOysRgcK+wvP7exO8BAMic16BFNQMWgZwZ+CnbY7K1os8vg4vB+ugzy+gvDpmB73V/FzYD3yyfv8f4BtpMAK78Eg3iHsCf0FitamMZgBVGwH2AV/vq1+z29Kcc2ZKzxtZ57J25OmOyakfP7n5cf8qclBnvc1VqfAP4lNBHBqp8fttm+4b88KtGU16WCMzQ9zO1xR5cX9MaPgM/5TGx9x3jujSNDPzY4BcNxEA2wfagYRwyvwvL6xxyHgAAyJzXoAUZB8HMvoeZgc8kz+jzWwqLEqzRN3+iPYD/xvodHnvaeZVsDhe+l14zAvj7Tm702BPASOfVF6gqL4v9mrllZQnNGG0PqJsZ8wM8M/B93n/11k5He21m/Q+HWZa5q293AL/P+OBK+gSR4hvAj/nEGBRWRbn3vyXuhwujymeixHDK50vhM/BTwyihP4UAfmxwdQBiIJuB1KBMDLJzCosMfAAAcscrS5xs0mBm9ra5Xip9xOjz6z9y/qLPDOC/tXGnI2vSjXcmaHYZ+PtObgr1OgAjj1eiQdyz7weYGfErNre77ufVvvqNt5nZ/GMbqtRQXZHhEXqrMvq63UMD+I5lkUrjfJUKSugjVyp9fttmG4H88DsHwymfLznL25tVXQa4Te51uz7t7O5Ta2efbRsZ+PHBlRyIgWzWIg0ax/HL3EHueZU6JQMfAIDMeZWkqxnmbPeRwFFCv88+2EsJ/ejzL6HP+Yu6eUYAv7c/rVUeA3M2Hvd3Xpn5Q7X39DuCSvsQwAfgwTMDv0QCQ2ZGvFcGvlf76hvA32x/r1k5zL6XnKXW+4ccZL9xwNmMJSJ//CZZUkIfmfArz86E9sLwzcCvym0G/o7ufm3v6nPs5zbJzO26tWabPYM/kZAmN9c4d0QkcXUAYiCZRUcuaBzHb+APuec1YYLTAABA5jwD+AxYBDLj8z2U0I8dvwmgDNZHX0tdpcbUV9q2Ld3onv05lFfAKKjymiQtXr/DNsE7WZZwTCQAgAFec/lKJQN/5ph622NzgtMAy2Nkza/ZNbP5zWz/4TL7aakh0Zo+o5oLQeFo8eq/JcsSJFkhI5U+669Xl0g7HXVVPudguCX0JzVXO+IFa13K6LvdA7htM8vnj2+oZqJHjPCLBmIgm1KYQaUUGZwtLK9zyFkAACBzXgF8bkSDBZXQp4Rn9Pl14+njx8Occfbg0XKP8s1DeZfQD/68N9fvsD3eY1w97SUATyOthP7qrZ2uS5l4ZeD7tbtmNv8sY7LAcJn9tKFB+/6UZexbGuerVHiNC7L8ETLld79GRbrC8KuCMNwS+lXlSY1vqLZtW9PqrNaVdlmBK+1y4TJL8FM+P164kgMxEDQQ59Y4Bw3kMLhXWF6zaZllCwBA5rwGJKt9Stlhl0RA+R9KsEefX/+RQeB4MAP4SzfuDHyNdyApOIL/lvH+e05oCHwNgJHLqy/gl3EYJ2ZZ+/60pXdcshu92levzHzJmc1fzAx8qvJEi1f/zW8tbcCN32QqJmgWht85GG4GviRNabGXuHe7Rrln4Dvfywz+TyWAHytcIYAYCBqIS4UsmTIUAfzC8lqywK8EKgAAcOd1w0wJ/WBBfUAGe6PPr/+YzdJbKLw9xtkD6MtCZOB7BZK8AvtDLTFK9M8dTwAfgDevS4nfmr9x0lxbqYZqe4akewDf/fVe7W5bZ6+2dfTats0ck9sAvjmJdWjWfV/azMCnTxclXmO7FSVS2QKF4zfpo7pEJlpFnV8Av26YGfiSM8huZtFL2ZfQnzqqxrEPoosrBBADQQOtqSwy8AkcFxYl9AEAyB2vQQtKBgYLDOAzyTPy/E4R5y8eHCX0N3W4VlUbyuv+LigD37IsR4Y/AXwAfrwSEEqlhL4kTWmxB0fWtjmDI16Z9l7trpl9X16WyHmmo9mP608PLaFvZOAzqS9SvDLw6bshU37l26lIVxh+FWlyMSYRLgPf+Tq3y5MZwKeEfrzwiwZiIDAD36XFJgM/Wrw66kFlbAEAgJNnCX0yDgIFTeIsp4xn5PmV0KePHw97GAH8rr6U1rY5B+aG8rq/C8rA39Leq9bOPtu2ueNzuyYzgNLidS0plRL6UsjgiMv6wpJ3u7tisz2AP21Ubc7XoTez6tPW7mU1zRL6ZHZHi2cGPn1vZMjv3wwl9AvDPwN/+OdgqjHJ7J3WcBn4Zowo7bJEDCX044UrBBADQaUw3UroB78ng3uF5PX35jQAAJA5t6yDyvIy38Amdgn6E1FuNfr8JmFw/uJhbEOVo3xzUBl9r4BR0MRtM/u+uqLMMSgIAEN59adKKwM/OIDv17q6ZeGbWY65Lp8vuY8P9g8G8I0S+vSLI8Wr/+aXTQ248c/AJ4BfCH7Xw9qq4ZfQd7tGmdcdt1sA875gS3uPevvtk7u4D4gXrhBADARm4KfIwI86r783CfgAAGTObdCihsGKUIL6gKyhHn1+p5DzFw+JRMKRhb9sY1AA36uUs/9nvWUE8OeMq2eyEwBfXiX0SykwNLnZDI6Ey24c4PaU+R75yHJ0Gx8cKKPfb5QMoKpStJR7TLKkhD4yRQn94qvy+Ts31VQM+/3N60d7T7/ajIpabtcoc8Lvhh3dtsfJsoTGNlQN+/hQOPyigRhIBmTSuGXgBw3keN2QIT+8/t5BZWwBAIATAfzsBfU9yNaKPr9zyCBwfMwxA/ib/AP4XrzWaB6wxJgYMHdcQ1afA2Dk8C6hXzrDyFOMDMS1bhn4Ps2r21NmFr+ZQZkLbkHggQz8fjMDn6o8keI1LkgJfWSqkhL6Ree3pEwuAvgTmqodSX9mMN5tSWUzS3/DdvtrxjVUkdQZM1whgBgIzMB3a7AD3pPGurC8S+hzHgAAyJTboEVNDtaaGwmC+oBe2UGIDr/+I338+DAD+Es37fTYcxevTFCv0vqD72tk4M+dQAAfgD/PAH4JZXaawfUNO7odZYbdyuQPcGuTzUkAZpZ/Lridm4GqnL0p+/ETGI4Wr98VEy2QKa8M/PKyBL/7AvGrgtBYPfwAfkWyTKPrKm3bNu3ssT0OU0J/o/Ga8Y3Vwz42FBa/aCAGggbi3AL4lNCPFgL1AADkjtsNcyllheVTUBeQEuzR53cOycCPDzOAv2JLh+/+RmXk3dt9SzxbWmIG8MfXe+wNALt4Z+CXzmRJM4CftpyZin4TpMymtz+VdmRHmln+uVDh0k/rGyihb2Tg0yeIFu8APn1vZMYrA5/s+8LxG3torCnPyWeMbbAH2zfuMK9RzouUGSPaaFzXJhDAjx2uEEAMZJOBH5SCT/+wsLyy2RgjBwAgc2TgZy9o7WuygKLPbyIuk3TjY8boOtvjts4+be/q89jbO1DvN297084e7ejut23bgxL6AAJ4JSCU0mTJppoK1VfZgyzmGvZ+S5SYbfL67d2Osbl8lNB3W2IzNVhCnwz8KCOAj1zxyv6uLqEqKVGX7xL6kjS+0b5W/WYjm97t3sDcZE4sM98T0cevGoiBoEyobDLwyQgvLK+/N+cBAIDMuQ1a1JBxEIrX+psDypldGHkJn3NYziBwbExpqXVUU1i9tdN9Z3kH6v1KPK/YbM/qr64oy0tJZwClZSRk4CcSCUeA/Z02ewn8TDLw3zHK59dVJtVcm5sgzlBuGfgDmfd9xgETGI4Wr98Vy1chU14B/FJqo6PONwM/ByX0JWl8YAa+8zWOEvpmAL+JDPy44UoOxEBQBn6/S4sdkIDP4GyBeXXUCeADAJA5twFJAvjhBGVoM4gYfX79R8rlxkdleZkmGcH0t7d6l9H3ygT1CzCtMt5vxui6wCocAOA12a+qxLI7zQlNZhDeb4KU2SavNYL/k1tqfCfcZcutHzcwJthnZODTp4sWr+Qsr3LogBevyTlUpCscr0kUUu4y8McZ2fJmMN7tGmXeF5ivoYR+/HCFAGIgaKDVLds+MAOfX39BeQ2mcjsFAEDm3G6YWfMvnKDBZALA0ec3zksJ/Xgxy+iv3uadge8VqPe771vpEsAHgCBe40WlVEJfcpa4d5TQ9xlWM9tk87VTWmqHdWxe3PppA6XzBzLxB7AsUrR4nQ4qJSBTlNAvPr/rYUN1uedzmRhnBNs3GSX0w1Rk3rCdAH7c8asGYiAwAz8VvOaJicG9wvLKdCEBHwCAzLndMBPADydoLJcS7NHnX0KfzmWcTBttD/CYGfNDeQXq/TLw395if7/pY/ITUAJQWkZCCX3JGWR3ZOD71LY0Mx/N15qTA3KlrCzhWH7FMwOfzJ1I8crAp++GTFV53K9Vl1gbHWXlyTLXa2VdZTJn99PjG+wZ+Jt22AP4QSX0u3pT2tHdb3venBSA6ONKDsRAMqAz5zaYQwA/WrxK0FFCHwCAzLmW0K/k1iaMwBL69BEjjxL6pWP6KHvw6O2tmWfg+934vb3F/n4zycAHEIJXX6HUsjsnG0H2tUYQPm2Ph9ufC8zAz08AX3IG5geyMM3lNcnsjhav00EJfWSqwjMDnwB+IbklFeSqfL7kloHfbZs85l6Reff/bzDK50vShCYC+HHDFQKIgcAMfJfRHL+1uiTvgDLyw+sGmNMAAEDmkmUJx7WVjINwgta/Jgso+vxL6HOLHyfTzRL6PgF8r/s7z9L6aUurthkl9McQwAcQzGu8qNQy8Cc324PsG3Z0Kz2kUfUdVTOeXNtmD/5Pbs5fxROzr9aXSiudthzllCmhHy1eFRGYaIFMeU36IIBfWG5LGTTmMIA/vtGegd+XstTa2Tf42O3WYGhQf6MRwK+vKld9VW7K+6NwuEIAMRBU9sptzZOABHwy8AvM6+9NBj4AANkxBy5qKhmwCCOo71FBADjyyMAvHdONEvobdnSruy/luq/X/Gyv0vobd3aru8+ePjqTAD6AELxL6JdWH2G8kd2YSlva2tE7+NirfTWf60+ltb7NHijJZwa+eX5SaUt9LuUCWBYpWrwm0TJ5FplyCxxLpVclJercrom5DOCPqa9yJP4NDcp7VWQemPRrBvDNCQGIB37VQAwEDcS5BfD9bjSk4Owr5JbXDHa/NUwBAIA3c+CCjINwgqowMckz+vz6jwwCx4sZwJek1dvcs/C97u+8MvBXbrFn39dUJDWugYE7AMG8xouqSiw4NKa+0hEc2bRzSMDDZ1ht6FMbd/Y4KmPmM4BvZmz3pSz1p5wHy6S+aPE6H2TgI1PeAXzuhwvJrSpNY3XuAvgVyTKNrqu0bdu0s2fw/73uDQY2b9huD+BTPj+euEIAMZAMGIhzzcAPSMGnI19YXueQswAAQHbMgYsaBixCCZrESbnV6PObhMEEjHiprSzXWCOo/rYReB/gFai3PCJMb2+xTwSYPrqWycMAQhkpJfTLk2UaXWdvgzftCA6OmM+tbbWXz6+uKNMoI+iSS64Z+ClnBr5XkA/F4VVBib43MuVdQp/ffCG5tbFNOczAl6RxDfaguy0D39nsS5JS716fNpgZ+A0E8OOIXzUQA9ll4Pu/J6XbC8vrBpgqtQAAZMccuCDjIJygJB/KrUaf361B0NJbiJ4ZRha+Vwa+FZBlY3p7q30iAOXzAYQ1UkroS86SwkMz8P2G1Ya2vWaZ4olNNXmdMGWOEfal0+ojAz/yyMBHrnhNzmFCe2G5l9DP7Rrz5jVqc4gM/IHtQyekSdJ4MvBjiSsEEAPJgIG4lGuD7R/BJzunsLxOIRMpAADIjiMDv5JbmzCC+h70EaPPLyjA+YufaaPsgfVVW70C+O6vT3vM3DYz+WcQwAcQkldfodRK6EvS+EYzuzFcBv7QSVVDSxpLyvtyJeZyOfe9vlHX/f0tl/1K73zFmVcVLAL4yJR3Bj4B/EJyDeDnsIS+FJCBH1RC35hcNqGRAH4c5XZKCIC8CM7Ad9ZMCcrAD1r/FLnllQ3FWQAAIDuzxtTZ1niePba+iEcTH0EBfMp4Rp9fkJ5su/iZHjID3zvLxv19zQx8M9MfALx4XUtKrYS+5Ay2D83A9xtXG/rU0NdI0rg8B0nM8aVbnl3tuh99umjxzsDnPCEzXhn4BPALy+2amOsS+mYGvj2A7/6agXsGszqM+V6IB6Z4ATEQlEnjstSVZ4lFSUokgtc/RW55/blZhxIAgOx84bg9BmeRf2jhNO07uanIRxQPQf1KSrBHn28JfQaBY2dyc43t8frtXa77eWbZuFResyzLMRFg+mgy8AGE4zVeVIol9M1g+9AMfM/SJ7K3yWaZ4rxn4IcczyOzO1q8+uCcJ2TK699MKbbRUeY2kaIxxwH8scY1aqDii1/cZyCwv62j1/5eeb42IT/IwAdiINcZ+GTfF14ikVBZwnlemEcBAEB2Fkxt1uP/5xj1pyzVVJJtEFZQBj4Z3NHndw6ZgBE/E5vtA3Pr27pd9/Map3Pbvq2jV9199nvEKS01zh0BIAOlGBxyZuAPLaHv/bqhz5kZ+PnOcgy7XA59umghgI9c8araQAZ+YbldE3OegW9eo96dMOZ3fUqlLXX3pdTZm7Jtb6mtzOmxoTC4QgAxkOsMfLLvi8PtPJKBDwBA9iqSZQTvMxSYgc8gYuT59eXp5sePmYG/s6dfO7r7HPt5l9B3bl9nTAJIliVY9xLAsJVicGi8md04pOSw37ja0Oc2OjLw89vehgn4lpclGG+KGO8APucJmUkkEq7Z3zUl2EZHWZXL37uxOrf50mOMAP7Wjl3Xm5RPBN+yLLV29jq2j6ojgB9HjM4AMRBUCrPfJQPfZyIWs3CLxK2zzqkAAACFFNT3oAR79HmdQwbr42lCkzPQ45aF73V/5xbAX9tmL58/obGayTkAhm0kZOBv3tmj9LuBEb8Mx6FN7yZjneFxEcjAJ6s7esjARy5Vufy7KcVJVlHmNvkm1yX0zaz57r60uvtSnhN7pV3Xrq3t9gB+siyhxurcHhsKgysEEAPJgFKYbo22TztOCf0icfu7M8gKAAAKKagSUwUl2CPPq4R+2JK6iJaq8qTG1NsH59Zt73Ls5zVQ57Z5rTEBYFIz2fcAhq8UJwKZGfj9aUvb3s1c9EuMGWh7u/tS2tHdb3su3xn4YZJymJAZPV5jsQTwkY0KlwlV1RX8Wyqk3n5nQmWuS+i31Drfr7Wz1zfuk3bJwG+praAic0zxqwZiIKhz3p9yC+BTQj9q3P7unAoAAFBIQRM5CQJHn1cAnypb8TXJKKO/rs0lgO+ybJrkniG6ttX+erNMPwBglzH1lTIvqwNrDPuNqw1MqtpklM+X8p+BHyY4T1A4erz62Ey2QDYqycAvuu4+Z+c81xn4jdUVjthBa0effwZ+2tK2DjOAT/n8uOJqDsRA0ECqW6PtV+qLgdnicBtUTYhzAQAACieoH8g6nNHnWUKfwfrYmmiU0Xctoe+Zge/cbk4AMCcIAAB2KU+WaXSdPeC+ceeuNtgvw3HgqU077e11TUVSDVW5XQPZVB6iWhKT+qLH65y4BWKBIJWuGfgE8Auppz/l2FZXmdtzUFaWULMRfG/r7A0sod9qBvDrCODHFVcIIAYCM/BdovWWT7EvAvjF4fZ3p0otAAAopKDVewgCR59XNS0G6+MrTAa+192d2wDeWuP1k1sI4AOAl/FGxvzAmvb+AZJdz200MvDHNVblfalEMvDjybP/xrlCFtwD+PxbKqQelwz8fLT/zUYZ/W2dvb6Jm2nLmYE/igz82Irkr7qzs1N//OMf9fGPf1x77rmnqqurVVdXpwULFuiaa65Re3u7bf90Oq3HH39c//Zv/6aDDjpIDQ0Nqqqq0uzZs3XppZdq5cqVvp/35JNP6pRTTtGoUaNUX1+vhQsX6te//nU+vyKQkaCAe8ql1fbNwGfd9aJwK3fqVQIVAAAgH4L6gQSBo8+r/8gk3fia1GQE8Le7lND3zMB3bjMnAFBCHwC8jWswA/jvltD3ec1A22tm4JvvlQ9h+mpUVIoer/PGuUI23P7VkIFfWN0uGfj5YJa/b+3sU9on8JO2LG3rNAL49QTw4yqSAfzf/e53OuOMM/TLX/5SyWRSp512mo488kitXLlSV111lQ4++GBt2rRpcP8VK1boqKOO0rXXXqt169bp2GOP1amnnqqenh799Kc/1YIFC/TEE0+4ftYdd9yho48+Wn/729+033776eSTT9bSpUt14YUX6sorryzUVwZ8BZXHcgvg+91pMLhXHAyIAwCAYgvqB7IOZ/R5ltCnrxlbzgx8Zwl9r3E6c3tXb0pbjawbAvgA4G18o30Zk4ES+n4Z+APLl2zaaWbgV7vtnlOhSuiT1R05Xn1wSugjG27tEwH8wnLLwM+HFiMDv63Dv4S+ZUmtHX22bWTgx1ckrxAVFRX65Cc/qTfeeENvvPGG/vCHP+hvf/ub3nrrLR1wwAF688039cUvfnFw/0QioRNOOEEPPvig1q1bpz/96U+68847tXz5cl100UXauXOnPvzhD6uvz/4Pd9u2bfrYxz6mVCql22+/XY888ohuv/12vfnmm5ozZ46uv/56PfLII4X98oCL7DLwKaEfNW7lssjABwAAheRVvnNAmEFhFJdnBj6TL2JrYrM94LNhe7cjs8ZtrXu37W7Z+5TQBwBvnhn4PokxA09t3FH4DPww13sm9UWP11gsky2QDbf2qYYAfkFdceJc2+MT5o/Py+c0u2Xg+1yfUmlLWzvsk8ta6gjgx1UkrxAXXnihfvrTn2revHm27RMnTtSPf/xjSdKdd96p3t5ds8pnz56t++67T8cee6xtnYmqqir95Cc/UVNTk1avXq2nnnrK9n4///nPtWPHDp1++uk688wzB7ePHz9e3/3udyVJ119/fV6+I5CJoEwotwC+X6kvAvjF4fZ351QAAIBCCpo8yIBv9HkOADP5IrbMDPneVFpbjIE37wx8+xNrW+0B/JbaCtVWlg//IAGgRI01sua3tA8E8P1LFEvSZjMDv6EQGfjBfTW39bFRXF79N0roIxsp1wx8fveFdNTcsTp8zmhJuyZvXXbcHnn5nFFG8L2tszfw+uTIwK+r8NgbURe7u7gFCxZIknp6erR161ZNnDjRd/+amhrNnTtXzz33nNatW2d77p577pEknX322Y7XnXrqqaqurtYDDzyg7u5uVVfnvwMGeAkKuPe7BfB9GnLGZYvD7TwmyMAHAAAFlAwK4DOIGHlep5DJF/E1pr5K5WUJ233d+rZuWyDIMwPfeLy2zR7AN8vzAwDsHOWJO3cFPvwyHAea5IFs/QHjG/OfgR+qhD59gsjxDuATdEXm3JL5qsvJwC+k6oqk/t/HDtGGHd1qzuOE2WbjGrWts9f3+pS2du0z1Ki6/F+bkB+xu0KsWLFC0q4y+6NGjQrcP51Oa9WqVZKkCRMm2J575ZVXJEkHHnig43WVlZXaZ5991N3drSVLlgz3sIFhCep4m+UVJf8bDTLwi8NtwJxTAQAACilozJdBxOjzLKFPxzK2kmUJTWiyJw2sMwLx3hn49sfm68zsfgCAnbk28EDgw6+E/kAG/sadZgn9aGTgU5Y9erwm0dL3Rjbc2qegpdKQe2VlCU1qrslrtasW1xL6QRn4RgC/lhL6cRW7DPwf/OAHkqSTTz5ZVVXBM0duueUWbdq0SWPHjtVhhx02uH3Hjh3avn27JGnKlCmur50yZYqef/55rVq1Svvtt5/rPj09Perp2T3bcseOHZKkvr4+9fX1ub4mTga+Qyl8lziz0inf53v7+23nyC/7Xto16Mc5LTzXfpRlcS6QFdpnAIieOLTNVsq/X2ml+iN9/PA+h8myaP/bg78JjVV6Z0j5+zXbOmzn02ugLpVK2fZbs7XD8b78u4hH+wxEXan+fuor7QHU7V196u7pVX+q3/M1fX39au/qGczWHzCqJpn3v1NZwn/MT5LKE/E4XyOqbbbSrpsTVmpkfH/kVH/a+e+Jf0elqcG4RrV29Kin1/tcb93Z5ajW3FCVeSxoRLXPRRD27xqrAP5f//pX/eIXv1BFRYX+67/+K3D/NWvW6Itf/KIk6ZprrrEF/Nvb2wf/v7a21vX1dXV1kqSdO3d6fsZ///d/6+tf/7pj+3333ef5vnF0//33F/sQRrR1nZLfz/WtJcv01+7dlSJ2tdHe+7fv3KG//vWvOTs+hNO+MynJHsXfuHEj5wLDQvsMANET5bZ5fUC/8uGHHlRtrO4SR54NHuewfQd9/DhLt5dpaJHEZ15ZrPFtrw8+7u1z3ktI0rp16/XXv64dfPz6Svv7bF+/Un/964p8HHIsRbl9BqLFfp1JyCrZa0xbjzT0+1qWdOfd92rJBnt7OtQTTzyhVyvtr5Okl/7xmJbmeanhd9Z4H9eA1m1bYnW+RkLb/NrmhCRnifMnHntUi1m5Fxnq6nL2C+P0m0d4y7ZLQ681m7d36qGHH5bXPf19j/1DZlvz3OMP65UsV1gYCe1zMXR2dobaLzZDM2+++aYuuOACWZala6+9VgsWLPDdv6OjQ2eeeaa2bNmiD37wg7r00kvzclz//u//rssvv3zw8Y4dOzR16lSdeOKJamxszMtnFlJfX5/uv/9+nXDCCaqoyHMPFJ6Wb+7Qd1550vP5mbNm65QT9xh8nEpb+td/eDeuo5qbdMop783pMSLYz1f/Q2s7d9i2TZw4Qaecsn9xDgixRvsMANETh7Z5+eYOfdunX/m+k05UXVVsbhNHpBWbO/TfLudw9KgWnXLKwiIcEXLhJb2pF59ePfi4cfwUnXLKPoOP//2FByWX6gvjJ9jvJ3647ElJu7Pwj164v07Zb2JejjlO4tA+A1Fy2dP32R6XJ8t0yiknFelo8qu7L6WrXnzQtu09hx+td15eL73jPgHq0MMOV1V5mfTC07btZ77/5LyXr3/53rf0+IZVvvtMmjBep5xyQF6PIxdGUtucenW9frPsn47tJxx/rCY0EsFHZq559RGpz14m/ZRTTinOwSCvlm5s1/+88dTg465UQocfebT0kvs9/fQ995GWLB58XF1Rpg9+IPN/GyOpfS6GgUruQWIxMrN27VqdfPLJam1t1eWXX67LLrvMd/++vj6dc845ev7553XEEUfod7/7nWOf+vr6wf/v7Ox0DbZ3dOy66W1oaPD8rKqqKtdS/hUVFSX1D7vUvk/cVFcG/O0TCfv5SbmXZRpQnizjfBZB0mXRWc4Fhov2GQCiJ8ptc1VAv7K6qlIVFVlOz0dBeJ1D+pXxNq7Jvlb91o4+2/n0XCXNuBfcvLPH9vSE5lr+XQwR5fYZiLKKEr7GVFRUqKYiqa6+3ZOkdvamVeYyhjMgWV6unb32SVWN1eWqqQ5e7nW4KsuD+2mV5clYna+R0DZXVriHYWqrKkv+uyP33LqF/DsqTWOMewRp1zXKS2unffmXUbXDa2NGQvtcDGH/pvmdEpgD27Zt04knnqhVq1bp4osv1nXXXee7fzqd1oUXXqh7771X+++/v+6++27V1Dj/kTc2NqqpqUmS9M4777i+18D26dOnD/NbAMOTdF08fTdzXRPPwZ2Q74f8cPu7J1zKYAIAAORLMuHf96jIc9YYhq/M4xyW08ePtbH19qDPFiMQn/a4yRt6K9jdl9KObvug3bgGsvoADF+pX2Naau0D6a0dfZ7trrSrTW7rtGe/ttRV5uXYTGHG9PJdBQCZ8/oNca6QjVQ6YPAfJaO5xnlt2dre67Lnu8912O8hCnVtQn5E+grR3t6u973vfXrjjTd05pln6sYbb1QiYMDp85//vG655RbNnTtXf//739Xc3Oy570AZ/hdffNHxXF9fn1577TVVV1dr7ty5w/oewHCVJ/3/3ZsXbb+bDMl70A/55RrA51QAAIAC8ut7JBJM9IwDr3PIAHC8jWmwB/A3t9sH37xu8awhT2wxXiNJYxvynw0KoPSV+gQ/M8DR2tnrmuE6wLKk1s4+27bm2sIEScJc7ysCxhFReF5jsZUl/ttCfgSN/aN0VJaXqd5Y4m5bh08A3wjujyKAH2uRvUL09PTo9NNP17PPPquTTjpJt9xyi5JJ/xJBX/nKV/STn/xE06ZN0/33369x48b57n/qqadKkm6//XbHc3/5y1/U3d2t448/XtXVzFhHcQUNpGY6646B2eJwy3hjMgUAACgkv35gqWfXlQqvc8j5izczA39bR6/tPs9roHbo5k1G1n5leZkaq2OxciKAiAtKLIm7llpnAN8vQGZZllrNDPzawpQYDnO9r/Ap/4/i8PoNMdkC2SB+P7I0G9eXbR3OSbsDzAm9BPDjLZJX81QqpQ996EN66KGHdOSRR+rOO+9UZaX/P7QbbrhB3/zmNzVhwgQ98MADmjZtWuDnXHLJJWpsbNSf/vQn3XnnnYPbN23apH/7t3+TJF1xxRXD+zJADpQHdLxTFiX044AMfAAAUGz+AfxI3h7C4DUBlD5+vJmZ8qm0PTjkdYs3NMC02Qjgj2uoCqxiCABhuJXwLSVmcKS1s893bM2SnCX0C5aBH6aEPm1/1NB/Qy5deaK9YvSJ88cX6UhQCOb1ZYtPCX3zuUJdm5AfkZyK/aMf/Uh33XWXJGnMmDH6zGc+47rfddddpzFjxujll18eDLTPnDlT3/zmN133v+SSS3TEEUcMPh41apR++ctf6txzz9XZZ5+tRYsWafTo0XrggQfU1tamyy+/XIsWLcrtlwOyEJiBn8qshD6dw+Jw+7uTgQ8AAArJr+/BYG88eHXlycCPN7fsmC3tPRrzbma+1z3e0GJsZgCf8vkAsvXJo2bpZ4+tGHz89dP3LuLR5J8Z4Gjr7HWULB4qnbZcSuhHKAOfsuyR4zZRtjJZxkQ7ZOWMA6foD8+/ozfW79CY+ir96wksAV3KzGVetvqU0DfL6xPAj7dIBvBbW1sH/38gkO/m6quv1pgxY9TW1ja47tvTTz+tp59+2nX/RYsW2QL4knTWWWfpscce0ze+8Q394x//UG9vr+bPn6/Pfe5zuvDCC3PwbYDhC+qcOzLwA97PrZQ78o8MfAAAUGx+3UoCwPFQ5nGemKQbbxXJMo2qq7QNum3e2aO9Juwq1ew1R3voZrOEvlmWHwDC+sSRs7Rk404tXr9DZx44RQtnjCr2IeWVGRzZ1tGr2krvYfNdGfj2AH7BMvBDVEyiLHv0uJ02zhOy1VRTobs+e5hWbe3U+MZqNdUUZgIRisNcosWvhP6Obvu1qbEmkiFghBTJs3f11Vfr6quvDr3/okWLBgP42Tj88MN17733Zv16IN8CM/DTZODHgVvGGxn4AACgkHxL6JOtFQte/UcmYMTfmHp7AH9gDUvfMs4+JfTJwAeQrbENVbrp4oXFPoyCMYMjrZ19mtzsvX/aslxK6BcoAz9UCX36dFHjNvGC84ThqCpPau74hmIfBgrAnCC21aeEvnnf4FdNBtHHVQKIgcAMfCOAHzSfhQB+cbidR84EAAAoJK/sbUmqoI8YC54l9BkEjj0z4D4QkPeboJ32CeCPa6jO4dEBQOlyK6HvmxxjSa1GAL+5QBn4Ycb06NNFj1s3jaUOAIRhLtHiV0Lf1FBNAD/OuEoAMZBpBn5QRQq/gVvkj9t5JAMfAAAUkt9SSgSA48GrL08GfvyNMUreb3k3u8bv7i6d3v3/m3d2254jAx8AwnGW0O/z2HOXtOUsoW8GWPKlIlQJffp0UZN0OW+U0AcQRmO1/fqyvcv/GjVUfRXLK8QZV3MgBhKJhG8QP+MMfILGReE22BrivgsAACBnfEvoEwCOBa8JoFTZij9HAD9EBr4lSugDwHCZ5e+DMvDTlqU2I4BiZvHnS5jrPZMyo8dtLJaJFgDCqDey6Hv70x57Br8W8cJVAogJvw56vxHA9y3zJQZni8V9Yi3nAgAAFI7fPM4wa6qi+DxL6NPHjz1HCf32XQF5v9u7gVtBy7IG9x8wjgA+AIRiBt/705Z2dvd77r+9q8+RTFOoDPww/TUyu6PHbVyX8wQgjOGsYz+c16L4COADMeE3IGcG7AMS8CmhXyRu5bI4FQAAoJB8S+hTGigWvDPwOX9xZ2bgbw6Tgf/uc9u7+tSXsu9HBj4AhGOW0Jf81xhu7XQ+V6gM/DD9NSb1RY97AJ++G4BgdcMIwjeQgR9rXCWAmMgkA58S+tHk1i/3GoAFAADIB98S+mQBxYJX/5HzF39mwH1L+0AA3/s1A89tMsrnS9Lo+sIEkwAg7uoqk45s6G0dznZ1wNZ2ewC/Mlmm2spkXo7NFCoDv5wh/6hx64MzJgggjPqq7K8vZODHG1dzICZ8M/AdAXz/CD4Z+MXh1lmnrw4AAAopkUh49j/I1ooHSuiXrjFGwH1bR69Sacv3/m7guc1GAL+5tkJV5YUJJgFA3CUSCTUbGfTb2sNn4DfXVihRoAGeMNd7AsPR4zYm6DexFgAGZJuBn0ioYJPLkB8E8IGY8CuJ2Z9O2x4HldBncK84mG0LAACiwDuDm9vDOPAa7KWPH39mBn7akrZ29ITKwDcD+OMonw8AGRllBPD9SuibzxWqfL4ULujb258O3AeF5dZPo+sGIIxss+jrq8oLNrkM+cEIDRAT/hn4xuOADHxmeBaH29IFXEMBAECheS2nRAA4HrwGYfwm/CIeRtVWOu4PtuzsDZWBv2lnt227ORkAAOCvubbC9rjHJwje2uHMwC+UMOumE8CPHrdqqATWAISRbQC/gfL5sccdPhATfkF3RwZ+QAo+Wd/F4dpZF+cCAAAUlleclwz8+HC7NQizJi6irTxZ5sgA3dIeLgPfXI95TD0BfADIRCZZ9NsinoHf058qwJEgE2TgA8hWtiX066sJ4McdIzRATPgNyKWMAZ2gDHwG94qDzjoAAIgCrwz8CjomscE6qqWrpc4eBGrr6vPPwH93ATVzPeZCBpMAoBRkkkXvaHPrCpmBTwn9OHJLpiLBCkAYFckyVZZnHsrNNnMf0UEAH4gJvwG5FBn4seCWge+2DQAAIJ+8+oIEgOPDreQqSyCUhuYaexBoe2evfwb+u7eCrZ199vcpYDlnACgFmWQ4mhn4TTWFzMAPHs6vJWgTOe5JPfTdAISTTTC+oZr7gbgjgA/EhN+AXMqYWBsUwKc6anG4ZbvRVQcAAIXmNYEwzJqqiAbXEvoE8EuCGXhv6/TPwB+ovtZGBj4ADEsmwZE+oxRmSwEnTQVd75NlCZ37nqkFOhqE5bqsJl03ACFlE8CnhH78cQaBmPCbYevIwJd/BN+rbCryy+0myy17CgAAIJ+8Mu1ZZik+3PrzSSZglAQzi7Otq883A38gtt9GBj4ADEvDMAIdhZw05ddf22dyoz67aI5G1TGJK2rIwAcwHJlUiRnQQDWW2OMMAjHhn4FvH9EJzsBncK8YXEvo01cHAAAFRgn9+HM7h2Tglwa3DPy0zw3ewORts4Q+GfgAkJlsgiMDGmuKn4F/0WEzdPVpexfsOJAZt342fW8AYdVXJbN4DeHfuCOKB8SEX6fODOD7DfDseq+cHBIy5JYpxWxbAABQaF7dygomecaGWxeSQeDS0GwEgbZ39frWV0tbkmVZjhL6ZOADQGaGE+hoLGCZ4nKP/loFlZQiza2fxpAggLCymWRGCf34Y4QGiAnfDHwjYB+QgO+57inyi/WuAABAFFBCP/7cziEZ+KXBNQPfp4Z+2rLU3tOv/rS5HjMZ+ACQieEEOoaTvZ8p734cw/xRRlIPgOHIKoBPBn7scWUHYsI3Az9lltD3D+EzuFccbn/3BJ11AABQYF6DhfQR48PtHJKBXxqajMB7W1ef7xJplrUryG8iAx8AMjOcQEchsxwrPAL1XtsRDSyrCWA4slnPvoEM/Njjyg7EhF9GlCMDPyAFnxmexeE2qEpnHQAAFBqZW/HnNgmUgfvSYJbQb+vs810ibVf5fHsAv7wsQcYNAGRoOO1mNoGVbHn14yqppBQ7jM8CCCu7DHwm9MYdd/hATCR91iRNGeUSfSosvvtedBCLwa1jnhDnAgAAFJZXV5AS+vHhFqunj18azMz57V29vgH8tCW1dvY63oNKXwCQmeEE8AtZQt9rrXsm8sUP12oAYWUVwCcDP/a4sgMx4VfS1AzgW/KP4DO4Vxxug+KcCgAAUGhuJTwlqcJnwiiixW1iKEsglIbmGnsJ/b6UpY6elOf+actSW5c9A7/ZKMMPAAiWbQA/kZBqK5M5PhpvXmN6BPDjh1MGIKz6qsyvM1Tkij8uE0BM+AXd+80M/HT274X8cRto9RpABwAAyJekR7YPfcT4cOtXcv5KQ3Ods9TlNiPDfijLktqM51tqKZcJAJnKNou+vrK8oJnU5R4TLivKGeaPG0roAwgrm2tUAxn4sceVHYgJv4yadKYZ+HQQi4JBVQAAEAXemVv0VeLCbezea0Af8dJQVe74jbZ2+AXwLbV22DPwm2rIwAeATFWWl6kyiyB4oUsUey15VEk/LnYI4AMIK5tsejLw4487fCAmMsnA91kiUZJ0wLSWXBwSMuR2DumsAwCAQvPKEiunjmdskIFfuhKJhJpq7Bn023wC+GlLaiUDHwByoiEGARKvBB9K6McPQ4IAwsoqgE8GfuxxBoGY8M3At4ID+KfuO1HLNrXr/EOmac8JDbk+PITgVvmAcVYAAFBoXuO7rKEeH24BfCoolI7mmgpb0N4skT9U2rK0vcuegd9SRwY+AGSjvrpcW30mTbnJtvR+thKJhJJlCaWMZB4C+PFDUg+AsLK51tRVEv6NO84gEBN+GVGODHyjhH5VeZl+/OED83JcCM8tK4q+OgAAKDSv5ZQI4MeH26kiA790NBkZ9Nt8A/jODHwzgx8AEE42wY5irDFMAL800HUDEFamGfj1LstyIX64sgMx4TegallSekjH3ejDEySOCEroAwCAKCjz6FdSQj8+3PqQ5WWcv1LRbATgzTXu7Sy1dhoZ+LVk4ANANrIpN1yMDMcKl75cZTnjS3HDmCCAsDLNwC/08i7ID+7wgZgImjGVGlI33zJq6NMhjAb3DHzODQAAKCwy8OPPrX9PhkXpaDYC8Nt8yjmnLWeJ/ZZaMvABIBtxWWPY7ZpPBn787D25qdiHACAmMs7AL8K1CbnHlR2IiaAB1ZRfBn4+DggZcxto5dwAAIBCIwM//tzOYXmSnmWpMEvgmyXyh0pbltqMDHxzAgAAIJysAvhFyHJ0C9YTwI++Lxy3x+D/N9dW6PyF04p4NADiJJsS+og/ziIQE8mAkpj2ta/sEXyyvKPBbRIGiVIAAKDQJjZVu26vIAAcG259SDLwS0dzbfgAfn/KUkdvv+/rAQDhZJOxWIwgCRn48fTF4/bQlJYarW3t0rkHT1VNZbLYhwQgJqorylSWcCZuemkgA78kcBaBmAjKqBkooZ9OW3p0yRbbc8Tvo8HtBssrAw4AACBf9p/arD+9vM6xnQBwfLhVdmIJhNLRbGbgd/R57Cm19/Q7trWQgQ8AWYlLCX23a34lAfzIKytL6Nz3TC32YQCIoUQiobqqcu3sdvb93dQyQagkEMAHYiJoQDWV2hXA//RvX9DfX99oe46hvGhwC9ZTHQEAABTaAdNaXLeXB1R8QnS4l9Dn/JUKswR+byqd4evJwAeAbGQTwK8rRga+S5IPS+kAQGmrzyiAT+i3FHCHD8REUEZNyrK0YnO7I3gvkeUdFUmXYD1nBgAAFNr8iY2qLHdbO5WeSVy4de/JwC8dTcMIwFdXlKm6gowbAMhGNgH8hiIE8BMuo0mU0AeA0pbJhDGW6CgNXNmBmAjMwE9beuWdNtfnGMqLBtcS+mTgAwCAAqssL9M+kxod2ymhHx9ufUjOX+kwS+hngvL5AJC9uGTgW3IugkwJfQAobZlco2qY0FsSuLIDMRGUUfP08q3qSzk78BJB4qhwD+AX4UAAAMCI51ZGn8yt+HCr7EQGfukwS+hnomkYwX8AGOmyWc8+m6D/cKVdVlapKKcfAAClLJPrTS0Z+CWBhRCAmEgGrEn6xd+/7Pkc8ftocBsT59wAAIBi2H9qs2MbGdzx4daH5PyVjuEE4RuyCD4BAHbJJps+Ku0uEzEBoLTVVYUPylNCvzRwZQdiYjgZNQmixJHgNgmDcwMAAIrhgGnNjm1dvanCHwiy4lZhqzxgwi/iYzjZnA3VZOADQLbiUkI/bTkrcBLAB4DSVldJCf2Rhis7EBPDyaghRBwNbqVOWd4AAAAUw+TmGk0fXTv4OJGQ9pncVMQjQibc7g3Kk/QrS0VleZmqyrMbrolKJigAxFE2bWhRSui7BPArCeADQEnLJKueEvqlgSs7EBPDGZAjRhwNbklRnBoAAFAMiURCXz9tb42qq1QiIf3r8XM1tqGq2IeFkFxL6NPpLynZZtITwAeA7GWTTV+MAL5L/F4VTOQDgJKWSVC+JoNsfUQXZxGIieFk4JPlHQ1uZU05NQAAoFgW7TlOT335WJUlEqrMMtsXxWH278sSUtkw7hcQPQ3V5drS3pPF6yihDwDZyjQYnyxLqLqi8H0ol/j9sMYNAQDRl0lQnhL6pYEAPhAT5ZTQjz2qmQEAgKip5sY+lsxBereJooi3bDPpi5EJCgClItM2tL6qXIkiZGa4ZeAX4zgAAIWTSQY+JfRLA3f5QEwkhzEoRyc+GtwqIbjddAEAAAB+zLm9ZN2VnmwD+I2U0AeArCXLEhllLRZr0pTFYBIAjDh1GZXQJ4BfCgjgAzExrAx8xvMiwS0zKs1NFwAAADJkTtAdzr0CoinboBAl9AFgeOozmAhVtAB+UT4VAFBMlNAfeQjgAzExnKwat8xvFJ5bEQXi9wAAAMhU0gzgJ+nvl5psA/HZZu4DAHbJJChfV1WcAAnJIAAw8lBCf+QhgA/ExHCC8MTvo8FtEobFvGkAAABkyJwYOpzlthBNZOADQHFk0v7WF6nNTacZSwKAkSaTsvhk4JcG7vKBmBhOEJ74fTSYmVKSxD0XAAAAMkUJ/dKX7Vr2ZOADwPBkEsBvoIQ+AKBAajMIymcS7Ed0EcAHRoCuvlSxDwFyz8Cn7BkAAAAyZU4MHc5yW4imTNZgHooAPgAMT10MSugzlAQAI09tZfjrExn4pYEAPjACtHb2FfsQII8S+tx0AQAAIENmt7I8SQC/1GRbCp8S+gAwPJlMhKqvKk6bazGYBAAjTtis+spkmcqThH5LAWcRGAF6+9PFPgRIKnMN4HPTBQAAgMyUkYFf8rLNpM+k9DMAwCmTdjTbainDxXKMADDy1IYM4FM+v3QQwAeAAnFbm5SbLgAAAGTKnBhaUcatfanJJhBfV5lkMgcADFMmJfQbixTAt8RgEgCMNHUhS+iHDfQj+rjLB2KCYZj4MzOlJDLwAQAAkDkzRkvQtvRkUwqf8vkAMHyZVEDJtlrKcJEMAgAjT9jM+poKAvilggA+ABSI28AqN10AAADIlDkxtDxJAL/UZBMUKlYgCQBKSV0GmYvFmjhFMggAjDyV5WWuFX5NlNAvHQTwAaBAki4Z+GluugAAAJAhs4Q+GfilhwA+ABRHfQZB+WK1uwnqdALAiBQmOE8J/dJBAB8ACsQcaAUAAACyYXYrw2RiIF7qM1iDeQAl9AFg+DJpf4vV7l537gLb40uPnl2U4wAAFFaY4Hw1JfRLBgF8ICZoeEsTCfgAAADIlFlCnwz80lNXWS6XAl6+yMAHgOHLJICfzWSrXDhh3nidMH+8JGnfyU366KHTi3IcAIDCqq0Mvu6QgV86uLsDYuLwOWPUVFOh7V19xT4U5BAl9AEAAJApM4BfkWRufqkpK0uovqpcO7v7Q7+GDHwAGL76DCZDNRZp4lRNZVI/+8hBSlu7qvIkMp3xBQCIpZoQSZ5hgvyIB+7ygZioLC/T//3wgVowtVnvnTVKLbXhB2dmjqnL45FhONLE7wEAAJAhMvBHhoYMMzuLFUgCgFIShxL60q6gfbIsQfAeAEaQuipK6I8k3N0BMXLYnDH605wxkqTzb/yHnlq+NfA15WUJ/Z+T98z3oSFLlojgAwAAIDNmvL6cAH5JaqiukLZ3Z7A/QzwAMFxhA/jlZQlVV5AbBwAonBpK6I8o3N0BMRWUZXPvZUdqbWuXpo2u1dzxDQU6KgSZNbZOKzZ3DD4+ff/JRTwaAAAAxJF5L0AGfmnKpIyzVLy1mAGglIRtexuqy8l+BwAUVG2I7PowZfYRD0wTBGLK7ybhtAWTNG9io46fP57gfcRc/YG91VSzq8TaZ4+ZrcnNNUU+IgAAAMSNeS9QXsatfSnKNKO+mKWcAaBUhAmOSLS5AIDCC5NdX0MGfslgejYQU919Kce2mz+2UI3V5dp/anPhDwihHDV3rJ75j+OUtizVhih5AwAAAJjqjbUPw6yFiPjJNKOeEvoAMHxlZQnVV5Wrvaffdz/aXABAoYUJzlNCv3QwTR+IKbcA/gHTmnXAtBZKeEVcdUWS4D0AAACydvz88apM7rqdTySkU/adWOQjQj5kmt1JNigA5EaYCVQE8AEAhRYqA58S+iWDngYQU529zgB+HUFhAAAAoOTtNaFRd332MD22ZIsOmNas984aXexDQh40ZlxCn/tBAMiFMJVtmDQFACi0mhDxH0rolw7u7oCY6nIJ4CfLyLwHAAAARoK9JzVp70lNxT4M5FGmJfQbCSYBQE7Uh2hPmTQFACi0ulAl9Lk+lQpK6AMx1eVSQh8AAAAAUBoyDQ4RTAKA3GgIMYGKSVMAgEKjhP7IQgAfiCm3DHwAAAAAQGkIkwE6oKq8TE01BJMAIBfCldBn0hQAoLAooT+yEMAHYooMfAAAAAAoXZkE5KePrlUZS6oBQE7UV1FCHwAQPWEy8MPsg3gggA8AAAAAABAx+05uUiJkTH7mmLr8HgwAjCD1oTLwqXoCACisMNn1lNAvHQTwAQAAAAAAImZCU7UWzR0bat8ZBPABIGfqQ2TXk4EPACi02hDBeTLwSwcBfAAAAAAAgAj60MJpofabOZoAPgDkSrgS+mTgAwAKq7YyePJYNQH8kkEAH4ip75y1r+3x1R+YX6QjAQAAAADkw7F7jQu1Hxn4AJA74Urok4EPACisMCX0w2TpIx4I4AMxddqCyTrzgMkaU1+p9+83UWe/Z2qxDwkAAAAAkEPlyTJ9etHswP1mEsAHgJwJU0K/kQA+AKDA6kJMMCtPEvYtFfQ0gJiqqUzqe/+yf7EPAwAAAACQR587Zo6eWr5Vr6xp0+TmGq1t63LsM66hqghHBgCliRL6AIAoqq0gpDuScLYBAAAAAAAiqq6qXH/8zGFat71bExqrNfs//urYJ5FIFOHIAKA01YUoUUwJfQBAoYUpoY/SQU8DAAAAAAAgwhKJhCY317g+N5bsewDIqdqq4CHzGtYYBgAUWGW5f3n8qz8wv0BHgkIggA8AAAAAABBTM0bXFvsQAKCkhMnAp/IJACAKPvLe6TpijzEa21ClA6e1FPtwkEME8AEAAAAAAGJq2qi6Yh8CAJSUMBn4AABEQbIsoZP2nlDsw0Ae+NdbAAAAAAAAQGTsPanR9vjD751WpCMBgNLUVFNR7EMAAMDVUXPH2h5/9NDpRToS5BsBfAAAAAAAgJj43DFzBte/PPPAyZTKBIAcq68q19FGgAQAgCi44oS5mtxco0RC+vSi2Zo1tr7Yh4Q8oR4QAAAAAABATLxv34laOHOUdnb3a8YYyucDQD786PwDdOPjK9Xbn9YRc8bogl88M/jcl07as4hHBgAYyRZMbdYT/+cYSVIikSjy0SCfCOADAAAAAADEyOj6Ko2uryr2YQBAyWqortDlJ8wdfPzDDx2gP760VntNaNDHj5hZxCMDAIx0BO5HBgL4AAAAAAAAAAB4OG3BJJ22YFKxDwMAAIwQZcU+AAAAAAAAAAAAAAAAQAAfAAAAAAAAAAAAAIBIIIAPAAAAAAAAAAAAAEAEEMAHAAAAAAAAAAAAACACCOADAAAAAAAAAAAAABABBPABAAAAAAAAAAAAAIgAAvgAAAAAAAAAAAAAAEQAAXwAAAAAAAAAAAAAACKAAD4AAAAAAAAAAAAAABFAAB8AAAAAAAAAAAAAgAgggA8AAAAAAAAAAAAAQAQQwAcAAAAAAAAAAAAAIAII4AMAAAAAAAAAAAAAEAEE8AEAAAAAAAAAAAAAiAAC+AAAAAAAAAAAAAAARAABfAAAAAAAAAAAAAAAIoAAPgAAAAAAAAAAAAAAEUAAHwAAAAAAAAAAAACACCCADwAAAAAAAAAAAABABBDABwAAAAAAAAAAAAAgAgjgAwAAAAAAAAAAAAAQAQTwAQAAAAAAAAAAAACIAAL4AAAAAAAAAAAAAABEAAF8AAAAAAAAAAAAAAAioLzYB1BqLMuSJO3YsaPIR5IbfX196uzs1I4dO1RRUVHswwEAvIv2GQCih7YZAKKJ9hkAooe2GQCiifY5vwbixwPxZC8E8HNs586dkqSpU6cW+UgAAAAAAAAAAAAAAFGyc+dONTU1eT6fsIJC/MhIOp3WunXr1NDQoEQiUezDGbYdO3Zo6tSpWrNmjRobG4t9OACAd9E+A0D00DYDQDTRPgNA9NA2A0A00T7nl2VZ2rlzpyZNmqSyMu+V7snAz7GysjJNmTKl2IeRc42NjfxQASCCaJ8BIHpomwEgmmifASB6aJsBIJpon/PHL/N+gHdoHwAAAAAAAAAAAAAAFAwBfAAAAAAAAAAAAAAAIoAAPnxVVVXpqquuUlVVVbEPBQAwBO0zAEQPbTMARBPtMwBED20zAEQT7XM0JCzLsop9EAAAAAAAAAAAAAAAjHRk4AMAAAAAAAAAAAAAEAEE8AEAAAAAAAAAAAAAiAAC+AAAAAAAAAAAAAAARAABfLjq6urS1772Nc2dO1fV1dWaNGmSPvaxj2nt2rXFPjQAiLXOzk798Y9/1Mc//nHtueeeqq6uVl1dnRYsWKBrrrlG7e3tnq+96aabtHDhQtXX12vUqFE65ZRT9NRTT/l+3pNPPqlTTjlFo0aNUn19vRYuXKhf//rXuf5aAFBytm7dqnHjximRSGjOnDm++9I+A0D+bd68WVdeeaX23HNP1dTUaNSoUTrwwAP1pS99yXX/u+++W0cffbQaGxvV2NioRYsW6Z577vH9jNdff13nnHOOxo4dq5qaGu277776/ve/r3Q6nY+vBACx99xzz+ncc8/VpEmTVFFRoebmZh155JH61a9+JcuyHPunUindcMMN2nfffVVTU6OxY8fq3HPP1eLFi30/J5s2HQBK1QsvvKBvf/vbOvPMMzVlyhQlEgklEonA1xVq7OKdd97RxRdfrEmTJqm6ulpz587VVVddpe7u7oy+54hnAYauri7rve99ryXJmjhxonXuuedaCxcutCRZY8eOtZYvX17sQwSA2LrxxhstSZYka968edY555xjnXTSSVZDQ4Mlydprr72sjRs3Ol532WWXWZKsmpoa6/TTT7dOOukkq7y83Eomk9Zdd93l+lm33367lUwmrUQiYR199NHWWWedZTU3N1uSrCuuuCLP3xQA4u3CCy+0EomEJcmaPXu25360zwCQf88//7w1evRoS5K19957W//yL/9ive9977OmT59uJZNJx/433HCDJckqLy+3Tj75ZOv000+3ampqLEnW//zP/7h+xlNPPTW4z8KFC61zzz3XmjBhgiXJOuecc6x0Op3vrwkAsTLQp5VkHXjggda5555rHXPMMVZ5ebklyTr//PNt+6dSKeuMM86wJFnNzc3WWWedZR199NFWIpGwamtrrWeeecb1c7Jp0wGglJ1++umD48tD//NTqLGLpUuXWmPGjLEkWfvss4917rnnWrNmzbIkWYcffrjV3d093K8/YhDAh8N//ud/WpKsQw891Nq5c+fg9uuvv96SZB199NHFOzgAiLmbbrrJ+uQnP2m98cYbtu3r1q2zDjjgAEuS9aEPfcj23P33329JskaPHm0tWbJkcPtTTz1lVVZWWs3NzVZra6vtNVu3brUaGxstSdYdd9wxuH3Dhg3WnDlzLEnWww8/nPPvBwCl4IEHHrAkWZ/85Cd9A/i0zwCQf5s2bbLGjBlj1dbWWn/6058cz5sBnzfffNNKJpNWVVWV9dRTTw1uf+utt6zRo0db5eXl1tKlS22v6e3ttWbOnGlJsr73ve8Nbt+5c6d16KGHWpKsX/3qV7n9YgAQY319fda4ceMsSdZvf/tb23NvvPGGNWrUKEuS9dBDDw1uH0ho2GOPPawNGzYMbr/99tstSdacOXOsvr4+23tl06YDQKn79re/bX31q1+1/vznP1vr16+3qqqqfAP4hRy7OPzwwy1J1he+8IXBbX19fYMTuK666qqsv/dIQwAfNj09PVZTU5MlyXrxxRcdz++3336WJOv5558vwtEBQGl76qmnLElWVVWV1dPTM7j9fe97nyXJuuGGGxyv+cIXvmBJsq677jrb9u985zuWJOv00093vObOO++0JFnvf//7c/0VACD2Ojs7rdmzZ1vz58+3lixZ4hvAp30GgPz79Kc/bUmyfvzjH2e0/2WXXeZ47nvf+54lyfrc5z5n2/773//ekmQtWLDA8ZoXXnhhMIMIALDLP//5T0uSteeee7o+P9AX/s53vjO4bd68eZYk10zP0047zZJk3X777bbt2bTpADDSBAXwCzV28cwzz1iSrHHjxjky7Tds2GBVVFRYLS0tjslacFeWcc19lLQnn3xS27dv1+zZs3XAAQc4nj/77LMl7Vp3CACQWwsWLJAk9fT0aOvWrZKkrq4uPfTQQ5J2t8FDebXLA2vBub3m1FNPVXV1tR544AHWHgIAw9e//nWtWLFC//u//6uKigrP/WifASD/urq69Jvf/EZ1dXW6+OKLQ73Gr53Npm0+8MADNWvWLL322mt6++23Mzl8AChZVVVVofYbPXq0JGnlypVavHixampqdOqppzr2y6Z9ZpwaAIIVcuxi4DUf+MAHHNeJ8ePH68gjj1Rra6ueeOKJYXyjkYMAPmxeeeUVSbtuUN0MbH/11VcLdkwAMFKsWLFCklRRUaFRo0ZJkt566y319PRo7NixmjJliuM1Xu2yX3teWVmpffbZR93d3VqyZElOvwMAxNmrr76q66+/XhdffLGOPPJI331pnwEg/55//nnt3LlTBxxwgGpqanTvvffq8ssv12c+8xl9//vf17p162z7t7W1afXq1ZLkmpQwdepUjRkzRqtWrdKOHTsGtzMWAgCZmTVrlmbPnq233npLv/vd72zPLV68WL/5zW/U0tKiM844Q9LudnafffZxnSTr1s5m26YDAHYr5NgFfercIoAPm4FOkdsPeej2VatWFeyYAGCk+MEPfiBJOvnkkwdnKQa1y3V1dWpublZra6t27twpSdqxY4e2b9/u+zracwCwS6fTuuSSS9Tc3Kzvfve7gfvTPgNA/r3xxhuSpHHjxumDH/ygTjnlFN1www36v//3/+pf//VfNWfOHN1yyy2D+w+0zS0tLaqrq3N9T7d2lrEQAMhMMpnUzTffrObmZn34wx/WQQcdpPPOO0/HHnus9ttvP02ZMkUPPvjgYHJCNu1stm06AGC3Qo5d0KfOLQL4sGlvb5ck1dbWuj4/0Fka+CEDAHLjr3/9q37xi1+ooqJC//Vf/zW4Pahdlpxt88Br/F5Hew4Adv/zP/+j5557Ttdee+1gqU8/tM8AkH+tra2SpD//+c/629/+ph//+MfatGmT3n77bV155ZXq6urShRdeqJdffllSdm1zmNfRNgOA0+GHH65HH31Us2bN0osvvqjf//73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c/bdvv/976ujo0P//d//bQveS9LJJ5+sT3/601qzZo3uuecex2tnzpypb33rW4PBe0n63Oc+p5aWFv3jH/9Qb2/v4PYbbrhB3d3duuSSS2zBe2nX3+HEE09UVVWVJKmpqUnnnXeeNm/erD/96U+2fe+77z6tXr1ap556qiZNmjTs7z+wfMGYMWNcn7/77rt10UUX2f678sorXfe9+eabfUvhP/roo6GO6ec//7l++MMfav78+frd735n+/sCAAAAAEYWMvABAAAAADBceOGFrtvr6+ttj0877TTHPps2bdIrr7yiPfbYw3Xt9EQiocMPP1wvv/yyXnjhBZ100kl64YUX1NXVpYULF2r27NmO13zoQx/Sd77znSy/jd19990nSTrzzDNdnz/yyCP1wx/+UM8++6zOOOMM23OLFi1yZOWXl5dr5syZevHFF7V161ZNnDhRkvTAAw9Ikj71qU+FOq5LL71Uv/zlL3XjjTfqnHPOGdx+4403SpI++clPhnqf4XrllVd0880327ZNnz5d1113nWPf2bNne5bEl3ZVNNi4caPv5z3++OP6zGc+o9GjR+vuu+9WQ0NDdgcOAAAAACgJBPABAAAAADDcdNNNofabNm2aY9tAlv7SpUsD12sfyMBft26dpF2BYjczZswIdTxhDBzf5MmTQx3bUFOmTHHddyDo3NPTM7htzZo1kuQ6IcHNwQcfrAMPPFAPPPCAVq5cqZkzZ2rjxo26++67NWXKFJ188smh3ifI6NGjJbl/P0n6yle+oq985SuSpA0bNgxOSHBzxBFH+P5bWbRokW8Af9WqVTrrrLNkWZZuu+02zZo1K8Q3AAAAAACUMgL4AAAAAABkqbq62rEtnU5LkiZMmKCTTjrJ9/VeAftcGTgWt21eVQYGHHLIIY5t+S7tfumll+qTn/ykfvGLX+gb3/iGbr75ZvX19eljH/uYkslkTj5jv/32kyStWLFCO3bsUGNjY07eN1MdHR067bTTtHnzZv3kJz/RMcccU5TjAAAAAABECwF8AAAAAAByaCBLfcyYMaEz+QeyvFetWuX6vNf2gXL27e3tjudSqZQ2bNjgenzLly/X9ddfP5iNng9Tp07V0qVLtXz5cu2///6hXnP++efryiuv1K9+9StdffXV+vnPf66ysjJ9/OMfz9lxjRs3TgcddJBeeOEF/eEPf9All1ySs/cOy7IsfeQjH9Grr76qT3/60/r0pz9d8GMAAAAAAERTfqfOAwAAAAAwwkyZMkV77bWX3njjDS1ZsiTUaw466CDV1NTohRde0IoVKxzP33rrra6vGwj8u33Oww8/rL6+Psf2E044QZJ01113hTq2bB1//PGSpJ/97GehX1NXV6cLLrhA69at07/9279p6dKlOumkk1yXKhiOK6+8UpL0ta99TZs3b87pe4fxta99TXfddZeOOeYY/fCHPyz45wMAAAAAoosAPgAAAAAAOfbVr35V6XRaZ511ll5++WXH81u3btWNN944+Li+vl4f+chHlEql9PnPf15dXV2Dzz3//PP60Y9+5Po5Rx11lCTpN7/5zeDa9pK0cuVKfeELX3B9zRVXXKGamhpdeeWVuvPOOx3P9/T06Pbbb9c777wT5qt6+uIXv6jq6mrdeOON+v3vf297zrIs3X///erp6XG87tJLL5Uk3XDDDZKkT3ziE8M6DjfnnXeezj77bK1fv15HHHGEHnvsMdf9nn766Zx/9u9//3t94xvf0KxZs3TbbbepvJziiAAAAACA3bhLBAAAAAAgx84//3y9/vrr+ta3vqWDDjpI+++/v2bPni3LsrR8+XK9+uqrqq+vtwWn//u//1uPPvqo/vrXv2r27Nk66qij1Nraqoceekif+tSn9OMf/9jxObNnz9ZHP/pR/frXv9b++++vo446Sp2dnfrHP/6hU045RZ2dnY7y+3PmzNEtt9yi888/X2eddZbmzJmjefPmqa6uTmvXrtWLL76ojo4OvfTSS4PLAWRj7ty5+tWvfqWPfvSjOu+883TNNddov/320/bt2/Xaa69pzZo1am1tVVVVle11++67rw477DA99dRTmjBhgj7wgQ9kfQx+fvvb36qxsVG//OUvdfTRR2vGjBlasGCBamtrtXHjRi1ZskTvvPOOysvLdd555+Xsc//jP/5DkjRp0iRdccUVrvt8+ctf1l577ZWzzwQAAAAAxAcBfAAAAAAA8uCb3/ymTjrpJP3oRz/Sk08+qX/+859qbGzU5MmT9elPf1rnnHOObf9Ro0bpySef1Fe/+lXddddd+uMf/6iZM2fq29/+ti6//HLXAL4k3XjjjZo0aZJ++9vf6u9//7umTp2qf//3f9eXv/xlzZ492/U1p59+ul599VV973vf0/3336/7779fFRUVmjRpkj7wgQ/ozDPP1Pz584f9NzjvvPM0f/58XXvttXr44Yd1xx13qKWlRXvssYe++MUvqr6+3vV1xx57rJ566ildfPHFectQr6ys1C9+8Qtdeuml+vnPf65HH31UDz74oHp6etTS0qJ58+bpE5/4hD760Y9qxowZOfvcVColSXriiSf0xBNPuO5z0UUXEcAHAAAAgBEqYVmWVeyDAAAAAAAA/hKJhKZPn24rlV+KLMvSvHnztGTJEi1btkyzZs3K+D1mzJihVatWqZSGPG666SZdfPHFuuqqq3T11VcX+3AAAAAAAHlCBj4AAAAAAIiM22+/XW+99ZZOPfXUrIL3Q1100UWSdlUCOPnkk3NwdIX3ta99TatXr9ayZcuKfSgAAAAAgAIggA8AAAAAAIrukksuUVtbm/7yl78omUzq61//+rDf8+abb5Yk7bPPPrEN4P/5z3/WK6+8UuzDAAAAAAAUCCX0AQAAAACIgVIvoZ9IJFReXq499thD11xzjc4+++xiHxIAAAAAAAVHAB8AAAAAAAAAAAAAgAgoK/YBAAAAAAAAAAAAAAAAAvgAAAAAAAAAAAAAAEQCAXwAAAAAAAAAAAAAACKAAD4AAAAAAAAAAAAAABFAAB8AAAAAAAAAAAAAgAgggA8AAAAAAAAAAAAAQAQQwAcAAAAAAAAAAAAAIAII4AMAAAAAAAAAAAAAEAEE8AEAAAAAAAAAAAAAiID/DweDPwrdep+IAAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "df.tbtotal.plot(figsize=(25, 8), linewidth=3, xlabel=\"Frequency [GHz]\", ylabel=\"Brightness Temperature [K]\", grid=True)" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.12" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/en/main/notebook/index.html b/en/main/notebook/index.html new file mode 100644 index 00000000..8838cb49 --- /dev/null +++ b/en/main/notebook/index.html @@ -0,0 +1,503 @@ + + + + + + + + + + + + Community example — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + + + + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/notebook/tutorial.html b/en/main/notebook/tutorial.html new file mode 100644 index 00000000..c8bda6fc --- /dev/null +++ b/en/main/notebook/tutorial.html @@ -0,0 +1,1212 @@ + + + + + + + + + + + + Generic example — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + + + +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

Generic example#

+
+

Import python package for plotting.#

+
+
[2]:
+
+
+
# This requires jupyter-matplotlib a.k.a. ipympl.
+# ipympl can be install via pip or conda.
+%matplotlib inline
+import matplotlib.pyplot as plt
+plt.rcParams.update({'font.size': 15})
+import matplotlib.ticker as ticker
+from matplotlib.ticker import ScalarFormatter
+import numpy as np
+np.seterr('raise')
+
+
+
+
+
[2]:
+
+
+
+
+{'divide': 'warn', 'over': 'warn', 'under': 'ignore', 'invalid': 'warn'}
+
+
+
+
+

Import pyrtlib package#

+
+
[3]:
+
+
+
from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.utils import ppmv2gkg, mr2rh
+
+
+
+
+
[4]:
+
+
+
atm = ['Tropical',
+       'Midlatitude Summer',
+       'Midlatitude Winter',
+       'Subarctic Summer',
+       'Subarctic Winter',
+       'U.S. Standard']
+
+
+
+

Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used.

+
+
[5]:
+
+
+
z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL)
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+mdl = 'R16'
+
+
+
+
+
+

Performing upwelling brightness temperature calculation#

+

Default calculatoin consideres no cloud

+
+
[6]:
+
+
+
ang = np.array([90.])
+frq = np.arange(20, 201, 1)
+nf = len(frq)
+
+
+
+

Setup matplotlib plot

+
+
[7]:
+
+
+
fig, ax = plt.subplots(1, 1, figsize=(12,8))
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('${T_B}$ [K]')
+
+rte = TbCloudRTE(z, p, t, rh, frq, ang)
+rte.init_absmdl(mdl)
+df = rte.execute()
+
+df = df.set_index(frq)
+df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))
+
+ax.legend()
+plt.show()
+
+
+
+
+
+
+
+../_images/notebook_tutorial_12_0.png +
+
+

Print dataframe

+
+
[8]:
+
+
+
df
+
+
+
+
+
[8]:
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauice
20298.1099690.0286.9501330.00.1203440.0128550.00.0
21297.2456300.0286.3010430.00.1888080.0135240.00.0
22296.1535170.0285.0006630.00.2618480.0142590.00.0
23296.3402410.0285.6360220.00.2579130.0150660.00.0
24297.1584410.0286.7384960.00.2023080.0159540.00.0
...........................
196281.7270420.0281.2708400.03.6729750.0257840.00.0
197282.2817800.0281.7315010.03.4600000.0259560.00.0
198282.7477980.0282.1092770.03.2898480.0261290.00.0
199283.1397460.0282.4204500.03.1527100.0263020.00.0
200283.4695540.0282.6776930.03.0414240.0264760.00.0
+

181 rows × 8 columns

+
+
+
+
+

Performing calculation for R03 absorption model#

+
+
[9]:
+
+
+
mdl = 'R03'
+rte.init_absmdl(mdl)
+df_r03 = rte.execute()
+df_r03 = df_r03.set_index(frq)
+
+
+
+

Add brigthness temperature values as new column

+
+
[10]:
+
+
+
df['delta'] = df.tbtotal - df_r03.tbtotal
+
+
+
+
+
[11]:
+
+
+
df
+
+
+
+
+
[11]:
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauicedelta
20298.1099690.0286.9501330.00.1203440.0128550.00.0-0.005362
21297.2456300.0286.3010430.00.1888080.0135240.00.0-0.055802
22296.1535170.0285.0006630.00.2618480.0142590.00.0-0.149566
23296.3402410.0285.6360220.00.2579130.0150660.00.0-0.084145
24297.1584410.0286.7384960.00.2023080.0159540.00.0-0.001669
..............................
196281.7270420.0281.2708400.03.6729750.0257840.00.0-0.166236
197282.2817800.0281.7315010.03.4600000.0259560.00.0-0.158865
198282.7477980.0282.1092770.03.2898480.0261290.00.0-0.152032
199283.1397460.0282.4204500.03.1527100.0263020.00.0-0.145768
200283.4695540.0282.6776930.03.0414240.0264760.00.0-0.140071
+

181 rows × 9 columns

+
+
+

Difference between R16 and R03 brightness temperature

+
+
[12]:
+
+
+
fig, ax = plt.subplots(1, 1, figsize=(12,8))
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('$\Delta {T_B}$ [K]')
+df.delta.plot(ax=ax, figsize=(12,8), label='$\Delta {T_B}$ (R16-R03)')
+ax.legend()
+plt.show()
+
+
+
+
+
+
+
+../_images/notebook_tutorial_21_0.png +
+
+
+
+

Performing downwelling brightness temperature calculation#

+
+
[13]:
+
+
+
fig, ax = plt.subplots(1, 1, figsize=(12,8))
+ax.set_xlabel('Frequency [GHz]')
+ax.set_ylabel('${T_B}$ [K]')
+
+rte.satellite = False
+df_from_ground = rte.execute()
+
+df_from_ground = df_from_ground.set_index(frq)
+df_from_ground.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))
+ax.legend()
+plt.show()
+
+
+
+
+
+
+
+../_images/notebook_tutorial_23_0.png +
+
+
+
[14]:
+
+
+
df_from_ground
+
+
+
+
+
[14]:
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauice
2038.10058036.106575287.7826560.00.1196540.0127480.00.0
2153.60281551.750325287.5497230.00.1832710.0133960.00.0
2268.63475466.918654286.8727030.00.2496770.0141070.00.0
2368.96656067.268116287.3807480.00.2498660.0148870.00.0
2458.51827656.754139288.0835800.00.2016700.0157450.00.0
...........................
196290.020626290.013156297.0812770.03.6974740.0251500.00.0
197288.152409288.143310296.8592640.03.4869090.0253150.00.0
198286.380803286.370182296.6714820.03.3189050.0254810.00.0
199284.742167284.730168296.5136090.03.1836920.0256480.00.0
200283.256287283.243076296.3814890.03.0741470.0258150.00.0
+

181 rows × 8 columns

+
+
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/notebook/tutorial.ipynb b/en/main/notebook/tutorial.ipynb new file mode 100644 index 00000000..5a114f72 --- /dev/null +++ b/en/main/notebook/tutorial.ipynb @@ -0,0 +1,908 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Generic example" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Import python package for plotting." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'divide': 'warn', 'over': 'warn', 'under': 'ignore', 'invalid': 'warn'}" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# This requires jupyter-matplotlib a.k.a. ipympl.\n", + "# ipympl can be install via pip or conda.\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "plt.rcParams.update({'font.size': 15})\n", + "import matplotlib.ticker as ticker\n", + "from matplotlib.ticker import ScalarFormatter\n", + "import numpy as np\n", + "np.seterr('raise')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Import pyrtlib package" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "atm = ['Tropical',\n", + " 'Midlatitude Summer',\n", + " 'Midlatitude Winter',\n", + " 'Subarctic Summer',\n", + " 'Subarctic Winter',\n", + " 'U.S. Standard']" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "z, p, d, t, md = atmp.gl_atm(atmp.TROPICAL)\n", + "gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + "rh = mr2rh(p, t, gkg)[0] / 100\n", + "\n", + "mdl = 'R16'" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing upwelling brightness temperature calculation" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Default calculatoin consideres no cloud" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "ang = np.array([90.])\n", + "frq = np.arange(20, 201, 1)\n", + "nf = len(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Setup matplotlib plot" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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frtT9hmt89BDD6mmpkZf//rXddBBB2Vdh2PVO9p6PL711ltprzcVDod18MEH6/XXX9fKlSt16KGHdsCeo61s29bq1aslJfsLZPPxxx/rF7/4haqrq9WnTx+NGTNGEyZMkN/PMyE3aM05lmPVe9asWaOXXnpJoVBIZ511Vs71OE67XrZ7l1K5rhIQQIeYM2eOJGnChAmKRCIZr//1r39N+/d1112n008/XfPmzcvayA6d74Ybbkj791VXXaXrrrtO1113XWrZmjVrJCnrSVKSunXrph49emjr1q3auXOnunfv3nE7jFZryVMLjlXvaMvxuGPHDm3fvj3vdoMGDdLrr7+u1atXu2Lggt0WLFigL7/8Un379tU3v/nNrOssX748oxP2IYccokWLFmm//fbrjN1EHi09x3KsetN9990nY4wmTpyo3r1751yP47TrZbt3KZXrKmEntLsnnnhCd999t0KhkH71q1+lvTZixAjNnj1b7733nnbt2qW1a9fqvvvu08CBA7Vo0SLSqVxg3Lhx+utf/6pPP/1UtbW1+uijj3TjjTcqGAzq+uuvT50wJaWmZykvL8/5ft26dZMk7dy5s2N3HK2yceNGPffccwoEAjrnnHMyXudY9Z62HI9Np1jKtR3HsDutXbtWl19+uSRp1qxZGcH3qqoq/fznP9err76q6upqVVdX67nnntPRRx+td955RyeccEJq0IrO19pzLMeqNxUKvHOcukOue5eSua52dRMDFJcPPvjA9OzZ00gyf/jDH1q83YYNG0zv3r2NJPPKK6904B6irZ5++mkjyfTo0cPU1tYaY4y57777jCRzzDHH5Nxu4MCBRpJZv359Z+0qWuCWW24xksyECRNatR3HatfK19SqLcfj+vXrjSQjycTj8azb/OAHPzCSzH333bfnXwBZtbZZ2a5du8wRRxxhJJlTTz21VZ+VSCTM2LFjjSRz0003tXZX0UJtbUCX6xzLsdr1WvubrlixIjVuqq+vb9VncZx2nnz3LqVyXSVDAO1m/fr1mjBhgrZu3aorrrhCP/vZz1q8bf/+/XXBBRdIkp566qmO2kXsgRNOOEFHHHGEtm3bpn/961+SlEpnrK2tzbldTU2NJFEu4DJtbXLEsepebTkem6Yk59qOY9hd4vG4zjzzTL3++usaM2aM5s+f36rtA4GA/ud//keS9PTTT3fELmIP5DrHcqx6j3OdPfPMM7OWz+bDcdo5Ct27lMp1lYAA2sWWLVt0wgknaPXq1brgggs0e/bsVr+HUyO1cePG9t49tJPmv5HTZHDdunVZ16+pqdG2bdvUs2dP15z0IH3wwQf6z3/+o4qKCp166qmt3p5j1Z3acjxWVlaqqqoq73bO8qFDh7b3LqOVbNvWlClT9OSTT2rUqFFavHixysrKWv0+HMPulu334Vj1FsuydP/990uSzjvvvDa9B8dpx2rJvUupXFcJCGCP7dq1SxMnTtT777+vyZMn684775TP52v1+2zdulXS7roauE/z3+iAAw5QJBLR5s2btX79+oz133jjDUlyRcMU7OY0sZo8eXLeurhcOFbdqa3HozPVkvN6U/F4XO+++66i0Whqejt0nZ/+9KdasGCB9t9/fz399NPq0aNHm96HY9jdcv0+HKve8dxzz2njxo0aOnSoxo4d26b34DjtOC29dymV6yoBAeyRWCymU045Ra+99ppOPPFELViwQIFAoNXvY4zRww8/LCn7FB3oeps3b9ZLL70kafdvVFZWpuOOO06S9OCDD2Zss3DhQknS9773vU7aSxRijEmlGLelMSDHqnu19XicNGlS2utNPfbYY6qvr9d3vvMdRaPR9t5ltMK1116rO+64Q0OGDNGSJUu01157tfm9Fi1aJIlj2I3ynWM5Vr3DKRc477zz2vSQTOI47SituXcpmetq17YwgJclEglz2mmnGUlm7NixpqamJu/6X375pbn99tvNjh070pbv3LnTXHzxxUaS6devX8H3QcdZtmyZefjhh00ikUhbvmrVKnPMMccYSebkk09Oe23JkiVGkundu7dZuXJlavny5ctNJBIxPXr0MFu3bu2M3UcLvPjii0aSGThwoLEsK+s6HKvuVaipVVuOx+rqalNZWWkkmUWLFqWWf/HFF2bEiBFGklm6dGl7fxU0Ueh3/f3vf5867pr+rvnceuutZs2aNWnLbNs2//d//2eCwaDx+Xzm9ddf36P9Rm75ftO2nmM5VrtWS5sK1tTUmIqKCiPJfPjhh3nX5TjtXK29dzGmNK6rPmOM6cwABIrHnDlzUlMenXbaaaqsrMy63uzZs9WnTx99/vnnGjZsmCoqKnTkkUeqf//+2rx5s9544w1VV1erR48eeuyxx3TMMcd04rdAU/PmzdMFF1ygfv36afTo0erRo4dWr16tFStWqL6+Xl/72tf0/PPPZzyZuvzyyzVnzhyVl5fr+OOPV0NDg5YsWSJjjBYuXNimOnV0jIsuukh33nmnfv7zn+t3v/td1nU4Vt3j8ccfT5sC6bXXXpMxRt/4xjdSy6677rrU0wipbcfjokWL9P3vf1/GGI0fP169e/fWs88+q23btumKK67QLbfc0qHfs9S05nd98803NXr0aBlj9F//9V85U0ynTZumMWPGpP69zz77aN26dRo9erSGDRum+vp6vfPOO1q1apX8fr/mzJmjSy+9tOO+ZIlpzW+6J+dYjtXO05bzryTNnz9fP/jBD3TkkUfqtddey/sZHKedq7X3Lo6iv652SRgCRWHGjBmpaTXy/Vm1apUxxpgdO3aY//mf/zHHHnusGThwoIlEIqa8vNx87WtfM1deeaVZt25d134hmPfff99ccsklZvTo0aZv374mGAyaqqoqc/TRR5tbbrklNd1gNnPnzjWHH364KS8vNz169DATJkwwy5Yt68S9RyH19fWpqXXeeuutnOtxrLrH3LlzC55j586dm3W71h6PL7/8spkwYYLp0aOHKS8vN0cccYSZN29eB32z0taa33Xp0qUtutY2///gtttuM9/97nfNsGHDTLdu3Uw4HDZDhw415513nnnttdc6/0sXudb8pnt6juVY7RxtPf9OnDjRSDJz5swp+Bkcp52rtfcuTRXzdZUMAQAAAAAAShBNBQEAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAAAAAKEEEBAAAaCc+ny/vn/Hjx3f1LqIF9tlnn7Tfbfbs2TnX/fe//62LL75YI0eOVFVVlcLhsPbee299+9vf1k033aTVq1dnbDNv3jz5fD5NnTo1736MHz9ePp9PL7zwQpu/y6hRo9K+y8yZM9v8XgCA4hPs6h0AAKDYTJkyJevyAw88sJP3BHvC+R0PPvjgjNcaGhr0k5/8RHfffbekZBBh/Pjx6tatmzZv3qx///vfev755zVz5kzNmzdP5557bqfuu+Pkk0/WqFGj9Mknn2jZsmVdsg8AAPciIAAAQDubN29eV+8C2kG+3/G8887Tgw8+qP3331933nmnxo0bl/Z6IpHQ4sWLNWPGDH322WcdvKe5zZo1S1LyuxAQAAA0R0AAAACgFe6//349+OCD6t+/v15++WX17ds3Y51gMKjTTjtNkyZN0sqVK7tgLwEAKIweAgAAdLKpU6emasOffvppfetb31KPHj3k8/m0bdu21HpPPfWUJk2apL59+yoSiWjffffVFVdcoerq6qzvu2XLFl166aUaMGCAotGoDjroIM2ZM0fGGPl8Pu2zzz5p68+cOVM+ny/nk3Cnlj6bDz74QFOnTtXgwYMViUS099576+yzz9Z7772Xsa5TMz9z5kytWbNG5557rvr27auysjIdccQRWrx4cc7/Vh988IEuvPBC7bPPPopEItprr710zDHHaPbs2UokEpKSKf0+n08fffRR1vdYu3atAoGAhg0bJmNMzs9qKaenwC9/+cuswYCmwuFw1pKDtnL+38n3Z096DgAASgsZAgAAdJH58+frrrvu0hFHHKGJEyfq008/Td2AX3PNNfrtb3+rcDisI488Uv3799dbb72lW2+9Vf/4xz+0bNky7b333qn32rp1q8aMGaMPPvhA/fr10ymnnKItW7boqquu0ieffNKu+/3II4/o7LPPViwW06hRo3T00Udr7dq1euCBB7R48WI9+eSTGSn0kvT555/ryCOPVPfu3fXtb39ba9as0SuvvKJTTz1VTz75pE444YS09R988EGdf/75isViGjlypE477TRt375d7733nn7+859r2rRp6tGjhy6++GJddtlluuuuu3TzzTdnfO4999wj27Y1bdq0nAGOltq8ebNWrFghv9+vs846a4/eqy3GjBmTdbllWVqwYIEsy1IgEOjkvQIAeJYBAADtQpJpyaV1ypQpqXXvv//+jNcfeOABI8kcfPDB5uOPP04tt23bXH/99UaSOeuss9K2mT59upFkJkyYYGpqalLL//Wvf5mKigojyQwdOjRtmxkzZhhJZu7cuVn3c+jQoRnfZ9WqVaZbt26moqLCLFmyJO21J5980oRCITN48GATi8VSy+fOnZv6vldeeaWxLCv12q233mokmbFjx6a918qVK000GjXBYNDcd999aa/Ztm2efvppU19fb4wxZtu2baa8vNz07ds37XONMcayLDNkyBATCATM+vXrs37Plnxvx5IlS4wkM2LEiBa9VzbOf48pU6bkXe/YY481kszSpUsLvudll11mJJnvfve7af99m3/mjBkz2rbTAICiRMkAAADtLFcq9+eff5623qRJk7I+Zb7xxhslSQsWLNCIESPS3nfmzJkaNWqUFi5cqK+++kqSVFNTo3vvvVd+v1+33367ysvLU9scddRR+u///u92+25/+MMfVFNTo1//+tf6zne+k/bahAkTdMkll2jt2rV6/PHHM7YdNmyYbrrpJvn9u4cfl156qXr27KlXX31VDQ0NqeW33nqr6uvrNW3atIwO/T6fTyeccIIikYgkqaqqSmeffbY2b96sRx99NG3dZ555RmvWrNGkSZM0YMCAPf7+TrlGnz59sr6+ePFiTZ06Ne3PVVddlXXde++9N2/q/4svvtiifbrrrrt022236aCDDtL8+fPT/vsCAJAPJQMAALSzXNMOVlRUpP375JNPzljnyy+/1FtvvaX99tsva+25z+fTMcccozfffFMrVqzQiSeeqBUrVqiurk5HHXWUhg8fnrHNOeeco9/+9rdt/DbpnnnmGUnS5MmTs74+duxY3XbbbXrttdd02mmnpb02fvx4hcPhtGXBYFDDhg3TG2+8oerqavXv31+S9Oyzz0qSLr744hbt1/Tp03XPPffozjvv1Jlnnplafuedd0qSLrrooha9z5566623dO+996YtGzp0aKrvQFPDhw/PWQIgJXtIfPHFF3k/76WXXtJPfvIT9e7dW4sXL1b37t3btuMAgJJEQAAAgHbW0mkHhwwZkrHMySL4+OOPC9a7OxkCGzZskJS88cymeTPBPeHs38CBA1u0b00NGjQo67rOTWwsFkstW7t2rSRlDXBkc+SRR2r06NF69tlntWrVKg0bNkxffPGFFi9erEGDBmnChAktep9CevfuLSn795Oka6+9Vtdee60kadOmTakARzZjxozJ+//K+PHj8wYEVq9erdNPP13GGD344IPad999W/ANAADYjYAAAABdJBqNZiyzbVuS1K9fP5144ol5t88VAGgvzr5kW5YrC8LxjW98I2NZR6eyT58+XRdddJHuvvtu3XDDDbr33nsVj8f1ox/9qN0a7R166KGSpM8++0w7duxQZWVlu7xva9XU1Ojkk0/W5s2bdccdd+hb3/pWl+wHAMDbCAgAAOAizlP0Pn36tDjTwHkKvXr16qyv51rupO/v2rUr4zXLsrRp06as+/fpp5/qlltuST0t7wiDBw/Wxx9/rE8//VSjRo1q0TbnnnuurrrqKs2dO1czZ87UXXfdJb/frwsvvLDd9muvvfbS4YcfrhUrVuiBBx7QtGnT2u29W8oYo/PPP19vv/22LrnkEl1yySWdvg8AgOJA1xkAAFxk0KBBOvDAA/X+++9r5cqVLdrm8MMPV1lZmVasWKHPPvss4/X7778/63ZOICHb5yxdulTxeDxj+fHHHy9Jevjhh1u0b23lNCz885//3OJtunXrpvPOO08bNmzQ1VdfrY8//lgnnnhi1tKMPeE0Cbz++uu1efPmdn3vlrj++uv18MMP61vf+pZuu+22Tv98AEDxICAAAIDLXHfddbJtW6effrrefPPNjNerq6tTzfKkZLPC888/X5Zl6ac//anq6upSr73++uu6/fbbs37OuHHjJEl/+9vf0mZAWLVqlS677LKs21x55ZUqKyvTVVddpYceeijj9VgspoULF2rdunUt+ao5XX755YpGo7rzzjv197//Pe01Y4yWLFmS1nPAMX36dEnJWQok6cc//vEe7Uc2Z599ts444wxt3LhRY8aM0T//+c+s673yyivt/tl///vfdcMNN2jffffVgw8+qGCQZE8AQNtxFQEAwGXOPfdcvffee7rpppt0+OGHa9SoURo+fLiMMfr000/19ttvq6KiIu1m99e//rVefPFFPfHEExo+fLjGjRunrVu36vnnn9fFF1+sP/7xjxmfM3z4cP3whz/UX/7yF40aNUrjxo1TbW2tXn31VZ100kmqra3NKDcYMWKEFixYoHPPPVenn366RowYoZEjR6pbt25av3693njjDdXU1Og///lPziaCLbH//vtr7ty5+uEPf6izzz5bs2bN0qGHHqrt27fr3Xff1dq1a7V169bU1IOOQw45RN/85je1fPly9evXT9/73vfavA/53HfffaqsrNQ999yjY489Vvvss48OO+wwlZeX64svvtDKlSu1bt06BYNBnX322e32uf/7v/8rSRowYICuvPLKrOtcc801OvDAA9vtMwEAxYuAAAAALnTjjTfqxBNP1O23365ly5bpnXfeUWVlpQYOHKhLLrkkbWo9SerVq5eWLVum6667Tg8//LAeeeQRDRs2TL/5zW90xRVXZA0ISMlp+QYMGKD77rtPTz/9tAYPHqxf/OIXuuaaa3J2+D/llFP09ttv6/e//72WLFmiJUuWKBQKacCAAfre976nyZMn66CDDtrj/wZnn322DjroIN18881aunSpFi1apJ49e2q//fbT5ZdfnjGNo+O4447T8uXLdcEFF3TYE/RwOKy7775b06dP11133aUXX3xRzz33nGKxmHr27KmRI0fqxz/+sX74wx+26ywPlmVJkl5++WW9/PLLWdeZOnUqAQEAQIv4jDGmq3cCAAB0LJ/Pp6FDh6aVBhQjY4xGjhyplStX6pNPPmnTVHz77LOPVq9erWIaIs2bN08XXHCBZsyYoZkzZ3b17gAAXIIMAQAAUDQWLlyojz76SJMmTWpTMKCpqVOnSkpmKkyYMKEd9q7zXX/99VqzZo0++eSTrt4VAIALERAAAACeN23aNG3btk2PPfaYAoGAfvnLX+7xe957772SpIMPPtizAYF//OMfeuutt7p6NwAALkXJAAAAJaDYSwZ8Pp+CwaD2228/zZo1S2eccUZX7xIAAK5HQAAAAAAAgBLk7+odAAAAAAAAnY+AAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJYiAAAAAAAAAJej/B/Ir+dq7Feg3AAAAAElFTkSuQmCC", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\n", + "ax.set_xlabel('Frequency [GHz]')\n", + "ax.set_ylabel('${T_B}$ [K]')\n", + "\n", + "rte = TbCloudRTE(z, p, t, rh, frq, ang)\n", + "rte.init_absmdl(mdl)\n", + "df = rte.execute()\n", + "\n", + "df = df.set_index(frq)\n", + "df.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))\n", + "\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Print dataframe" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauice
20298.1099690.0286.9501330.00.1203440.0128550.00.0
21297.2456300.0286.3010430.00.1888080.0135240.00.0
22296.1535170.0285.0006630.00.2618480.0142590.00.0
23296.3402410.0285.6360220.00.2579130.0150660.00.0
24297.1584410.0286.7384960.00.2023080.0159540.00.0
...........................
196281.7270420.0281.2708400.03.6729750.0257840.00.0
197282.2817800.0281.7315010.03.4600000.0259560.00.0
198282.7477980.0282.1092770.03.2898480.0261290.00.0
199283.1397460.0282.4204500.03.1527100.0263020.00.0
200283.4695540.0282.6776930.03.0414240.0264760.00.0
\n", + "

181 rows × 8 columns

\n", + "
" + ], + "text/plain": [ + " tbtotal tbatm tmr tmrcld tauwet taudry tauliq tauice\n", + "20 298.109969 0.0 286.950133 0.0 0.120344 0.012855 0.0 0.0\n", + "21 297.245630 0.0 286.301043 0.0 0.188808 0.013524 0.0 0.0\n", + "22 296.153517 0.0 285.000663 0.0 0.261848 0.014259 0.0 0.0\n", + "23 296.340241 0.0 285.636022 0.0 0.257913 0.015066 0.0 0.0\n", + "24 297.158441 0.0 286.738496 0.0 0.202308 0.015954 0.0 0.0\n", + ".. ... ... ... ... ... ... ... ...\n", + "196 281.727042 0.0 281.270840 0.0 3.672975 0.025784 0.0 0.0\n", + "197 282.281780 0.0 281.731501 0.0 3.460000 0.025956 0.0 0.0\n", + "198 282.747798 0.0 282.109277 0.0 3.289848 0.026129 0.0 0.0\n", + "199 283.139746 0.0 282.420450 0.0 3.152710 0.026302 0.0 0.0\n", + "200 283.469554 0.0 282.677693 0.0 3.041424 0.026476 0.0 0.0\n", + "\n", + "[181 rows x 8 columns]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing calculation for R03 absorption model" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "mdl = 'R03'\n", + "rte.init_absmdl(mdl)\n", + "df_r03 = rte.execute()\n", + "df_r03 = df_r03.set_index(frq)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Add brigthness temperature values as new column" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "df['delta'] = df.tbtotal - df_r03.tbtotal" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauicedelta
20298.1099690.0286.9501330.00.1203440.0128550.00.0-0.005362
21297.2456300.0286.3010430.00.1888080.0135240.00.0-0.055802
22296.1535170.0285.0006630.00.2618480.0142590.00.0-0.149566
23296.3402410.0285.6360220.00.2579130.0150660.00.0-0.084145
24297.1584410.0286.7384960.00.2023080.0159540.00.0-0.001669
..............................
196281.7270420.0281.2708400.03.6729750.0257840.00.0-0.166236
197282.2817800.0281.7315010.03.4600000.0259560.00.0-0.158865
198282.7477980.0282.1092770.03.2898480.0261290.00.0-0.152032
199283.1397460.0282.4204500.03.1527100.0263020.00.0-0.145768
200283.4695540.0282.6776930.03.0414240.0264760.00.0-0.140071
\n", + "

181 rows × 9 columns

\n", + "
" + ], + "text/plain": [ + " tbtotal tbatm tmr tmrcld tauwet taudry tauliq \\\n", + "20 298.109969 0.0 286.950133 0.0 0.120344 0.012855 0.0 \n", + "21 297.245630 0.0 286.301043 0.0 0.188808 0.013524 0.0 \n", + "22 296.153517 0.0 285.000663 0.0 0.261848 0.014259 0.0 \n", + "23 296.340241 0.0 285.636022 0.0 0.257913 0.015066 0.0 \n", + "24 297.158441 0.0 286.738496 0.0 0.202308 0.015954 0.0 \n", + ".. ... ... ... ... ... ... ... \n", + "196 281.727042 0.0 281.270840 0.0 3.672975 0.025784 0.0 \n", + "197 282.281780 0.0 281.731501 0.0 3.460000 0.025956 0.0 \n", + "198 282.747798 0.0 282.109277 0.0 3.289848 0.026129 0.0 \n", + "199 283.139746 0.0 282.420450 0.0 3.152710 0.026302 0.0 \n", + "200 283.469554 0.0 282.677693 0.0 3.041424 0.026476 0.0 \n", + "\n", + " tauice delta \n", + "20 0.0 -0.005362 \n", + "21 0.0 -0.055802 \n", + "22 0.0 -0.149566 \n", + "23 0.0 -0.084145 \n", + "24 0.0 -0.001669 \n", + ".. ... ... \n", + "196 0.0 -0.166236 \n", + "197 0.0 -0.158865 \n", + "198 0.0 -0.152032 \n", + "199 0.0 -0.145768 \n", + "200 0.0 -0.140071 \n", + "\n", + "[181 rows x 9 columns]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Difference between R16 and R03 brightness temperature" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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UlKMiIgIIyQkxPjggw+qbDObzcaKFSuMgoICwzAMIzMz04iKijKaNGlS5X4NwzBKS0uNNm3aGMHBwcaRI0dqfJz2PG6LlStXGpKMTp062XWumlj+PSZMmGBzv0svvdSQZHz77bd1nvPhhx82JBlXX311lX/fs+9z+vTp9QsaAOCXKFsAAMCDaltO/scff1TZb9SoUTX+ev3CCy9IkubPn69OnTpVOe+MGTPUp08fLVy4UKdOnZIk5eXl6d1331VQUJDeeOMNRUVFWY8ZMGCA/vSnPzntsf3jH/9QXl6eXnrpJV155ZVVtg0fPlz333+/Dh8+rKVLl1Y7tn379nrxxRcVFFTxUeXBBx9Uo0aNtGHDBhUVFVlvf+2111RQUKBJkyZVm1RgMpk0dOhQhYeHS5Li4+N100036eTJk/riiy+q7Pv111/r0KFDGjVqlFq2bNngx28pGUlKSqpx++LFizVx4sQqfx599NEa93333Xdtlh989913dsX01ltv6fXXX1f37t314YcfVvn3BQDAFsoWAADwoNpGNcbExFT5+7XXXlttn7S0NG3btk3nnHNOjbXyJpNJAwcO1NatW7V582YNGzZMmzdv1pkzZzRgwAB17Nix2jE333yzXnnllXo+mqq+/vprSdLYsWNr3H7JJZfo9ddf18aNGzVmzJgq24YMGaKwsLAqt4WEhKh9+/basmWL0tPT1aJFC0nSqlWrJEn33XefXXFNnjxZ77zzjubMmaPrr7/eevucOXMkSffee69d52mobdu26d13361yW9u2ba19Eirr2LFjrWUIUlnPixMnTti8v++//14PPPCAGjdurMWLFys2NrZ+gQMAAhLJAwAAPMjeUY1t2rSpdptldcKePXvqrM+3rDw4evSopLIvqTU5u1FiQ1jia9WqlV2xVZacnFzjvpYvvIWFhdbbDh8+LEk1JkNq0r9/f/Xt21erVq3SgQMH1L59e504cUKLFy9WcnKyhg8fbtd56tK4cWNJNT8+SfrrX/+qv/71r5Kk48ePW5MhNRk0aJDN/1eGDBliM3lw8OBBjRs3ToZhaMGCBerQoYMdjwAAgAokDwAA8AERERHVbjObzZKk5s2ba9iwYTaPry1Z4CyWWGq6rbbVFRYXXHBBtdtcvZx+8uTJuvfee/X222/r+eef17vvvqvi4mLdddddTmsi2KtXL0nS/v37lZ2drbi4OKec11F5eXm69tprdfLkSf3rX//SZZdd5pE4AAC+jeQBAAA+yvLrfFJSkt0rGCy/bh88eLDG7bXdbikhyM3NrbattLRUx48frzG+ffv2adasWdZf4V2hdevW2rNnj/bt26c+ffrYdcwtt9yiRx99VHPnztWMGTP01ltvKSgoSHfffbfT4mratKn69eunzZs365NPPtGkSZOcdm57GYah22+/Xdu3b9f999+v+++/3+0xAAD8A11yAADwUcnJyeratat+++03paSk2HVMv379FBkZqc2bN2v//v3Vtn/00Uc1HmdJOtR0P99++62Ki4ur3X7VVVdJkj777DO7YqsvSzPG//znP3YfEx0drdtuu01Hjx7V448/rj179mjYsGE1loc0hKUB4tNPP62TJ0869dz2ePrpp/XZZ5/psssu0+uvv+72+wcA+A+SBwAA+LBp06bJbDZr3Lhx2rp1a7Xt6enp1kaAUlkjxttvv12lpaV66KGHdObMGeu2TZs26Y033qjxfgYPHixJev/996tMgjhw4IAefvjhGo+ZOnWqIiMj9eijj+rTTz+ttr2wsFALFy5UamqqPQ+1Vo888ogiIiI0Z84cffzxx1W2GYahlStXVumRYDF58mRJZdMaJOmee+5pUBw1uemmmzR+/HgdO3ZMgwYN0tq1a2vc78cff3T6fX/88cd6/vnn1aFDBy1YsEAhISw4BQDUH+8iAAD4sFtuuUW//vqrXnzxRfXr1099+vRRx44dZRiG9u3bp+3btysmJqbKF+OXXnpJ3333nZYtW6aOHTtq8ODBysjI0DfffKP77rtP//znP6vdT8eOHXXHHXfovffeU58+fTR48GDl5+drw4YNGjlypPLz86uVPHTq1Enz58/XLbfconHjxqlTp07q1q2boqOjdeTIEW3ZskV5eXn65Zdfam2QaI/OnTtr7ty5uuOOO3TTTTfp2WefVa9evZSVlaWdO3fq8OHDysjIsI5rtOjZs6cuvvhirV+/Xs2bN9c111xT7xhs+eCDDxQXF6d33nlHl156qdq1a6fevXsrKipKJ06cUEpKilJTUxUSEqKbbrrJaff7v//7v5Kkli1baurUqTXu8+STT6pr165Ou08AgP8ieQAAgI974YUXNGzYML3xxhtat26dduzYobi4OLVq1Ur3339/lXGEkpSYmKh169Zp2rRp+uyzz/T555+rffv2evnllzVlypQakwdS2SjDli1b6oMPPtCKFSvUunVrPfXUU3ryySdrnXRw3XXXafv27fr73/+ulStXauXKlQoNDVXLli11zTXXaOzYserevXuD/w1uuukmde/eXX/729/07bffatGiRWrUqJHOOeccPfLII9VGX1pcfvnlWr9+ve68806X/TIfFhamt99+W5MnT9Zbb72l7777TqtXr1ZhYaEaNWqkbt266Z577tEdd9zh1GkXpaWlkqQffvhBP/zwQ437TJw4keQBAMAuJsMwDE8HAQAAvIfJZFLbtm2rlCf4I8Mw1K1bN6WkpGjv3r31Gl/Yrl07HTx4UP70cWrevHm68847NX36dM2YMcPT4QAAvAQrDwAAQEBauHChdu/erVGjRtUrcVDZxIkTJZWtgBg+fLgTonO/p59+WocOHdLevXs9HQoAwAuRPAAAAAFl0qRJyszM1JIlSxQcHKxnnnmmwed89913JUk9evTw2eTBl19+qW3btnk6DACAl6JsAQAAVOHvZQsmk0khISE655xz9Oyzz2r8+PGeDgkAAK9H8gAAAAAAANgU5OkAAAAAAACAdyN5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbCJ5AAAAAAAAbPr/LwGCGERGHg0AAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\n", + "ax.set_xlabel('Frequency [GHz]')\n", + "ax.set_ylabel('$\\Delta {T_B}$ [K]')\n", + "df.delta.plot(ax=ax, figsize=(12,8), label='$\\Delta {T_B}$ (R16-R03)')\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Performing downwelling brightness temperature calculation" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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/vSnuvXWWzVgwICG23ft2qXx48fr22+/1a233qo33njjgGuvu+46TZ48uVH3U1FRoWuuuUaRSERTp07VxIkTJUklJSUaM2aMHn/8cZ177rkaO3ZsLB4WkPbqlgqmfiAg1Y0NcOwgkJyqA+GGEYDGql8qSCAANM/q3R69On+L/uecAWqb4zC7HCBlJcXIwKRJk/T3v/99vzBAkjp06KCnn35akvTuu+8qGAy26H6ee+45eTweTZgwoSEMkKTi4mI9+uijkqTHH3+8RfcB4HuBNAoEnJlWjh0EkpS3GR0C2ZlWWSzsEACawzAM3f+vFepe5NJPju9udjlASkuKQOBwhgwZIkkKBALas2dPi37WRx99JEm6+OKLD/ja+PHj5XQ6NWPGDPn9/hbdD4A6vlCkYeFeqsu2W1kqCCSp6kCoSUcOSlJGhkVuu41TBoBm+GT5bs3fWKH/PXeg7Lakf7sCJLSkGBk4nI0bN0qqGysoKCg44OszZ87Ud999J7/fr86dO+vss88+5P6AJUuWSJKGDRt2wNfsdrsGDRqkhQsXau3atRo8eHAMHwWQnnzBiLLy0+MXfVamVT46BICkVB0Iq022vcnX5ThtLBUEmsgXjOj3H63SaQPaaWy/A/eDAYitpA8EnnzySUnSWWedJYfjwPmiV199db9/vvfee3XRRRfppZdektvtbrjd4/GoqqpKktS5c+eD3lfnzp21cOFCbdmyhUAAiAFfKJo2IwNZdAgASavaH1bXguwmX+d22uRlZABokr99uUFl3oBev26k2aUAaSGpP5r7+OOP9fzzzyszM1MPPvjgfl/r3bu3HnvsMa1YsULV1dXatm2bXn/9dXXq1ElTp07VVVddtd/3//Dowuzsg//Sd7lckiSv13vImgKBgDwez35/ABycP01OGZDoEACSWf2xg03ldjAyADTF9r21+tuXG3TdiT3UvchldjlAWkjaDoHVq1fryiuvlGEY+sMf/tCwS6DelVdeud8/u1wuXX755Ro3bpyOPvpovf/++5o/f75GjRoV07oefvhh/e53v4vpzwRSlT+Nlgpm223y0DoMJKXqQFiuZgQCOc5MThkAmuB3H65Ufnambhp34JHhAFpHUnYI7NixQ2eddZb27t2r22+/Xb/85S8bfW2HDh109dVXS5I+/fTThtt/OD5QW1t70GtramokSTk5OYf8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n+uM2/nxRfveULJHIPG98NUmPfjRSk0Y0lGPXjxEdlvSfp4GAAdIume0iooKnXHGGdqyZYuuvvpqPfbYYwd8T9eudce+bN++/aA/o6amRpWVlWrTpk3Dm/vc3Fzl5eUd9rr627t169bixwGkI18oIidLBSXV7RCQxNGDQIIo8QTULk7jApJU6LJLksqrGRlIVNGooYc/XqUHpq3UT0/sqScuHUoYACDlJNWzWnV1tc4++2ytXLlSEydO1LPPPnvQJL9fv35yOBwqKyvTjh07Dvj64sWLJUmDBw/e7/b6sYP6r/9QKBTS8uXL5XQ61bdv31g8HCCthCJRhaMGIwP71I8M1AQJBIBEUOLxqzhOCwUlyZlpVa7TpjJGBhJSMBzVHe8s0T/+s1H/e+5A3XPOAGVkxKd7BADiKWkCgUAgoAkTJujrr7/WmWeeqTfffFNW68HfWGRlZemUU06RJL3zzjsHfH3KlCmSpPPOO2+/28ePH7/f139o2rRp8vv9Ou200+R0xu8FA5Aq/Pu26RMI1GkIBNghACSEUm8groGAVDc2wMhA4qnyhTT5xa81belO/flHx+iaMT3MLgkAWk1SBAKRSEQ//vGPNXPmTJ144ol69913ZbfbD3vN7bffLkl66KGHtG7duobb582bp7///e/Kz8/Xtddeu9811113nXJzc/XBBx/o3Xffbbi9tLRUd955pyTpjjvuiNXDAtJK/fF6WfakeNppddmZjAwAicIwDO2u8qtdnBfFFbkddAgkmO17a3XxX+dqxU6PXr12pM4b0tHskgCgVSXFUsGnnnpK7733niSpqKhIP//5zw/6fY899piKiookSaeddpp++ctf6sknn9TQoUN1+umnKxgMavr06TIMQy+++KLy8/P3u76goEAvvPCCLr30Ul188cUaO3asCgsLNWPGDFVWVur222/X2LFjW/OhAinLH6w7a9tpo0NAkjIyLMq2W1kqCCQAbyAsXyii9nnx7RDoWpCttSWHPsoY8bV0e6WueWmhsuwZmnrjCerdzn3kiwAgySVFILB3796G/14fDBzM/fff3xAISNKf/vQnDR06VE899ZSmT58uu92u0047Tffee69OOOGEg/6Miy66SLNnz9ZDDz2k+fPnKxgMauDAgbr55ps1adKk2D0oIM3UdwiwVPB7LodNtUFGBgCzlXr8khT3kYF+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FBcXo7S0VN/hEDVopqamGh0m8CQmBIiIiIiISCvMzc219iBDRPXHSQWJiIiIiIiIjBATAkRERERERERGiAkBIiIiIiIiIiPEhAARERERERGREWJCgIiIiIiIiMgIMSFAREREREREZISYECAiIiIiIiIyQmb6DqCxE0IAAHJzc/UcCRERERERERmD8ufP8ufRyjAhoGV5eXkAAC8vLz1HQkRERERERMYkLy8PDg4OlW6XiOpSBlQvZWVluHv3Luzs7CCRSPQdjl7k5ubCy8sLKSkpsLe313c4pCG8r40P72njxPva+PCeNk68r40P72nj05DuqRACeXl5cHd3h4lJ5TMFsIeAlpmYmMDT01PfYRgEe3t7g284VHu8r40P72njxPva+PCeNk68r40P72nj01DuaVU9A8pxUkEiIiIiIiIiI8SEABEREREREZERYkKAtE4qlWLp0qWQSqX6DoU0iPe18eE9bZx4Xxsf3tPGife18eE9bXwa4z3lpIJERERERERERog9BIiIiIiIiIiMEBMCREREREREREaICQEiIiIiIiIiI8SEANVZQUEBdu3ahVdeeQVt2rSBpaUlbGxs0KVLFyxbtgz5+fkV6oSEhEAikVT6WrhwoR6uhJ4UFBRU5T36/fff1dYLDw9Hz549YWtrCycnJ4wYMQLR0dE6jp7UOXbsWJX3tPy1bNkyZR22VcMQExODFStWYNy4cfD09FS+/9WpS3s8ffo0RowYAScnJ9ja2qJnz5748ccfNXUp9ITa3NeysjKcPHkSCxYsQLdu3WBnZwepVAo/Pz/MmjULCQkJautV1+579+6tzUs0OrVtq/X5jGVb1Y3a3tOafM8OGjRIpQ7bqW7V5dmlXGP+XjXTdwDUcG3evBmvvvoqAKBdu3YYNWoUcnNzER0djaVLl2LLli04fvw4mjRpUqFu37590bJlywrl3bp103rcVDPjx4+Hra1thXIPD48KZXPmzEFoaCisrKwwdOhQKBQKREZG4tChQ9i+fTvGjBmjg4ipMm5ubpg6darabaWlpfj5558BAP369auwnW1Vvz7++GPs3r27VnXq0h4jIiIwYcIElJWVoX///nBxccGRI0cwdepUXLt2DStXrtTQFRFQu/saHx+P/v37A3jclgcNGgRTU1OcP38e3333HTZv3oz9+/cjMDBQbX0/Pz+12/z8/Op+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", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig, ax = plt.subplots(1, 1, figsize=(12,8))\n", + "ax.set_xlabel('Frequency [GHz]')\n", + "ax.set_ylabel('${T_B}$ [K]')\n", + "\n", + "rte.satellite = False\n", + "df_from_ground = rte.execute()\n", + "\n", + "df_from_ground = df_from_ground.set_index(frq)\n", + "df_from_ground.tbtotal.plot(ax=ax, linewidth=1, label='{} - {}'.format(atm[atmp.TROPICAL], mdl))\n", + "ax.legend()\n", + "plt.show()" + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + " \n", + "
tbtotaltbatmtmrtmrcldtauwettaudrytauliqtauice
2038.10058036.106575287.7826560.00.1196540.0127480.00.0
2153.60281551.750325287.5497230.00.1832710.0133960.00.0
2268.63475466.918654286.8727030.00.2496770.0141070.00.0
2368.96656067.268116287.3807480.00.2498660.0148870.00.0
2458.51827656.754139288.0835800.00.2016700.0157450.00.0
...........................
196290.020626290.013156297.0812770.03.6974740.0251500.00.0
197288.152409288.143310296.8592640.03.4869090.0253150.00.0
198286.380803286.370182296.6714820.03.3189050.0254810.00.0
199284.742167284.730168296.5136090.03.1836920.0256480.00.0
200283.256287283.243076296.3814890.03.0741470.0258150.00.0
\n", + "

181 rows × 8 columns

\n", + "
" + ], + "text/plain": [ + " tbtotal tbatm tmr tmrcld tauwet taudry tauliq \\\n", + "20 38.100580 36.106575 287.782656 0.0 0.119654 0.012748 0.0 \n", + "21 53.602815 51.750325 287.549723 0.0 0.183271 0.013396 0.0 \n", + "22 68.634754 66.918654 286.872703 0.0 0.249677 0.014107 0.0 \n", + "23 68.966560 67.268116 287.380748 0.0 0.249866 0.014887 0.0 \n", + "24 58.518276 56.754139 288.083580 0.0 0.201670 0.015745 0.0 \n", + ".. ... ... ... ... ... ... ... \n", + "196 290.020626 290.013156 297.081277 0.0 3.697474 0.025150 0.0 \n", + "197 288.152409 288.143310 296.859264 0.0 3.486909 0.025315 0.0 \n", + "198 286.380803 286.370182 296.671482 0.0 3.318905 0.025481 0.0 \n", + "199 284.742167 284.730168 296.513609 0.0 3.183692 0.025648 0.0 \n", + "200 283.256287 283.243076 296.381489 0.0 3.074147 0.025815 0.0 \n", + "\n", + " tauice \n", + "20 0.0 \n", + "21 0.0 \n", + "22 0.0 \n", + "23 0.0 \n", + "24 0.0 \n", + ".. ... \n", + "196 0.0 \n", + "197 0.0 \n", + "198 0.0 \n", + "199 0.0 \n", + "200 0.0 \n", + "\n", + "[181 rows x 8 columns]" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "df_from_ground" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.10" + }, + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + } + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/en/main/notebook/uncertainty.html b/en/main/notebook/uncertainty.html new file mode 100644 index 00000000..357f7d0b --- /dev/null +++ b/en/main/notebook/uncertainty.html @@ -0,0 +1,771 @@ + + + + + + + + + + + + Calculate uncertainty on BTs (notebook) — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + + + +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

Calculate uncertainty on BTs (notebook)#

+
+

Import python package for plotting.#

+
+
[2]:
+
+
+
# This requires jupyter-matplotlib a.k.a. ipympl.
+# ipympl can be install via pip or conda.
+%matplotlib inline
+import matplotlib.pyplot as plt
+plt.rcParams.update({'font.size': 15})
+import matplotlib.ticker as ticker
+from matplotlib.ticker import ScalarFormatter
+import numpy as np
+import pandas as pd
+np.seterr('raise')
+
+
+
+
+
[2]:
+
+
+
+
+{'divide': 'warn', 'over': 'warn', 'under': 'ignore', 'invalid': 'warn'}
+
+
+
+
+

Import pyrtlib package and tools#

+
+
[3]:
+
+
+
from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter
+from pyrtlib.climatology import AtmosphericProfiles as atmp
+from pyrtlib.tb_spectrum import TbCloudRTE
+from pyrtlib.absorption_model import O2AbsModel
+from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies, constants
+from pyrtlib.uncertainty import covariance_matrix
+
+
+
+
+
[4]:
+
+
+
atm = ['Tropical',
+       'Midlatitude Summer',
+       'Midlatitude Winter',
+       'Subarctic Summer',
+       'Subarctic Winter',
+       'U.S. Standard']
+
+
+
+
+
+

Define spectroscopic parameters to be perturbed and them uncertainties#

+
+
[5]:
+
+
+
O2_parameters = {
+    'O2S': range(1),
+    'X05': [None],
+    'WB300': [None],
+    'O2gamma': range(34),
+    'Y300': range(34),
+    'O2_V': range(34)
+}
+HO2_parameters = {
+    'con_Cf_factr': [None],
+    'con_Cs_factr': [None],
+    'gamma_a': range(1),
+    'S': range(1),
+    'con_Xf': [None],
+    'SR': range(1),
+    'con_Xs': [None]
+}
+
+
+
+
+
[6]:
+
+
+
parameters = {**SpectroscopicParameter.oxygen_parameters('R18'),
+              **SpectroscopicParameter.water_parameters('R17')}
+
+parameters['O2S'].uncer = parameters['O2S'].value / 100
+parameters['X05'].uncer = 0.05
+parameters['WB300'].uncer = 0.05
+parameters['O2gamma'].uncer[0: 34] = np.array([0.05, 0.0138964, 0.0138964, 0.0138964, 0.0138964,
+                                               0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,
+                                               0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,
+                                               0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,
+                                               0.0138964, 0.01131274, 0.01131274, 0.01453087, 0.01453087,
+                                               0.01789881, 0.01789881, 0.02116733, 0.02134575, 0.02476584,
+                                               0.02476584, 0.02839177, 0.02839177, 0.03203582])
+parameters['Y300'].uncer[0: 34] = np.array([0.01, 0.00404133, 0.00502581, 0.00786035, 0.00820458,
+                                            0.00935381, 0.00809901, 0.0078214, 0.00544132, 0.00460658,
+                                            0.00225117, 0.00209907, 0.0039399, 0.00484963, 0.00799499,
+                                            0.00878031, 0.01202685, 0.01261821, 0.01577055, 0.01615187,
+                                            0.01907464, 0.01926978, 0.0218633, 0.02188287, 0.02416567,
+                                            0.02401716, 0.02604178, 0.02575469, 0.02762271, 0.02720018,
+                                            0.02897909, 0.02843003, 0.03019027, 0.02951218])
+parameters['O2_V'].uncer[0: 34] = np.array([0.00288243, 0.04655306, 0.03914166, 0.06110402, 0.0494057,
+                                            0.05728709, 0.06444876, 0.07279906, 0.06385863, 0.07007177,
+                                            0.05963384, 0.06373721, 0.11789158, 0.12307213, 0.10151855,
+                                            0.10427449, 0.08328802, 0.08486523, 0.10130857, 0.10244286,
+                                            0.15750036, 0.15814743, 0.24421784, 0.24343211, 0.3084326,
+                                            0.30576201, 0.34568212, 0.34107696, 0.36123446, 0.35507902,
+                                            0.37305309, 0.36544166, 0.38490936, 0.37583782])
+
+parameters['gamma_a'].uncer[0] = 0.039
+parameters['S'].uncer[0] = 0.043 * 1e-25 * constants('light')[0] * 100
+parameters['con_Xf'].uncer = 0.8
+parameters['SR'].uncer[0] = 0.0014
+parameters['con_Xs'].uncer = 0.6
+
+SpectroscopicParameter.set_parameters(parameters)
+
+
+
+

Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used.

+
+
[7]:
+
+
+
z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)
+
+gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)
+rh = mr2rh(p, t, gkg)[0] / 100
+
+
+
+
+
+

Use frequencies set of HATPRO Radiometer#

+
+
[8]:
+
+
+
frq = sorted(list(set().union(get_frequencies('hat'), np.arange(20, 61, 0.5).tolist())))
+
+
+
+
+
+

Performing uncertainty of brightness temperature#

+

Default calculatoin consideres no cloud and no perturbation

+
+
[9]:
+
+
+
rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters)
+rte.satellite = False
+rte.init_absmdl('R17')
+O2AbsModel.model = 'R18'
+O2AbsModel.set_ll()
+df = rte.execute()
+
+
+
+
+
[10]:
+
+
+
df_out = pd.DataFrame()
+df_out['freq'] = frq
+df_out['tb'] = df.tbtotal
+
+
+
+
+
+

Calculate Jacobian matrix#

+
+\[Cov(T_{b}) = K_{p} \times Cov(p) \times K_{p}^T\]
+
+
[11]:
+
+
+
cnt = 0
+for k, v in (O2_parameters | HO2_parameters).items():
+    for i in v:
+        amu_p = AbsModUncertainty.parameters_perturbation([k], 'max', index=i)
+        rte.set_amu(amu_p)
+        df = rte.execute()
+        if k =='O2S':
+            parameters[k].uncer = parameters[k].uncer / parameters[k].value * 100
+        if k in ['con_Cf_factr', 'con_Cs_factr']:
+            parameters[k].uncer = parameters[k[0:6]].value * parameters[k].uncer
+        field_name = 'p_{}{}'.format(k, '_' + str(i) if i else '')
+        delta_tb = df.tbtotal.values - df_out.tb.values
+        if i is not None:
+            o = pd.Series(delta_tb / parameters[k].uncer[i], name=field_name)
+        else:
+            o = pd.Series(delta_tb / parameters[k].uncer, name=field_name)
+        df_out = pd.concat([df_out, o], axis=1)
+        cnt += 1
+
+
+
+
+
+

Calculate uncertainty (sigma) for BT#

+

Using covariance matrix by Cimini-2018 which identifies 111 parameters (6 for water vapor and 105 for oxygen)

+
+
[13]:
+
+
+
params = df_out.copy()
+
+Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq', 'p_con_Xs'])].values
+covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_111), Kp.T)
+sigma_tb = np.sqrt(np.diag(covtb))
+params['sigma_tb'] = sigma_tb
+
+
+
+

Using covariance matrix by Cimini-2019 which add the \({n_{CS}}\) parameter for water vapour

+
+
[14]:
+
+
+
Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq'])].values
+covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_112), Kp.T)
+sigma_tb = np.sqrt(np.diag(covtb))
+params['sigma_tb_with_con_Xs'] = sigma_tb
+
+
+
+
+
[15]:
+
+
+
params.plot(x='freq', y=['sigma_tb', 'sigma_tb_with_con_Xs'],
+            title="${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters",
+            xlabel='Frequency [GHz]', ylabel='$\sigma_{T_B}$ [K]',
+            label=[atm[atmp.TROPICAL], atm[atmp.TROPICAL] + ' with ${H_2 O}$ ${n_{CS}}$ parameter'], figsize=(12,8))
+plt.grid()
+
+
+
+
+
+
+
+../_images/notebook_uncertainty_24_0.png +
+
+
+
+ + +
+ + + + + +
+ + + + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/notebook/uncertainty.ipynb b/en/main/notebook/uncertainty.ipynb new file mode 100644 index 00000000..3ec5a125 --- /dev/null +++ b/en/main/notebook/uncertainty.ipynb @@ -0,0 +1,376 @@ +{ + "cells": [ + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Calculate uncertainty on BTs (notebook)" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import python package for plotting." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'divide': 'warn', 'over': 'warn', 'under': 'ignore', 'invalid': 'warn'}" + ] + }, + "execution_count": 2, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# This requires jupyter-matplotlib a.k.a. ipympl.\n", + "# ipympl can be install via pip or conda.\n", + "%matplotlib inline\n", + "import matplotlib.pyplot as plt\n", + "plt.rcParams.update({'font.size': 15})\n", + "import matplotlib.ticker as ticker\n", + "from matplotlib.ticker import ScalarFormatter\n", + "import numpy as np\n", + "import pandas as pd\n", + "np.seterr('raise')" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Import pyrtlib package and tools" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "from pyrtlib.uncertainty import AbsModUncertainty, SpectroscopicParameter\n", + "from pyrtlib.climatology import AtmosphericProfiles as atmp\n", + "from pyrtlib.tb_spectrum import TbCloudRTE\n", + "from pyrtlib.absorption_model import O2AbsModel\n", + "from pyrtlib.utils import ppmv2gkg, mr2rh, get_frequencies, constants\n", + "from pyrtlib.uncertainty import covariance_matrix" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "atm = ['Tropical',\n", + " 'Midlatitude Summer',\n", + " 'Midlatitude Winter',\n", + " 'Subarctic Summer',\n", + " 'Subarctic Winter',\n", + " 'U.S. Standard']" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Define spectroscopic parameters to be perturbed and them uncertainties" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "O2_parameters = {\n", + " 'O2S': range(1),\n", + " 'X05': [None],\n", + " 'WB300': [None],\n", + " 'O2gamma': range(34),\n", + " 'Y300': range(34),\n", + " 'O2_V': range(34)\n", + "}\n", + "HO2_parameters = {\n", + " 'con_Cf_factr': [None],\n", + " 'con_Cs_factr': [None],\n", + " 'gamma_a': range(1),\n", + " 'S': range(1),\n", + " 'con_Xf': [None],\n", + " 'SR': range(1),\n", + " 'con_Xs': [None]\n", + "}" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "parameters = {**SpectroscopicParameter.oxygen_parameters('R18'),\n", + " **SpectroscopicParameter.water_parameters('R17')}\n", + "\n", + "parameters['O2S'].uncer = parameters['O2S'].value / 100\n", + "parameters['X05'].uncer = 0.05\n", + "parameters['WB300'].uncer = 0.05\n", + "parameters['O2gamma'].uncer[0: 34] = np.array([0.05, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.0138964, 0.0138964, 0.0138964, 0.0138964,\n", + " 0.0138964, 0.01131274, 0.01131274, 0.01453087, 0.01453087,\n", + " 0.01789881, 0.01789881, 0.02116733, 0.02134575, 0.02476584,\n", + " 0.02476584, 0.02839177, 0.02839177, 0.03203582])\n", + "parameters['Y300'].uncer[0: 34] = np.array([0.01, 0.00404133, 0.00502581, 0.00786035, 0.00820458,\n", + " 0.00935381, 0.00809901, 0.0078214, 0.00544132, 0.00460658,\n", + " 0.00225117, 0.00209907, 0.0039399, 0.00484963, 0.00799499,\n", + " 0.00878031, 0.01202685, 0.01261821, 0.01577055, 0.01615187,\n", + " 0.01907464, 0.01926978, 0.0218633, 0.02188287, 0.02416567,\n", + " 0.02401716, 0.02604178, 0.02575469, 0.02762271, 0.02720018,\n", + " 0.02897909, 0.02843003, 0.03019027, 0.02951218])\n", + "parameters['O2_V'].uncer[0: 34] = np.array([0.00288243, 0.04655306, 0.03914166, 0.06110402, 0.0494057,\n", + " 0.05728709, 0.06444876, 0.07279906, 0.06385863, 0.07007177,\n", + " 0.05963384, 0.06373721, 0.11789158, 0.12307213, 0.10151855,\n", + " 0.10427449, 0.08328802, 0.08486523, 0.10130857, 0.10244286,\n", + " 0.15750036, 0.15814743, 0.24421784, 0.24343211, 0.3084326,\n", + " 0.30576201, 0.34568212, 0.34107696, 0.36123446, 0.35507902,\n", + " 0.37305309, 0.36544166, 0.38490936, 0.37583782])\n", + "\n", + "parameters['gamma_a'].uncer[0] = 0.039\n", + "parameters['S'].uncer[0] = 0.043 * 1e-25 * constants('light')[0] * 100\n", + "parameters['con_Xf'].uncer = 0.8\n", + "parameters['SR'].uncer[0] = 0.0014\n", + "parameters['con_Xs'].uncer = 0.6\n", + "\n", + "SpectroscopicParameter.set_parameters(parameters)\n" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [], + "source": [ + "z, p, _, t, md = atmp.gl_atm(atmp.TROPICAL)\n", + "\n", + "gkg = ppmv2gkg(md[:, atmp.H2O], atmp.H2O)\n", + "rh = mr2rh(p, t, gkg)[0] / 100" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Use frequencies set of HATPRO Radiometer" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [], + "source": [ + "frq = sorted(list(set().union(get_frequencies('hat'), np.arange(20, 61, 0.5).tolist())))" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Performing uncertainty of brightness temperature" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Default calculatoin consideres no cloud and no perturbation" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [], + "source": [ + "rte = TbCloudRTE(z, p, t, rh, frq, amu=parameters)\n", + "rte.satellite = False\n", + "rte.init_absmdl('R17')\n", + "O2AbsModel.model = 'R18'\n", + "O2AbsModel.set_ll()\n", + "df = rte.execute()" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "df_out = pd.DataFrame()\n", + "df_out['freq'] = frq\n", + "df_out['tb'] = df.tbtotal" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate Jacobian matrix" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "$$Cov(T_{b}) = K_{p} \\times Cov(p) \\times K_{p}^T$$" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "cnt = 0\n", + "for k, v in (O2_parameters | HO2_parameters).items():\n", + " for i in v:\n", + " amu_p = AbsModUncertainty.parameters_perturbation([k], 'max', index=i)\n", + " rte.set_amu(amu_p)\n", + " df = rte.execute()\n", + " if k =='O2S':\n", + " parameters[k].uncer = parameters[k].uncer / parameters[k].value * 100\n", + " if k in ['con_Cf_factr', 'con_Cs_factr']:\n", + " parameters[k].uncer = parameters[k[0:6]].value * parameters[k].uncer\n", + " field_name = 'p_{}{}'.format(k, '_' + str(i) if i else '')\n", + " delta_tb = df.tbtotal.values - df_out.tb.values\n", + " if i is not None:\n", + " o = pd.Series(delta_tb / parameters[k].uncer[i], name=field_name)\n", + " else:\n", + " o = pd.Series(delta_tb / parameters[k].uncer, name=field_name)\n", + " df_out = pd.concat([df_out, o], axis=1)\n", + " cnt += 1" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Calculate uncertainty (sigma) for BT\n", + "Using covariance matrix by [Cimini-2018](https://doi.org/10.5194/acp-18-15231-2018) which identifies 111 parameters (6 for water vapor and 105 for oxygen)" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "metadata": {}, + "outputs": [], + "source": [ + "params = df_out.copy()\n", + "\n", + "Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq', 'p_con_Xs'])].values\n", + "covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_111), Kp.T)\n", + "sigma_tb = np.sqrt(np.diag(covtb))\n", + "params['sigma_tb'] = sigma_tb" + ] + }, + { + "attachments": {}, + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Using covariance matrix by [Cimini-2019](https://doi.org/10.5194/gmd-12-1833-2019) which add the ${n_{CS}}$ parameter for water vapour " + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "metadata": {}, + "outputs": [], + "source": [ + "Kp = df_out.loc[:, ~df_out.columns.isin(['tb', 'freq'])].values\n", + "covtb = np.matmul(np.matmul(Kp, covariance_matrix.R17_112), Kp.T)\n", + "sigma_tb = np.sqrt(np.diag(covtb))\n", + "params['sigma_tb_with_con_Xs'] = sigma_tb" + ] + }, + { + "cell_type": "code", + "execution_count": 15, + "metadata": {}, + "outputs": [ + { + "data": { + "image/png": "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HDp0CHCP2HzllVeanEpExDcV3t5u9erVrF69utj0WbNm6WS0mmmbi0hFqQAgfm/atGme24WJVKc9e/YA0LBhQ0aOHMmTTz6J3W43OZWIiG9atmyZ2RFOONrmIlJRGgRQRERERERE5ASgQQBFRERERERETgC6BKCauVwuDhw4QEREhAYKExERERERkRpnGAYZGRk0btwYq7X03/lVAKhmBw4cICEhwewYIiIiIiIicoLZt28fTZs2LXW6CgDVLCIiAnBv+MjISJPTlM7hcLB48WJGjBihQc18kNrH96mNfJvax7epfXyf2si3qX18m9rH99XFNkpPTychIcFzPloaFQCqWWG3/8jISJ8vAISGhhIZGVlndvq6RO3j+9RGvk3t49vUPr5PbeTb1D6+Te3j++pyG5V3GboGARQRERERERE5AagAICIiIiIiInICUAFARERERERE5ASgAoCIiIiIiIjICUAFABEREREREZETgAoAIiIiIiIiIicA3QbQRzgcDpxOZ62uLyAggNzc3Fpdr3hH7eP71Ea+Te1TnNVqxW63l3t7IBEREam7VAAwWXp6OklJSeTl5dXqeg3DoGHDhuzbt09fBn2Q2sf3qY18m9qnZDabjdDQUOrXr09gYKDZcURERKSWqQBgovT0dBITEwkPDycuLq5Wf5lxuVxkZmYSHh6O1aorQXyN2sf3qY18m9qnKMMwcDqd5OTkkJaWxu7du2natCmhoaFmRxMREZFapAKAiZKSkggPD6dp06a1/guVy+UiPz+f4OBgfTn2QWof36c28m1qn5KFh4cTGxvLnj17SEpKolmzZmZHEhERkVqkb0UmcTgc5OXlERUVpe6pIiJSa2w2G7GxsWRlZVFQUGB2HBEREalFKgCYpHBQKrvdbnISERE50QQFBQGoACAiInKCUQHAZPr1X0REaps+e0RERE5MKgCIiIiIiIiInABUABARERERERE5AagAICIiIiIiInICUAFAfILFYqnQfy1atDA7Mrt378ZisTB48OBaX7evbAMREREREfEfAWYHEAG49NJLiz22cuVKdu7cSZcuXejatWuRaXFxcbWUTEREREREpG5QAUB8wuzZs4s9NmXKFHbu3Mm4ceOYMWNGrWcqT5MmTfjzzz8JDQ01O4qIiIiIiEi5VAAQqSS73U67du3MjiEiIiIiIuIVjQEgfmf27NlYLBZmzJjBX3/9xQUXXECDBg2wWq18/fXXnvkWLFjA8OHDiYmJITg4mLZt23L33Xdz7NixYsucMWMGFouF2bNn8+uvv3LGGWcQHR1NZGQkw4cP55dffin2nPLGAPj111+54IILaNKkCUFBQTRq1Ihhw4bx9ttvF5lv48aN3HnnnXTv3p34+HiCgoJo3bo1t912GwcOHKjKphIREREREfFQAUD81vbt2+nZsydr1qxhyJAhDB8+HLvdDsATTzzBqFGjWLZsGd27d2fcuHFkZ2fz1FNP0bt3bw4fPlziMn/++WdOO+009u/fz5lnnknbtm35/vvvGTRoEIsXL/Y624svvki/fv349NNPadSoERMmTKBjx45s3ryZO+64o8i8Tz75JM8//zwAAwYM4KyzzsIwDGbOnEmvXr1UBBARERERkWqhSwB8kGEY5DicNboOl8tFTr6TgPwCrNaq14FC7DYsFks1JPPeJ598wg033MALL7yAzWbzPL527Vruv/9+wsPD+f777+nduzcAeXl5XHzxxXz++edMnTqVL774otgy3377be677z4eeeQRz+t5/fXXuf766z1jEoSEhJSZa/ny5dxyyy2Eh4czZ84chg0b5plWUFBQrJBwzTXX8OKLL9KgQYMi8z344IM88cQT3H///cycObPiG0hEREREROQ4KgD4oByHk/YPLjI7RoVsffgMQgNrd3eKj4/nqaeeKnLyD/DKK6/gcrm48cYbPSf/AEFBQbzyyit8++23zJkzh3379pGQkFDkuc2bN/dcDlDouuuu47333uPXX3/lyy+/5KKLLioz15NPPolhGNx3331FTv4BAgICOOuss4o8NmTIkGLLsFqt3Hnnnbz//vvMmzev7A0hIiIiUlvyMuDABohsAjEtwGor9yki4jtUABC/dfrpp5c4Av+KFSsAuPDCC4tNq1+/PiNGjGDu3LmsWrWKCy64oMj0c845h4CA4ofFpEmT+PXXX1mxYkWZBYCCggKWLVsGwNVXX+31a0lOTmbevHls3ryZY8eOUVBQgMPhwOFwkJycTEpKCrGxsV4vT0RERKTa7VkNX10FafvcfweEQP12UL8D1D8FGrSH+u0hvAHUcs9QEfGOCgA+KMRuY+vDZ9ToOlwuFxnpGURERlTbJQC1rVmzZiU+XnjNfIsWLUqcXvh4YmJisWnNmzcv8znlXY+fnJxMTk4OsbGxxMTElDlvoY8//pirr76azMzMUufJyMhQAUBERETM4SyA5c/A8qfBcJETEIXdlUtAQY67N8CBDUXnD4mFBv8rCnSZBE26mZNbRIpRAcAHWSyWGu9O73K5KAi0ERoYUC0FADMEBwdX6nm1PVZBWfbs2cOUKVMAeOGFFxg1apTnrgHp6emcddZZrF69GsMwzA0qIiIiJ6Zje+HLq2Cf+45Ic1yn8UDmJWQTTHPLYdpa9tHBto/OQQdoyz7qFxzAmpMCu1fA7hUYf36DZdpmsOm0Q8QX6EiUOqdx48bs2rWLPXv20L59+2LTd+/eDUCTJk2KTduzZ0+Jyyx8vHHjxmWuOy4ujpCQEFJSUjh27BjR0dFlzr9gwQLy8/O5/fbbufnmmz2Pu1wuAP75558yny8iIiJSY3atgE8uhLw0cq2h3Jl7GfNc/enVMpbwoAB2J0fwY0oTFjp6gcP9lCDyaW1JpK1lH/fbPyA24yDs+B7ajjT3tYgIoNsASh00cOBAwN21/t+OHj3KokWLsFgs9O/fv9j0r776Cqez+B0YPvnkE8B9m76y2Gw2Bg8eDMBbb71VbtbU1FQAmjZtWmzaqlWrSr1doYiIiEiNW3Qv5KWxxdqW4TmPMZ8B3HNmOz65qg8zp/Tkx9sG8+cjI1l51xA+vLI3j4/vxJTT2tG0fR+21h/FV073d7KsX2eb+zpExEMFAKlzpk6ditVq5aWXXmLdunWex/Pz87nxxhvJyclhwoQJxe4AAO7eAQ899FCRx9566y1Wr15NgwYNOOecc8pd/1133YXFYuGxxx5j6dKlRaYVFBSwYMECz98nn3wyAB988AFZWVmexxMTE7ntttu8e8EiIiIi1e3oX3BoEw7DxoXZt+KIaM6nV/fhmkGtsFr//3JKm9VC05hQ+reOY3LvZtxz1im8eXEPFk47jd3N3N+bgncthswjZr0SETmOLgGQOqdXr1488sgj3HffffTt25fBgwcTFxfHqlWr2LdvH23atOHVV18t8blXXXUVTz75JF999RWdO3dmx44drF27FrvdzuzZs0u868C/DRo0iKeffpo777yToUOH0qNHD9q0aUNSUhK///47eXl5HDt2DIAxY8bQoUMH1q1bR+vWrenfvz+5ubksXbqUjh070q9fP37++efq3DwiIiIi5dv8BQDLXZ3p1KYlL0zsSr3woAotYmD/gWz4tDWnWnfg3PgxtgE3l/8kEalR6gEgddK9997Lt99+y6BBg1i7di1fffUVQUFB3Hnnnfz66680aNCgxOf169ePn376iYYNG/Ltt9/y559/MmzYMJYtW8bIkd5fu3b77bfz008/MX78ePbu3csXX3zB5s2b6dSpE//5z3888wUGBrJixQquu+46goODPeu84YYbmDNnDna7vcrbQkRERKRCDIP8DZ8CMN/ozyuTulX45B9gaLv6zA84HYCcX2eDBjUWMZ16AIjPmj17NrNnzy72+JQpUzwj55dl1KhRjBo1qsLr7du3L99//32587Vo0aLM0fkHDhzoGY+gLDExMbz22mtFHnO5XKSnp/Pjjz+WeJcG3RVAREREasyBDQSm7ybHCCSv1RlEhVbuBwm7zUroqeeRvW4W4Rn/wP61kNCrmsOKSEWoB4CIiIiIiHgYf3wOwBJXd0ac2qpKyxrf9xQWuHoDkP3rrCpnE5GqUQFARERERETcXE4KNn0JwHf05/RTSr5s0lst48L4o/4YAAL+/BryMquaUESqQAUAERERERFx27MKe/ZhjhlhBLYbQVhQ1a8Y7tp/JP+4GhLozMa1+atqCCkilaUCgAgwY8YMDMPwamwBERERkbrK+MM9+v93zl6c1bV5tSzzzE6NmWcdCkDGL7OrZZkiUjkqAIiIiIiICBTk4dz8NQBLAgYyuG18tSw22G4jv+NECgwrUUd/g6N/VctyRaTiVAAQERERERHY8QMB+WkcNqKJaz+EoABbtS16VL9TWerqCkDOmveqbbkiUjEqAIiIiIiICK7/jf7/jbMvZ3dNqNZld2gcxZros9x/bPwInI5qXb6IeEcFABERERGRE11eJsa2BQD8FDiIfq3qVfsqWvQdz1EjihBHCsZfi6p9+SJSPhUAREREREROdNu/w+bMZZerAS06DSDAVv2nCaO7NWeucRoAqWs+rvbli0j5VAAQERERETnBOTd9BsA8V3/GnNqkRtYRGWyH5gMAyD24rUbWISJlUwFARERERORElp2CZeePAKwOGUz3ZjE1tqqT23UEIDovEQyjxtYjIiVTAUBERERE5ET210KsRgF/uhLofGovrFZLja0qLqENAKFGDmSn1Nh6RKRkKgCIiIiIiJzACrbMA2CRqyejOzeu0XU1rR/LIcPdwyDryI4aXZeIFKcCgIiIiIjIiSo/y9P9//eI0+jYJLJGVxcZbOeApQEAqfv/rtF1iUhxKgCIiIiIiJyodnyPzZXHHld92nTsjcVSc93/Cx0Lcg8ymH14Z42vS0SKUgFAfIbFYqnQfy1atDA7cjFm5TJjvZVZ5+7du7FYLAwePLhas0ybNg2LxcKDDz5Y6jy5ubnYbDasVisZGRlVWl9BQQEfffQRF1xwAS1btiQoKIi4uDhOP/10/vvf/+Jyuaq0fBERkdri3PoNAAtdPRnRoWGtrDM3PAEAV/KuWlmfiPy/ALMDiBS69NJLiz22cuVKdu7cSZcuXejatWuRaXFxcbWUTLy1e/duWrZsyaBBg1i2bFmtrff3338HoGPHjqXOs3XrVlwuF61atSIiIqLS69q0aROXXnopGzduJDQ0lG7dutGvXz8OHTrE8uXL+eGHH/joo4/46quvCAkJqfR6pG4w65gQEfFKQT7G9oUA/BrUjytrcPT/4xkxzSEZ7Bl7a2V9IvL/VAAQnzF79uxij02ZMoWdO3cybtw4ZsyYUeuZKurPP//EbrebHaNW+NJr9aYAsHnzZgC6dOlS6fWsW7eO008/nbS0NG677TamTp1K8+bNsVrdnan+/vtvRo0axcKFC5k2bRpvvvlmpdclIiJS43YvJ8CRwREjmobtB2CrwdH/jxcc3wp2QGROYq2sT0T+ny4BEKlG7dq1o1WrVmbHqBW+8lr37t1LamoqgYGBnHzyyaXOV1gA+HdPEm8dOnSIM888k7S0NN544w2efvppYmKK/lLSpk0bPvnkEwDeffdd9uzZU6l1iYiI1Abjf93/Fzu7M7xjzY7+f7zIxu5bAcY6j4DTUWvrFREVAMTPHX9NeXp6OrfeeistW7bEbrczbdq0IvOuXr2asWPHEh8fT1BQEC1atOD666/nwIED5S735ptvJiEhgeDgYE455RSef/75Eq/zLuu6+H379nHTTTdx8sknExISQmxsLD169OChhx4iPT3dM9/8+fO54oor6N27N9HR0YSFhdGlSxcef/xx8vLyqrS9cnNzCQ4OLjHjuHHjsFgsDBgwoNi0Hj16YLVaOXr0aKmvdcaMGbRs2RKAn376qch4DVOmTCm2zJycHO6++26aN29OUFAQrVu35qmnnsIwjAq9po0bNwLQtm1bAgJK79RU1R4AU6dOJSkpicmTJ3PNNdeUOl+3bt3o1q0bTqeThQsXerXsHTt2YLFYGD58OFlZWTz00EOccsophIaG0qpVK55++ukKb5fqUtljYf78+Vx++eWccsopREZGlrsfe3ssV2S5e/fuxWazMXjwYLKysrj11ltJSEggJCSEbt268c0333jm/fzzz+nduzdhYWE0aNCAm266iZycnFK3y759+7jhhhto1aoVwcHBxMbGcvbZZ/Pzzz975qnoMeHNMiu6vURESuVyUvDntwAst/WhX6t6tbbqRk2ak2vYseHCmbqv1tYrIroEQOqInJwcBg0axJ49exg0aBDdunUr8uvsBx98wJQpU3A6nfTv35+EhATWr1/P66+/zldffcWyZcto165dseXm5eUxdOhQdu7cydChQ8nPz+eHH37g1ltv5ffffy/xsoWSrFixgjFjxnDs2DFatGjB6NGjycnJYdu2bcyYMYOxY8d6fpm+4ooryMnJoV27dnTp0oX09HTWrFnDfffdxw8//MDixYux2WyV2k7BwcH07t2b5cuXs3v3bs8JvMvlYvny5QCsXbuW7OxsQkNDAUhLS2PDhg20b9+e+Pj4UpfdtWtXzjnnHL788ksaNGjAyJEjPdP+XVTIz89nxIgRbN261XNy9tNPP3H33XeTkZHBo48+6vVr8qb7P1StB8Aff/zBV199RXBwMM8991y587dv357169fzzz//eLX8wtcQGxtLly5dyMvLo2/fviQkJPDDDz9w1113ERcXx+WXX17h7NWlosdC4X7csWNHOnfuTFpamlf7cXnHcmWWm5+fz7Bhw9i1axennXYaSUlJLF++nPHjx7Nw4UL++OMP7rzzTgYNGsQZZ5zB8uXLefnll0lOTubDDz8slnH16tWMGjWK1NRU2rZty6hRozh69CiLFi1i4cKFfPjhh0ycOLFCx4S3y6zo9hIRKdX+tdhzkkgzQgk5eRBBAZX7blEZjaJD+ceoTxtLIqmJfxEXd1KtrVvkhGdItUpLSzMAIy0trcz5cnJyjK1btxo5OTm1lKwop9NppKamGk6n05T1e+vSSy81AGP69OklTt+1a5cBGIDRt29fIzU1tdg8e/fuNUJCQgybzWbMnTvX87jT6TSmTZtmAEaPHj1KXW7nzp2No0ePeqbt2LHDaNy4sQEYc+bMKfI8wGjevHmRx5KTk434+HgDMJ555pli2/znn382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/sjkyZP55ZdfWLRoEQkJCTz77LPMnj3b6/UPHjyY33//nWuvvRbDMPj6669ZtWoVUVFRPPzww57u3SeffDLr1q3znFB+8803ZGZm8uabb1b7L5zHn9iXVAAobVp53nnnHS6++GKSk5P56KOPePfdd/npp58qH7QU5XWdL1TSSfTxjh07xqhRo2jRogXvvfdeqYPjXXjhhWzcuJErrriCgoIC5s2bx5o1a4iKiuLee+9ly5Yt3H777RV6Ddu2bSMvL6/UbCVlLywUFBaNKiIkJMQzhoG3d1ooVJFjoXA/Hj16NElJScybN69a9uOaWm5F9enThz/++IM777yTyMhIfvrpJ77++mv27NnDoEGDmD17tufSH/DumKjoMkVEKmW7uyfkb6429OhUfk+ympYT5i7gu1J2mxtE5ARiMapjSHEfsHr1avr160dQUBDp6enlXut78OBBmjZtSkBAAHv37i3SxTkvL4+EhARSUlI4cOCA17+0gfvXuaioKNLS0socATw3N5ddu3bRsmVLU0ZxdrlcpKenFxlkTv7f7t27admyJYMGDfJcB1+b1D61Iz8/n5EjR7Jr1y5++eUXry91APPaKC0tjcaNGzNu3Dg+/PDDYtNXr15N3759OXLkSLH3roKCAvr160dubq7n9oLlMftYqCwdQ2Uz+zPI4XCwYMECzjrrLOz22r//uJRPbeTbKts+zvfGYNv1E487JjHm+qfo2CSqBlOWb8H7z3LWP4+wI6InrW/73tQs1UnHj++ri23k7XlonbkLQGH33ry8PJKTk2nUqFGZ8y9cuBCXy8XAgQOLfekPCgpi9OjRzJw5kwULFjBlypSaii0iJrr++uv56aefePvtt9m1a5fn9n9BQUHl9iwwS1RUFI888gi33XYbFouFc889l6ioKDZv3sysWbMYPHgwffv25ZxzzqFevXqcd955JCQkkJiYyOuvv87mzZtZsmSJ2S9DRERqW04qlt2rANgYNpB7Gpd/q9qaFlz/JPgHInISzY4icsKoMwWAwltA2e12YmNjy52/sPtwaaOHd+vWjZkzZ3r9K5mI+J/vv/8el8vFFVdcUeTx5s2be24P6YtuvfVWGjVqxPPPP8/kyZOx2+20bNmSkSNHeq6FnzJlCp9++il33HEHSUlJxMTEMGTIENatW+fVAIIiIlLH/LUIq1HAn64E2nfsWuol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Sdb+nWaHI1LrlABopKzL3qF55lwMLHDxuxDbweyQRERERETqlJ/DwX5rEwDSUzaaHI1I7VMCoDHa9hPW2Y8A4B76OLQdZXJAIiIiIiLmyHQkAFCwf4vJkYjUPiUAGqPAKAhqwu6IAbj7asR/EREREWm8CoOSAXBnbDM3EJE6oARAYxTXlbIb5rA68XqN+C8iIiIijZolsgUAvrm7zA1EpA4oAdBYBcXgtvqYHYWIiIiIiKn8YtsAEF602+RIRGqfEgAiIiIiItJoRTZrB0Cs6wCGq8zkaERqlxIAIiIiIiLSaMU1a0WJYcfXUkbm/h1mhyNSq5QAEBERERGRRsvh68t+aywAmbs1FaA0bEoAiIiIiIhIo3bIkQhA/j5NBSgNmxIAIiIiIiLSqBUGJwHgzthuciQitUsJABERERERadwiWgLgl7fT5EBEapcSACIiIiIi0qgFxHmmAgwr2mNyJCK1SwkAERERERFp1CIT2wPQxLUfw+U0ORqR2qMEgIiIiIiINGqeqQB98LG4yNynqQCl4VICQEREREREGjVfHzv7rE0AyEjRVIDScCkBICIiIiIijd4hvwQACvZvNjkSkdqjBICIiIiIiDR6xcHJALgzNRWgNFxKAIiIiIiIiJRPBZibYnIgIrVHCQAREREREWn0yqcCDC9ONTkSkdqjBICIiIiIiDR6EYntAIh1HdBUgNJgKQEgIiIiIiKNXtNmLSk+PBVgxh6NAyANkxIAIiIiIiLS6PnY7eyzxgGQkbLB5GhEaocSACIiIiIiIkCWXyIABQe2mByJSO1QAkBERERERIQ/pgI0NBWgNFBKAIiIiIiIiABENgfAL2+XuXGI1BIlAERERERERICAuLYARGgqQGmglAAQEREREREBopq1ByDGlYbbWWpyNCI1TwkAERERERERIC6hOUWGLz4WF+l7t5kdjkiNUwJAREREREQEsNvt7Ld5pgLM3K2pAKXhUQJARERERETksCxHAgCF+7eaHIlIzVMCQERERERE5LCikGQAjEOaClAaHiUAREREREREDrNGtgLAL3eXuYGI1AIlAERERERERA4LiGsNaCpAaZiUABARERERETksulkHAGLdmgpQGh4lAERERERERA6LjU+m0HBgt7hJ26OBAKVhUQJARERERETkMLvdVjEV4CFNBSgNjBIAIiIiIiIiR8jy80wFWLB/i8mRiNQsJQBERERERESOUBLc3PMmU1MBSsOiBICIiIiIiMgRrFEtAPDP32VuICI1TAkAERERERGRIwTEtQUgonivyZGI1CwlAERERERERI4Q1aw9ALHug7icJSZHI1JzlAAQERERERE5QpP4ZAoMBzaLQdruzWaHI1JjlAAQERERERE5gs1mZb+tKQCHdm80ORqRmqMEgIiIiIiIyJ9k+yUCUHhgq8mRiNQcJQBERERERET+pCQkyfPmkKYClIZDCQAREREREZE/sUS1AiAgL8XkSERqjhIAIiIiIiIifxJUPhVgSarJkYjUHCUARERERERE/iQqyTMVYIw7nbKSIpOjEakZSgCIiIiIiIj8SZO4ZuQbfoenAtxidjgiNUIJABERERERkT+x2qwcsMUBcChVUwFKw6AEgIiIiIiISBWy/JsBUHRQPQCkYVACQEREREREpAqlIcmeN4d2mBqHSE1RAkBERERERKQK1qiWgKYClIZDCQAREREREZEqlE8FGFmyx+RIRGqGEgAiIiIiIiJViE7qAJRPBVhocjQip08JABERERERkSrENEkg3/DHajFI273Z7HBETpsSACIiIiIiIlWw2qzsPzwVYObuTSZHI3L6lAAQERERERE5huzDUwEWH9BUgFL/KQEgIiIiIiJyDKWhyQBYsjQVoNR/SgCIiIiIiIgcgy2qFQD+ebvMDUSkBigBICIiIiIicgyBca0BiCzda3IkIqdPCQAREREREZFjiEkunwowA6emApR6TgkAERERERGRY4iOSSDv8FSAB3dpJgCp35QAEBEREREROQarzcp+ezwAWakbTY5G5PQoASAiIiIiInIcOf6JABQd3GpyJCKnRwkAERERERGR4ygNSQbAekhTAUr9pgSAiIiIiIjIcZRPBRiQn2JyJCKnRwkAERERERGR4wiKbwtAVGmqyZGInB4lAERERERERI6jYipAI5PctN0mRyNy6pQAEBEREREROY7omKass3mSANu+m2ByNCKnTgkAERERERGR47BYLOR0vw2AVrs/p7Qgx+SIRE6NEgAiIiIiIiIn0OvsK9lNHCEUsHHGf8wOR+SUKAEgIiIiIiJyAg4fH3a0uR6A2I3vYbicJkckcvKUABAREREREamG7qNv55ARTBN3Ght//tjscEROmhIAIiIiIiIi1RAaGsKappcC4Fj6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5Zh3usufha/Kxo0bGTduHImJiTgcDmJjY7n88stZv379UeuWP/M+fvx4du/ezZVXXkl0dDT+/v706tWL6dOnH/NntXHjRm688UaSk5NxOBzExMTQv39/XnzxRcrKygBPF32LxcLmzZur3Edqaio2m43mzZtjGMYxj1Vd5WMCPPnkk1Ve/B/J19e3ykcITlX5787xXqczZoCIiDQu6gEgIiJSRz755BPeeecdevXqxTnnnMP27dsrLrgffvhhnn/+eXx9fenduzdxcXGsXr2al19+mW+//ZYFCxYQGxtbsa+srCwGDBjAxo0badKkCWPGjOHQoUM8+OCDbNu2rUbjnjZtGpdffjklJSV069aNvn37kpqayueff8706dOZOXPmUV3iAXbt2kXv3r0JDg5m2LBh7N69m99//50LL7yQmTNnMnLkyErrf/HFF1xzzTWUlJTQvn17xo4dS05ODuvXr+evf/0rN910E2FhYdx6663cc889vPPOO7zwwgtHHfe9997D7XZz0003HTOhUV3p6eksX74cq9XKZZdddlr7OhUDBgyostzlcvHpp5/icrmw2Wx1HJWIiNRbhoiIiJwSwKjO/0qvu+66inWnTJly1PLPP//cAIxOnToZW7durSh3u93G448/bgDGZZddVmmb2267zQCMUaNGGQUFBRXlixcvNoKCggzASEpKqrTNE088YQDG+++/X2WcSUlJR53Pzp07jcDAQCMoKMiYPXt2pWUzZ840fHx8jMTERKOkpKSi/P3336843wceeMBwuVwVy15++WUDMAYOHFhpX1u2bDH8/PwMu91ufPzxx5WWud1u48cffzSKi4sNwzCM7OxsIyAgwIiOjq50XMMwDJfLZTRr1syw2WzG3r17qzzP6px3udmzZxuA0apVq2rtqyrlP4/rrrvuuOsNHjzYAIy5c+eecJ/33HOPARjnnXdepZ/vn4/5xBNPnFrQIiLSIOkRABERkdN0rK7Zu3btqrTe6NGjq7yL/OyzzwLw6aef0qpVq0r7HT9+PN26dePLL78kIyMDgIKCAiZPnozVamXixIkEBARUbNOnTx/uvPPOGju3V155hYKCAp577jmGDx9eadmoUaO4/fbbSU1N5fvvvz9q2+bNm/PPf/4Tq/WPrxt33XUX4eHhLFq0iNLS0oryl19+meLiYm666aajRtC3WCyMHDkSh8MBQGhoKJdffjnp6el88803ldadNWsWu3fvZvTo0TRt2vS0z7/88YuoqKgql0+fPp1x48ZVej344INVrjt58uTjduWfN29etWJ65513eO211+jQoQOffPJJpZ+viIjI8egRABERkdN0rGkAg4KCKn2+4IILjlonLS2N1atX07p16yqfHbdYLPTv359Vq1axfPlyzj77bJYvX05RURF9+vShZcuWR21zxRVX8Pzzz5/i2VQ2a9YsAC666KIqlw8cOJDXXnuNJUuWMHbs2ErLhgwZgq+vb6Uyu91O8+bNWbFiBZmZmcTFxQEwZ84cAG699dZqxXXbbbfx3nvv8fbbb3PppZdWlL/99tsA3HLLLdXaz+lavXo1kydPrlSWlJRUMW7AkVq2bHnMLv3gGQPi4MGDxz3eb7/9xh133EFkZCTTp08nODj41AIXEZFGSQkAERGR01TdaQCbNWt2VFl5L4GtW7ee8Hn18h4A+/btAzwXmlX58+B/p6M8vvj4+GrFdqSEhIQq1y2/aC0pKakoS01NBagyoVGV3r1706NHD+bMmcPOnTtp3rw5Bw8eZPr06SQkJDBq1Khq7edEIiMjgarPD+DRRx/l0UcfBeDAgQMVCY2qDBgw4Li/K0OGDDluAiAlJYWLL74YwzD44osvaNGiRTXOQERE5A9KAIiIiNQRPz+/o8rcbjcATZo04eyzzz7u9se64K8p5bFUVXasXg7lzjjjjKPKartr+m233cYtt9zCu+++yzPPPMPkyZNxOp3ccMMNNTYwXpcuXQDYsWMHubm5hISE1Mh+T1ZBQQEXXHAB6enp/Oc//+Gss84yJQ4REanflAAQERExUfld8qioqGr3JCi/y5ySklLl8mOVl3fHz8/PP2qZy+XiwIEDVca3fft2XnrppYq74bUhMTGRrVu3sn37drp161atba688koefPBB3n//fcaPH88777yD1WrlxhtvrLG4YmJi6NmzJ8uXL+fzzz/npptuqrF9V5dhGFxzzTWsWbOG22+/ndtvv73OYxARkYZBo8aIiIiYKCEhgXbt2rFhwwa2bNlSrW169uyJv78/y5cvZ8eOHUctnzJlSpXblScOqjrO3LlzcTqdR5WPGDECgKlTp1YrtlNVPsDgW2+9Ve1tAgMDufrqq9m3bx8PPfQQW7du5eyzz67yUYvTUT6o3+OPP056enqN7rs6Hn/8caZOncpZZ53Fa6+9VufHFxGRhkMJABEREZM99thjuN1uLr74YlatWnXU8szMzIrB7cAzuOA111yDy+Xi7rvvpqioqGLZsmXLmDhxYpXHGTRoEAAfffRRpRkKdu7cyT333FPlNg888AD+/v48+OCDfP3110ctLykp4csvv2TPnj3VOdVjuvfee/Hz8+Ptt9/ms88+q7TMMAxmz55dacyAcrfddhvgmUUA4Oabbz6tOKpy+eWXc8kll7B//34GDBjAr7/+WuV6v//+e40f+7PPPuOZZ56hRYsWfPHFF9jt6rwpIiKnTv8XERERMdmVV17J+vXr+ec//0nPnj3p1q0bLVu2xDAMtm/fzpo1awgKCqp0cfvcc88xb948ZsyYQcuWLRk0aBBZWVn8/PPP3HrrrbzxxhtHHadly5Zce+21fPDBB3Tr1o1BgwZRWFjIokWLOPfccyksLDzq8YFWrVrx6aefcuWVV3LxxRfTqlUr2rdvT2BgIHv37mXFihUUFBSwcuXKYw76Vx1t2rTh/fff59prr+Xyyy/nqaeeokuXLuTk5LBu3TpSU1PJysqqmAqwXOfOnTnzzDNZuHAhTZo04fzzzz/lGI7n448/JiQkhPfee4/BgweTnJxM165dCQgI4ODBg2zZsoU9e/Zgt9u5/PLLa+y4//jHPwBo2rQpDzzwQJXrPPzww7Rr167GjikiIg2XEgAiIiJe4Nlnn+Xss89m4sSJLFiwgLVr1xISEkJ8fDy33357panuACIiIliwYAGPPfYYU6dOZdq0aTRv3px//etf3H///VUmAMAzTV7Tpk35+OOP+fHHH0lMTOTvf/87Dz/88DFH4B8zZgxr1qxhwoQJzJ49m9mzZ+Pj40PTpk05//zzueiii+jQocNp/wwuv/xyOnTowAsvvMDcuXP56quvCA8Pp3Xr1tx7771HTatYbujQoSxcuJDrr7++1u6Q+/r68u6773LbbbfxzjvvMG/ePH766SdKSkoIDw+nffv23HzzzVx77bU1OguDy+UCYP78+cyfP7/KdcaNG6cEgIiIVIvFMAzD7CBERESkZlksFpKSkip19W+IDMOgffv2bNmyhW3btp3S1HjJycmkpKTQkL4STZo0ieuvv54nnniC8ePHmx2OiIh4CfUAEBERkXrryy+/ZPPmzYwePfqULv6PNG7cOMDTE2HUqFE1EF3de/zxx9m9ezfbtm0zOxQREfFCSgCIiIhIvXPTTTeRnZ3Nd999h81m48knnzztfU6ePBmATp061dsEwLfffsvq1avNDkNERLyUHgEQERFpgBr6IwAWiwW73U7r1q156qmnuOSSS8wOSURExOspASAiIiIiIiLSCFjNDkBEREREREREap8SACIiIiIiIiKNgBIAIiIiIiIiIo2AEgAiIiIiIiIijYASACIiIiIiIiKNgBIAIiIiIiIiIo2AEgAiIiIiIiIijYASACIiIiIiIiKNwP8DJgkyqbsTYiwAAAAASUVORK5CYII=", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "params.plot(x='freq', y=['sigma_tb', 'sigma_tb_with_con_Xs'],\n", + " title=\"${T_B}$ uncertainty due to uncertainties in ${O_2}$ and ${H_2 O}$ parameters\",\n", + " xlabel='Frequency [GHz]', ylabel='$\\sigma_{T_B}$ [K]',\n", + " label=[atm[atmp.TROPICAL], atm[atmp.TROPICAL] + ' with ${H_2 O}$ ${n_{CS}}$ parameter'], figsize=(12,8))\n", + "plt.grid()" + ] + } + ], + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + }, + "kernelspec": { + "display_name": "Python 3.9.5 64-bit", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.10" + }, + "metadata": { + "interpreter": { + "hash": "aee8b7b246df8f9039afb4144a1f6fd8d2ca17a180786b69acc140d282b71a49" + } + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/en/main/objects.inv b/en/main/objects.inv new file mode 100644 index 00000000..d9fedc31 Binary files /dev/null and b/en/main/objects.inv differ diff --git a/en/main/plot_directive/api-1.png b/en/main/plot_directive/api-1.png new file mode 100644 index 00000000..e156c7ad Binary files /dev/null and b/en/main/plot_directive/api-1.png differ diff --git a/en/main/plot_directive/api-2.png b/en/main/plot_directive/api-2.png new file mode 100644 index 00000000..91151c2b Binary files /dev/null and b/en/main/plot_directive/api-2.png differ diff --git a/en/main/plot_directive/api-3.png b/en/main/plot_directive/api-3.png new file mode 100644 index 00000000..2cbcd9f8 Binary files /dev/null and b/en/main/plot_directive/api-3.png differ diff --git a/en/main/py-modindex.html b/en/main/py-modindex.html new file mode 100644 index 00000000..943cce5d --- /dev/null +++ b/en/main/py-modindex.html @@ -0,0 +1,482 @@ + + + + + + + + + + + Python Module Index — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + + + +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+ + + + + +
+ + +

Python Module Index

+ +
+ p +
+ + + + + + + + + + +
 
+ p
+ pyrtlib +
    + pyrtlib.utils +
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/references.html b/en/main/references.html new file mode 100644 index 00000000..7be90df7 --- /dev/null +++ b/en/main/references.html @@ -0,0 +1,638 @@ + + + + + + + + + + + + References — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + +
+ + + + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

References#

+
+
+[Hobbs1977] +

Hobbs, P. V., and J. M. Wallace, 1977: Atmospheric Science: An Introductory Survey. Academic Press, 350 pp.

+
+
+[Hobbs2006] +

Hobbs, P. V., and J. M. Wallace, 2006: Atmospheric Science: An Introductory Survey. 2nd ed. Academic Press, 504 pp.

+
+
+[NOAA1976] +

National Oceanic and Atmospheric Administration, National Aeronautics and Space Administration, and U. S. Air Force, 1976: U. S. Standard Atmosphere 1976, U.S. Government Printing Office, Washington, DC.

+
+
+[ANDERSON] +

ANDERSON et al. 1986 AFGL Atmospheric Constituent Profiles (0.120km): ResearchGate PDF, AFGL-TR-86-0110

+
+
+[PAYNE] +

Payne, V. H., Mlawer, E. J., Cady-Pereira, K. E., and Moncet, J.-L.: Water vapor continuum absorption in the microwave, IEEE T. Geosci. Remote, 49, 2194–2208, https://doi.org/10.1109/TGRS.2010.2091416, 2011.

+
+
+[August-1828] +

Alduchov, O. A., and R. E. Eskridge, 1996: Improved Magnus’ form approximation of saturation vapor pressure. J. Appl. Meteor., 35, 601–609, http://journals.ametsoc.org/doi/abs/10.1175/1520-0450%281996%29035%3C0601%3AIMFAOS%3E2.0.CO%3B2.

+
+
+[Magnus-1844] +

Magnus, G., 1844: Versuche über die Spannkräfte des Wasserdampfs. Ann. Phys. Chem., 61, 225 – 247, http://onlinelibrary.wiley.com/doi/10.1002/andp.18441370202/abstract.

+
+
+[Bean-Dutton] +

Bradford R. Bean, E. J. Dutton: Radio Meteorology - Superintendentof Documents, U.S.GovernmentPrint.Office, 1966 - 435 pagine, https://books.google.it/books?id=Jw9RAAAAMAAJ&printsec=frontcover&hl=it&source=gbs_ge_summary_r&cad=0#v=onepage&q&f=false.

+
+
+[Jacobson] +

Jacobson, M. Z. Fundamentals of atmospheric modelling. Cambridge Eds., 2005. http://www.dca.ufcg.edu.br/mna/jacobson.pdf

+
+
+[Cimini-2018] +

Cimini, D., Rosenkranz, P. W., Tretyakov, M. Y., Koshelev, M. A., and Romano, F.: Uncertainty of atmospheric microwave absorption model: impact on ground-based radiometer simulations and retrievals, Atmos. Chem. Phys., 18, 15231–15259, https://doi.org/10.5194/acp-18-15231-2018, 2018.

+
+
+[Cimini-2019] +

Cimini, D., Hocking, J., De Angelis, F., Cersosimo, A., Di Paola, F., Gallucci, D., Gentile, S., Geraldi, E., Larosa, S., Nilo, S., Romano, F., Ricciardelli, E., Ripepi, E., Viggiano, M., Luini, L., Riva, C., Marzano, F. S., Martinet, P., Song, Y. Y., Ahn, M. H., and Rosenkranz, P. W.: RTTOV-gb v1.0 – updates on sensors, absorption models, uncertainty, and availability, Geosci. Model Dev., 12, 1833–1845, https://doi.org/10.5194/gmd-12-1833-2019, 2019.

+
+
+[Rosenkranz-2017] +

Rosenkranz, P. W.: Line-by-line microwave radiative transfer (non-scattering), Remote Sens. Code Library, https://doi.org/10.21982/M81013, 2017.

+
+
+[Rosenkranz-2015] +

Rosenkranz, P. W.: A Model for the Complex Dielectric Constant of Supercooled Liquid Water at Microwave Frequencies, IEEE Transactions on Geoscience and Remote Sensing, vol. 53, no. 3, pp. 1387-1393, March 2015, https://doi.org/10.1109/TGRS.2014.2339015.

+
+
+[Rosenkranz-1988] +

P.W. Rosenkranz, Interference coefficients for overlapping oxygen lines in air, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 39, Issue 4, 1988, Pages 287-297, https://doi.org/10.1016/0022-4073(88)90004-0.

+
+
+[Schroeder-Westwater-1991] +

Schroeder J.A. and E.R. Westwater, Users’ Guide to WPL Microwave Radiative Transfer Software, NOAA Technical Memorandum ERL WPL-213, 1991, https://repository.library.noaa.gov/view/noaa/32511

+
+
+[Schroeder-Westwater-1992] +

Schroeder J.A. and E.R. Westwater, “Guide to Microwave Weighting Function Calculations,” U.S. Dept. ofCommerce, National Oceanic and Atmospheric Administration, Wave Propagation Laboratory, July 1992.

+
+
+[Thayer-1974] +

Thayer, G. D. “An improved equation for the radio refractive index of air”. Radio Science, 9(10), 803-807. 1974.

+
+
+[Westwater-1972] +

Westwater, Ed R., Microwave emission from clouds, United States, National Oceanic and Atmospheric Administration;Environmental Research Laboratories (U.S.), 1972, https://repository.library.noaa.gov/view/noaa/22891

+
+
+[Liebe-Layton] +

Liebe, Hans J. and Donald H. Layton. “Millimeter-wave properties of the atmosphere: Laboratory studies and propagation modeling.” (1987).

+
+
+[Liebe-Hufford-Manabe] +

Liebe H.J., G.A. Hufford and T. Manabe, “A model fo r the complex permittivity of water at frequenciesbelow 1 THz”, Internat. J. Infrared and mm Waves, Vol. 12, pp. 659-675 (1991).

+
+
+[Liebe-Hufford-Cotton] +

Liebe, H.J., G.A. Hufford, and M.G. Cotton, Propagation Modeling of Moist Air and SuspendedWater/Ice Particles at Frequencies Below 1000 GH z. AGARD Conference Proc. 542, AtmosphericPropagation Effects through Natural and Man-Made Obscurants for Visible to MM-Wave Radiation,pp.3.1-3.10 (1993).

+
+
+[Boissoles-2003] +
    +
  1. Boissoles, C. Boulet, R.H. Tipping, Alex Brown, Q. Ma, Theoretical calculation of the translation-rotation collision-induced absorption in N2–N2, O2–O2, and N2–O2 pairs, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 82, Issues 1–4, Pages 505-516, https://doi.org/10.1016/S0022-4073(03)00174-2, 2003.

  2. +
+
+
+[Borysow-Frommhold-1986] +

Borysow, A., Frommhold, L., 1986, Collision-induced Rototranslational Absorption Spectra of N 2–N 2 Pairs for Temperatures from 50 to 300 K. The Astrophysical Journal 311, 1043. doi:10.1086/164841.

+
+
+[Mätzler-Rosenkranz-2006] +

Mätzler, C., Rosenkranz, P. W., Battaglia, A., and Wigneron, J. P.:Thermal microwave radiation – applications for remote sensing,no. 52 in IET, Electromagnetic Waves, London, UK, 2006.

+
+
+[Koshelev-2015] +

Koshelev, M. A., Vilkov, I. N., and Tretyakov, M. Yu.: Pressure broadening of oxygen fine structure lines by water, J. Quant. Spectrosc. Ra., 154, 24–27, https://doi.org/10.1016/j.jqsrt.2014.11.019, 2015.

+
+
+[Koshelev-2011] +

Koshelev, M. A., Serov, E. A., Parshin, V. V., and Tretyakov, M. Yu.: Millimeter wave continuum absorption in moist nitrogen at temperatures 261–328 K, J. Quant. Spectrosc. Ra., 112, 2704–2712, https://doi.org/10.1016/j.jqsrt.2011.08.004, 2011.

+
+
+[Koshelev-2018] +

Koshelev, M. A., Golubiatnikov, G. Yu., Vilkov, I. N., and Tretyakov, M. Yu.: Line shape parameters of the 22-GHz water line for accurate modeling in atmospheric applications, J. Quant. Spectrosc. Ra., 205, 51–58, https://doi.org/10.1016/j.jqsrt.2017.09.032, 2018.

+
+
+[Koshelev-2017] +

M.A. Koshelev, T. Delahaye, E.A. Serov, I.N. Vilkov, C. Boulet, M.Yu. Tretyakov, Accurate modeling of the diagnostic 118-GHz oxygen line for remote sensing of the atmosphere, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 196, 2017, Pages 78-86, https://doi.org/10.1016/j.jqsrt.2017.03.043.

+
+
+[Turner-2009] +

Turner, D. D., Cadeddu, M. P., Löhnert, U., Crewell, S., and Vogelmann, A. M.: Modifications to the Water Vapor Continuum in the Microwave Suggested by Ground-Based 150-GHz Observations, IEEE T. Geosci. Remote, 47, 3326–3337, https://doi.org/10.1109/TGRS.2009.2022262, 2009.

+
+
+[Tretyakov-2016] +

Tretyakov, M. Yu.: Spectroscopy underlying microwave remote sensing of atmospheric water vapor, J. Mol. Spectrosc., 328, 7–26, https://doi.org/10.1016/j.jms.2016.06.006, 2016.

+
+
+[Alduchov-1996] +

Alduchov, O. A., and R. E. Eskridge, 1996: Improved Magnus Form Approximation of Saturation Vapor Pressure. J. Appl. Meteor. Climatol., 35, 601–609, https://doi.org/10.1175/1520-0450(1996)035<0601:IMFAOS>2.0.CO;2.

+
+
+[Odintsova-2022] +

T.A. Odintsova, A.O. Koroleva, A.A. Simonova, A. Campargue, M.Yu. Tretyakov. The atmospheric continuum in the “terahertz gap” region (15–700 cm−1): Review of experiments at SOLEIL synchrotron and modeling. Journal of Molecular Spectroscopy, 2022, 386, pp.111603. ⟨https://doi.org/10.1016/j.jms.2022.111603⟩. ⟨hal-03865589⟩

+
+
+[Galanina-2022] +

Galanina, T. A., Koroleva, A. O., Simonova, A. A., Campargue, A., and Tretyakov, M. Y., “The water vapor self-continuum in the “terahertz gap” region (15-700 cm-1): Experiment versus MT_CKD-3.5 model”, Journal of Molecular Spectroscopy, vol. 389, 2022. https://doi.org/10.1016/j.jms.2022.111691.

+
+
+[Meshkov-DeLucia-2007] +

Andrey I. Meshkov, Frank C. De Lucia, Laboratory measurements of dry air atmospheric absorption with a millimeter wave cavity ringdown spectrometer, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 108, Issue 2, 2007, Pages 256-276, ISSN 0022-4073, https://doi.org/10.1016/j.jqsrt.2007.04.001.

+
+
+[Serov-2024] +

E.A. Serov, T.A. Galanina, A.O. Koroleva, D.S. Makarov, I.S. Amerkhanov, M.A. Koshelev, M.Yu. Tretyakov, D.N. Chistikov, A.A. Finenko, A.A. Vigasin, Continuum absorption in pure N2 gas and in its mixture with Ar, Journal of Quantitative Spectroscopy and Radiative Transfer, Volume 328, 2024, 109172, ISSN 0022-4073, https://doi.org/10.1016/j.jqsrt.2024.109172.

+
+
+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/search.html b/en/main/search.html new file mode 100644 index 00000000..1982814d --- /dev/null +++ b/en/main/search.html @@ -0,0 +1,486 @@ + + + + + + + + + + Search - pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + + + +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+ + +
+

Search

+ + + +
+
+ + + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/en/main/searchindex.js b/en/main/searchindex.js new file mode 100644 index 00000000..07db1a81 --- /dev/null +++ b/en/main/searchindex.js @@ -0,0 +1 @@ +Search.setIndex({"docnames": ["api", "examples/generic_tutorial", "examples/index", "examples/plot_atmosphere", "examples/plot_brightness_temperature_down", "examples/plot_brightness_temperature_uncertainties", "examples/plot_brightness_temperature_up", "examples/plot_brightness_temperature_wO3", "examples/plot_bt_era5", "examples/plot_bt_era5_cloudy_profile", "examples/plot_bt_igra2", "examples/plot_bt_wyoming", "examples/plot_log_dependance_tb", "examples/plot_model_cloudy", "examples/plot_water_vapour_profile", "examples/plot_weighting_functions", "examples/sg_execution_times", "examples/uncertainty_tutorial", "generated/pyrtlib.absorption_model.AbsModel", "generated/pyrtlib.absorption_model.AbsModel.__init__", "generated/pyrtlib.absorption_model.AbsModel.implemented_models", "generated/pyrtlib.absorption_model.AbsModel.set_ll", "generated/pyrtlib.absorption_model.H2OAbsModel", "generated/pyrtlib.absorption_model.H2OAbsModel.__init__", "generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption", "generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum", "generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24", "generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models", "generated/pyrtlib.absorption_model.H2OAbsModel.set_ll", "generated/pyrtlib.absorption_model.LiqAbsModel", "generated/pyrtlib.absorption_model.LiqAbsModel.__init__", "generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models", "generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption", "generated/pyrtlib.absorption_model.LiqAbsModel.set_ll", "generated/pyrtlib.absorption_model.N2AbsModel", "generated/pyrtlib.absorption_model.N2AbsModel.__init__", "generated/pyrtlib.absorption_model.N2AbsModel.implemented_models", "generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption", "generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24", "generated/pyrtlib.absorption_model.N2AbsModel.set_ll", "generated/pyrtlib.absorption_model.O2AbsModel", "generated/pyrtlib.absorption_model.O2AbsModel.__init__", "generated/pyrtlib.absorption_model.O2AbsModel.implemented_models", "generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption", "generated/pyrtlib.absorption_model.O2AbsModel.set_ll", "generated/pyrtlib.absorption_model.O3AbsModel", "generated/pyrtlib.absorption_model.O3AbsModel.__init__", "generated/pyrtlib.absorption_model.O3AbsModel.implemented_models", "generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption", "generated/pyrtlib.absorption_model.O3AbsModel.set_ll", "generated/pyrtlib.apiwebservices.ERA5Reanalysis", "generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__", "generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data", "generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data", "generated/pyrtlib.apiwebservices.IGRAUpperAir", "generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__", "generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data", "generated/pyrtlib.apiwebservices.WyomingUpperAir", "generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__", "generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations", "generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data", "generated/pyrtlib.climatology.AtmosphericProfiles", "generated/pyrtlib.climatology.AtmosphericProfiles.__init__", "generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles", "generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm", "generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor", "generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace", "generated/pyrtlib.climatology.ProfileExtrapolation", "generated/pyrtlib.climatology.ProfileExtrapolation.__init__", "generated/pyrtlib.climatology.ProfileExtrapolation.pressure", "generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation", "generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure", "generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature", "generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density", "generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure", "generated/pyrtlib.climatology.ProfileExtrapolation.temperature", "generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density", "generated/pyrtlib.rt_equation.RTEquation", "generated/pyrtlib.rt_equation.RTEquation.__init__", "generated/pyrtlib.rt_equation.RTEquation.bright", "generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption", "generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density", "generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature", "generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption", "generated/pyrtlib.rt_equation.RTEquation.exponential_integration", "generated/pyrtlib.rt_equation.RTEquation.planck", "generated/pyrtlib.rt_equation.RTEquation.ray_tracing", "generated/pyrtlib.rt_equation.RTEquation.refractivity", "generated/pyrtlib.rt_equation.RTEquation.vapor", "generated/pyrtlib.tb_spectrum.TbCloudRTE", "generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__", "generated/pyrtlib.tb_spectrum.TbCloudRTE.execute", "generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl", "generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy", "generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu", "generated/pyrtlib.uncertainty.AbsModUncertainty", "generated/pyrtlib.uncertainty.AbsModUncertainty.__init__", "generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation", "generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation", "generated/pyrtlib.uncertainty.SpectroscopicParameter", "generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__", "generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters", "generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters", "generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters", "generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters", "generated/pyrtlib.utils", "generated/pyrtlib.utils.atmospheric_tickness", "generated/pyrtlib.utils.constants", "generated/pyrtlib.utils.dewpoint2rh", "generated/pyrtlib.utils.dilec12", "generated/pyrtlib.utils.e2mr", "generated/pyrtlib.utils.esice_goffgratch", "generated/pyrtlib.utils.eswat_goffgratch", "generated/pyrtlib.utils.gas_mass", "generated/pyrtlib.utils.get_frequencies", "generated/pyrtlib.utils.get_frequencies_sat", "generated/pyrtlib.utils.height_to_pressure", "generated/pyrtlib.utils.import_lineshape", "generated/pyrtlib.utils.kgkg_to_kgm3", "generated/pyrtlib.utils.mr2e", "generated/pyrtlib.utils.mr2rh", "generated/pyrtlib.utils.mr2rho", "generated/pyrtlib.utils.ppmv2gkg", "generated/pyrtlib.utils.ppmv_to_moleculesm3", "generated/pyrtlib.utils.pressure_to_height", "generated/pyrtlib.utils.rho2mr", "generated/pyrtlib.utils.rho2rh", "generated/pyrtlib.utils.satmix", "generated/pyrtlib.utils.satvap", "generated/pyrtlib.utils.tk2b_mod", "generated/pyrtlib.utils.to_celsius", "generated/pyrtlib.utils.to_kelvin", "generated/pyrtlib.utils.virtual_temperature", "generated/pyrtlib.weighting_functions.WeightingFunctions", "generated/pyrtlib.weighting_functions.WeightingFunctions.__init__", "generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf", "generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf", "generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped", "index", "installation", "notebook/Pressure_Broadening_effect", "notebook/first_run", "notebook/index", "notebook/tutorial", "notebook/uncertainty", "references", "sg_execution_times"], "filenames": ["api.rst", "examples/generic_tutorial.rst", "examples/index.rst", "examples/plot_atmosphere.rst", "examples/plot_brightness_temperature_down.rst", "examples/plot_brightness_temperature_uncertainties.rst", "examples/plot_brightness_temperature_up.rst", "examples/plot_brightness_temperature_wO3.rst", "examples/plot_bt_era5.rst", "examples/plot_bt_era5_cloudy_profile.rst", "examples/plot_bt_igra2.rst", "examples/plot_bt_wyoming.rst", "examples/plot_log_dependance_tb.rst", "examples/plot_model_cloudy.rst", "examples/plot_water_vapour_profile.rst", "examples/plot_weighting_functions.rst", "examples/sg_execution_times.rst", "examples/uncertainty_tutorial.rst", "generated/pyrtlib.absorption_model.AbsModel.rst", "generated/pyrtlib.absorption_model.AbsModel.__init__.rst", "generated/pyrtlib.absorption_model.AbsModel.implemented_models.rst", "generated/pyrtlib.absorption_model.AbsModel.set_ll.rst", "generated/pyrtlib.absorption_model.H2OAbsModel.rst", "generated/pyrtlib.absorption_model.H2OAbsModel.__init__.rst", "generated/pyrtlib.absorption_model.H2OAbsModel.h2o_absorption.rst", "generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum.rst", "generated/pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24.rst", "generated/pyrtlib.absorption_model.H2OAbsModel.implemented_models.rst", "generated/pyrtlib.absorption_model.H2OAbsModel.set_ll.rst", "generated/pyrtlib.absorption_model.LiqAbsModel.rst", "generated/pyrtlib.absorption_model.LiqAbsModel.__init__.rst", "generated/pyrtlib.absorption_model.LiqAbsModel.implemented_models.rst", "generated/pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption.rst", "generated/pyrtlib.absorption_model.LiqAbsModel.set_ll.rst", "generated/pyrtlib.absorption_model.N2AbsModel.rst", "generated/pyrtlib.absorption_model.N2AbsModel.__init__.rst", "generated/pyrtlib.absorption_model.N2AbsModel.implemented_models.rst", "generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption.rst", "generated/pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24.rst", "generated/pyrtlib.absorption_model.N2AbsModel.set_ll.rst", "generated/pyrtlib.absorption_model.O2AbsModel.rst", "generated/pyrtlib.absorption_model.O2AbsModel.__init__.rst", "generated/pyrtlib.absorption_model.O2AbsModel.implemented_models.rst", "generated/pyrtlib.absorption_model.O2AbsModel.o2_absorption.rst", "generated/pyrtlib.absorption_model.O2AbsModel.set_ll.rst", "generated/pyrtlib.absorption_model.O3AbsModel.rst", "generated/pyrtlib.absorption_model.O3AbsModel.__init__.rst", "generated/pyrtlib.absorption_model.O3AbsModel.implemented_models.rst", "generated/pyrtlib.absorption_model.O3AbsModel.o3_absorption.rst", "generated/pyrtlib.absorption_model.O3AbsModel.set_ll.rst", "generated/pyrtlib.apiwebservices.ERA5Reanalysis.rst", "generated/pyrtlib.apiwebservices.ERA5Reanalysis.__init__.rst", "generated/pyrtlib.apiwebservices.ERA5Reanalysis.read_data.rst", "generated/pyrtlib.apiwebservices.ERA5Reanalysis.request_data.rst", "generated/pyrtlib.apiwebservices.IGRAUpperAir.rst", "generated/pyrtlib.apiwebservices.IGRAUpperAir.__init__.rst", "generated/pyrtlib.apiwebservices.IGRAUpperAir.request_data.rst", "generated/pyrtlib.apiwebservices.WyomingUpperAir.rst", "generated/pyrtlib.apiwebservices.WyomingUpperAir.__init__.rst", "generated/pyrtlib.apiwebservices.WyomingUpperAir.get_stations.rst", "generated/pyrtlib.apiwebservices.WyomingUpperAir.request_data.rst", "generated/pyrtlib.climatology.AtmosphericProfiles.rst", "generated/pyrtlib.climatology.AtmosphericProfiles.__init__.rst", "generated/pyrtlib.climatology.AtmosphericProfiles.atm_profiles.rst", "generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm.rst", "generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor.rst", "generated/pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.__init__.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.pressure.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.standard_pressure.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.standard_temperature.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.temperature.rst", "generated/pyrtlib.climatology.ProfileExtrapolation.water_vapour_density.rst", "generated/pyrtlib.rt_equation.RTEquation.rst", "generated/pyrtlib.rt_equation.RTEquation.__init__.rst", "generated/pyrtlib.rt_equation.RTEquation.bright.rst", "generated/pyrtlib.rt_equation.RTEquation.clearsky_absorption.rst", "generated/pyrtlib.rt_equation.RTEquation.cloud_integrated_density.rst", "generated/pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature.rst", "generated/pyrtlib.rt_equation.RTEquation.cloudy_absorption.rst", "generated/pyrtlib.rt_equation.RTEquation.exponential_integration.rst", "generated/pyrtlib.rt_equation.RTEquation.planck.rst", "generated/pyrtlib.rt_equation.RTEquation.ray_tracing.rst", "generated/pyrtlib.rt_equation.RTEquation.refractivity.rst", "generated/pyrtlib.rt_equation.RTEquation.vapor.rst", "generated/pyrtlib.tb_spectrum.TbCloudRTE.rst", "generated/pyrtlib.tb_spectrum.TbCloudRTE.__init__.rst", "generated/pyrtlib.tb_spectrum.TbCloudRTE.execute.rst", "generated/pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl.rst", "generated/pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy.rst", "generated/pyrtlib.tb_spectrum.TbCloudRTE.set_amu.rst", "generated/pyrtlib.uncertainty.AbsModUncertainty.rst", "generated/pyrtlib.uncertainty.AbsModUncertainty.__init__.rst", "generated/pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation.rst", "generated/pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation.rst", "generated/pyrtlib.uncertainty.SpectroscopicParameter.rst", "generated/pyrtlib.uncertainty.SpectroscopicParameter.__init__.rst", "generated/pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters.rst", "generated/pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters.rst", "generated/pyrtlib.uncertainty.SpectroscopicParameter.set_parameters.rst", "generated/pyrtlib.uncertainty.SpectroscopicParameter.water_parameters.rst", "generated/pyrtlib.utils.rst", "generated/pyrtlib.utils.atmospheric_tickness.rst", "generated/pyrtlib.utils.constants.rst", "generated/pyrtlib.utils.dewpoint2rh.rst", "generated/pyrtlib.utils.dilec12.rst", "generated/pyrtlib.utils.e2mr.rst", "generated/pyrtlib.utils.esice_goffgratch.rst", "generated/pyrtlib.utils.eswat_goffgratch.rst", "generated/pyrtlib.utils.gas_mass.rst", "generated/pyrtlib.utils.get_frequencies.rst", "generated/pyrtlib.utils.get_frequencies_sat.rst", "generated/pyrtlib.utils.height_to_pressure.rst", "generated/pyrtlib.utils.import_lineshape.rst", "generated/pyrtlib.utils.kgkg_to_kgm3.rst", "generated/pyrtlib.utils.mr2e.rst", "generated/pyrtlib.utils.mr2rh.rst", "generated/pyrtlib.utils.mr2rho.rst", "generated/pyrtlib.utils.ppmv2gkg.rst", "generated/pyrtlib.utils.ppmv_to_moleculesm3.rst", "generated/pyrtlib.utils.pressure_to_height.rst", "generated/pyrtlib.utils.rho2mr.rst", "generated/pyrtlib.utils.rho2rh.rst", "generated/pyrtlib.utils.satmix.rst", "generated/pyrtlib.utils.satvap.rst", "generated/pyrtlib.utils.tk2b_mod.rst", "generated/pyrtlib.utils.to_celsius.rst", "generated/pyrtlib.utils.to_kelvin.rst", "generated/pyrtlib.utils.virtual_temperature.rst", "generated/pyrtlib.weighting_functions.WeightingFunctions.rst", "generated/pyrtlib.weighting_functions.WeightingFunctions.__init__.rst", "generated/pyrtlib.weighting_functions.WeightingFunctions.generate_wf.rst", "generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf.rst", "generated/pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped.rst", "index.rst", "installation.rst", "notebook/Pressure_Broadening_effect.ipynb", "notebook/first_run.ipynb", "notebook/index.rst", "notebook/tutorial.ipynb", "notebook/uncertainty.ipynb", "references.rst", "sg_execution_times.rst"], "titles": ["API references", "Generic Example", "Gallery example", "Atmospheric Profiles", "Performing Downwelling Brightness Temperature calculation", "Performing sensitivity of spectroscopic parameters", "Performing Upwelling Brightness Temperature calculation", "Performing Downwelling Brightness Temperature calculation with Ozone", "Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.", "Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.", "Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).", "Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.", "Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz", "Performing Downwelling Brightness Temperature calculation in cloudy condition.", "Water Vapour Absorption Profiles", "Computation of Weighting Functions", "Computation times", "Uncertainty Example", "pyrtlib.absorption_model.AbsModel", "pyrtlib.absorption_model.AbsModel.__init__", "pyrtlib.absorption_model.AbsModel.implemented_models", "pyrtlib.absorption_model.AbsModel.set_ll", "pyrtlib.absorption_model.H2OAbsModel", "pyrtlib.absorption_model.H2OAbsModel.__init__", "pyrtlib.absorption_model.H2OAbsModel.h2o_absorption", "pyrtlib.absorption_model.H2OAbsModel.h2o_continuum", "pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24", "pyrtlib.absorption_model.H2OAbsModel.implemented_models", "pyrtlib.absorption_model.H2OAbsModel.set_ll", "pyrtlib.absorption_model.LiqAbsModel", "pyrtlib.absorption_model.LiqAbsModel.__init__", "pyrtlib.absorption_model.LiqAbsModel.implemented_models", "pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption", "pyrtlib.absorption_model.LiqAbsModel.set_ll", "pyrtlib.absorption_model.N2AbsModel", "pyrtlib.absorption_model.N2AbsModel.__init__", "pyrtlib.absorption_model.N2AbsModel.implemented_models", "pyrtlib.absorption_model.N2AbsModel.n2_absorption", "pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24", "pyrtlib.absorption_model.N2AbsModel.set_ll", "pyrtlib.absorption_model.O2AbsModel", "pyrtlib.absorption_model.O2AbsModel.__init__", "pyrtlib.absorption_model.O2AbsModel.implemented_models", "pyrtlib.absorption_model.O2AbsModel.o2_absorption", "pyrtlib.absorption_model.O2AbsModel.set_ll", "pyrtlib.absorption_model.O3AbsModel", "pyrtlib.absorption_model.O3AbsModel.__init__", "pyrtlib.absorption_model.O3AbsModel.implemented_models", "pyrtlib.absorption_model.O3AbsModel.o3_absorption", "pyrtlib.absorption_model.O3AbsModel.set_ll", "pyrtlib.apiwebservices.ERA5Reanalysis", "pyrtlib.apiwebservices.ERA5Reanalysis.__init__", "pyrtlib.apiwebservices.ERA5Reanalysis.read_data", "pyrtlib.apiwebservices.ERA5Reanalysis.request_data", "pyrtlib.apiwebservices.IGRAUpperAir", "pyrtlib.apiwebservices.IGRAUpperAir.__init__", "pyrtlib.apiwebservices.IGRAUpperAir.request_data", "pyrtlib.apiwebservices.WyomingUpperAir", "pyrtlib.apiwebservices.WyomingUpperAir.__init__", "pyrtlib.apiwebservices.WyomingUpperAir.get_stations", "pyrtlib.apiwebservices.WyomingUpperAir.request_data", "pyrtlib.climatology.AtmosphericProfiles", "pyrtlib.climatology.AtmosphericProfiles.__init__", "pyrtlib.climatology.AtmosphericProfiles.atm_profiles", "pyrtlib.climatology.AtmosphericProfiles.gl_atm", "pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor", "pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace", "pyrtlib.climatology.ProfileExtrapolation", "pyrtlib.climatology.ProfileExtrapolation.__init__", "pyrtlib.climatology.ProfileExtrapolation.pressure", "pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation", "pyrtlib.climatology.ProfileExtrapolation.standard_pressure", "pyrtlib.climatology.ProfileExtrapolation.standard_temperature", "pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density", "pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure", "pyrtlib.climatology.ProfileExtrapolation.temperature", "pyrtlib.climatology.ProfileExtrapolation.water_vapour_density", "pyrtlib.rt_equation.RTEquation", "pyrtlib.rt_equation.RTEquation.__init__", "pyrtlib.rt_equation.RTEquation.bright", "pyrtlib.rt_equation.RTEquation.clearsky_absorption", "pyrtlib.rt_equation.RTEquation.cloud_integrated_density", "pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature", "pyrtlib.rt_equation.RTEquation.cloudy_absorption", "pyrtlib.rt_equation.RTEquation.exponential_integration", "pyrtlib.rt_equation.RTEquation.planck", "pyrtlib.rt_equation.RTEquation.ray_tracing", "pyrtlib.rt_equation.RTEquation.refractivity", "pyrtlib.rt_equation.RTEquation.vapor", "pyrtlib.tb_spectrum.TbCloudRTE", "pyrtlib.tb_spectrum.TbCloudRTE.__init__", "pyrtlib.tb_spectrum.TbCloudRTE.execute", "pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl", "pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy", "pyrtlib.tb_spectrum.TbCloudRTE.set_amu", "pyrtlib.uncertainty.AbsModUncertainty", "pyrtlib.uncertainty.AbsModUncertainty.__init__", "pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation", "pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation", "pyrtlib.uncertainty.SpectroscopicParameter", "pyrtlib.uncertainty.SpectroscopicParameter.__init__", "pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters", "pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters", "pyrtlib.uncertainty.SpectroscopicParameter.set_parameters", "pyrtlib.uncertainty.SpectroscopicParameter.water_parameters", "pyrtlib.utils", "pyrtlib.utils.atmospheric_tickness", "pyrtlib.utils.constants", "pyrtlib.utils.dewpoint2rh", "pyrtlib.utils.dilec12", "pyrtlib.utils.e2mr", "pyrtlib.utils.esice_goffgratch", "pyrtlib.utils.eswat_goffgratch", "pyrtlib.utils.gas_mass", "pyrtlib.utils.get_frequencies", "pyrtlib.utils.get_frequencies_sat", "pyrtlib.utils.height_to_pressure", "pyrtlib.utils.import_lineshape", "pyrtlib.utils.kgkg_to_kgm3", "pyrtlib.utils.mr2e", "pyrtlib.utils.mr2rh", "pyrtlib.utils.mr2rho", "pyrtlib.utils.ppmv2gkg", "pyrtlib.utils.ppmv_to_moleculesm3", "pyrtlib.utils.pressure_to_height", "pyrtlib.utils.rho2mr", "pyrtlib.utils.rho2rh", "pyrtlib.utils.satmix", "pyrtlib.utils.satvap", "pyrtlib.utils.tk2b_mod", "pyrtlib.utils.to_celsius", "pyrtlib.utils.to_kelvin", "pyrtlib.utils.virtual_temperature", "pyrtlib.weighting_functions.WeightingFunctions", "pyrtlib.weighting_functions.WeightingFunctions.__init__", "pyrtlib.weighting_functions.WeightingFunctions.generate_wf", "pyrtlib.weighting_functions.WeightingFunctions.plot_wf", "pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped", "PyRTlib documentation", "Installation instructions", "Example by Loretta-Pearl-Poku", "My first test with PyRTlib", "Community example", "Generic example", "Calculate uncertainty on BTs (notebook)", "References", "Computation times"], "terms": {"The": [0, 11, 12, 15, 20, 27, 31, 36, 42, 43, 47, 52, 53, 56, 59, 60, 61, 71, 72, 73, 74, 82, 86, 90, 94, 95, 97, 101, 102, 103, 104, 106, 107, 108, 113, 116, 118, 124, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 145], "which": [0, 59, 60, 71, 72, 73, 74, 84, 90, 106, 107, 115, 120, 127, 128, 138, 143, 144], "comput": [0, 2, 7, 24, 25, 32, 48, 64, 71, 72, 79, 80, 82, 83, 85, 87, 88, 90, 91, 98, 109, 110, 111, 112, 115, 119, 120, 122, 127, 128, 133, 135, 136, 137, 138, 139], "bright": [0, 2, 5, 16, 28, 49, 52, 56, 60, 64, 67, 70, 89, 90, 91, 92, 93, 107, 108, 117, 118, 120, 122, 123, 131, 140, 141, 146], "temperatur": [0, 2, 3, 5, 12, 16, 24, 25, 26, 28, 32, 37, 38, 43, 48, 49, 52, 56, 60, 64, 67, 70, 71, 72, 73, 74, 79, 80, 82, 83, 85, 87, 88, 89, 90, 91, 92, 93, 104, 106, 107, 108, 111, 112, 117, 118, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 134, 140, 141, 145, 146], "tb": [0, 17, 90, 144], "mean": [0, 82, 85, 90, 91], "radiat": [0, 82, 85, 90, 91, 145], "tmr": [0, 1, 82, 90, 91, 138, 139, 143], "integr": [0, 54, 81, 82, 84, 85, 90, 91, 138], "tau": [0, 12, 90, 135], "clear": [0, 13, 90], "cloudi": [0, 2, 16, 52, 64, 89, 90, 91, 92, 93, 117, 118, 120, 122, 146], "condit": [0, 2, 16, 52, 64, 89, 90, 91, 92, 93, 117, 118, 120, 122, 146], "also": [0, 15, 85, 90, 91, 99, 138, 139, 140, 141], "return": [0, 3, 7, 14, 20, 24, 25, 26, 27, 31, 32, 36, 37, 38, 42, 43, 47, 48, 52, 53, 56, 59, 60, 63, 64, 65, 66, 69, 70, 71, 72, 73, 74, 75, 76, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 90, 91, 97, 98, 101, 102, 104, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 134, 135], "all": [0, 2, 20, 24, 27, 31, 36, 42, 43, 47, 56, 90, 91, 107, 111, 112, 141, 146], "quantiti": [0, 90], "origin": [0, 32, 90], "tbmodel": [0, 90], "cyber": [0, 90], "version": [0, 11, 32, 54, 56, 90, 107, 138, 139, 141], "schroeder": [0, 79, 85, 90, 129, 145], "westwat": [0, 79, 83, 85, 86, 90, 129, 145], "1991": [0, 79, 90, 129, 145], "exampl": [0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 95, 139, 146], "downwel": [0, 2, 5, 16, 17, 28, 49, 64, 89, 90, 91, 92, 93, 107, 120, 122, 123, 140, 146], "rte": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 17, 85, 138, 140, 141, 143, 144], "satellit": [0, 1, 4, 5, 7, 8, 9, 10, 11, 13, 15, 17, 115, 137, 140, 143, 144], "fals": [0, 1, 3, 4, 5, 7, 9, 13, 14, 15, 17, 56, 88, 89, 90, 91, 108, 136, 140, 143, 144, 145], "typic": [0, 141], "tropic": [0, 1, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 61, 64, 140, 141, 143, 144], "from": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 20, 21, 24, 25, 27, 28, 31, 32, 33, 36, 39, 42, 43, 44, 47, 49, 50, 52, 53, 54, 56, 57, 59, 60, 61, 64, 65, 66, 79, 80, 82, 85, 87, 99, 108, 109, 111, 112, 114, 115, 117, 118, 120, 121, 129, 130, 131, 132, 138, 140, 141, 143, 144, 145, 146], "pyrtlib": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 140], "tb_spectrum": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 17, 138, 140, 141, 143, 144], "import": [0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 20, 21, 24, 27, 28, 31, 33, 36, 39, 42, 44, 47, 49, 52, 56, 60, 61, 64, 65, 66, 99, 115, 117, 132, 138, 140, 141], "tbcloudrt": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 17, 138, 140, 141, 143, 144], "climatologi": [0, 1, 3, 4, 5, 6, 7, 10, 12, 13, 14, 15, 17, 24, 138, 140, 141, 143, 144], "atmosphericprofil": [0, 1, 3, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 113, 138, 140, 141, 143, 144], "atmp": [0, 1, 3, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 61, 64, 65, 66, 138, 140, 141, 143, 144], "ppmv2gkg": [0, 1, 3, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 138, 140, 141, 143, 144], "mr2rh": [0, 1, 3, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 138, 140, 141, 143, 144], "z": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 24, 52, 64, 70, 86, 89, 90, 116, 118, 124, 133, 134, 138, 140, 141, 143, 144, 145], "p": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 24, 37, 38, 43, 48, 52, 64, 66, 68, 69, 71, 72, 73, 74, 75, 76, 80, 87, 89, 90, 106, 107, 109, 110, 116, 118, 119, 120, 121, 123, 124, 125, 126, 127, 133, 134, 138, 139, 140, 141, 143, 144, 145], "_": [0, 3, 12, 14, 15, 17, 24, 64, 98, 138, 141, 144], "t": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 24, 25, 26, 37, 38, 43, 48, 52, 64, 72, 75, 79, 80, 83, 85, 87, 88, 89, 90, 106, 108, 109, 111, 112, 118, 120, 121, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 138, 139, 140, 141, 143, 144, 145], "md": [0, 1, 3, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 64, 138, 140, 141, 143, 144], "gl_atm": [0, 1, 3, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 138, 140, 141, 143, 144], "gkg": [0, 1, 3, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 138, 140, 141, 143, 144], "h2o": [0, 1, 3, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 26, 61, 64, 118, 125, 138, 140, 141, 143, 144], "rh": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 24, 52, 60, 70, 88, 89, 90, 108, 120, 133, 134, 138, 140, 141, 143, 144], "0": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 24, 32, 37, 38, 43, 53, 61, 66, 74, 82, 84, 85, 90, 98, 99, 103, 104, 107, 117, 138, 139, 140, 141, 143, 144, 145, 146], "100": [0, 1, 3, 4, 5, 6, 7, 12, 13, 14, 15, 17, 24, 138, 139, 140, 141, 143, 144], "ang": [0, 1, 4, 6, 7, 8, 9, 11, 13, 138, 140, 143, 145], "np": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 24, 25, 26, 32, 37, 38, 48, 59, 70, 80, 81, 82, 83, 85, 88, 90, 91, 107, 125, 126, 134, 135, 138, 140, 141, 143, 144], "arrai": [0, 1, 4, 6, 7, 8, 9, 11, 12, 13, 15, 17, 64, 65, 66, 81, 83, 84, 85, 86, 89, 90, 117, 134, 138, 140, 143, 144], "90": [0, 1, 4, 6, 7, 8, 9, 11, 13, 89, 90, 138, 140, 141, 143], "frq": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 24, 25, 26, 43, 80, 83, 85, 89, 90, 138, 140, 141, 143, 144], "arang": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 24, 138, 140, 141, 143, 144], "20": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 24, 25, 43, 86, 87, 109, 138, 141, 143, 144], "201": [0, 1, 7, 8, 10, 11, 12, 24, 143], "1": [0, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 24, 25, 26, 32, 37, 38, 43, 52, 61, 64, 65, 66, 68, 69, 71, 72, 73, 74, 75, 76, 79, 84, 90, 95, 98, 99, 106, 107, 108, 109, 111, 112, 116, 118, 124, 129, 132, 133, 134, 138, 139, 140, 141, 143, 144, 145], "init_absmdl": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 17, 138, 140, 141, 143, 144], "r19sd": [0, 6, 13, 14, 20, 27, 31, 36, 42, 47, 140], "df": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 17, 56, 60, 138, 140, 141, 143, 144], "execut": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 16, 17, 97, 138, 140, 141, 143, 144, 146], "set_index": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 140, 141, 143], "tbtotal": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 17, 91, 138, 139, 140, 141, 143, 144], "plot": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 136, 137, 138, 140, 141], "figsiz": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 136, 137, 140, 141, 143, 144], "12": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 16, 17, 32, 43, 52, 56, 60, 66, 107, 117, 132, 140, 141, 143, 144, 145, 146], "8": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 17, 43, 64, 65, 66, 139, 140, 141, 143, 144], "xlabel": [0, 10, 17, 141, 144], "frequenc": [0, 1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 24, 25, 26, 32, 37, 38, 43, 48, 79, 80, 82, 83, 85, 87, 90, 91, 109, 114, 115, 129, 137, 138, 140, 141, 143, 145], "ghz": [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 16, 17, 24, 25, 26, 32, 37, 38, 43, 48, 64, 80, 83, 85, 87, 89, 90, 91, 92, 109, 114, 115, 120, 122, 140, 141, 143, 144, 145, 146], "ylabel": [0, 10, 17, 141, 144], "k": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 17, 24, 25, 26, 32, 37, 38, 43, 48, 52, 64, 70, 71, 72, 75, 79, 80, 82, 83, 85, 87, 88, 90, 91, 106, 107, 109, 111, 112, 118, 120, 121, 123, 125, 126, 127, 128, 129, 130, 131, 132, 134, 140, 141, 143, 144, 145], "grid": [0, 4, 5, 6, 8, 10, 11, 12, 13, 17, 53, 140, 141, 144], "true": [0, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 14, 15, 56, 88, 89, 90, 91, 136, 140, 141], "i": [0, 4, 5, 6, 9, 11, 12, 13, 14, 15, 17, 18, 24, 37, 43, 56, 68, 69, 71, 72, 73, 74, 75, 76, 80, 82, 84, 85, 90, 97, 98, 99, 101, 102, 104, 106, 107, 108, 109, 118, 120, 127, 128, 132, 133, 137, 138, 139, 140, 141, 144, 145], "possibl": [0, 141], "combin": 0, "follow": [0, 12, 15, 99, 139, 141], "us": [0, 2, 3, 4, 5, 6, 7, 12, 13, 14, 15, 16, 22, 29, 32, 34, 38, 40, 43, 45, 68, 83, 90, 98, 99, 102, 106, 109, 111, 112, 124, 126, 127, 128, 132, 138, 139, 141, 143, 146], "o_2": [0, 7, 17, 40, 80, 101, 144], "r16": [0, 1, 14, 20, 24, 27, 31, 36, 42, 47, 143], "h_2o": [0, 5, 7, 12, 22, 80, 104, 110, 119, 138], "upwel": [0, 2, 16, 28, 52, 56, 60, 64, 67, 70, 89, 90, 91, 92, 93, 108, 117, 118, 120, 122, 131, 138, 140, 141, 146], "emiss": [0, 9, 145], "surfac": [0, 71, 72, 73, 74], "absorption_model": [0, 5, 7, 8, 9, 10, 11, 12, 14, 17, 117, 140, 141, 144], "h2oabsmodel": [0, 5, 7, 8, 9, 10, 11, 14, 21, 33, 39, 44, 49, 117, 140], "9": [0, 1, 15, 43, 64, 65, 139, 141, 143, 144, 145], "set_ll": [0, 5, 7, 10, 17, 117, 141, 144], "constitu": [0, 61, 145], "120km": [0, 61, 145], "supliment": [0, 61], "other": [0, 91], "data": [0, 50, 52, 53, 54, 56, 57, 60, 61, 69, 70, 75, 76, 109, 116, 124, 135, 138], "anderson": [0, 61, 145], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 18, 21, 22, 28, 29, 33, 34, 39, 40, 44, 45, 48, 49, 52, 64, 69, 75, 76, 77, 82, 90, 91, 95, 97, 98, 101, 102, 104, 105, 106, 107, 117, 118, 123, 132, 133, 135, 139, 140, 141, 143, 144], "file": [0, 16, 52, 53, 55, 56, 146], "wa": [0, 140], "partli": 0, "copi": [0, 17, 144], "fascod2": 0, "routin": [0, 95, 107], "mlatmb": 0, "10": [0, 1, 10, 11, 12, 13, 15, 24, 43, 66, 99, 118, 138, 139, 140, 141, 143, 144, 145], "11": [0, 15, 43, 56, 66, 107, 140, 143, 144, 145], "87": [0, 9], "contain": [0, 22, 29, 34, 40, 45, 52, 56, 60, 61, 64, 77, 80, 81, 84, 86, 91, 105], "6": [0, 4, 5, 6, 9, 10, 15, 17, 37, 43, 56, 60, 61, 64, 65, 68, 95, 108, 117, 119, 140, 141, 143, 144], "2": [0, 3, 5, 8, 9, 10, 11, 12, 13, 14, 15, 25, 26, 32, 37, 43, 52, 54, 56, 61, 64, 65, 66, 74, 79, 95, 98, 99, 103, 107, 109, 118, 129, 132, 138, 139, 140, 141, 143, 144, 145], "midlatitud": [0, 1, 4, 5, 6, 7, 13, 61, 64, 140, 143, 144], "summer": [0, 1, 4, 5, 6, 7, 13, 61, 64, 69, 75, 76, 140, 143, 144], "3": [0, 1, 5, 9, 11, 12, 13, 26, 32, 37, 43, 48, 52, 53, 61, 64, 65, 66, 73, 74, 76, 79, 81, 83, 86, 88, 93, 95, 99, 106, 109, 118, 119, 121, 123, 125, 126, 127, 129, 132, 138, 139, 141, 143, 144, 145], "winter": [0, 1, 4, 5, 6, 7, 13, 61, 64, 69, 75, 76, 140, 143, 144], "4": [0, 8, 9, 11, 12, 15, 17, 25, 32, 43, 53, 61, 64, 65, 66, 79, 85, 95, 129, 138, 139, 141, 143, 144, 145], "subarct": [0, 1, 4, 5, 6, 7, 13, 61, 64, 140, 143, 144], "5": [0, 4, 11, 12, 15, 17, 43, 61, 64, 66, 74, 95, 99, 104, 108, 127, 139, 141, 143, 144, 145], "u": [0, 1, 4, 5, 6, 7, 13, 15, 61, 64, 116, 124, 138, 140, 143, 144, 145], "": [0, 1, 4, 5, 6, 7, 11, 13, 15, 17, 43, 54, 57, 64, 65, 66, 79, 83, 97, 107, 116, 124, 132, 135, 138, 140, 141, 143, 144, 145], "each": [0, 61, 84, 86, 91], "50": [0, 3, 15, 61, 90, 139, 140, 145], "level": [0, 8, 9, 10, 61, 81, 82, 84, 85, 140, 143, 144], "altitud": [0, 3, 14, 61, 64, 69, 70, 75, 76], "km": [0, 3, 14, 26, 32, 37, 38, 43, 48, 52, 61, 64, 69, 70, 71, 72, 73, 74, 75, 76, 80, 81, 83, 84, 86, 90, 93, 107, 134, 143, 144], "pressur": [0, 3, 8, 9, 10, 11, 14, 24, 26, 37, 38, 43, 48, 56, 60, 61, 64, 70, 71, 74, 80, 87, 88, 90, 106, 110, 111, 112, 116, 118, 119, 120, 121, 123, 124, 125, 126, 127, 128, 134, 140, 145], "mb": [0, 16, 37, 48, 61, 80, 87, 88, 90, 106, 110, 111, 112, 119, 120, 121, 125, 126, 127, 141, 146], "densiti": [0, 9, 14, 48, 61, 64, 65, 66, 73, 74, 76, 80, 81, 83, 88, 91, 93, 121, 123, 125, 126], "cm": [0, 25, 26, 38, 61, 64, 81, 91, 145], "molec": [0, 61], "ppmv": [0, 61, 64, 65, 66, 122, 123], "co_2": 0, "o_3": [0, 7, 45, 48, 102], "n_2o": 0, "co": [0, 61, 145], "ch_4": 0, "7": [0, 5, 6, 10, 12, 14, 43, 64, 65, 66, 74, 104, 107, 108, 139, 140, 141, 143, 144, 145], "plu": [0, 61, 85], "where": [0, 3, 61, 108, 118], "avail": [0, 37, 59, 61, 69, 70, 75, 76, 107, 133, 137, 138, 139, 145], "d": [0, 1, 3, 4, 5, 6, 7, 8, 9, 12, 13, 14, 24, 43, 64, 81, 84, 106, 107, 138, 140, 143, 145], "index": [0, 5, 17, 86, 87, 91, 97, 107, 138, 144, 145], "atm_profil": [0, 17, 61], "call": [0, 21, 28, 33, 39, 44, 49, 99], "rt_equat": [0, 14, 24], "rtequat": [0, 14, 24], "modifi": [0, 79, 85, 90, 99, 129], "planck": [0, 79, 82, 107, 121, 129], "radianc": [0, 2, 16, 64, 79, 82, 85, 89, 91, 92, 120, 122, 138, 146], "cloudy_absorpt": 0, "cloud": [0, 1, 13, 17, 52, 81, 82, 83, 91, 93, 118, 143, 144, 145], "liquid": [0, 32, 83, 91, 93, 109, 118, 120, 127, 128, 145], "ic": [0, 14, 24, 52, 83, 88, 91, 93, 108, 111, 118, 120, 127, 128, 145], "cloud_integrated_dens": 0, "water": [0, 2, 5, 12, 16, 17, 24, 25, 26, 32, 43, 52, 64, 70, 73, 74, 76, 80, 81, 88, 91, 95, 107, 109, 111, 112, 116, 117, 118, 120, 121, 122, 125, 126, 127, 128, 138, 144, 145, 146], "path": [0, 53, 69, 75, 76, 81, 86, 91, 139], "linear": [0, 71, 72, 73, 74, 81], "cloud_radiating_temperatur": 0, "clearsky_absorpt": [0, 14], "sky": [0, 13], "exponential_integr": 0, "ln": [0, 79, 106, 116], "over": [0, 81, 84, 86, 88, 91, 111, 112, 120, 127, 128, 143, 144], "layer": [0, 71, 72, 73, 74, 81, 82, 84, 86, 90, 91, 106], "relat": 0, "ray_trac": [0, 89, 90], "refract": [0, 86, 91, 145], "length": [0, 12, 86, 138], "between": [0, 1, 90, 98, 118, 143], "vapor": [0, 5, 12, 14, 17, 24, 25, 26, 43, 80, 87, 91, 107, 111, 112, 118, 120, 121, 125, 126, 127, 128, 138, 144, 145], "coeffici": [0, 24, 37, 38, 43, 80, 95, 97, 145], "due": [0, 17, 24, 43, 48, 138, 144], "oxygen": [0, 17, 20, 27, 31, 36, 42, 43, 47, 80, 140, 144, 145], "air": [0, 2, 5, 14, 16, 24, 28, 32, 37, 38, 43, 56, 57, 60, 67, 70, 80, 89, 91, 92, 95, 107, 108, 117, 118, 131, 132, 138, 145, 146], "ozon": [0, 2, 16, 20, 27, 28, 31, 36, 42, 47, 48, 49, 64, 80, 89, 90, 91, 92, 107, 120, 122, 123, 146], "suspend": [0, 32], "droplet": [0, 32], "collis": [0, 37, 38, 145], "induc": [0, 37, 38, 145], "power": [0, 37, 43, 48], "neper": [0, 32, 37, 43, 107], "dry": [0, 14, 24, 32, 37, 38, 43, 80, 87, 91, 107, 118, 145], "continuum": [0, 24, 25, 26, 43, 145], "mostli": 0, "n_2": 0, "contribut": [0, 2], "To": [0, 8, 9, 52, 118, 138, 139], "get": [0, 26, 53, 59, 114, 115, 129, 138, 139], "implement": [0, 20, 27, 31, 36, 42, 47, 68, 116, 124, 132], "code": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 138, 139, 140, 141, 145], "absmodel": [0, 14, 22, 24, 27, 29, 31, 34, 36, 40, 42, 45, 47], "implemented_model": 0, "r98": [0, 20, 27, 31, 36, 42, 47], "r03": [0, 20, 27, 31, 36, 42, 47], "r17": [0, 4, 5, 17, 20, 27, 31, 36, 42, 47, 103, 140, 144], "r18": [0, 5, 7, 17, 20, 27, 31, 36, 42, 47, 99, 144], "r19": [0, 20, 27, 31, 36, 42, 47, 104], "r20": [0, 7, 8, 9, 10, 11, 20, 27, 31, 36, 42, 47], "r20sd": [0, 20, 27, 31, 36, 42, 47], "r22": [0, 12, 20, 27, 31, 36, 42, 47, 141], "r23": 0, "r24": 0, "watervapour": [0, 20, 27, 31, 36, 42, 47], "r21sd": [0, 7, 8, 9, 10, 11, 20, 21, 27, 28, 31, 33, 36, 39, 42, 44, 47, 49, 117], "r22sd": [0, 12, 20, 27, 31, 36, 42, 47, 138, 141], "r23sd": 0, "assess": 0, "vertic": 0, "sensit": [0, 2, 16, 44, 64, 89, 91, 92, 94, 97, 101, 103, 104, 120, 122, 146], "ar": [0, 2, 12, 15, 38, 43, 52, 56, 60, 61, 69, 70, 75, 76, 90, 95, 107, 118, 120, 133, 134, 138, 139, 145], "alwai": [0, 133], "last": [0, 61, 133, 138], "weighting_funct": [0, 15], "weightingfunct": [0, 15], "get_frequencies_sat": [0, 15], "wf": [0, 15], "angl": [0, 1, 12, 86, 89, 90, 91, 138, 141], "48": 0, "ici": 0, "wgt": [0, 15, 136, 137], "generate_wf": [0, 15], "plot_wf_group": [0, 15], "ylim": [0, 15, 136, 137], "grouped_frequ": [0, 15, 137], "grouped_label": [0, 15, 137], "176": 0, "190": 0, "240": 0, "245": [0, 7], "315": 0, "334": 0, "440": 0, "455": 0, "659": [0, 145], "668": 0, "modul": [0, 17, 95, 105, 117, 140], "funtion": 0, "gener": [0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 64, 89, 91, 92, 120, 122, 135, 146], "multipl": [0, 82], "place": 0, "throughout": 0, "ha": [0, 7, 8, 9, 10, 11, 68, 139], "some": [0, 138], "tool": [0, 138], "spectroscop": [0, 2, 16, 44, 64, 89, 91, 92, 94, 97, 99, 101, 102, 103, 104, 120, 122, 138, 146], "paramet": [0, 2, 16, 24, 25, 26, 32, 37, 38, 43, 44, 48, 52, 53, 56, 59, 60, 64, 65, 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 97, 98, 99, 101, 102, 103, 104, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 134, 136, 137, 138, 145, 146], "purpos": 0, "identifi": [0, 17, 56, 60, 144], "most": 0, "signific": 0, "total": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 48, 64, 71, 85, 146], "tempertur": 0, "observ": [0, 2, 16, 28, 52, 53, 56, 60, 67, 70, 82, 86, 89, 91, 92, 93, 108, 117, 118, 131, 138, 145, 146], "dataset": [0, 8, 9, 52, 55, 138, 140], "mai": [0, 99], "wyom": [0, 2, 16, 57, 59, 60, 89, 91, 92, 108, 117, 131, 138, 146], "upper": [0, 2, 14, 16, 28, 56, 57, 60, 67, 70, 84, 89, 91, 92, 108, 117, 131, 138, 146], "archiv": [0, 10, 11, 54, 57, 59, 60, 138, 141], "univers": [0, 57, 107, 138], "ncei": [0, 54, 138], "radiosond": [0, 10, 11, 54, 138], "igra2": [0, 2, 16, 28, 56, 67, 70, 89, 91, 92, 108, 131, 138, 146], "era5": [0, 2, 16, 50, 52, 89, 91, 92, 93, 117, 118, 138, 140, 146], "reanalysi": [0, 2, 16, 50, 52, 89, 91, 92, 93, 117, 118, 138, 140, 146], "copernicu": [0, 53], "climat": [0, 53, 138], "chang": [0, 53, 84], "see": [0, 21, 28, 33, 37, 38, 39, 44, 49, 52, 56, 60, 107, 138, 139], "start": [0, 90], "part": [0, 109], "have": [0, 134], "been": [0, 68, 139], "reus": 0, "siphon": 0, "librari": [0, 138, 141, 145], "go": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17], "end": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17], "download": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 50, 53, 54, 57, 60, 138, 139, 140, 141], "full": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 56], "show": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 71, 72, 73, 74, 136, 140, 143], "how": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 17, 95, 141], "brigth": [1, 12, 91, 141, 143], "them": 1, "differ": [1, 7, 10, 15, 143], "matplotlib": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 140, 141, 143, 144], "pyplot": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 140, 141, 143, 144], "plt": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 140, 141, 143, 144], "rcparam": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 140, 141, 143, 144], "updat": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 43, 127, 139, 140, 141, 143, 144, 145], "font": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 140, 141, 143, 144], "size": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 17, 53, 134, 140, 141, 143, 144], "15": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 16, 17, 32, 52, 66, 139, 140, 141, 143, 144, 145, 146], "ticker": [1, 3, 13, 14, 17, 143, 144], "scalarformatt": [1, 3, 14, 17, 143, 144], "numpi": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 24, 32, 37, 43, 64, 65, 66, 69, 71, 72, 73, 74, 75, 76, 79, 80, 83, 84, 85, 86, 87, 88, 91, 93, 98, 106, 109, 110, 111, 112, 115, 118, 119, 120, 121, 122, 123, 126, 127, 128, 129, 130, 131, 132, 140, 141, 143, 144], "util": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 24, 52, 138, 140, 141, 143, 144], "atm": [1, 4, 5, 6, 7, 13, 15, 64, 140, 143, 144], "mdl": [1, 4, 6, 8, 9, 10, 11, 13, 14, 140, 143], "default": [1, 17, 53, 56, 59, 68, 69, 74, 75, 76, 80, 88, 90, 91, 97, 98, 106, 107, 114, 120, 127, 128, 134, 136, 137, 141, 143, 144], "calculatoin": [1, 17, 143, 144], "consider": [1, 17, 143, 144], "nf": [1, 4, 6, 8, 9, 10, 11, 13, 140, 143], "len": [1, 4, 6, 7, 8, 9, 10, 11, 13, 14, 15, 24, 140, 143], "setup": [1, 139, 143], "fig": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 86, 140, 143], "ax": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 140, 141, 143], "subplot": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 140, 143], "set_xlabel": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 140, 143], "set_ylabel": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 140, 143], "t_b": [1, 5, 7, 8, 9, 10, 11, 12, 17, 79, 138, 143, 144], "linewidth": [1, 4, 6, 7, 8, 9, 10, 11, 12, 13, 140, 141, 143], "label": [1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 17, 137, 140, 143, 144], "format": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 17, 140, 143, 144], "legend": [1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14, 15, 136, 140, 143], "print": [1, 143, 145], "datafram": [1, 17, 52, 56, 59, 60, 91, 138, 143, 144], "tbatm": [1, 91, 138, 139, 143], "tmrcld": [1, 91, 138, 139, 143], "tauwet": [1, 12, 91, 138, 139, 143], "taudri": [1, 12, 91, 138, 139, 143], "tauliq": [1, 91, 138, 139, 143], "tauic": [1, 91, 138, 139, 143], "298": [1, 139, 143], "110002": 1, "286": [1, 139, 143], "950083": 1, "120344": [1, 143], "012852": 1, "21": [1, 43, 109, 143], "297": [1, 139, 143, 145], "245665": 1, "301002": 1, "188808": [1, 143], "013520": 1, "22": [1, 2, 5, 7, 8, 9, 11, 14, 16, 52, 56, 60, 64, 89, 91, 92, 120, 122, 141, 143, 145, 146], "296": [1, 143], "153554": 1, "285": [1, 132, 139, 143], "000618": 1, "261848": [1, 143], "014254": 1, "23": [1, 15, 139, 140, 143], "340281": 1, "635982": 1, "257913": [1, 143], "015061": 1, "24": [1, 12, 43, 106, 141, 143, 145], "158487": 1, "738458": 1, "202308": [1, 143], "015949": 1, "196": [1, 43, 143, 145], "281": [1, 143], "727840": 1, "271511": 1, "672975": [1, 143], "025470": 1, "197": [1, 143], "282": [1, 43, 138, 143], "282634": 1, "732202": 1, "460000": [1, 143], "025639": 1, "198": [1, 143], "748703": 1, "110004": 1, "289848": [1, 143], "025809": 1, "199": [1, 143], "283": [1, 132, 139, 143], "140697": 1, "421200": 1, "152710": [1, 143], "025979": 1, "200": [1, 140, 143], "470546": 1, "678463": 1, "041424": [1, 143], "026150": 1, "181": [1, 139, 143], "row": [1, 143], "column": [1, 17, 143, 144], "df_r03": [1, 143], "add": [1, 17, 43, 143, 144], "valu": [1, 3, 5, 8, 9, 10, 11, 15, 17, 69, 75, 76, 84, 85, 99, 100, 103, 104, 107, 108, 111, 112, 116, 118, 124, 134, 140, 143, 144], "new": [1, 43, 59, 97, 99, 103, 139, 143], "delta": [1, 5, 7, 10, 12, 138, 143], "001587": 1, "048560": 1, "142017": 1, "076094": 1, "007044": 1, "163239": 1, "155826": 1, "148959": 1, "142665": 1, "136943": 1, "df_from_ground": [1, 143], "38": [1, 8, 43, 52, 109, 143], "128741": 1, "36": [1, 109, 143], "134999": 1, "287": [1, 43, 139, 143, 145], "743766": 1, "119654": [1, 143], "012880": 1, "53": [1, 15, 109, 139, 141, 143, 145], "630710": 1, "51": [1, 66, 143, 145], "778478": 1, "523121": 1, "183271": [1, 143], "013535": 1, "68": [1, 143], "662408": 1, "66": [1, 143], "946561": 1, "852765": 1, "249677": [1, 143], "995937": 1, "67": [1, 143], "297760": 1, "359334": 1, "249866": [1, 143], "015044": 1, "58": [1, 15, 143, 145], "551138": 1, "56": [1, 143], "787298": 1, "288": [1, 143], "054500": 1, "201670": [1, 143], "015913": 1, "290": [1, 139, 143], "018674": 1, "011203": 1, "080877": 1, "697474": [1, 143], "024929": 1, "150026": 1, "140925": 1, "858817": 1, "486909": [1, 143], "025091": 1, "377998": 1, "367374": 1, "670993": 1, "318905": [1, 143], "025255": 1, "284": [1, 139, 143], "738957": 1, "726955": 1, "513082": 1, "183692": [1, 143], "025418": 1, "252699": 1, "239484": 1, "380928": 1, "074147": [1, 143], "025583": 1, "run": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 138, 141], "time": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 53, 56, 60, 79, 135, 140, 144], "script": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 139], "minut": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17], "012": [1, 16, 146], "second": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 56], "jupyt": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 141, 143, 144], "notebook": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 138, 140], "generic_tutori": [1, 16, 146], "ipynb": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17], "python": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 138, 141], "sourc": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 138, 145], "py": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 139, 140, 146], "zip": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 141], "galleri": [1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17, 146], "sphinx": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 17], "function": [2, 7, 16, 48, 52, 63, 64, 69, 70, 75, 76, 77, 79, 85, 91, 98, 99, 105, 106, 115, 117, 118, 120, 122, 123, 129, 132, 133, 135, 136, 137, 138, 141, 145, 146], "commun": [2, 95], "welcom": 2, "atmospher": [2, 4, 6, 12, 15, 16, 24, 43, 48, 61, 63, 64, 66, 69, 70, 71, 72, 73, 74, 75, 76, 82, 85, 91, 106, 107, 116, 118, 120, 122, 124, 138, 143, 144, 145, 146], "profil": [2, 10, 15, 16, 61, 63, 64, 65, 66, 70, 80, 81, 82, 83, 84, 85, 86, 87, 88, 90, 91, 93, 106, 111, 112, 116, 117, 119, 120, 121, 122, 127, 128, 134, 138, 140, 145, 146], "perform": [2, 16, 28, 44, 49, 52, 56, 60, 64, 67, 70, 89, 91, 92, 93, 94, 97, 101, 103, 104, 107, 108, 117, 118, 120, 122, 123, 131, 135, 141, 146], "calcul": [2, 5, 12, 16, 26, 28, 37, 38, 49, 52, 56, 60, 64, 67, 69, 70, 75, 76, 88, 89, 91, 92, 93, 106, 107, 108, 117, 118, 120, 122, 123, 127, 128, 131, 132, 135, 138, 140, 145, 146], "extrapol": [2, 16, 28, 56, 67, 68, 70, 89, 91, 92, 108, 131, 140, 146], "logarithm": [2, 16, 64, 89, 91, 92, 109, 120, 122, 146], "depend": [2, 16, 32, 43, 64, 88, 89, 91, 92, 104, 120, 122, 139, 146], "monochromat": [2, 16, 64, 89, 91, 92, 120, 122, 146], "235": [2, 16, 64, 89, 91, 92, 120, 122, 146], "183": [2, 7, 16, 64, 89, 91, 92, 120, 122, 146], "vapour": [2, 16, 17, 64, 70, 73, 74, 76, 80, 88, 116, 117, 120, 122, 144, 146], "absorpt": [2, 5, 16, 18, 20, 21, 22, 24, 25, 26, 27, 28, 29, 31, 32, 33, 34, 36, 37, 38, 39, 40, 42, 43, 44, 45, 47, 48, 49, 64, 80, 82, 83, 85, 88, 90, 91, 92, 94, 95, 99, 101, 102, 104, 116, 117, 120, 122, 133, 138, 144, 145, 146], "weight": [2, 16, 64, 115, 120, 122, 133, 135, 136, 137, 138, 145, 146], "uncertainti": [2, 5, 16, 44, 63, 64, 89, 90, 91, 92, 94, 107, 114, 120, 122, 138, 145, 146], "examples_python": 2, "examples_jupyt": 2, "method": [3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 18, 21, 22, 28, 29, 33, 34, 39, 40, 44, 45, 49, 50, 54, 57, 61, 64, 67, 69, 71, 72, 75, 76, 77, 89, 95, 99, 101, 102, 104, 106, 108, 132, 133, 135], "rel": [3, 70, 88, 90, 108, 120, 126, 134, 138], "humid": [3, 88, 90, 108, 118, 120, 126, 134, 138], "height_to_pressur": [3, 14], "def": [3, 7, 14], "tick_funct": 3, "x": [3, 13, 14, 17, 43, 65, 84, 86, 136, 139, 144], "v": [3, 14, 17, 24, 43, 109, 140, 144, 145], "273": [3, 109, 139, 140], "1f": 3, "tick_function_pressur": [3, 14], "tick": 3, "append": [3, 12], "us_standard": [3, 7, 15, 64], "ax1": [3, 9], "twini": 3, "yaxi": [3, 14], "set_label_posit": [3, 14], "right": [3, 12, 14, 98], "tick_right": [3, 14], "set_major_formatt": [3, 14], "funcformatt": [3, 14], "lambda": [3, 7, 14], "y": [3, 8, 9, 10, 11, 14, 17, 136, 137, 144, 145], "g": [3, 5, 9, 14, 32, 43, 52, 60, 73, 74, 76, 81, 83, 84, 88, 93, 106, 110, 116, 118, 119, 120, 121, 122, 124, 125, 126, 127, 140, 145], "subplots_adjust": 3, "bottom": 3, "get_yaxi": [3, 14], "set_vis": [3, 14], "new_tick_locations_pressur": [3, 14], "140": 3, "ax3": [3, 14], "twinx": [3, 14], "rspine": [3, 14], "spine": [3, 12, 14], "left": [3, 14, 98], "set_posit": [3, 14], "set_ticks_posit": [3, 14], "set_frame_on": [3, 14], "patch": [3, 14], "hpa": [3, 9, 10, 14, 52, 56, 60, 69, 70, 71, 74, 118, 134, 140], "set_ytick": [3, 14], "set_yticklabel": [3, 14], "set_ylim": [3, 14], "get_ylim": [3, 14], "new_tick_loc": 3, "175": 3, "400": 3, "xaxi": 3, "offset": [3, 53], "twin": 3, "axi": [3, 12, 17, 136, 137, 144], "below": [3, 52, 56, 60, 120, 127, 128, 139, 145], "host": [3, 138], "set_xtick": 3, "set_xticklabel": 3, "c": [3, 5, 7, 9, 12, 17, 66, 79, 129, 130, 131, 144, 145], "set_xlim": 3, "get_xlim": 3, "tight_layout": [3, 9, 12, 14], "211": [3, 16, 146], "plot_atmospher": [3, 16, 146], "zenith": [4, 6, 12, 141], "six": [4, 6, 138, 141], "refer": [4, 6, 12, 24, 26, 32, 37, 38, 43, 61, 66, 68, 69, 71, 72, 73, 74, 75, 76, 95, 98, 99, 100, 104, 107, 108, 109, 111, 112, 118, 120, 121, 125, 127, 141], "model": [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 18, 20, 21, 22, 24, 27, 28, 29, 31, 33, 34, 36, 37, 39, 40, 42, 44, 45, 47, 49, 50, 64, 80, 90, 92, 94, 95, 99, 101, 102, 104, 109, 117, 118, 133, 138, 141, 144, 145], "standard": [4, 5, 6, 7, 13, 15, 61, 63, 64, 69, 71, 72, 73, 74, 75, 76, 98, 116, 124, 138, 140, 141, 143, 144, 145], "rang": [4, 5, 6, 7, 12, 14, 15, 17, 24, 109, 138, 140, 144], "61": [4, 6, 13, 14, 116, 124, 144, 145], "bt": [4, 6, 10, 13, 140], "both": [4, 5, 6, 8, 10, 11, 12, 13, 138, 140], "set_box_aspect": [4, 5, 6, 140], "680": [4, 16, 146], "plot_brightness_temperature_down": [4, 16, 146], "simul": [5, 17, 91, 138, 145], "perturb": [5, 97], "gamma_a": [5, 17, 103, 144], "broaden": [5, 43, 104, 140, 145], "cimini": [5, 17, 138, 144, 145], "2018": [5, 17, 43, 95, 138, 144, 145], "o2absmodel": [5, 12, 14, 17, 141, 144], "absmoduncertainti": [5, 17, 144], "spectroscopicparamet": [5, 17, 90, 94, 144], "color": [5, 7, 12], "r": [5, 12, 68, 69, 71, 72, 73, 74, 75, 76, 107, 116, 118, 124, 145], "m": [5, 8, 9, 12, 32, 43, 48, 52, 66, 73, 74, 76, 81, 83, 88, 93, 107, 118, 121, 123, 125, 126, 145], "b": [5, 12, 17, 43, 79, 98, 107, 108, 109, 129, 144], "interp": [5, 17], "60": [5, 7, 14, 15, 17, 43, 116, 124], "water_paramet": [5, 17, 99, 103, 144], "oxygen_paramet": [5, 17, 144], "688": [5, 103], "uncer": [5, 17, 99, 100, 103, 104, 144], "039": [5, 17, 103, 144], "set_paramet": [5, 17, 99, 144], "amu": [5, 17, 24, 43, 48, 80, 89, 90, 94, 144], "parameters_perturb": [5, 17, 144], "max": [5, 9, 17, 97, 121, 136, 144], "set_amu": [5, 17, 144], "df_gamma": 5, "delta_max_gamma_a": 5, "min": [5, 9, 97], "delta_min_gamma_a": 5, "style": [5, 7], "_nolegend_": 5, "titl": [5, 8, 10, 11, 17, 136, 137, 144], "solid": 5, "line": [5, 24, 43, 48, 117, 138, 140, 145], "correspond": [5, 81, 83, 132], "neg": [5, 109], "while": 5, "dash": 5, "posit": 5, "841": [5, 16, 146], "plot_brightness_temperature_uncertainti": [5, 16, 146], "780": [6, 16, 146], "plot_brightness_temperature_up": [6, 16, 146], "o3absmodel": 7, "ppmv_to_moleculesm3": 7, "constant": [7, 17, 32, 79, 82, 85, 109, 118, 129, 144, 145], "o3n_ppmv": 7, "o3": [7, 52, 61], "o3n": [7, 48, 80, 89, 90], "zero": [7, 13, 14, 84], "shape": [7, 13, 145], "dict": [7, 20, 24, 27, 31, 36, 42, 43, 47, 48, 63, 80, 91, 94, 97, 101, 102, 103, 104], "grai": 7, "center": [7, 8, 9, 10, 11, 138], "text": [7, 86, 116, 132], "45": 7, "255": [7, 139], "119": [7, 139], "280": 7, "142": 7, "ghz_to_mm": 7, "f": [7, 10, 12, 15, 37, 38, 43, 48, 98, 109, 138, 139, 140, 145], "1e9": 7, "light": [7, 17, 107, 144], "1e3": 7, "mm_to_ghz": 7, "mm": [7, 43, 145], "l": [7, 145], "secax": 7, "secondary_xaxi": 7, "top": [7, 12, 81, 82, 93], "without": [7, 79, 85, 129], "df_no_o3": 7, "r21sd_w03": 7, "127": [7, 16, 146], "plot_brightness_temperature_wo3": [7, 16, 146], "hourli": [8, 9], "import_lineshap": [8, 9, 11, 14, 21, 24, 28, 33, 39, 44, 49, 140], "apiwebservic": [8, 9, 10, 11, 140], "era5reanalysi": [8, 9], "request": [8, 9, 53, 141], "via": [8, 9, 106, 138, 141, 143, 144], "cd": [8, 9, 50, 139], "api": [8, 9], "date": [8, 9, 10, 11, 52, 53, 56, 60, 139, 140], "datetim": [8, 9, 10, 11, 52, 53, 56, 60, 140], "2020": [8, 9, 10, 43, 52, 141], "nc_file": [8, 9, 52], "request_data": [8, 9, 10, 11, 52, 140], "tempfil": [8, 9, 52], "gettempdir": [8, 9, 52], "lonlat": [8, 9, 52, 53], "tito": 8, "scalo": 8, "potenza": 8, "itali": 8, "8158": [8, 52], "2663": [8, 52], "era5_reanalysi": [8, 9], "2023": [8, 9, 25, 140], "05": [8, 9, 12, 17, 32, 66, 144], "16t18": [8, 9], "00": [8, 9, 16, 64, 65, 119, 127, 141, 146], "nc": [8, 9], "df_era5": [8, 9, 52], "read_data": [8, 9], "h2oll": [8, 9, 11, 14, 24, 117], "strftime": [8, 9], "h": [8, 9, 10, 66, 69, 71, 72, 73, 74, 75, 76, 79, 129, 145], "539": [8, 16, 146], "plot_bt_era5": [8, 16, 146], "gridspec": 9, "kgkg_to_kgm3": 9, "13": [9, 15, 66, 143, 144], "37": 9, "101": 9, "cldh": [9, 13, 93], "empti": [9, 13], "total_mass": 9, "ciwc": [9, 52], "clwc": [9, 52], "crwc": [9, 52], "cswc": [9, 52], "denic": [9, 13, 93], "q": [9, 11, 52, 70, 118, 145], "1000": [9, 10, 11, 14, 24, 32, 43, 109, 140, 145], "denliq": [9, 13, 93], "figur": 9, "width_ratio": 9, "height_ratio": 9, "hspace": 9, "wspace": 9, "ax2": 9, "suptitl": [9, 10, 11], "nlon": 9, "lat": [9, 69, 70, 75, 76], "init_cloudi": [9, 13], "els": [9, 13, 17, 144], "clearski": 9, "lwc": [9, 118], "iwc": [9, 118], "invert_yaxi": 9, "home": [9, 10, 11, 13, 139, 141], "runner": [9, 10, 11, 13, 141], "work": [9, 10, 11, 13, 95], "221": [9, 13], "userwarn": [9, 10, 13, 15, 140], "It": [9, 13, 90, 109, 135, 138, 141], "seem": [9, 13], "attribut": [9, 13, 18, 22, 29, 34, 40, 45, 52, 56, 60, 61, 67, 89, 99, 133], "set": [9, 13, 15, 21, 28, 33, 39, 44, 49, 55, 58, 61, 68, 80, 82, 94, 97, 103, 138], "warn": [9, 10, 13, 15, 140, 143, 144], "233": [9, 16, 138, 146], "plot_bt_era5_cloudy_profil": [9, 16, 146], "comparison": 10, "extrapoletd": 10, "profileextrapol": 10, "dewpoint2rh": [10, 11], "to_kelvin": [10, 11], "igraupperair": 10, "station": [10, 11, 56, 59, 60, 140], "spm00008221": 10, "df_igra2": 10, "header": [10, 11, 56], "notna": 10, "dewpoint": [10, 11, 56, 60, 108, 140], "height": [10, 11, 56, 60, 69, 70, 71, 72, 73, 74, 75, 76, 86, 90, 91, 93, 116, 124, 134, 140], "82": [10, 140, 145], "number": [10, 25, 48, 80, 84, 85, 107, 123, 137, 140], "too": [10, 82, 140], "low": [10, 140, 143, 144], "14": [10, 11, 12, 16, 32, 43, 66, 141, 143, 144, 146], "minimum": [10, 140], "lower": [10, 84, 140, 143, 144], "than": [10, 127, 128, 140], "pleas": [10, 138, 140, 141], "consid": [10, 138, 140], "must": [10, 21, 28, 33, 39, 44, 49, 90, 132, 134, 140], "higher": [10, 139, 140], "25": [10, 17, 53, 140, 141, 144], "self": [10, 25, 26, 104, 140, 145], "ex": 10, "zz": 10, "pp": [10, 43, 109, 145], "tt": 10, "rhh": 10, "profile_extrapol": 10, "latitud": [10, 52, 53, 60, 69, 70, 75, 76, 140], "dff": 10, "511": 10, "runtimewarn": 10, "overflow": 10, "encount": 10, "exp": [10, 108], "3542": 10, "4174": 10, "02290": 10, "site_id": [10, 56, 60], "longitud": [10, 52, 53, 60, 140], "96": [10, 11], "upperair": [10, 11], "fontsiz": [10, 11, 12], "extrap": 10, "631": [10, 16, 146], "plot_bt_igra2": [10, 16, 146], "wyomingupperair": [11, 140], "2021": 11, "lire": [11, 60], "df_w": 11, "mixr": [11, 60, 140], "147": 11, "futurewarn": 11, "delim_whitespac": 11, "keyword": [11, 136, 137], "pd": [11, 17, 144], "read_csv": 11, "deprec": 11, "remov": [11, 43], "futur": 11, "sep": 11, "instead": [11, 120, 127, 128], "tabular_data": 11, "none": [11, 12, 17, 19, 21, 23, 24, 28, 30, 33, 35, 39, 41, 43, 44, 46, 48, 49, 55, 58, 60, 80, 82, 89, 90, 93, 94, 97, 100, 103, 106, 107, 120, 127, 128, 134, 136, 137, 140, 141, 144], "skiprow": 11, "usecol": 11, "name": [11, 17, 52, 56, 59, 60, 97, 99, 100, 104, 107, 114, 117, 138, 144], "col_nam": 11, "256": [11, 16, 145, 146], "plot_bt_wyom": [11, 16, 146], "content": [12, 32, 52, 118], "view": [12, 145], "huang": 12, "bani": 12, "2014": [12, 107, 145], "mpl": 12, "30": [12, 43], "tb_23": 12, "tb_183": 12, "tau_23": 12, "tau_183": 12, "tb_023": 12, "tb_0183": 12, "sharex": 12, "tick_param": 12, "direct": [12, 56], "width": [12, 43], "log2": 12, "linestyl": [12, 14, 140], "black": 12, "marker": 12, "markeredgewidth": 12, "set_titl": [12, 140], "annot": 12, "xy": 12, "02": [12, 16, 43, 64, 65, 146], "xycoord": 12, "fraction": [12, 83, 88, 90, 134], "40": 12, "log_2": 12, "sf_": 12, "q_": [12, 118], "blue": 12, "88": [12, 145], "254": [12, 16, 146], "plot_log_dependance_tb": [12, 16, 146], "ground": [13, 114, 145], "fixedloc": 13, "formatstrformatt": 13, "seterr": [13, 143, 144], "rais": [13, 37, 68, 80, 97, 98, 107, 134, 137, 143, 144], "midlatitude_summ": [13, 138], "text_plot": 13, "build": [13, 138], "ib": 13, "ones": 13, "29": [13, 43, 66], "31": [13, 16, 17, 43, 66, 139, 146], "609": [13, 16, 145, 146], "plot_model_cloudi": [13, 16, 146], "e": [14, 24, 74, 79, 80, 84, 87, 88, 110, 116, 129, 145], "rho": [14, 24, 73, 76, 88, 125, 126], "o2ll": 14, "awet": [14, 80], "adri": [14, 80], "j": [14, 24, 43, 79, 107, 109, 118, 145], "axis_lim": 14, "2f": 14, "mask": 14, "isin": [14, 17, 144], "freq": [14, 17, 32, 43, 144], "nonzero": 14, "m3": [14, 80], "wv": [14, 24], "dryair": 14, "120": [14, 139], "loc": [14, 17, 144], "503": [14, 16, 146], "plot_water_vapour_profil": [14, 16, 146], "mw": 15, "channel": [15, 85, 90], "filterwarn": 15, "ignor": [15, 143, 144], "categori": 15, "54": 15, "35": [15, 145], "59": [15, 141], "825": 15, "plot_wf": 15, "downlook": 15, "dpi": [15, 136, 137], "As": 15, "abov": [15, 86], "uplook": 15, "mode": [15, 67, 68, 97, 137], "can": [15, 82, 138, 139, 141, 143, 144], "bandpass": 15, "cf53": 15, "596": 15, "cf57": 15, "57": 15, "290344": 15, "52": [15, 139, 145], "115": [15, 139], "94": [15, 66], "55": 15, "217": [15, 43], "3222": 15, "048": 15, "022": 15, "010": 15, "0045": 15, "legend_label": 15, "70": [15, 140], "xlim": [15, 136], "group": [15, 137], "19": [15, 43, 140], "89": [15, 139], "164": [15, 139], "229": 15, "350": [15, 145], "727": [15, 16, 146], "plot_weighting_funct": [15, 16, 146], "09": [16, 43, 66, 145, 146], "08": [16, 32, 43, 66, 145, 146], "777": [16, 146], "mem": [16, 66, 146], "uncertainty_tutori": [16, 17, 146], "04": [16, 43, 65, 66, 108, 145, 146], "371": [16, 17, 146], "03": [16, 32, 43, 64, 65, 145, 146], "07": [16, 66, 146], "01": [16, 17, 64, 65, 144, 146], "h_2": [17, 144], "o": [17, 139, 144, 145], "panda": [17, 52, 56, 59, 60, 91, 141, 144], "get_frequ": [17, 115, 144], "covariance_matrix": [17, 144], "o2_paramet": [17, 144], "o2": [17, 37, 61, 144, 145], "x05": [17, 144], "wb300": [17, 144], "o2gamma": [17, 144], "34": [17, 37, 140, 144], "y300": [17, 144], "o2_v": [17, 144], "ho2_paramet": [17, 144], "con_cf_factr": [17, 144], "con_cs_factr": [17, 144], "con_xf": [17, 144], "sr": [17, 144], "con_x": [17, 99, 104, 144], "0138964": [17, 144], "01131274": [17, 144], "01453087": [17, 144], "01789881": [17, 144], "02116733": [17, 144], "02134575": [17, 144], "02476584": [17, 144], "02839177": [17, 144], "03203582": [17, 144], "00404133": [17, 144], "00502581": [17, 144], "00786035": [17, 144], "00820458": [17, 144], "00935381": [17, 144], "00809901": [17, 144], "0078214": [17, 144], "00544132": [17, 144], "00460658": [17, 144], "00225117": [17, 144], "00209907": [17, 144], "0039399": [17, 144], "00484963": [17, 144], "00799499": [17, 144], "00878031": [17, 144], "01202685": [17, 144], "01261821": [17, 144], "01577055": [17, 144], "01615187": [17, 144], "01907464": [17, 144], "01926978": [17, 144], "0218633": [17, 144], "02188287": [17, 144], "02416567": [17, 144], "02401716": [17, 144], "02604178": [17, 144], "02575469": [17, 144], "02762271": [17, 144], "02720018": [17, 144], "02897909": [17, 144], "02843003": [17, 144], "03019027": [17, 144], "02951218": [17, 144], "00288243": [17, 144], "04655306": [17, 144], "03914166": [17, 144], "06110402": [17, 144], "0494057": [17, 144], "05728709": [17, 144], "06444876": [17, 144], "07279906": [17, 144], "06385863": [17, 144], "07007177": [17, 144], "05963384": [17, 144], "06373721": [17, 144], "11789158": [17, 144], "12307213": [17, 144], "10151855": [17, 144], "10427449": [17, 144], "08328802": [17, 144], "08486523": [17, 144], "10130857": [17, 144], "10244286": [17, 144], "15750036": [17, 144], "15814743": [17, 144], "24421784": [17, 144], "24343211": [17, 144], "3084326": [17, 144], "30576201": [17, 144], "34568212": [17, 144], "34107696": [17, 144], "36123446": [17, 144], "35507902": [17, 144], "37305309": [17, 144], "36544166": [17, 144], "38490936": [17, 144], "37583782": [17, 144], "043": [17, 144, 145], "1e": [17, 132, 144], "0014": [17, 144], "sort": [17, 144], "list": [17, 20, 27, 31, 36, 42, 47, 56, 59, 63, 88, 97, 107, 114, 115, 117, 137, 144], "union": [17, 24, 60, 91, 107, 144], "hat": [17, 114, 144], "tolist": [17, 144], "df_out": [17, 144], "cov": [17, 144], "t_": [17, 144], "k_": [17, 79, 129, 144], "cnt": [17, 144], "item": [17, 144], "amu_p": [17, 144], "field_nam": [17, 144], "p_": [17, 144], "str": [17, 20, 27, 31, 36, 42, 47, 52, 53, 56, 59, 60, 63, 67, 68, 69, 75, 76, 89, 90, 91, 92, 97, 98, 99, 100, 101, 102, 104, 107, 108, 114, 115, 117, 136, 137, 144], "delta_tb": [17, 144], "seri": [17, 144], "concat": [17, 144], "covari": [17, 98, 144], "111": [17, 144], "105": [17, 43, 144], "param": [17, 144], "kp": [17, 144], "p_con_x": [17, 144], "covtb": [17, 144], "matmul": [17, 144], "r17_111": [17, 144], "sigma_tb": [17, 144], "sqrt": [17, 98, 144], "diag": [17, 144], "2019": [17, 43, 144, 145], "n_": [17, 144], "r17_112": [17, 144], "sigma_tb_with_con_x": [17, 144], "sigma_": [17, 98, 144], "class": [18, 22, 29, 34, 40, 45, 50, 54, 57, 61, 67, 77, 89, 90, 95, 99, 133, 134, 138], "base": [18, 22, 26, 29, 34, 38, 40, 45, 50, 54, 55, 57, 61, 67, 71, 72, 73, 74, 77, 81, 82, 86, 89, 93, 95, 99, 106, 132, 133, 135, 138, 145], "object": [18, 50, 61, 67, 77, 89, 95, 99, 117, 133], "an": [18, 68, 69, 71, 72, 75, 76, 85, 132, 138, 139, 145], "abstract": [18, 145], "defin": [18, 80, 84, 90, 98, 109, 113, 120, 143], "static": [20, 21, 27, 28, 31, 32, 33, 36, 37, 38, 39, 42, 44, 47, 49, 53, 63, 64, 65, 66, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 97, 98, 101, 102, 103, 104, 109], "type": [20, 24, 25, 26, 27, 31, 32, 36, 37, 38, 42, 43, 47, 48, 52, 53, 56, 59, 60, 63, 64, 65, 66, 69, 70, 71, 72, 73, 74, 75, 76, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 91, 97, 98, 101, 102, 104, 106, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 135], "linelist": [21, 28, 33, 39, 44, 49], "properti": [21, 28, 33, 39, 44, 49, 145], "befor": [21, 28, 33, 39, 44, 49], "pdrykpa": [24, 43], "ndarrai": [24, 25, 26, 32, 37, 38, 43, 48, 64, 65, 66, 69, 70, 71, 72, 73, 74, 75, 76, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 93, 98, 99, 100, 106, 109, 110, 111, 112, 115, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137], "vx": [24, 25, 26, 43], "ekpa": [24, 43], "option": [24, 43, 48, 53, 56, 59, 64, 67, 68, 69, 74, 75, 76, 80, 82, 86, 88, 89, 90, 97, 98, 99, 100, 106, 107, 108, 114, 120, 127, 128, 133, 134, 136, 137], "tupl": [24, 43, 52, 53, 56, 64, 70, 80, 83, 84, 85, 87, 88, 89, 90, 91, 94, 98, 107, 120, 126, 136, 137], "kpa": [24, 43], "theta": [24, 25, 26, 43], "adim": [24, 25, 26, 43], "normalis": [24, 25, 26, 43], "300": [24, 25, 26, 43, 145], "partial": [24, 43, 110, 119, 120, 135], "valid": [24, 32, 37, 43, 109, 111, 112, 134], "term": [24, 25, 26, 37, 43, 85, 109], "ppm": [24, 43], "rosenkranz": [24, 32, 37, 43, 80, 83, 95, 109, 138, 145], "2017": [24, 43, 95, 138, 145], "tk": [24, 109], "nfreq": 25, "int": [25, 60, 63, 64, 65, 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, 84, 97, 113, 122, 136, 137], "fit": 25, "curv": 25, "mtckd": 25, "adapt": [25, 64], "mt_ckd_h2o_modul": 25, "f90": 25, "march": [25, 43, 145], "mbar": [25, 26, 38, 64, 110, 119, 120, 121, 124, 125, 127, 128], "normal": [26, 136, 141], "squar": 26, "known": 26, "measur": [26, 145], "meta": 26, "analysi": [26, 101, 102, 104], "theoret": [26, 145], "multipli": [26, 38, 83, 84, 98, 118], "pvap": 26, "e5": [26, 38], "tretyakov": [26, 43, 95, 99, 104, 145], "galanina": [26, 145], "koroleva": [26, 145], "et": [26, 43, 66, 109, 145], "al": [26, 43, 66, 109, 145], "2024": [26, 38, 138, 141, 145], "publish": 26, "current": [26, 56, 137], "odintsova": [26, 145], "2022": [26, 56, 60, 141, 145], "temp": [32, 140], "mass": [32, 106, 110, 113, 118, 119, 120, 121, 122, 125, 132], "per": 32, "volum": [32, 122, 145], "particel": 32, "lieb": [32, 80, 145], "hufford": [32, 145], "manab": [32, 145], "cotton": [32, 145], "1988": [32, 80, 145], "2015": [32, 43, 95, 107, 109, 145], "revis": [32, 43, 111, 112], "histori": [32, 43], "pwr": [32, 43], "92": 32, "98": [32, 43], "eps2": 32, "elimin": 32, "agre": 32, "mpm93": 32, "06": [32, 43, 66, 145], "dilec12": 32, "complex": [32, 109, 145], "dielectr": [32, 109, 145], "modif": [37, 43, 95, 145], "account": 37, "n2": [37, 38, 145], "boissol": [37, 145], "2003": [37, 43, 145], "2000": 37, "valueerror": [37, 68, 80, 97, 98, 107, 134, 137], "error": [37, 68, 80, 82, 107], "whether": [37, 136], "inputn": 37, "unorrect": 37, "nitrogen": [37, 145], "continum": 37, "eq": 37, "m\u00e4tzler": [37, 145], "2006": [37, 145], "borysow": [37, 145], "frommhold": [37, 145], "1986": [37, 145], "molecular": [38, 61, 64, 65, 66, 145], "pair": [38, 145], "classic": 38, "trajectori": 38, "calc": [38, 106, 132], "vigasin": [38, 145], "chistikov": [38, 145], "finenko": [38, 145], "recalcul": 38, "torr": 38, "insid": 38, "convert": [38, 52, 116, 118, 122, 123, 124, 126, 130, 131], "84": 38, "meshkov": [38, 145], "delucia": [38, 145], "2007": [38, 43, 109, 145], "serov": [38, 145], "float": [43, 53, 69, 70, 71, 72, 73, 74, 75, 76, 82, 84, 86, 98, 107, 108, 113, 116, 124, 133, 134], "95": [43, 66], "97": [43, 64], "16": [43, 139, 140, 141], "submm": 43, "intens": 43, "hitran96": 43, "425": 43, "mix": [43, 106, 110, 118, 119, 120, 121, 122, 123, 125, 127, 132, 140], "hitran": [43, 65, 66, 113, 122], "chg": 43, "move": 43, "isotop": 43, "abund": 43, "back": 43, "ad": [43, 99], "select": [43, 115], "o16o18": 43, "common": 43, "block": 43, "weak": 43, "18": [43, 109, 139, 145], "adjust": [43, 106], "2nd": [43, 145], "order": 43, "accord": 43, "koshelev": [43, 95, 145], "mea": 43, "oxigen": 43, "w": [43, 109, 120, 132, 145], "chap": 43, "appendix": 43, "remot": [43, 107, 109, 145], "sens": [43, 107, 145], "BY": 43, "microwav": [43, 107, 138, 145], "radiometri": [43, 107], "A": [43, 56, 59, 60, 63, 66, 91, 98, 145], "janssen": [43, 107], "ed": [43, 118, 145], "1993": [43, 145], "http": [43, 55, 68, 69, 71, 72, 73, 74, 75, 76, 98, 107, 138, 139, 141, 145], "hdl": 43, "handl": [43, 84], "net": 43, "1721": 43, "68611": 43, "yu": [43, 145], "golubiatnikov": [43, 145], "krupnov": 43, "mol": [43, 107, 145], "spect": 43, "223": 43, "2004": 43, "231": [43, 138], "2005": [43, 118, 145], "drouin": 43, "jqsrt": [43, 145], "450": 43, "458": 43, "makarov": [43, 145], "252": [43, 139], "242": 43, "243": [43, 108], "2008": 43, "112": [43, 145], "1420": 43, "1428": 43, "2011": [43, 95, 145], "154": [43, 145], "27": [43, 145], "169": 43, "91": 43, "2016": [43, 95, 99, 104, 145], "78": [43, 145], "86": [43, 145], "doi": [43, 138, 145], "1016": [43, 145], "106798": 43, "hitran2004": 43, "non": [43, 97, 138, 145], "reson": 43, "jpl": 43, "catalog": 43, "except": 43, "234": [43, 138], "coeff": [43, 48], "same": [43, 118, 134], "submillimet": 43, "band": [43, 109, 140], "selct": 48, "molecul": [48, 80, 123], "read": [50, 52], "classmethod": [52, 56, 59, 60], "netcdf": [52, 53], "variabl": [52, 56, 60, 91, 98], "retriev": [52, 56, 59, 60, 145], "unit": [52, 56, 60, 71, 72, 73, 74, 84, 99, 100, 104, 107, 118, 134, 138, 140, 145], "inform": [52, 56, 60], "report": [52, 56, 60], "within": [52, 56, 60, 90, 139, 143, 144], "attr": [52, 56, 60, 140], "kg": [52, 60, 106, 107, 110, 118, 119, 120, 121, 122, 125, 127, 132, 140], "specif": [52, 118], "kgkg_to_gm3": 52, "resolut": [53, 140], "servic": [53, 138], "output": [53, 138], "directori": 53, "desir": [53, 55, 56, 60, 139], "coordinatr": 53, "degre": [53, 56, 60, 69, 70, 75, 76, 86, 140], "pixel": 53, "appli": [53, 138], "coordin": 53, "extent": 53, "httpendpoint": [54, 57], "pars": [54, 57], "site": [55, 141], "address": 55, "suffix": 55, "beg2021": 56, "bool": [56, 84, 88, 89, 90, 91, 108, 136], "deriv": 56, "retreiv": 56, "igra": 56, "period": 56, "record": 56, "If": [56, 82, 91, 97, 99, 127, 128, 134, 137], "two": [56, 98, 120, 138], "given": [56, 69, 71, 72, 73, 74, 75, 76, 80, 83, 98, 110, 118, 119, 120, 121, 125, 127, 128, 132], "charact": 56, "sound": [56, 138], "onli": [56, 68, 82, 88, 91, 143, 144], "previou": 56, "year": [56, 69, 70, 75, 76], "spm00060018": 56, "etim": 56, "meter": [56, 60, 116, 124, 140], "degc": [56, 60, 140], "speed": [56, 107], "u_wind": 56, "v_wind": 56, "up": [58, 139], "endpoint": 58, "region": [59, 140, 145], "europ": 59, "naconf": 59, "north": 59, "america": 59, "samer": 59, "south": 59, "pac": 59, "pacif": 59, "nz": 59, "zealand": 59, "ant": 59, "antarctica": 59, "arctic": 59, "africa": [59, 140], "seasia": 59, "southeast": 59, "asia": 59, "mideast": 59, "ddatafram": 59, "id": [59, 65, 66, 113, 122, 145], "kwarg": [60, 136, 137], "three": 60, "letter": 60, "icao": 60, "should": [60, 109, 139], "station_numb": [60, 140], "elev": [60, 86, 90, 91, 140, 141], "afgl": [61, 145], "co2": 61, "n2o": 61, "ch4": 61, "minor": [61, 65], "absorb": 61, "gase": [61, 65, 66], "conveni": 63, "ger": 63, "buolt": 63, "dictionari": [63, 91, 94, 97, 101, 102, 103, 104, 117], "atmopsher": [64, 71], "50x1": 64, "745e": 64, "071e": 64, "631e": 64, "182e": 64, "158e": 64, "397e": 64, "254e": 64, "720e": 64, "667e": 64, "583e": 64, "996e": 64, "613e": 64, "906e": 64, "085e": 64, "927e": 64, "000e": 64, "950e": 64, "850e": 64, "825e": 64, "900e": 64, "975e": 64, "065e": 64, "200e": 64, "300e": 64, "425e": 64, "575e": 64, "725e": 64, "025e": 64, "150e": 64, "225e": 64, "250e": 64, "100e": 64, "750e": 64, "500e": 64, "050e": 64, "330e": 64, "400e": 64, "800e": 64, "glatm": 64, "dat": 64, "dct": [64, 119, 127], "26": [64, 139, 145], "gas_minor": 65, "ga": [65, 66, 107, 113, 118, 120, 122, 123, 126, 145], "28": 65, "50x": [65, 66], "NO": 65, "00e": [65, 66], "99e": 65, "95e": [65, 99], "83e": 65, "68e": 65, "52e": 65, "40e": 65, "44e": 65, "55e": 65, "77e": 65, "07e": 65, "60e": 65, "51e": 65, "85e": 65, "28e": 65, "45e": [65, 66], "53e": 65, "14e": [65, 66], "34e": 65, "12e": 65, "19e": 65, "17e": 65, "10e": 65, "03e": 65, "01e": 65, "15e": 65, "61e": [65, 66], "13e": 65, "08e": 65, "50e": 65, "98e": 65, "gas_trac": 66, "trace": [66, 86, 90], "63": 66, "h2": 66, "48e": 66, "30e": 66, "37e": 66, "58e": 66, "73e": 66, "smith": 66, "compil": 66, "concentr": 66, "50km": 66, "nasa": 66, "tech": 66, "83289": 66, "1982": 66, "rinsland": 66, "jgr": 66, "d15": 66, "18341": 66, "18349": 66, "1989": 66, "d10": 66, "16477": 66, "16490": 66, "1990": 66, "itu": [67, 68, 69, 71, 72, 73, 74, 75, 76], "annex1": [67, 68], "initi": [68, 89, 92, 93, 138], "what": [68, 97], "835": [68, 69, 71, 72, 73, 74, 75, 76], "rigth": 68, "now": [68, 139], "recommend": [68, 69, 75, 76, 107], "unsupport": 68, "www": [68, 69, 71, 72, 73, 74, 75, 76, 145], "rec": [68, 69, 71, 72, 73, 74, 75, 76], "en": [68, 69, 71, 72, 73, 74, 75, 76, 98], "season": [69, 75, 76], "determin": [69, 70, 71, 72, 73, 74, 75, 76, 120, 121, 125], "gaseou": [69, 70, 75, 76], "attenu": [69, 70, 75, 76], "along": [69, 75, 76, 91], "earth": [69, 75, 76, 107], "space": [69, 75, 76, 145], "when": [69, 70, 75, 76], "more": [69, 70, 75, 76, 95, 138, 141], "reliabl": [69, 70, 75, 76], "local": [69, 70, 75, 76, 140, 141], "month": 70, "humis": 70, "frac": [70, 79, 98, 106, 108, 116, 118, 124, 129, 132, 135], "t_0": [71, 72, 116, 124], "p_0": [71, 116, 124], "state": [71, 72, 73, 74, 145], "1976": [71, 72, 73, 74, 145], "divid": [71, 72, 73, 74, 143, 144], "seven": [71, 72, 73, 74], "success": [71, 72, 73, 74], "variat": [71, 72, 73, 74], "h_0": [73, 74], "rho_0": [73, 74], "scale": [73, 74], "main": [77, 90, 114, 115, 138, 139], "radi": [77, 85, 138, 145], "transfer": [77, 85, 138, 145], "equat": [77, 79, 85, 87, 106, 118, 121, 129, 138, 145], "hvk": [79, 82, 85, 129], "boft": [79, 85], "2h": [79, 129], "nu": [79, 129, 135], "b_": 79, "impli": 79, "hz": [79, 107], "boltzmann": [79, 82, 85, 107, 129], "subroutin": [80, 82, 90], "layton": [80, 145], "interfer": [80, 145], "h2o_absorpt": 80, "o2_absorpt": 80, "dencld": 81, "lbase": 81, "ltop": 81, "algorithm": [81, 82, 86, 90], "vector": 81, "depth": [81, 84], "ibas": 82, "itop": 82, "tauprof": [82, 85], "boftatm": [82, 85], "respect": 82, "assum": [82, 86, 90, 106], "input": [82, 90, 111, 112, 120, 127, 128, 134, 138], "lowest": [82, 91], "big": 82, "otherwis": [82, 90], "flag": [82, 84], "design": 82, "obtain": 82, "denl": 83, "deni": 83, "1972": [83, 145], "aliq": 83, "aic": 83, "liquid_water_absorpt": 83, "zeroflg": 84, "ibeg": 84, "iend": 84, "factor": 84, "exponenti": [84, 86], "save": [84, 99], "avg": 84, "limit": [84, 136, 137, 138], "result": [84, 111, 112, 118, 135, 138], "xd": 84, "sxd": 84, "taulai": 85, "1992": [85, 145], "cosmic": [85, 91, 107], "background": [85, 91, 107], "For": [85, 95, 123, 139], "repres": [85, 109], "antenna": [85, 90], "raob": [85, 138], "bakgrnd": 85, "boftotl": 85, "boftmr": 85, "refindx": [86, 87], "z0": 86, "rai": [86, 90, 91], "dutton": [86, 145], "thayer": [86, 87, 145], "rewritten": 86, "readabl": 86, "attempt": 86, "document": [86, 141, 145], "techniqu": 86, "shown": 86, "radio": [86, 145], "meteorologi": [86, 111, 112, 145], "bean": [86, 145], "surround": 86, "msl": [86, 93], "slant": 86, "decai": 86, "wet": [87, 91], "were": [87, 121], "taken": 87, "1974": [87, 145], "These": 87, "intend": [87, 138], "under": [87, 143, 144], "dryn": 87, "wetn": 87, "satur": [88, 111, 112, 120, 127, 128, 145], "kelvin": [88, 130, 131], "goff": [88, 111, 112], "gratch": [88, 111, 112], "formul": [88, 111, 112], "1963": 88, "switch": [88, 120], "absmdl": [89, 90, 92], "from_sat": [89, 90], "zx": 90, "reach": 90, "describ": 90, "anglesx": 90, "deg": 90, "wether": 90, "distanc": 90, "simpl": 90, "plane": 90, "parallel": 90, "assumpt": 90, "clw": 90, "pass": 90, "only_bt": 91, "radiometr": [91, 138], "includ": [91, 97], "taulaydri": 91, "taulaywet": 91, "taulayliq": 91, "taulayic": 91, "srho": 91, "swet": 91, "sdry": 91, "sliq": 91, "sice": 91, "intermedi": 91, "rt": 91, "provid": [95, 97, 107, 108, 116, 118, 121, 124, 135], "affect": 95, "found": 95, "litteratur": 95, "baselin": 95, "exaust": 95, "look": 95, "turner": [95, 145], "2009": [95, 109, 145], "functoin": 97, "perturbatoin": 97, "being": 97, "argument": [97, 98, 136, 137], "invalid": [97, 143, 144], "fun": 98, "sa": 98, "sb": 98, "sab": 98, "propag": [98, 145], "associ": 98, "deviat": 98, "aa": 98, "sigma": 98, "displaystyl": 98, "bb": 98, "2ab": 98, "ab": [98, 145], "approx": 98, "descript": [98, 107, 118, 123], "imput": 98, "wikipedia": 98, "org": [98, 138, 145], "wiki": 98, "propagation_of_uncertainti": 98, "con_cf": 99, "001": [99, 145], "unitless": [99, 104], "jm": [99, 104, 145], "exist": 99, "w2a": 99, "333": 99, "necessari": [99, 107, 139, 141], "whole": [101, 102, 104], "ozono": 102, "sp": [103, 104], "expon": 104, "mr": [106, 119, 121, 123, 132], "thick": 106, "hypsometr": 106, "ratio": [106, 110, 118, 119, 120, 121, 122, 123, 125, 126, 127, 132], "virtual": [106, 132, 138], "z_2": 106, "z_1": 106, "r_d": 106, "int_": 106, "p_1": 106, "p_2": 106, "t_v": [106, 132], "off": 106, "hobbs2006": [106, 132, 145], "hydrostat": 106, "dimensionless": [106, 132], "kilomet": 106, "metpi": [106, 132], "thickness_hydrostat": 106, "string": 107, "specifi": 107, "need": 107, "avogadro": 107, "earthradiu": 107, "radiu": 107, "np2db": 107, "decibel": 107, "db": 107, "rdry": 107, "rwatvap": 107, "tcosmicbkg": 107, "wheter": 107, "costant": 107, "numer": 107, "ask": 107, "mohr": 107, "n": [107, 145], "taylor": 107, "newel": 107, "codata": 107, "fundament": [107, 118, 145], "physic": 107, "web": [107, 138], "nist": 107, "gov": [107, 145], "cuu": 107, "html": 107, "pag": 107, "017": 107, "ref": [107, 109, 141], "736": 107, "td": 108, "arm": 108, "august": [108, 145], "roch": 108, "magnu": [108, 145], "approxim": [108, 145], "1828": [108, 145], "1844": [108, 145], "t_d": 108, "17": [108, 138], "625": 108, "1078": 108, "times10": 108, "at_d": 108, "t_db": 108, "265": [108, 139], "dew": 108, "point": [108, 120], "celsiu": [108, 130, 131], "alduchov": [108, 145], "1996": [108, 145], "imaginari": 109, "dissip": 109, "here": 109, "pi": 109, "temepratur": 109, "patek": 109, "phy": [109, 145], "chem": [109, 145], "deby": 109, "ellison": 109, "ieee": [109, 145], "tran": 109, "geosci": [109, 138, 145], "sen": [109, 145], "1387": [109, 145], "93": 109, "220": 109, "248": [109, 139], "330": 109, "sixth": [111, 112], "edit": [111, 112], "smithsonian": [111, 112], "tabl": [111, 112], "svp": [111, 112], "370": [111, 112], "160": [111, 112], "gasid": [113, 122], "instrument": [114, 115], "abbrevi": 114, "radiomet": [114, 138, 145], "chosen": 114, "sensor": [115, 145], "mwi": 115, "noaa1976": [116, 124, 145], "invert": 116, "formula": [116, 124, 132], "outlin": [116, 124, 132], "hobbs1977": [116, 124, 145], "pg": [116, 124, 132], "gamma": [116, 124], "context": 117, "chose": 117, "moduletyp": 117, "aself": 117, "jacobson": [118, 145], "nwp": 118, "liq": 118, "r_": 118, "moist": [118, 145], "epsilon": [118, 132], "m_": 118, "replac": 118, "cambridg": [118, 145], "tconvert": [120, 127, 128], "rh1": 120, "rh2": 120, "threshold": [120, 127, 128], "wmo": [120, 126], "definit": [120, 126, 138], "holger": 121, "linn": 121, "institut": 121, "gas_mass": 122, "ani": [123, 138, 139, 141], "pa": 123, "oppos": [127, 128], "less": [127, 128], "tild": 129, "parcel": 132, "80": 132, "2412547754703": 132, "value_prof_interpol": [133, 134], "constructor": 134, "interpol": 134, "alpha": 135, "addit": [136, 137], "150": [137, 145], "allow": [138, 141], "estimt": 138, "propog": 138, "meteorolog": 138, "built": 138, "directli": [138, 139, 141], "radiosound": 138, "come": 138, "nation": [138, 145], "ncdc": 138, "ocean": [138, 145], "administr": [138, 145], "noaa": [138, 145], "quantifi": 138, "underli": [138, 145], "approach": 138, "wide": 138, "commonli": 138, "exploit": 138, "mwr": 138, "guid": [138, 145], "page": [138, 145], "packag": [138, 139, 140, 141], "github": [138, 139, 141], "softwar": [138, 145], "educ": 138, "applic": [138, 145], "so": 138, "guarante": 138, "attach": 138, "convers": 138, "deifinit": 138, "1001": [138, 141], "293": 138, "119811": 138, "292": 138, "538088": 138, "291": 138, "736672": 138, "913658": 138, "493971": 138, "976": 138, "230": 138, "179993": 138, "977": 138, "435965": 138, "978": 138, "232": 138, "592915": 138, "979": 138, "666322": 138, "980": 138, "667522": 138, "981": 138, "dtype": 138, "float64": 138, "preview": 138, "info": 138, "644145": 138, "085189": 138, "012949": 138, "188067": 138, "135297": 138, "013615": 138, "474": 138, "835275": 138, "329120": 138, "larosa": [138, 145], "gallucci": [138, 145], "nilo": [138, 145], "romano": [138, 145], "scatter": [138, 145], "dev": [138, 139, 141, 145], "2053": 138, "2076": 138, "5194": [138, 145], "gmd": [138, 145], "zenodo": 138, "5281": 138, "8219145": 138, "instruct": 138, "ubuntu": 138, "maco": 138, "pypi": 138, "environ": 138, "docker": 138, "imag": 138, "my": 138, "first": 138, "colab": 138, "loretta": [138, 142], "pearl": [138, 142], "poku": [138, 142], "support": 139, "actual": 139, "procedur": 139, "oper": 139, "system": 139, "sudo": 139, "apt": 139, "upgrad": 139, "python3": [139, 140, 141], "pip": [139, 141, 143, 144], "homebrew": 139, "brew": 139, "releas": 139, "mac": 139, "command": [139, 141], "virtualenv": 139, "pip3": 139, "creat": [139, 140], "activ": 139, "bin": 139, "deactiv": 139, "latest": 139, "link": 139, "tar": 139, "zxvf": 139, "gz": 139, "readi": 139, "quickli": 139, "test": 139, "termin": 139, "app": 139, "hello_spectrum": 139, "properli": [139, 141], "you": 139, "someth": 139, "like": 139, "progress": 139, "complet": 139, "hello": 139, "spectrum": [139, 141], "7000": 139, "689123": 139, "716080": 139, "069040": 139, "012013": 139, "8000": 139, "014923": 139, "634107": 139, "214403": 139, "015643": 139, "4000": 139, "285354": 139, "140186": 139, "076330": 139, "025881": 139, "3000": 139, "594440": 139, "274": 139, "191598": 139, "124585": 139, "316968": 139, "6100": 139, "278": 139, "442378": 139, "267": 139, "163248": 139, "134824": 139, "924593": 139, "2400": 139, "270": 139, "032638": 139, "262": 139, "487813": 139, "137720": 139, "458056": 139, "7500": 139, "259": 139, "296109": 139, "080703": 139, "140096": 139, "219325": 139, "0000": 139, "295": 139, "336793": 139, "913337": 139, "370017": 139, "047366": 139, "5503": 139, "409636": 139, "910320": 139, "634700": 139, "435743": 139, "116": 139, "6503": 139, "105313": 139, "583070": 139, "647756": 139, "864176": 139, "117": 139, "3503": 139, "258": 139, "382394": 139, "253": 139, "279983": 139, "656168": 139, "551855": 139, "251": 139, "887074": 139, "247": [139, 145], "840191": 139, "658587": 139, "892017": 139, "9503": 139, "319901": 139, "289379": 139, "688148": 139, "857808": 139, "1503": 139, "829337": 139, "792452": 139, "690658": 139, "519190": 139, "8503": 139, "470564": 139, "266": 139, "281272": 139, "699499": 139, "837028": 139, "121": 139, "508571": 139, "275": 139, "765375": 139, "713579": 139, "414934": 139, "7750": 139, "382258": 139, "293882": 139, "912160": 139, "019109": 139, "166": 139, "2250": 139, "768856": 139, "923583": 139, "061262": 139, "019146": 139, "174": 139, "9100": 139, "279": 139, "316272": 139, "136791": 139, "721552": 139, "019642": 139, "177": 139, "2100": 139, "918510": 139, "902966": 139, "354952": 139, "019836": 139, "178": 139, "4100": 139, "271": 139, "637064": 139, "635743": 139, "944304": 139, "019946": 139, "179": 139, "916650": 139, "916645": 139, "761551": 139, "020091": 139, "3100": 139, "183942": 139, "052880": 139, "020233": 139, "185": 139, "248076": 139, "149293": 139, "020672": 139, "186": 139, "7100": 139, "558982": 139, "558979": 139, "344414": 139, "020837": 139, "188": 139, "889844": 139, "889228": 139, "732092": 139, "021020": 139, "189": 139, "904425": 139, "897462": 139, "196430": 139, "021170": 139, "191": 139, "277": 139, "820891": 139, "740367": 139, "586945": 139, "021468": 139, "successfulli": [139, 141], "prefer": 139, "folder": 139, "pull": 139, "rm": 139, "dockerfil": 139, "root": 139, "993587e5fea9": 139, "googl": [139, 145], "wget": 139, "raw": 139, "githubusercont": 139, "com": [139, 141, 145], "satclop": [139, 141], "highlight": 140, "fluctuat": 140, "high": 140, "explain": 140, "effect": [140, 145], "usr": [140, 141], "lib": [140, 141], "dist": [140, 141], "eraf": 140, "cdsapi": 140, "instal": [140, 141, 143, 144], "diap": 140, "abidgan": 140, "39": [140, 141, 143, 144, 145], "get_stat": 140, "42": 140, "65": 140, "rte1": 140, "df1": 140, "note": 141, "requir": [141, 143, 144], "develop": 141, "repositori": [141, 145], "head": 141, "user": [141, 145], "becaus": 141, "writeabl": 141, "collect": 141, "py3": 141, "whl": 141, "246": 141, "kb": 141, "eta": 141, "alreadi": 141, "satisfi": 141, "netcdf4": 141, "post2": 141, "bs4": 141, "py2": 141, "setuptool": 141, "scikit": 141, "learn": 141, "scipi": 141, "beautifulsoup4": 141, "gt": 141, "kiwisolv": 141, "pillow": 141, "pypars": 141, "cycler": 141, "dateutil": 141, "post0": 141, "contourpi": 141, "fonttool": 141, "cftime": 141, "certifi": 141, "pytz": 141, "tzdata": 141, "joblib": 141, "threadpoolctl": 141, "soupsiev": 141, "your": 141, "ipympl": [141, 143, 144], "conda": [141, 143, 144], "inlin": [141, 143, 144], "load": [141, 143, 144], "climnatologi": 141, "spectra": [141, 145], "one": 141, "detail": 141, "lt": 141, "re": [143, 144], "109969": 143, "950133": 143, "012855": 143, "245630": 143, "301043": 143, "013524": 143, "153517": 143, "000663": 143, "014259": 143, "340241": 143, "636022": 143, "015066": 143, "158441": 143, "738496": 143, "015954": 143, "727042": 143, "270840": 143, "025784": 143, "281780": 143, "731501": 143, "025956": 143, "747798": 143, "109277": 143, "026129": 143, "139746": 143, "420450": 143, "026302": 143, "469554": 143, "677693": 143, "026476": 143, "005362": 143, "055802": 143, "149566": 143, "084145": 143, "001669": 143, "166236": 143, "158865": 143, "152032": 143, "145768": 143, "140071": 143, "100580": 143, "106575": 143, "782656": 143, "012748": 143, "602815": 143, "750325": 143, "549723": 143, "013396": 143, "634754": 143, "918654": 143, "872703": 143, "014107": 143, "966560": 143, "268116": 143, "380748": 143, "014887": 143, "518276": 143, "754139": 143, "083580": 143, "015745": 143, "020626": 143, "013156": 143, "081277": 143, "025150": 143, "152409": 143, "143310": 143, "859264": 143, "025315": 143, "380803": 143, "370182": 143, "671482": 143, "025481": 143, "742167": 143, "730168": 143, "513609": 143, "025648": 143, "256287": 143, "243076": 143, "381489": 143, "025815": 143, "hobb": 145, "wallac": 145, "1977": 145, "scienc": 145, "introductori": 145, "survei": 145, "academ": 145, "press": 145, "504": 145, "aeronaut": 145, "forc": 145, "govern": 145, "offic": 145, "washington": 145, "dc": 145, "researchg": 145, "pdf": 145, "tr": 145, "0110": 145, "payn": 145, "mlawer": 145, "cadi": 145, "pereira": 145, "moncet": 145, "49": 145, "2194": 145, "2208": 145, "1109": 145, "tgr": 145, "2010": 145, "2091416": 145, "eskridg": 145, "improv": 145, "form": 145, "appl": 145, "meteor": 145, "601": 145, "journal": 145, "ametsoc": 145, "1175": 145, "1520": 145, "0450": 145, "281996": 145, "29035": 145, "3c0601": 145, "3aimfao": 145, "3e2": 145, "3b2": 145, "versuch": 145, "\u00fcber": 145, "die": 145, "spannkr\u00e4ft": 145, "de": 145, "wasserdampf": 145, "ann": 145, "225": 145, "onlinelibrari": 145, "wilei": 145, "1002": 145, "andp": 145, "18441370202": 145, "bradford": 145, "superintendentof": 145, "governmentprint": 145, "1966": 145, "435": 145, "pagin": 145, "book": 145, "jw9raaaamaaj": 145, "printsec": 145, "frontcov": 145, "hl": 145, "gbs_ge_summary_r": 145, "cad": 145, "onepag": 145, "dca": 145, "ufcg": 145, "edu": 145, "br": 145, "mna": 145, "impact": 145, "atmo": 145, "15231": 145, "15259": 145, "acp": 145, "hock": 145, "cersosimo": 145, "di": 145, "paola": 145, "gentil": 145, "geraldi": 145, "ricciardelli": 145, "ripepi": 145, "viggiano": 145, "luini": 145, "riva": 145, "marzano": 145, "martinet": 145, "song": 145, "ahn": 145, "rttov": 145, "gb": 145, "v1": 145, "1833": 145, "1845": 145, "21982": 145, "m81013": 145, "supercool": 145, "transact": 145, "geoscienc": 145, "vol": 145, "1393": 145, "2339015": 145, "overlap": 145, "quantit": 145, "spectroscopi": 145, "issu": 145, "0022": 145, "4073": 145, "90004": 145, "wpl": 145, "technic": 145, "memorandum": 145, "erl": 145, "213": 145, "32511": 145, "dept": 145, "ofcommerc": 145, "wave": 145, "laboratori": 145, "juli": 145, "803": 145, "807": 145, "environment": 145, "research": 145, "22891": 145, "han": 145, "donald": 145, "millimet": 145, "studi": 145, "1987": 145, "fo": 145, "permitt": 145, "frequenciesbelow": 145, "thz": 145, "internat": 145, "infrar": 145, "675": 145, "suspendedwat": 145, "particl": 145, "gh": 145, "agard": 145, "confer": 145, "proc": 145, "542": 145, "atmosphericpropag": 145, "through": 145, "natur": 145, "man": 145, "made": 145, "obscur": 145, "visibl": 145, "boulet": 145, "tip": 145, "alex": 145, "brown": 145, "ma": 145, "translat": 145, "rotat": 145, "505": 145, "516": 145, "s0022": 145, "00174": 145, "rototransl": 145, "astrophys": 145, "311": 145, "1043": 145, "1086": 145, "164841": 145, "battaglia": 145, "wigneron": 145, "thermal": 145, "iet": 145, "electromagnet": 145, "london": 145, "uk": 145, "vilkov": 145, "fine": 145, "structur": 145, "quant": 145, "spectrosc": 145, "ra": 145, "019": 145, "parshin": 145, "261": 145, "328": 145, "2704": 145, "2712": 145, "004": 145, "accur": 145, "205": 145, "032": 145, "delahay": 145, "diagnost": 145, "118": 145, "cadeddu": 145, "l\u00f6hnert": 145, "crewel": 145, "vogelmann": 145, "suggest": 145, "47": 145, "3326": 145, "3337": 145, "2022262": 145, "006": 145, "climatol": 145, "035": 145, "0601": 145, "imfao": 145, "simonova": 145, "campargu": 145, "terahertz": 145, "gap": 145, "700": 145, "review": 145, "experi": 145, "soleil": 145, "synchrotron": 145, "386": 145, "111603": 145, "hal": 145, "03865589": 145, "versu": 145, "mt_ckd": 145, "389": 145, "111691": 145, "andrei": 145, "frank": 145, "lucia": 145, "caviti": 145, "ringdown": 145, "spectromet": 145, "108": 145, "276": 145, "issn": 145, "amerkhanov": 145, "pure": 145, "its": 145, "mixtur": 145, "109172": 145, "script_exampl": 146}, "objects": {"pyrtlib.absorption_model": [[18, 0, 1, "", "AbsModel"], [22, 0, 1, "", "H2OAbsModel"], [29, 0, 1, "", "LiqAbsModel"], [34, 0, 1, "", "N2AbsModel"], [40, 0, 1, "", "O2AbsModel"], [45, 0, 1, "", "O3AbsModel"]], "pyrtlib.absorption_model.AbsModel": [[19, 1, 1, "", "__init__"], [20, 1, 1, "", "implemented_models"], [21, 1, 1, "", "set_ll"]], "pyrtlib.absorption_model.H2OAbsModel": [[23, 1, 1, "", "__init__"], [24, 1, 1, "", "h2o_absorption"], [25, 1, 1, "", "h2o_continuum"], [26, 1, 1, "", "h2o_continuum_mwl24"], [27, 1, 1, "", "implemented_models"], [28, 1, 1, "", "set_ll"]], "pyrtlib.absorption_model.LiqAbsModel": [[30, 1, 1, "", "__init__"], [31, 1, 1, "", "implemented_models"], [32, 1, 1, "", "liquid_water_absorption"], [33, 1, 1, "", "set_ll"]], "pyrtlib.absorption_model.N2AbsModel": [[35, 1, 1, "", "__init__"], [36, 1, 1, "", "implemented_models"], [37, 1, 1, "", "n2_absorption"], [38, 1, 1, "", "n2_absorption_mwl24"], [39, 1, 1, "", "set_ll"]], "pyrtlib.absorption_model.O2AbsModel": [[41, 1, 1, "", "__init__"], [42, 1, 1, "", "implemented_models"], [43, 1, 1, "", "o2_absorption"], [44, 1, 1, "", "set_ll"]], "pyrtlib.absorption_model.O3AbsModel": [[46, 1, 1, "", "__init__"], [47, 1, 1, "", "implemented_models"], [48, 1, 1, "", "o3_absorption"], [49, 1, 1, "", "set_ll"]], "pyrtlib.apiwebservices": [[50, 0, 1, "", "ERA5Reanalysis"], [54, 0, 1, "", "IGRAUpperAir"], [57, 0, 1, "", "WyomingUpperAir"]], "pyrtlib.apiwebservices.ERA5Reanalysis": [[51, 1, 1, "", "__init__"], [52, 1, 1, "", "read_data"], [53, 1, 1, "", "request_data"]], "pyrtlib.apiwebservices.IGRAUpperAir": [[55, 1, 1, "", "__init__"], [56, 1, 1, "", "request_data"]], "pyrtlib.apiwebservices.WyomingUpperAir": [[58, 1, 1, "", "__init__"], [59, 1, 1, "", "get_stations"], [60, 1, 1, "", "request_data"]], "pyrtlib.climatology": [[61, 0, 1, "", "AtmosphericProfiles"], [67, 0, 1, "", "ProfileExtrapolation"]], "pyrtlib.climatology.AtmosphericProfiles": [[62, 1, 1, "", "__init__"], [63, 1, 1, "", "atm_profiles"], [64, 1, 1, "", "gl_atm"], [65, 1, 1, "", "gl_atm_minor"], [66, 1, 1, "", "gl_atm_trace"]], "pyrtlib.climatology.ProfileExtrapolation": [[68, 1, 1, "", "__init__"], [69, 1, 1, "", "pressure"], [70, 1, 1, "", "profile_extrapolation"], [71, 1, 1, "", "standard_pressure"], [72, 1, 1, "", "standard_temperature"], [73, 1, 1, "", "standard_water_vapour_density"], [74, 1, 1, "", "standard_water_vapour_pressure"], [75, 1, 1, "", "temperature"], [76, 1, 1, "", "water_vapour_density"]], "pyrtlib.rt_equation": [[77, 0, 1, "", "RTEquation"]], "pyrtlib.rt_equation.RTEquation": [[78, 1, 1, "", "__init__"], [79, 1, 1, "", "bright"], [80, 1, 1, "", "clearsky_absorption"], [81, 1, 1, "", "cloud_integrated_density"], [82, 1, 1, "", "cloud_radiating_temperature"], [83, 1, 1, "", "cloudy_absorption"], [84, 1, 1, "", "exponential_integration"], [85, 1, 1, "", "planck"], [86, 1, 1, "", "ray_tracing"], [87, 1, 1, "", "refractivity"], [88, 1, 1, "", "vapor"]], "pyrtlib.tb_spectrum": [[89, 0, 1, "", "TbCloudRTE"]], "pyrtlib.tb_spectrum.TbCloudRTE": [[90, 1, 1, "", "__init__"], [91, 1, 1, "", "execute"], [92, 1, 1, "", "init_absmdl"], [93, 1, 1, "", "init_cloudy"], [94, 1, 1, "", "set_amu"]], "pyrtlib.uncertainty": [[95, 0, 1, "", "AbsModUncertainty"], [99, 0, 1, "", "SpectroscopicParameter"]], "pyrtlib.uncertainty.AbsModUncertainty": [[96, 1, 1, "", "__init__"], [97, 1, 1, "", "parameters_perturbation"], [98, 1, 1, "", "uncertainty_propagation"]], "pyrtlib.uncertainty.SpectroscopicParameter": [[100, 1, 1, "", "__init__"], [101, 1, 1, "", "oxygen_parameters"], [102, 1, 1, "", "ozono_parameters"], [103, 1, 1, "", "set_parameters"], [104, 1, 1, "", "water_parameters"]], "pyrtlib": [[105, 2, 0, "-", "utils"]], "pyrtlib.utils": [[106, 3, 1, "", "atmospheric_tickness"], [107, 3, 1, "", "constants"], [108, 3, 1, "", "dewpoint2rh"], [109, 3, 1, "", "dilec12"], [110, 3, 1, "", "e2mr"], [111, 3, 1, "", "esice_goffgratch"], [112, 3, 1, "", "eswat_goffgratch"], [113, 3, 1, "", "gas_mass"], [114, 3, 1, "", "get_frequencies"], [115, 3, 1, "", "get_frequencies_sat"], [116, 3, 1, "", "height_to_pressure"], [117, 3, 1, "", "import_lineshape"], [118, 3, 1, "", "kgkg_to_kgm3"], [119, 3, 1, "", "mr2e"], [120, 3, 1, "", "mr2rh"], [121, 3, 1, "", "mr2rho"], [122, 3, 1, "", "ppmv2gkg"], [123, 3, 1, "", "ppmv_to_moleculesm3"], [124, 3, 1, "", "pressure_to_height"], [125, 3, 1, "", "rho2mr"], [126, 3, 1, "", "rho2rh"], [127, 3, 1, "", "satmix"], [128, 3, 1, "", "satvap"], [129, 3, 1, "", "tk2b_mod"], [130, 3, 1, "", "to_celsius"], [131, 3, 1, "", "to_kelvin"], [132, 3, 1, "", "virtual_temperature"]], "pyrtlib.weighting_functions": [[133, 0, 1, "", "WeightingFunctions"]], "pyrtlib.weighting_functions.WeightingFunctions": [[134, 1, 1, "", "__init__"], [135, 1, 1, "", "generate_wf"], [136, 1, 1, "", "plot_wf"], [137, 1, 1, "", "plot_wf_grouped"]]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:module", "3": "py:function"}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "module", "Python module"], "3": ["py", "function", "Python function"]}, "titleterms": {"api": [0, 138], "refer": [0, 138, 145], "main": 0, "class": 0, "standard": [0, 1, 17], "atmospher": [0, 1, 3, 17], "profil": [0, 3, 14], "radi": 0, "transfer": 0, "equat": 0, "absorpt": [0, 1, 14, 17, 143], "model": [0, 1, 17, 143], "weight": [0, 15], "function": [0, 15], "util": [0, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132], "uncertainti": [0, 17, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 144], "web": 0, "servic": 0, "gener": [1, 143], "exampl": [1, 2, 17, 20, 21, 24, 27, 28, 31, 33, 36, 39, 42, 44, 47, 49, 52, 56, 60, 61, 63, 64, 65, 66, 67, 70, 80, 88, 89, 91, 92, 93, 94, 97, 99, 101, 103, 104, 107, 108, 114, 115, 116, 117, 118, 120, 122, 123, 131, 132, 133, 135, 136, 137, 138, 140, 142, 143], "import": [1, 17, 143, 144], "pyrtlib": [1, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 141, 143, 144], "packag": [1, 17, 143, 144], "load": [1, 17], "low": [1, 17], "re": [1, 17], "lower": [1, 17], "level": [1, 17], "onli": [1, 17], "1": [1, 17], "within": [1, 17], "km": [1, 17], "defin": [1, 17, 144], "which": [1, 17], "us": [1, 8, 9, 10, 11, 17, 28, 44, 49, 52, 56, 60, 61, 63, 64, 67, 70, 80, 88, 89, 91, 92, 93, 94, 97, 101, 103, 104, 107, 108, 114, 115, 116, 117, 118, 120, 122, 123, 131, 133, 135, 136, 137, 144], "perform": [1, 4, 5, 6, 7, 8, 9, 10, 11, 13, 17, 143, 144], "upwel": [1, 6, 8, 9, 10, 11, 143], "bright": [1, 4, 6, 7, 8, 9, 10, 11, 13, 17, 79, 143, 144], "temperatur": [1, 4, 6, 7, 8, 9, 10, 11, 13, 17, 75, 143, 144], "calcul": [1, 4, 6, 7, 8, 9, 10, 11, 13, 17, 143, 144], "r03": [1, 143], "downwel": [1, 4, 7, 13, 143], "galleri": [2, 138], "sensit": 5, "spectroscop": [5, 17, 144], "paramet": [5, 17, 144], "ozon": 7, "era5": [8, 9], "reanalysi": [8, 9], "observ": [8, 9, 10, 11], "cloudi": [9, 13], "condit": [9, 13], "igra2": 10, "upper": [10, 11], "air": [10, 11], "extrapol": 10, "wyom": 11, "logarithm": 12, "depend": 12, "monochromat": 12, "radianc": 12, "22": 12, "235": 12, "183": 12, "ghz": 12, "water": 14, "vapour": 14, "comput": [15, 16, 146], "time": [16, 146], "tool": [17, 144], "perturb": [17, 144], "them": [17, 144], "frequenc": [17, 144], "set": [17, 144], "hatpro": [17, 144], "radiomet": [17, 144], "jacobian": [17, 144], "matrix": [17, 144], "sigma": [17, 144], "bt": [17, 144], "absorption_model": [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49], "absmodel": [18, 19, 20, 21], "__init__": [19, 23, 30, 35, 41, 46, 51, 55, 58, 62, 68, 78, 90, 96, 100, 134], "implemented_model": [20, 27, 31, 36, 42, 47], "set_ll": [21, 28, 33, 39, 44, 49], "h2oabsmodel": [22, 23, 24, 25, 26, 27, 28], "h2o_absorpt": 24, "h2o_continuum": 25, "h2o_continuum_mwl24": 26, "liqabsmodel": [29, 30, 31, 32, 33], "liquid_water_absorpt": 32, "n2absmodel": [34, 35, 36, 37, 38, 39], "n2_absorpt": 37, "n2_absorption_mwl24": 38, "o2absmodel": [40, 41, 42, 43, 44], "o2_absorpt": 43, "o3absmodel": [45, 46, 47, 48, 49], "o3_absorpt": 48, "apiwebservic": [50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60], "era5reanalysi": [50, 51, 52, 53], "read_data": 52, "request_data": [53, 56, 60], "igraupperair": [54, 55, 56], "wyomingupperair": [57, 58, 59, 60], "get_stat": 59, "climatologi": [61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76], "atmosphericprofil": [61, 62, 63, 64, 65, 66], "atm_profil": 63, "gl_atm": 64, "gl_atm_minor": 65, "gl_atm_trac": 66, "profileextrapol": [67, 68, 69, 70, 71, 72, 73, 74, 75, 76], "pressur": 69, "profile_extrapol": 70, "standard_pressur": 71, "standard_temperatur": 72, "standard_water_vapour_dens": 73, "standard_water_vapour_pressur": 74, "water_vapour_dens": 76, "rt_equat": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88], "rtequat": [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88], "clearsky_absorpt": 80, "cloud_integrated_dens": 81, "cloud_radiating_temperatur": 82, "cloudy_absorpt": 83, "exponential_integr": 84, "planck": 85, "ray_trac": 86, "refract": 87, "vapor": 88, "tb_spectrum": [89, 90, 91, 92, 93, 94], "tbcloudrt": [89, 90, 91, 92, 93, 94], "execut": 91, "init_absmdl": 92, "init_cloudi": 93, "set_amu": 94, "absmoduncertainti": [95, 96, 97, 98], "parameters_perturb": 97, "uncertainty_propag": 98, "spectroscopicparamet": [99, 100, 101, 102, 103, 104], "oxygen_paramet": 101, "ozono_paramet": 102, "set_paramet": 103, "water_paramet": 104, "atmospheric_tick": 106, "constant": 107, "dewpoint2rh": 108, "dilec12": 109, "e2mr": 110, "esice_goffgratch": 111, "eswat_goffgratch": 112, "gas_mass": 113, "get_frequ": 114, "get_frequencies_sat": 115, "height_to_pressur": 116, "import_lineshap": 117, "kgkg_to_kgm3": 118, "mr2e": 119, "mr2rh": 120, "mr2rho": 121, "ppmv2gkg": 122, "ppmv_to_moleculesm3": 123, "pressure_to_height": 124, "rho2mr": 125, "rho2rh": 126, "satmix": 127, "satvap": 128, "tk2b_mod": 129, "to_celsiu": 130, "to_kelvin": 131, "virtual_temperatur": 132, "weighting_funct": [133, 134, 135, 136, 137], "weightingfunct": [133, 134, 135, 136, 137], "generate_wf": 135, "plot_wf": 136, "plot_wf_group": 137, "document": 138, "quick": 138, "start": 138, "cite": 138, "instal": [138, 139], "commun": [138, 142], "indic": 138, "search": 138, "instruct": 139, "python": [139, 143, 144], "ubuntu": 139, "maco": 139, "via": 139, "pypi": 139, "virtual": 139, "environ": 139, "from": 139, "sourc": 139, "build": 139, "run": 139, "docker": 139, "imag": 139, "my": [139, 141], "first": [139, 141], "colab": 139, "notebook": [139, 144], "loretta": 140, "pearl": 140, "poku": 140, "test": 141, "plot": [143, 144]}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.intersphinx": 1, "sphinx.ext.todo": 2, "nbsphinx": 4, "sphinx": 57}, "alltitles": {"API references": [[0, "api-references"]], "Main class": [[0, "main-class"]], "Standard Atmospheric Profiles": [[0, "standard-atmospheric-profiles"]], "Radiative Transfer Equation": [[0, "radiative-transfer-equation"]], "Absorption Models": [[0, "absorption-models"]], "Weighting Functions": [[0, "weighting-functions"]], "Utility Functions": [[0, "utility-functions"]], "Uncertainty": [[0, "uncertainty"]], "API Web Services": [[0, "api-web-services"]], "Generic Example": [[1, "generic-example"]], "Import pyrtlib package": [[1, "import-pyrtlib-package"], [143, "Import-pyrtlib-package"]], "Load standard atmosphere (low res at lower levels, only 1 level within 1 km) and define which absorption model will be used.": [[1, "load-standard-atmosphere-low-res-at-lower-levels-only-1-level-within-1-km-and-define-which-absorption-model-will-be-used"], [17, "load-standard-atmosphere-low-res-at-lower-levels-only-1-level-within-1-km-and-define-which-absorption-model-will-be-used"]], "Performing upwelling brightness temperature calculation": [[1, "performing-upwelling-brightness-temperature-calculation"], [143, "Performing-upwelling-brightness-temperature-calculation"]], "Performing calculation for R03 absorption model": [[1, "performing-calculation-for-r03-absorption-model"], [143, "Performing-calculation-for-R03-absorption-model"]], "Performing downwelling brightness temperature calculation": [[1, "performing-downwelling-brightness-temperature-calculation"], [143, "Performing-downwelling-brightness-temperature-calculation"]], "Gallery example": [[2, "gallery-example"]], "Atmospheric Profiles": [[3, "atmospheric-profiles"]], "Performing Downwelling Brightness Temperature calculation": [[4, "performing-downwelling-brightness-temperature-calculation"]], "Performing sensitivity of spectroscopic parameters": [[5, "performing-sensitivity-of-spectroscopic-parameters"]], "Performing Upwelling Brightness Temperature calculation": [[6, "performing-upwelling-brightness-temperature-calculation"]], "Performing Downwelling Brightness Temperature calculation with Ozone": [[7, "performing-downwelling-brightness-temperature-calculation-with-ozone"]], "Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations.": [[8, "performing-upwelling-brightness-temperature-calculation-using-era5-reanalysis-observations"]], "Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition.": [[9, "performing-upwelling-brightness-temperature-calculation-using-era5-reanalysis-observations-in-cloudy-condition"]], "Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation).": [[10, "performing-upwelling-brightness-temperature-calculation-using-igra2-upper-air-observations-with-extrapolation"]], "Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations.": [[11, "performing-upwelling-brightness-temperature-calculation-using-wyoming-upper-air-observations"]], "Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz": [[12, "logarithmic-dependence-of-monochromatic-radiance-at-22-235-and-183-ghz"]], "Performing Downwelling Brightness Temperature calculation in cloudy condition.": [[13, "performing-downwelling-brightness-temperature-calculation-in-cloudy-condition"]], "Water Vapour Absorption Profiles": [[14, "water-vapour-absorption-profiles"]], "Computation of Weighting Functions": [[15, "computation-of-weighting-functions"]], "Computation times": [[16, "computation-times"], [146, "computation-times"]], "Uncertainty Example": [[17, "uncertainty-example"]], "Import pyrtlib package and tools": [[17, "import-pyrtlib-package-and-tools"], [144, "Import-pyrtlib-package-and-tools"]], "Define spectroscopic parameters to be perturbed and them uncertainties": [[17, "define-spectroscopic-parameters-to-be-perturbed-and-them-uncertainties"], [144, "Define-spectroscopic-parameters-to-be-perturbed-and-them-uncertainties"]], "Use frequencies set of HATPRO Radiometer": [[17, "use-frequencies-set-of-hatpro-radiometer"], [144, "Use-frequencies-set-of-HATPRO-Radiometer"]], "Performing uncertainty of brightness temperature": [[17, "performing-uncertainty-of-brightness-temperature"], [144, "Performing-uncertainty-of-brightness-temperature"]], "Calculate Jacobian matrix": [[17, "calculate-jacobian-matrix"], [144, "Calculate-Jacobian-matrix"]], "Calculate uncertainty (sigma) for BT": [[17, "calculate-uncertainty-sigma-for-bt"], [144, "Calculate-uncertainty-(sigma)-for-BT"]], "pyrtlib.absorption_model.AbsModel": [[18, "pyrtlib-absorption-model-absmodel"]], "pyrtlib.absorption_model.AbsModel.__init__": [[19, "pyrtlib-absorption-model-absmodel-init"]], "pyrtlib.absorption_model.AbsModel.implemented_models": [[20, "pyrtlib-absorption-model-absmodel-implemented-models"]], "Example": [[20, null], [21, null], [24, null], [27, null], [28, null], [31, null], [33, null], [36, null], [39, null], [42, null], [44, null], [47, null], [49, null], [52, null], [56, null], [60, null], [64, null], [65, null], [66, null], [99, null], [103, null], [104, null], [115, null]], "pyrtlib.absorption_model.AbsModel.set_ll": [[21, "pyrtlib-absorption-model-absmodel-set-ll"]], "pyrtlib.absorption_model.H2OAbsModel": [[22, "pyrtlib-absorption-model-h2oabsmodel"]], "pyrtlib.absorption_model.H2OAbsModel.__init__": [[23, "pyrtlib-absorption-model-h2oabsmodel-init"]], "pyrtlib.absorption_model.H2OAbsModel.h2o_absorption": [[24, "pyrtlib-absorption-model-h2oabsmodel-h2o-absorption"]], "pyrtlib.absorption_model.H2OAbsModel.h2o_continuum": [[25, "pyrtlib-absorption-model-h2oabsmodel-h2o-continuum"]], "pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24": [[26, "pyrtlib-absorption-model-h2oabsmodel-h2o-continuum-mwl24"]], "pyrtlib.absorption_model.H2OAbsModel.implemented_models": [[27, "pyrtlib-absorption-model-h2oabsmodel-implemented-models"]], "pyrtlib.absorption_model.H2OAbsModel.set_ll": [[28, "pyrtlib-absorption-model-h2oabsmodel-set-ll"]], "Examples using pyrtlib.absorption_model.H2OAbsModel.set_ll": [[28, "examples-using-pyrtlib-absorption-model-h2oabsmodel-set-ll"]], "pyrtlib.absorption_model.LiqAbsModel": [[29, "pyrtlib-absorption-model-liqabsmodel"]], "pyrtlib.absorption_model.LiqAbsModel.__init__": [[30, "pyrtlib-absorption-model-liqabsmodel-init"]], "pyrtlib.absorption_model.LiqAbsModel.implemented_models": [[31, "pyrtlib-absorption-model-liqabsmodel-implemented-models"]], "pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption": [[32, "pyrtlib-absorption-model-liqabsmodel-liquid-water-absorption"]], "pyrtlib.absorption_model.LiqAbsModel.set_ll": [[33, "pyrtlib-absorption-model-liqabsmodel-set-ll"]], "pyrtlib.absorption_model.N2AbsModel": [[34, "pyrtlib-absorption-model-n2absmodel"]], "pyrtlib.absorption_model.N2AbsModel.__init__": [[35, "pyrtlib-absorption-model-n2absmodel-init"]], "pyrtlib.absorption_model.N2AbsModel.implemented_models": [[36, "pyrtlib-absorption-model-n2absmodel-implemented-models"]], "pyrtlib.absorption_model.N2AbsModel.n2_absorption": [[37, "pyrtlib-absorption-model-n2absmodel-n2-absorption"]], "pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24": [[38, "pyrtlib-absorption-model-n2absmodel-n2-absorption-mwl24"]], "pyrtlib.absorption_model.N2AbsModel.set_ll": [[39, "pyrtlib-absorption-model-n2absmodel-set-ll"]], "pyrtlib.absorption_model.O2AbsModel": [[40, "pyrtlib-absorption-model-o2absmodel"]], "pyrtlib.absorption_model.O2AbsModel.__init__": [[41, "pyrtlib-absorption-model-o2absmodel-init"]], "pyrtlib.absorption_model.O2AbsModel.implemented_models": [[42, "pyrtlib-absorption-model-o2absmodel-implemented-models"]], "pyrtlib.absorption_model.O2AbsModel.o2_absorption": [[43, "pyrtlib-absorption-model-o2absmodel-o2-absorption"]], "pyrtlib.absorption_model.O2AbsModel.set_ll": [[44, "pyrtlib-absorption-model-o2absmodel-set-ll"]], "Examples using pyrtlib.absorption_model.O2AbsModel.set_ll": [[44, "examples-using-pyrtlib-absorption-model-o2absmodel-set-ll"]], "pyrtlib.absorption_model.O3AbsModel": [[45, "pyrtlib-absorption-model-o3absmodel"]], "pyrtlib.absorption_model.O3AbsModel.__init__": [[46, "pyrtlib-absorption-model-o3absmodel-init"]], "pyrtlib.absorption_model.O3AbsModel.implemented_models": [[47, "pyrtlib-absorption-model-o3absmodel-implemented-models"]], "pyrtlib.absorption_model.O3AbsModel.o3_absorption": [[48, "pyrtlib-absorption-model-o3absmodel-o3-absorption"]], "pyrtlib.absorption_model.O3AbsModel.set_ll": [[49, "pyrtlib-absorption-model-o3absmodel-set-ll"]], "Examples using pyrtlib.absorption_model.O3AbsModel.set_ll": [[49, "examples-using-pyrtlib-absorption-model-o3absmodel-set-ll"]], "pyrtlib.apiwebservices.ERA5Reanalysis": [[50, "pyrtlib-apiwebservices-era5reanalysis"]], "pyrtlib.apiwebservices.ERA5Reanalysis.__init__": [[51, "pyrtlib-apiwebservices-era5reanalysis-init"]], "pyrtlib.apiwebservices.ERA5Reanalysis.read_data": [[52, "pyrtlib-apiwebservices-era5reanalysis-read-data"]], "Examples using pyrtlib.apiwebservices.ERA5Reanalysis.read_data": [[52, "examples-using-pyrtlib-apiwebservices-era5reanalysis-read-data"]], "pyrtlib.apiwebservices.ERA5Reanalysis.request_data": [[53, "pyrtlib-apiwebservices-era5reanalysis-request-data"]], "pyrtlib.apiwebservices.IGRAUpperAir": [[54, "pyrtlib-apiwebservices-igraupperair"]], "pyrtlib.apiwebservices.IGRAUpperAir.__init__": [[55, "pyrtlib-apiwebservices-igraupperair-init"]], "pyrtlib.apiwebservices.IGRAUpperAir.request_data": [[56, "pyrtlib-apiwebservices-igraupperair-request-data"]], "Examples using pyrtlib.apiwebservices.IGRAUpperAir.request_data": [[56, "examples-using-pyrtlib-apiwebservices-igraupperair-request-data"]], "pyrtlib.apiwebservices.WyomingUpperAir": [[57, "pyrtlib-apiwebservices-wyomingupperair"]], "pyrtlib.apiwebservices.WyomingUpperAir.__init__": [[58, "pyrtlib-apiwebservices-wyomingupperair-init"]], "pyrtlib.apiwebservices.WyomingUpperAir.get_stations": [[59, "pyrtlib-apiwebservices-wyomingupperair-get-stations"]], "pyrtlib.apiwebservices.WyomingUpperAir.request_data": [[60, "pyrtlib-apiwebservices-wyomingupperair-request-data"]], "Examples using pyrtlib.apiwebservices.WyomingUpperAir.request_data": [[60, "examples-using-pyrtlib-apiwebservices-wyomingupperair-request-data"]], "pyrtlib.climatology.AtmosphericProfiles": [[61, "pyrtlib-climatology-atmosphericprofiles"]], "Examples": [[61, null], [117, null], [132, null]], "Examples using pyrtlib.climatology.AtmosphericProfiles": [[61, "examples-using-pyrtlib-climatology-atmosphericprofiles"]], "pyrtlib.climatology.AtmosphericProfiles.__init__": [[62, "pyrtlib-climatology-atmosphericprofiles-init"]], "pyrtlib.climatology.AtmosphericProfiles.atm_profiles": [[63, "pyrtlib-climatology-atmosphericprofiles-atm-profiles"]], "Examples using pyrtlib.climatology.AtmosphericProfiles.atm_profiles": [[63, "examples-using-pyrtlib-climatology-atmosphericprofiles-atm-profiles"]], "pyrtlib.climatology.AtmosphericProfiles.gl_atm": [[64, "pyrtlib-climatology-atmosphericprofiles-gl-atm"]], "Examples using pyrtlib.climatology.AtmosphericProfiles.gl_atm": [[64, "examples-using-pyrtlib-climatology-atmosphericprofiles-gl-atm"]], "pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor": [[65, "pyrtlib-climatology-atmosphericprofiles-gl-atm-minor"]], "pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace": [[66, "pyrtlib-climatology-atmosphericprofiles-gl-atm-trace"]], "pyrtlib.climatology.ProfileExtrapolation": [[67, "pyrtlib-climatology-profileextrapolation"]], "Examples using pyrtlib.climatology.ProfileExtrapolation": [[67, "examples-using-pyrtlib-climatology-profileextrapolation"]], "pyrtlib.climatology.ProfileExtrapolation.__init__": [[68, "pyrtlib-climatology-profileextrapolation-init"]], "pyrtlib.climatology.ProfileExtrapolation.pressure": [[69, "pyrtlib-climatology-profileextrapolation-pressure"]], "pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation": [[70, "pyrtlib-climatology-profileextrapolation-profile-extrapolation"]], "Examples using pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation": [[70, "examples-using-pyrtlib-climatology-profileextrapolation-profile-extrapolation"]], "pyrtlib.climatology.ProfileExtrapolation.standard_pressure": [[71, "pyrtlib-climatology-profileextrapolation-standard-pressure"]], "pyrtlib.climatology.ProfileExtrapolation.standard_temperature": [[72, "pyrtlib-climatology-profileextrapolation-standard-temperature"]], "pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density": [[73, "pyrtlib-climatology-profileextrapolation-standard-water-vapour-density"]], "pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure": [[74, "pyrtlib-climatology-profileextrapolation-standard-water-vapour-pressure"]], "pyrtlib.climatology.ProfileExtrapolation.temperature": [[75, "pyrtlib-climatology-profileextrapolation-temperature"]], "pyrtlib.climatology.ProfileExtrapolation.water_vapour_density": [[76, "pyrtlib-climatology-profileextrapolation-water-vapour-density"]], "pyrtlib.rt_equation.RTEquation": [[77, "pyrtlib-rt-equation-rtequation"]], "pyrtlib.rt_equation.RTEquation.__init__": [[78, "pyrtlib-rt-equation-rtequation-init"]], "pyrtlib.rt_equation.RTEquation.bright": [[79, "pyrtlib-rt-equation-rtequation-bright"]], "pyrtlib.rt_equation.RTEquation.clearsky_absorption": [[80, "pyrtlib-rt-equation-rtequation-clearsky-absorption"]], "Examples using pyrtlib.rt_equation.RTEquation.clearsky_absorption": [[80, "examples-using-pyrtlib-rt-equation-rtequation-clearsky-absorption"]], "pyrtlib.rt_equation.RTEquation.cloud_integrated_density": [[81, "pyrtlib-rt-equation-rtequation-cloud-integrated-density"]], "pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature": [[82, "pyrtlib-rt-equation-rtequation-cloud-radiating-temperature"]], "pyrtlib.rt_equation.RTEquation.cloudy_absorption": [[83, "pyrtlib-rt-equation-rtequation-cloudy-absorption"]], "pyrtlib.rt_equation.RTEquation.exponential_integration": [[84, "pyrtlib-rt-equation-rtequation-exponential-integration"]], "pyrtlib.rt_equation.RTEquation.planck": [[85, "pyrtlib-rt-equation-rtequation-planck"]], "pyrtlib.rt_equation.RTEquation.ray_tracing": [[86, "pyrtlib-rt-equation-rtequation-ray-tracing"]], "pyrtlib.rt_equation.RTEquation.refractivity": [[87, "pyrtlib-rt-equation-rtequation-refractivity"]], "pyrtlib.rt_equation.RTEquation.vapor": [[88, "pyrtlib-rt-equation-rtequation-vapor"]], "Examples using pyrtlib.rt_equation.RTEquation.vapor": [[88, "examples-using-pyrtlib-rt-equation-rtequation-vapor"]], "pyrtlib.tb_spectrum.TbCloudRTE": [[89, "pyrtlib-tb-spectrum-tbcloudrte"]], "Examples using pyrtlib.tb_spectrum.TbCloudRTE": [[89, "examples-using-pyrtlib-tb-spectrum-tbcloudrte"]], "pyrtlib.tb_spectrum.TbCloudRTE.__init__": [[90, "pyrtlib-tb-spectrum-tbcloudrte-init"]], "pyrtlib.tb_spectrum.TbCloudRTE.execute": [[91, "pyrtlib-tb-spectrum-tbcloudrte-execute"]], "Examples using pyrtlib.tb_spectrum.TbCloudRTE.execute": [[91, "examples-using-pyrtlib-tb-spectrum-tbcloudrte-execute"]], "pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl": [[92, "pyrtlib-tb-spectrum-tbcloudrte-init-absmdl"]], "Examples using pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl": [[92, "examples-using-pyrtlib-tb-spectrum-tbcloudrte-init-absmdl"]], "pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy": [[93, "pyrtlib-tb-spectrum-tbcloudrte-init-cloudy"]], "Examples using pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy": [[93, "examples-using-pyrtlib-tb-spectrum-tbcloudrte-init-cloudy"]], "pyrtlib.tb_spectrum.TbCloudRTE.set_amu": [[94, "pyrtlib-tb-spectrum-tbcloudrte-set-amu"]], "Examples using pyrtlib.tb_spectrum.TbCloudRTE.set_amu": [[94, "examples-using-pyrtlib-tb-spectrum-tbcloudrte-set-amu"]], "pyrtlib.uncertainty.AbsModUncertainty": [[95, "pyrtlib-uncertainty-absmoduncertainty"]], "pyrtlib.uncertainty.AbsModUncertainty.__init__": [[96, "pyrtlib-uncertainty-absmoduncertainty-init"]], "pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation": [[97, "pyrtlib-uncertainty-absmoduncertainty-parameters-perturbation"]], "Examples using pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation": [[97, "examples-using-pyrtlib-uncertainty-absmoduncertainty-parameters-perturbation"]], "pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation": [[98, "pyrtlib-uncertainty-absmoduncertainty-uncertainty-propagation"]], "pyrtlib.uncertainty.SpectroscopicParameter": [[99, "pyrtlib-uncertainty-spectroscopicparameter"]], "pyrtlib.uncertainty.SpectroscopicParameter.__init__": [[100, "pyrtlib-uncertainty-spectroscopicparameter-init"]], "pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters": [[101, "pyrtlib-uncertainty-spectroscopicparameter-oxygen-parameters"]], "Examples using pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters": [[101, "examples-using-pyrtlib-uncertainty-spectroscopicparameter-oxygen-parameters"]], "pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters": [[102, "pyrtlib-uncertainty-spectroscopicparameter-ozono-parameters"]], "pyrtlib.uncertainty.SpectroscopicParameter.set_parameters": [[103, "pyrtlib-uncertainty-spectroscopicparameter-set-parameters"]], "Examples using pyrtlib.uncertainty.SpectroscopicParameter.set_parameters": [[103, "examples-using-pyrtlib-uncertainty-spectroscopicparameter-set-parameters"]], "pyrtlib.uncertainty.SpectroscopicParameter.water_parameters": [[104, "pyrtlib-uncertainty-spectroscopicparameter-water-parameters"]], "Examples using pyrtlib.uncertainty.SpectroscopicParameter.water_parameters": [[104, "examples-using-pyrtlib-uncertainty-spectroscopicparameter-water-parameters"]], "pyrtlib.utils": [[105, "module-pyrtlib.utils"]], "pyrtlib.utils.atmospheric_tickness": [[106, "pyrtlib-utils-atmospheric-tickness"]], "pyrtlib.utils.constants": [[107, "pyrtlib-utils-constants"]], "Examples using pyrtlib.utils.constants": [[107, "examples-using-pyrtlib-utils-constants"]], "pyrtlib.utils.dewpoint2rh": [[108, "pyrtlib-utils-dewpoint2rh"]], "Examples using pyrtlib.utils.dewpoint2rh": [[108, "examples-using-pyrtlib-utils-dewpoint2rh"]], "pyrtlib.utils.dilec12": [[109, "pyrtlib-utils-dilec12"]], "pyrtlib.utils.e2mr": [[110, "pyrtlib-utils-e2mr"]], "pyrtlib.utils.esice_goffgratch": [[111, "pyrtlib-utils-esice-goffgratch"]], "pyrtlib.utils.eswat_goffgratch": [[112, "pyrtlib-utils-eswat-goffgratch"]], "pyrtlib.utils.gas_mass": [[113, "pyrtlib-utils-gas-mass"]], "pyrtlib.utils.get_frequencies": [[114, "pyrtlib-utils-get-frequencies"]], "Examples using pyrtlib.utils.get_frequencies": [[114, "examples-using-pyrtlib-utils-get-frequencies"]], "pyrtlib.utils.get_frequencies_sat": [[115, "pyrtlib-utils-get-frequencies-sat"]], "Examples using pyrtlib.utils.get_frequencies_sat": [[115, "examples-using-pyrtlib-utils-get-frequencies-sat"]], "pyrtlib.utils.height_to_pressure": [[116, "pyrtlib-utils-height-to-pressure"]], "Examples using pyrtlib.utils.height_to_pressure": [[116, "examples-using-pyrtlib-utils-height-to-pressure"]], "pyrtlib.utils.import_lineshape": [[117, "pyrtlib-utils-import-lineshape"]], "Examples using pyrtlib.utils.import_lineshape": [[117, "examples-using-pyrtlib-utils-import-lineshape"]], "pyrtlib.utils.kgkg_to_kgm3": [[118, "pyrtlib-utils-kgkg-to-kgm3"]], "Examples using pyrtlib.utils.kgkg_to_kgm3": [[118, "examples-using-pyrtlib-utils-kgkg-to-kgm3"]], "pyrtlib.utils.mr2e": [[119, "pyrtlib-utils-mr2e"]], "pyrtlib.utils.mr2rh": [[120, "pyrtlib-utils-mr2rh"]], "Examples using pyrtlib.utils.mr2rh": [[120, "examples-using-pyrtlib-utils-mr2rh"]], "pyrtlib.utils.mr2rho": [[121, "pyrtlib-utils-mr2rho"]], "pyrtlib.utils.ppmv2gkg": [[122, "pyrtlib-utils-ppmv2gkg"]], "Examples using pyrtlib.utils.ppmv2gkg": [[122, "examples-using-pyrtlib-utils-ppmv2gkg"]], "pyrtlib.utils.ppmv_to_moleculesm3": [[123, "pyrtlib-utils-ppmv-to-moleculesm3"]], "Examples using pyrtlib.utils.ppmv_to_moleculesm3": [[123, "examples-using-pyrtlib-utils-ppmv-to-moleculesm3"]], "pyrtlib.utils.pressure_to_height": [[124, "pyrtlib-utils-pressure-to-height"]], "pyrtlib.utils.rho2mr": [[125, "pyrtlib-utils-rho2mr"]], "pyrtlib.utils.rho2rh": [[126, "pyrtlib-utils-rho2rh"]], "pyrtlib.utils.satmix": [[127, "pyrtlib-utils-satmix"]], "pyrtlib.utils.satvap": [[128, "pyrtlib-utils-satvap"]], "pyrtlib.utils.tk2b_mod": [[129, "pyrtlib-utils-tk2b-mod"]], "pyrtlib.utils.to_celsius": [[130, "pyrtlib-utils-to-celsius"]], "pyrtlib.utils.to_kelvin": [[131, "pyrtlib-utils-to-kelvin"]], "Examples using pyrtlib.utils.to_kelvin": [[131, "examples-using-pyrtlib-utils-to-kelvin"]], "pyrtlib.utils.virtual_temperature": [[132, "pyrtlib-utils-virtual-temperature"]], "pyrtlib.weighting_functions.WeightingFunctions": [[133, "pyrtlib-weighting-functions-weightingfunctions"]], "Examples using pyrtlib.weighting_functions.WeightingFunctions": [[133, "examples-using-pyrtlib-weighting-functions-weightingfunctions"]], "pyrtlib.weighting_functions.WeightingFunctions.__init__": [[134, "pyrtlib-weighting-functions-weightingfunctions-init"]], "pyrtlib.weighting_functions.WeightingFunctions.generate_wf": [[135, "pyrtlib-weighting-functions-weightingfunctions-generate-wf"]], "Examples using pyrtlib.weighting_functions.WeightingFunctions.generate_wf": [[135, "examples-using-pyrtlib-weighting-functions-weightingfunctions-generate-wf"]], "pyrtlib.weighting_functions.WeightingFunctions.plot_wf": [[136, "pyrtlib-weighting-functions-weightingfunctions-plot-wf"]], "Examples using pyrtlib.weighting_functions.WeightingFunctions.plot_wf": [[136, "examples-using-pyrtlib-weighting-functions-weightingfunctions-plot-wf"]], "pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped": [[137, "pyrtlib-weighting-functions-weightingfunctions-plot-wf-grouped"]], "Examples using pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped": [[137, "examples-using-pyrtlib-weighting-functions-weightingfunctions-plot-wf-grouped"]], "PyRTlib documentation": [[138, "pyrtlib-documentation"]], "Quick start": [[138, "quick-start"]], "Cite as": [[138, "cite-as"]], "Installation": [[138, "installation"]], "API References": [[138, "api-references"]], "Gallery Example": [[138, "gallery-example"]], "Community Example": [[138, "community-example"]], "References": [[138, "references"], [145, "references"]], "Indices and search": [[138, "indices-and-search"]], "Installation instructions": [[139, "installation-instructions"]], "Python Installation (ubuntu)": [[139, "python-installation-ubuntu"]], "Python Installation (macos)": [[139, "python-installation-macos"]], "Installing PyRTlib via PyPi": [[139, "installing-pyrtlib-via-pypi"]], "Virtual Environment": [[139, "virtual-environment"]], "Installing PyRTlib from source": [[139, "installing-pyrtlib-from-source"]], "Build and run the Docker image": [[139, "build-and-run-the-docker-image"]], "My first run with PyRTlib (Colab Notebook)": [[139, "my-first-run-with-pyrtlib-colab-notebook"]], "Example by Loretta-Pearl-Poku": [[140, "Example-by-Loretta-Pearl-Poku"]], "My first test with PyRTlib": [[141, "My-first-test-with-PyRTlib"]], "Community example": [[142, "community-example"]], "Generic example": [[143, "Generic-example"]], "Import python package for plotting.": [[143, "Import-python-package-for-plotting."], [144, "Import-python-package-for-plotting."]], "Calculate uncertainty on BTs (notebook)": [[144, "Calculate-uncertainty-on-BTs-(notebook)"]]}, "indexentries": {"absmodel (class in pyrtlib.absorption_model)": [[18, "pyrtlib.absorption_model.AbsModel"]], "__init__() (pyrtlib.absorption_model.absmodel method)": [[19, "pyrtlib.absorption_model.AbsModel.__init__"]], "implemented_models() (pyrtlib.absorption_model.absmodel static method)": [[20, "pyrtlib.absorption_model.AbsModel.implemented_models"]], "set_ll() (pyrtlib.absorption_model.absmodel static method)": [[21, "pyrtlib.absorption_model.AbsModel.set_ll"]], "h2oabsmodel (class in pyrtlib.absorption_model)": [[22, "pyrtlib.absorption_model.H2OAbsModel"]], "__init__() (pyrtlib.absorption_model.h2oabsmodel method)": [[23, "pyrtlib.absorption_model.H2OAbsModel.__init__"]], "h2o_absorption() (pyrtlib.absorption_model.h2oabsmodel method)": [[24, "pyrtlib.absorption_model.H2OAbsModel.h2o_absorption"]], "h2o_continuum() (pyrtlib.absorption_model.h2oabsmodel method)": [[25, "pyrtlib.absorption_model.H2OAbsModel.h2o_continuum"]], "h2o_continuum_mwl24() (pyrtlib.absorption_model.h2oabsmodel method)": [[26, "pyrtlib.absorption_model.H2OAbsModel.h2o_continuum_mwl24"]], "implemented_models() (pyrtlib.absorption_model.h2oabsmodel static method)": [[27, "pyrtlib.absorption_model.H2OAbsModel.implemented_models"]], "set_ll() (pyrtlib.absorption_model.h2oabsmodel static method)": [[28, "pyrtlib.absorption_model.H2OAbsModel.set_ll"]], "liqabsmodel (class in pyrtlib.absorption_model)": [[29, "pyrtlib.absorption_model.LiqAbsModel"]], "__init__() (pyrtlib.absorption_model.liqabsmodel method)": [[30, "pyrtlib.absorption_model.LiqAbsModel.__init__"]], "implemented_models() (pyrtlib.absorption_model.liqabsmodel static method)": [[31, "pyrtlib.absorption_model.LiqAbsModel.implemented_models"]], "liquid_water_absorption() (pyrtlib.absorption_model.liqabsmodel static method)": [[32, "pyrtlib.absorption_model.LiqAbsModel.liquid_water_absorption"]], "set_ll() (pyrtlib.absorption_model.liqabsmodel static method)": [[33, "pyrtlib.absorption_model.LiqAbsModel.set_ll"]], "n2absmodel (class in pyrtlib.absorption_model)": [[34, "pyrtlib.absorption_model.N2AbsModel"]], "__init__() (pyrtlib.absorption_model.n2absmodel method)": [[35, "pyrtlib.absorption_model.N2AbsModel.__init__"]], "implemented_models() (pyrtlib.absorption_model.n2absmodel static method)": [[36, "pyrtlib.absorption_model.N2AbsModel.implemented_models"]], "n2_absorption() (pyrtlib.absorption_model.n2absmodel static method)": [[37, "pyrtlib.absorption_model.N2AbsModel.n2_absorption"]], "n2_absorption_mwl24() (pyrtlib.absorption_model.n2absmodel static method)": [[38, "pyrtlib.absorption_model.N2AbsModel.n2_absorption_mwl24"]], "set_ll() (pyrtlib.absorption_model.n2absmodel static method)": [[39, "pyrtlib.absorption_model.N2AbsModel.set_ll"]], "o2absmodel (class in pyrtlib.absorption_model)": [[40, "pyrtlib.absorption_model.O2AbsModel"]], "__init__() (pyrtlib.absorption_model.o2absmodel method)": [[41, "pyrtlib.absorption_model.O2AbsModel.__init__"]], "implemented_models() (pyrtlib.absorption_model.o2absmodel static method)": [[42, "pyrtlib.absorption_model.O2AbsModel.implemented_models"]], "o2_absorption() (pyrtlib.absorption_model.o2absmodel method)": [[43, "pyrtlib.absorption_model.O2AbsModel.o2_absorption"]], "set_ll() (pyrtlib.absorption_model.o2absmodel static method)": [[44, "pyrtlib.absorption_model.O2AbsModel.set_ll"]], "o3absmodel (class in pyrtlib.absorption_model)": [[45, "pyrtlib.absorption_model.O3AbsModel"]], "__init__() (pyrtlib.absorption_model.o3absmodel method)": [[46, "pyrtlib.absorption_model.O3AbsModel.__init__"]], "implemented_models() (pyrtlib.absorption_model.o3absmodel static method)": [[47, "pyrtlib.absorption_model.O3AbsModel.implemented_models"]], "o3_absorption() (pyrtlib.absorption_model.o3absmodel method)": [[48, "pyrtlib.absorption_model.O3AbsModel.o3_absorption"]], "set_ll() (pyrtlib.absorption_model.o3absmodel static method)": [[49, "pyrtlib.absorption_model.O3AbsModel.set_ll"]], "era5reanalysis (class in pyrtlib.apiwebservices)": [[50, "pyrtlib.apiwebservices.ERA5Reanalysis"]], "__init__() (pyrtlib.apiwebservices.era5reanalysis method)": [[51, "pyrtlib.apiwebservices.ERA5Reanalysis.__init__"]], "read_data() (pyrtlib.apiwebservices.era5reanalysis class method)": [[52, "pyrtlib.apiwebservices.ERA5Reanalysis.read_data"]], "request_data() (pyrtlib.apiwebservices.era5reanalysis static method)": [[53, "pyrtlib.apiwebservices.ERA5Reanalysis.request_data"]], "igraupperair (class in pyrtlib.apiwebservices)": [[54, "pyrtlib.apiwebservices.IGRAUpperAir"]], "__init__() (pyrtlib.apiwebservices.igraupperair method)": [[55, "pyrtlib.apiwebservices.IGRAUpperAir.__init__"]], "request_data() (pyrtlib.apiwebservices.igraupperair class method)": [[56, "pyrtlib.apiwebservices.IGRAUpperAir.request_data"]], "wyomingupperair (class in pyrtlib.apiwebservices)": [[57, "pyrtlib.apiwebservices.WyomingUpperAir"]], "__init__() (pyrtlib.apiwebservices.wyomingupperair method)": [[58, "pyrtlib.apiwebservices.WyomingUpperAir.__init__"]], "get_stations() (pyrtlib.apiwebservices.wyomingupperair class method)": [[59, "pyrtlib.apiwebservices.WyomingUpperAir.get_stations"]], "request_data() (pyrtlib.apiwebservices.wyomingupperair class method)": [[60, "pyrtlib.apiwebservices.WyomingUpperAir.request_data"]], "atmosphericprofiles (class in pyrtlib.climatology)": [[61, "pyrtlib.climatology.AtmosphericProfiles"]], "__init__() (pyrtlib.climatology.atmosphericprofiles method)": [[62, "pyrtlib.climatology.AtmosphericProfiles.__init__"]], "atm_profiles() (pyrtlib.climatology.atmosphericprofiles static method)": [[63, "pyrtlib.climatology.AtmosphericProfiles.atm_profiles"]], "gl_atm() (pyrtlib.climatology.atmosphericprofiles static method)": [[64, "pyrtlib.climatology.AtmosphericProfiles.gl_atm"]], "gl_atm_minor() (pyrtlib.climatology.atmosphericprofiles static method)": [[65, "pyrtlib.climatology.AtmosphericProfiles.gl_atm_minor"]], "gl_atm_trace() (pyrtlib.climatology.atmosphericprofiles static method)": [[66, "pyrtlib.climatology.AtmosphericProfiles.gl_atm_trace"]], "profileextrapolation (class in pyrtlib.climatology)": [[67, "pyrtlib.climatology.ProfileExtrapolation"]], "__init__() (pyrtlib.climatology.profileextrapolation method)": [[68, "pyrtlib.climatology.ProfileExtrapolation.__init__"]], "pressure() (pyrtlib.climatology.profileextrapolation method)": [[69, "pyrtlib.climatology.ProfileExtrapolation.pressure"]], "profile_extrapolation() (pyrtlib.climatology.profileextrapolation method)": [[70, "pyrtlib.climatology.ProfileExtrapolation.profile_extrapolation"]], "standard_pressure() (pyrtlib.climatology.profileextrapolation method)": [[71, "pyrtlib.climatology.ProfileExtrapolation.standard_pressure"]], "standard_temperature() (pyrtlib.climatology.profileextrapolation method)": [[72, "pyrtlib.climatology.ProfileExtrapolation.standard_temperature"]], "standard_water_vapour_density() (pyrtlib.climatology.profileextrapolation method)": [[73, "pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_density"]], "standard_water_vapour_pressure() (pyrtlib.climatology.profileextrapolation method)": [[74, "pyrtlib.climatology.ProfileExtrapolation.standard_water_vapour_pressure"]], "temperature() (pyrtlib.climatology.profileextrapolation method)": [[75, "pyrtlib.climatology.ProfileExtrapolation.temperature"]], "water_vapour_density() (pyrtlib.climatology.profileextrapolation method)": [[76, "pyrtlib.climatology.ProfileExtrapolation.water_vapour_density"]], "rtequation (class in pyrtlib.rt_equation)": [[77, "pyrtlib.rt_equation.RTEquation"]], "__init__() (pyrtlib.rt_equation.rtequation method)": [[78, "pyrtlib.rt_equation.RTEquation.__init__"]], "bright() (pyrtlib.rt_equation.rtequation static method)": [[79, "pyrtlib.rt_equation.RTEquation.bright"]], "clearsky_absorption() (pyrtlib.rt_equation.rtequation static method)": [[80, "pyrtlib.rt_equation.RTEquation.clearsky_absorption"]], "cloud_integrated_density() (pyrtlib.rt_equation.rtequation static method)": [[81, "pyrtlib.rt_equation.RTEquation.cloud_integrated_density"]], "cloud_radiating_temperature() (pyrtlib.rt_equation.rtequation static method)": [[82, "pyrtlib.rt_equation.RTEquation.cloud_radiating_temperature"]], "cloudy_absorption() (pyrtlib.rt_equation.rtequation static method)": [[83, "pyrtlib.rt_equation.RTEquation.cloudy_absorption"]], "exponential_integration() (pyrtlib.rt_equation.rtequation static method)": [[84, "pyrtlib.rt_equation.RTEquation.exponential_integration"]], "planck() (pyrtlib.rt_equation.rtequation static method)": [[85, "pyrtlib.rt_equation.RTEquation.planck"]], "ray_tracing() (pyrtlib.rt_equation.rtequation static method)": [[86, "pyrtlib.rt_equation.RTEquation.ray_tracing"]], "refractivity() (pyrtlib.rt_equation.rtequation static method)": [[87, "pyrtlib.rt_equation.RTEquation.refractivity"]], "vapor() (pyrtlib.rt_equation.rtequation static method)": [[88, "pyrtlib.rt_equation.RTEquation.vapor"]], "tbcloudrte (class in pyrtlib.tb_spectrum)": [[89, "pyrtlib.tb_spectrum.TbCloudRTE"]], "__init__() (pyrtlib.tb_spectrum.tbcloudrte method)": [[90, "pyrtlib.tb_spectrum.TbCloudRTE.__init__"]], "execute() (pyrtlib.tb_spectrum.tbcloudrte method)": [[91, "pyrtlib.tb_spectrum.TbCloudRTE.execute"]], "init_absmdl() (pyrtlib.tb_spectrum.tbcloudrte method)": [[92, "pyrtlib.tb_spectrum.TbCloudRTE.init_absmdl"]], "init_cloudy() (pyrtlib.tb_spectrum.tbcloudrte method)": [[93, "pyrtlib.tb_spectrum.TbCloudRTE.init_cloudy"]], "set_amu() (pyrtlib.tb_spectrum.tbcloudrte method)": [[94, "pyrtlib.tb_spectrum.TbCloudRTE.set_amu"]], "absmoduncertainty (class in pyrtlib.uncertainty)": [[95, "pyrtlib.uncertainty.AbsModUncertainty"]], "__init__() (pyrtlib.uncertainty.absmoduncertainty method)": [[96, "pyrtlib.uncertainty.AbsModUncertainty.__init__"]], "parameters_perturbation() (pyrtlib.uncertainty.absmoduncertainty static method)": [[97, "pyrtlib.uncertainty.AbsModUncertainty.parameters_perturbation"]], "uncertainty_propagation() (pyrtlib.uncertainty.absmoduncertainty static method)": [[98, "pyrtlib.uncertainty.AbsModUncertainty.uncertainty_propagation"]], "spectroscopicparameter (class in pyrtlib.uncertainty)": [[99, "pyrtlib.uncertainty.SpectroscopicParameter"]], "__init__() (pyrtlib.uncertainty.spectroscopicparameter method)": [[100, "pyrtlib.uncertainty.SpectroscopicParameter.__init__"]], "oxygen_parameters() (pyrtlib.uncertainty.spectroscopicparameter static method)": [[101, "pyrtlib.uncertainty.SpectroscopicParameter.oxygen_parameters"]], "ozono_parameters() (pyrtlib.uncertainty.spectroscopicparameter static method)": [[102, "pyrtlib.uncertainty.SpectroscopicParameter.ozono_parameters"]], "set_parameters() (pyrtlib.uncertainty.spectroscopicparameter static method)": [[103, "pyrtlib.uncertainty.SpectroscopicParameter.set_parameters"]], "water_parameters() (pyrtlib.uncertainty.spectroscopicparameter static method)": [[104, "pyrtlib.uncertainty.SpectroscopicParameter.water_parameters"]], "module": [[105, "module-pyrtlib.utils"]], "pyrtlib.utils": [[105, "module-pyrtlib.utils"]], "atmospheric_tickness() (in module pyrtlib.utils)": [[106, "pyrtlib.utils.atmospheric_tickness"]], "constants() (in module pyrtlib.utils)": [[107, "pyrtlib.utils.constants"]], "dewpoint2rh() (in module pyrtlib.utils)": [[108, "pyrtlib.utils.dewpoint2rh"]], "dilec12() (in module pyrtlib.utils)": [[109, "pyrtlib.utils.dilec12"]], "e2mr() (in module pyrtlib.utils)": [[110, "pyrtlib.utils.e2mr"]], "esice_goffgratch() (in module pyrtlib.utils)": [[111, "pyrtlib.utils.esice_goffgratch"]], "eswat_goffgratch() (in module pyrtlib.utils)": [[112, "pyrtlib.utils.eswat_goffgratch"]], "gas_mass() (in module pyrtlib.utils)": [[113, "pyrtlib.utils.gas_mass"]], "get_frequencies() (in module pyrtlib.utils)": [[114, "pyrtlib.utils.get_frequencies"]], "get_frequencies_sat() (in module pyrtlib.utils)": [[115, "pyrtlib.utils.get_frequencies_sat"]], "height_to_pressure() (in module pyrtlib.utils)": [[116, "pyrtlib.utils.height_to_pressure"]], "import_lineshape() (in module pyrtlib.utils)": [[117, "pyrtlib.utils.import_lineshape"]], "kgkg_to_kgm3() (in module pyrtlib.utils)": [[118, "pyrtlib.utils.kgkg_to_kgm3"]], "mr2e() (in module pyrtlib.utils)": [[119, "pyrtlib.utils.mr2e"]], "mr2rh() (in module pyrtlib.utils)": [[120, "pyrtlib.utils.mr2rh"]], "mr2rho() (in module pyrtlib.utils)": [[121, "pyrtlib.utils.mr2rho"]], "ppmv2gkg() (in module pyrtlib.utils)": [[122, "pyrtlib.utils.ppmv2gkg"]], "ppmv_to_moleculesm3() (in module pyrtlib.utils)": [[123, "pyrtlib.utils.ppmv_to_moleculesm3"]], "pressure_to_height() (in module pyrtlib.utils)": [[124, "pyrtlib.utils.pressure_to_height"]], "rho2mr() (in module pyrtlib.utils)": [[125, "pyrtlib.utils.rho2mr"]], "rho2rh() (in module pyrtlib.utils)": [[126, "pyrtlib.utils.rho2rh"]], "satmix() (in module pyrtlib.utils)": [[127, "pyrtlib.utils.satmix"]], "satvap() (in module pyrtlib.utils)": [[128, "pyrtlib.utils.satvap"]], "tk2b_mod() (in module pyrtlib.utils)": [[129, "pyrtlib.utils.tk2b_mod"]], "to_celsius() (in module pyrtlib.utils)": [[130, "pyrtlib.utils.to_celsius"]], "to_kelvin() (in module pyrtlib.utils)": [[131, "pyrtlib.utils.to_kelvin"]], "virtual_temperature() (in module pyrtlib.utils)": [[132, "pyrtlib.utils.virtual_temperature"]], "weightingfunctions (class in pyrtlib.weighting_functions)": [[133, "pyrtlib.weighting_functions.WeightingFunctions"]], "__init__() (pyrtlib.weighting_functions.weightingfunctions method)": [[134, "pyrtlib.weighting_functions.WeightingFunctions.__init__"]], "generate_wf() (pyrtlib.weighting_functions.weightingfunctions method)": [[135, "pyrtlib.weighting_functions.WeightingFunctions.generate_wf"]], "plot_wf() (pyrtlib.weighting_functions.weightingfunctions method)": [[136, "pyrtlib.weighting_functions.WeightingFunctions.plot_wf"]], "plot_wf_grouped() (pyrtlib.weighting_functions.weightingfunctions method)": [[137, "pyrtlib.weighting_functions.WeightingFunctions.plot_wf_grouped"]]}}) \ No newline at end of file diff --git a/en/main/sg_execution_times.html b/en/main/sg_execution_times.html new file mode 100644 index 00000000..800e26c7 --- /dev/null +++ b/en/main/sg_execution_times.html @@ -0,0 +1,571 @@ + + + + + + + + + + + + Computation times — pyrtlib 1.1.0 documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + +
+
+
+
+
+ +
+ +
+ + + + + + +
+
+ + + + + +
+ + + + + + + + + + + +
+ +
+ + +
+
+ +
+
+ +
+ +
+ + + + +
+ +
+ + +
+
+ + + + + +
+ +
+

Computation times#

+

09:08.777 total execution time for 15 files from all galleries:

+
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Example

Time

Mem (MB)

Uncertainty Example (../script_examples/uncertainty_tutorial.py)

04:31.371

0.0

Performing sensitivity of spectroscopic parameters (../script_examples/plot_brightness_temperature_uncertainties.py)

03:03.841

0.0

Generic Example (../script_examples/generic_tutorial.py)

00:15.012

0.0

Performing Upwelling Brightness Temperature calculation using Wyoming Upper Air Observations. (../script_examples/plot_bt_wyoming.py)

00:14.256

0.0

Performing Downwelling Brightness Temperature calculation (../script_examples/plot_brightness_temperature_down.py)

00:12.680

0.0

Performing Downwelling Brightness Temperature calculation with Ozone (../script_examples/plot_brightness_temperature_wO3.py)

00:12.127

0.0

Computation of Weighting Functions (../script_examples/plot_weighting_functions.py)

00:09.727

0.0

Performing Upwelling Brightness Temperature calculation (../script_examples/plot_brightness_temperature_up.py)

00:07.780

0.0

Performing Upwelling Brightness Temperature calculation using IGRA2 Upper Air Observations (with Extrapolation). (../script_examples/plot_bt_igra2.py)

00:07.631

0.0

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations. (../script_examples/plot_bt_era5.py)

00:04.539

0.0

Performing Upwelling Brightness Temperature calculation using ERA5 Reanalysis Observations in cloudy condition. (../script_examples/plot_bt_era5_cloudy_profile.py)

00:04.233

0.0

Performing Downwelling Brightness Temperature calculation in cloudy condition. (../script_examples/plot_model_cloudy.py)

00:02.609

0.0

Water Vapour Absorption Profiles (../script_examples/plot_water_vapour_profile.py)

00:01.503

0.0

Logarithmic dependence of monochromatic radiance at 22.235 and 183 GHz (../script_examples/plot_log_dependance_tb.py)

00:01.254

0.0

Atmospheric Profiles (../script_examples/plot_atmosphere.py)

00:00.211

0.0

+
+
+
+ + +
+ + + + + +
+ + + + +
+
+ +
+ +
+
+
+ + + + + +
+ + +
+ + \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 00000000..8683dd67 --- /dev/null +++ b/index.html @@ -0,0 +1 @@ +