SCALE-RM
|
module atmosphere / SOLARINS More...
Functions/Subroutines | |
subroutine, public | atmos_solarins_setup (basepoint_lon, basepoint_lat, iyear) |
setup solar incidence module More... | |
subroutine, public | atmos_solarins_orbit (iyear) |
setup solar incidence module More... | |
subroutine, public | atmos_solarins_ecliptic_longitude (Re_factor, sinDEC, cosDEC, hourangle, now_date, offset_year, lambda_out) |
calc factor of Earths solar insolation More... | |
subroutine | atmos_solarins_insolation_0d (real_lon, real_lat, now_date, offset_year, solins, cosSZA, Re_factor_out) |
calc factor of Earths solar insolation More... | |
subroutine | atmos_solarins_insolation_2d (IA, IS, IE, JA, JS, JE, real_lon, real_lat, now_date, offset_year, solins, cosSZA) |
calc factor of Earths solar insolation More... | |
Variables | |
real(rp), public | atmos_solarins_constant = 1360.250117_RP |
logical, public | atmos_solarins_set_ve = .false. |
logical, public | atmos_solarins_set_ideal = .false. |
real(rp), public | atmos_solarins_obliquity = 23.44_RP |
real(rp), public | atmos_solarins_eccentricity = 0.0167_RP |
real(rp), public | atmos_solarins_perihelion_lon = 282.94719_RP |
integer, dimension(6), public | atmos_solarins_ve_date |
real(rp), public | atmos_solarins_diurnal_sec |
real(rp), public | atmos_solarins_annual_sec |
logical, public | atmos_solarins_fixedlatlon = .false. |
real(rp), public | atmos_solarins_lon |
real(rp), public | atmos_solarins_lat |
logical, public | atmos_solarins_fixeddate = .false. |
integer, dimension(6), public | atmos_solarins_date |
module atmosphere / SOLARINS
name | type | default value | comment |
---|---|---|---|
ATMOS_SOLARINS_CONSTANT | real(RP) | 1360.250117_RP | Solar constant [W/m2] |
ATMOS_SOLARINS_SET_VE | logical | .false. | Set vernal equinox condition? |
ATMOS_SOLARINS_SET_IDEAL | logical | .false. | Set obliquity and eccentricity? |
ATMOS_SOLARINS_OBLIQUITY | real(RP) | 23.44_RP | Obliquity [deg] cf. https://nssdc.gsfc.nasa.gov/planetary/factsheet/earthfact.html |
ATMOS_SOLARINS_ECCENTRICITY | real(RP) | 0.0167_RP | Eccentricity |
ATMOS_SOLARINS_FIXEDLATLON | logical | .false. | Latitude/Longitude is fixed? |
ATMOS_SOLARINS_LON | real(RP) | Longitude for radiation [rad] | |
ATMOS_SOLARINS_LAT | real(RP) | Latitude for radiation [rad] | |
ATMOS_SOLARINS_FIXEDDATE | logical | .false. | Date is fixed? |
ATMOS_SOLARINS_DATE | integer, dimension(6) | Date for radiation [Y,M,D,H,M,S] | |
ATMOS_SOLARINS_PERIHELION_LON | real(RP) | 282.94719_RP | Longitude of perihelion [deg]. |
ATMOS_SOLARINS_VE_DATE | integer, dimension(6) | Date of first vernal equinox | |
ATMOS_SOLARINS_ANNUAL_SEC | real(RP) | Seconds of the annual period [sec] | |
ATMOS_SOLARINS_DIURNAL_SEC | real(RP) | Seconds of the diurnal period [sec] | |
DEBUG | logical | .false. |
subroutine, public scale_atmos_solarins::atmos_solarins_setup | ( | real(rp), intent(in) | basepoint_lon, |
real(rp), intent(in) | basepoint_lat, | ||
integer, intent(in) | iyear | ||
) |
setup solar incidence module
Definition at line 570 of file scale_atmos_solarins.F90.
References atmos_solarins_annual_sec, atmos_solarins_constant, atmos_solarins_date, atmos_solarins_diurnal_sec, atmos_solarins_eccentricity, atmos_solarins_ecliptic_longitude(), atmos_solarins_fixeddate, atmos_solarins_fixedlatlon, atmos_solarins_lat, atmos_solarins_lon, atmos_solarins_obliquity, atmos_solarins_orbit(), atmos_solarins_perihelion_lon, atmos_solarins_set_ideal, atmos_solarins_set_ve, atmos_solarins_ve_date, scale_calendar::calendar_date2char(), scale_calendar::calendar_date2daysec(), scale_calendar::calendar_daysec2date(), scale_calendar::calendar_doi, scale_calendar::calendar_hour, scale_calendar::calendar_min, scale_calendar::calendar_sec, scale_const::const_d2r, scale_const::const_undef, scale_io::io_fid_conf, scale_io::io_fid_log, scale_io::io_l, scale_prc::prc_abort(), scale_precision::rp, scale_time::time_nowday, scale_time::time_nowsec, and scale_time::time_offset_year.
Referenced by mod_atmos_driver::atmos_driver_setup().
subroutine, public scale_atmos_solarins::atmos_solarins_orbit | ( | integer, intent(in) | iyear | ) |
setup solar incidence module
Definition at line 777 of file scale_atmos_solarins.F90.
References atmos_solarins_eccentricity, atmos_solarins_obliquity, atmos_solarins_perihelion_lon, atmos_solarins_set_ideal, scale_const::const_d2r, scale_const::const_pi, scale_const::const_undef, and scale_precision::rp.
Referenced by atmos_solarins_setup().
subroutine, public scale_atmos_solarins::atmos_solarins_ecliptic_longitude | ( | real(rp), intent(out) | Re_factor, |
real(rp), intent(out) | sinDEC, | ||
real(rp), intent(out) | cosDEC, | ||
real(rp), intent(out) | hourangle, | ||
integer, dimension(6), intent(in) | now_date, | ||
integer, intent(in) | offset_year, | ||
real(dp), intent(out), optional | lambda_out | ||
) |
calc factor of Earths solar insolation
Definition at line 904 of file scale_atmos_solarins.F90.
References atmos_solarins_date, atmos_solarins_diurnal_sec, atmos_solarins_fixeddate, scale_calendar::calendar_hms2abssec(), scale_calendar::calendar_ymd2absday(), scale_const::const_pi, scale_precision::dp, scale_calendar::i_day, scale_calendar::i_hour, scale_calendar::i_min, scale_calendar::i_month, scale_calendar::i_sec, and scale_calendar::i_year.
Referenced by atmos_solarins_insolation_0d(), atmos_solarins_insolation_2d(), and atmos_solarins_setup().
subroutine scale_atmos_solarins::atmos_solarins_insolation_0d | ( | real(rp), intent(in) | real_lon, |
real(rp), intent(in) | real_lat, | ||
integer, dimension(6), intent(in) | now_date, | ||
integer, intent(in) | offset_year, | ||
real(rp), intent(out) | solins, | ||
real(rp), intent(out) | cosSZA, | ||
real(rp), intent(out), optional | Re_factor_out | ||
) |
calc factor of Earths solar insolation
Definition at line 1025 of file scale_atmos_solarins.F90.
References atmos_solarins_constant, atmos_solarins_ecliptic_longitude(), atmos_solarins_fixedlatlon, atmos_solarins_lat, atmos_solarins_lon, and scale_const::const_eps.
subroutine scale_atmos_solarins::atmos_solarins_insolation_2d | ( | integer, intent(in) | IA, |
integer, intent(in) | IS, | ||
integer, intent(in) | IE, | ||
integer, intent(in) | JA, | ||
integer, intent(in) | JS, | ||
integer, intent(in) | JE, | ||
real(rp), dimension(ia,ja), intent(in) | real_lon, | ||
real(rp), dimension(ia,ja), intent(in) | real_lat, | ||
integer, dimension(6), intent(in) | now_date, | ||
integer, intent(in) | offset_year, | ||
real(rp), dimension (ia,ja), intent(out) | solins, | ||
real(rp), dimension (ia,ja), intent(out) | cosSZA | ||
) |
calc factor of Earths solar insolation
Definition at line 1077 of file scale_atmos_solarins.F90.
References atmos_solarins_constant, atmos_solarins_ecliptic_longitude(), atmos_solarins_fixedlatlon, atmos_solarins_lat, atmos_solarins_lon, and scale_const::const_eps.
real(rp), public scale_atmos_solarins::atmos_solarins_constant = 1360.250117_RP |
Definition at line 43 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_insolation_0d(), atmos_solarins_insolation_2d(), atmos_solarins_setup(), mod_rm_driver::rm_driver(), mod_rm_prep::rm_prep(), and scale_atmos_phy_rd_mm5sw::swrad().
logical, public scale_atmos_solarins::atmos_solarins_set_ve = .false. |
Definition at line 45 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_setup().
logical, public scale_atmos_solarins::atmos_solarins_set_ideal = .false. |
Definition at line 47 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_orbit(), and atmos_solarins_setup().
real(rp), public scale_atmos_solarins::atmos_solarins_obliquity = 23.44_RP |
Definition at line 48 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_orbit(), and atmos_solarins_setup().
real(rp), public scale_atmos_solarins::atmos_solarins_eccentricity = 0.0167_RP |
Definition at line 49 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_orbit(), and atmos_solarins_setup().
real(rp), public scale_atmos_solarins::atmos_solarins_perihelion_lon = 282.94719_RP |
Definition at line 50 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_orbit(), and atmos_solarins_setup().
integer, dimension(6), public scale_atmos_solarins::atmos_solarins_ve_date |
Definition at line 51 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_setup().
real(rp), public scale_atmos_solarins::atmos_solarins_diurnal_sec |
Definition at line 53 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_ecliptic_longitude(), and atmos_solarins_setup().
real(rp), public scale_atmos_solarins::atmos_solarins_annual_sec |
Definition at line 54 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_setup().
logical, public scale_atmos_solarins::atmos_solarins_fixedlatlon = .false. |
Definition at line 56 of file scale_atmos_solarins.F90.
Referenced by scale_atmos_phy_rd_profile::atmos_phy_rd_profile_read(), atmos_solarins_insolation_0d(), atmos_solarins_insolation_2d(), and atmos_solarins_setup().
real(rp), public scale_atmos_solarins::atmos_solarins_lon |
Definition at line 57 of file scale_atmos_solarins.F90.
Referenced by atmos_solarins_insolation_0d(), atmos_solarins_insolation_2d(), and atmos_solarins_setup().
real(rp), public scale_atmos_solarins::atmos_solarins_lat |
Definition at line 58 of file scale_atmos_solarins.F90.
Referenced by scale_atmos_phy_rd_profile::atmos_phy_rd_profile_read(), atmos_solarins_insolation_0d(), atmos_solarins_insolation_2d(), and atmos_solarins_setup().
logical, public scale_atmos_solarins::atmos_solarins_fixeddate = .false. |
Definition at line 60 of file scale_atmos_solarins.F90.
Referenced by scale_atmos_phy_rd_profile::atmos_phy_rd_profile_read(), atmos_solarins_ecliptic_longitude(), and atmos_solarins_setup().
integer, dimension(6), public scale_atmos_solarins::atmos_solarins_date |
Definition at line 61 of file scale_atmos_solarins.F90.
Referenced by scale_atmos_phy_rd_profile::atmos_phy_rd_profile_read(), atmos_solarins_ecliptic_longitude(), and atmos_solarins_setup().