sunRiseSet( lat, lng, UTCoff, date, PLOT)

버전 2.3.0.0 (4.59 KB) 작성자: Richard Droste
Compute accurate apparent sunrise, sunset and noon times in seconds, and solar angles
다운로드 수: 575
업데이트 날짜: 2017/11/6

라이선스 보기

Compute refraction-corrected sunrise, sunset and noon times in seconds at a given latitude, longitude and date.
Compute solar elevation, azimuthal and declination angles of the sun at every second of the day.

The code is also hosted on github.com/rdroste/sunRiseSet

USAGE:
sun_rise_set = sunRiseSet( lat, lng, UTCoff, date) Computes the *apparent* (refraction
corrected) sunrise and sunset times in seconds from mignight and returns them as
sun_rise_set. lat and lng are the latitude (+ to N) and longitude (+ to E), UTCoff is the
timezone, i.e. the local time offset to UTC (Coordinated Universal Time) in hours, and date is
the date in format 'dd-mmm-yyyy' ( see below for an example).

[sun_rise_set, noon] = sunRiseSet( lat, lng, UTCoff, date) additionally returns the solar noon
in seconds from midnight.

[sun_rise_set, noon, opt] = sunRiseSet( lat, lng, UTCoff, date) additionally returns the
information opt, which contains information on every second of the day:
opt.elev_ang_corr : Apparent (refraction corrected) solar elevation in degrees
opt.azmt_ang : Solar azimuthal angle (deg cw from N)
opt.solar_decl : Solar declination in degrees

sun_rise_set = sunRiseSet( ..., PLOT) If PLOT is true, plots of the elevation and azimuthal
angle are created.

EXAMPLE:
lat = 47.377037; % Latitude (Zurich, CH)
lng = 8.553952; % Longitude (Zurich, CH)
UTCoff = 2; % UTC offset
date = '15-jun-2017';

[sun_rise_set, noon, opt] = sunRiseSet( lat, lng, UTCoff, date, 1);

Richard Droste

Reverse engineered from the NOAA Excel:
(https://www.esrl.noaa.gov/gmd/grad/solcalc/calcdetails.html)

The formulas are from:
Meeus, Jean H. Astronomical algorithms. Willmann-Bell, Incorporated, 1991.

인용 양식

Richard Droste (2024). sunRiseSet( lat, lng, UTCoff, date, PLOT) (https://www.mathworks.com/matlabcentral/fileexchange/62180-sunriseset-lat-lng-utcoff-date-plot), MATLAB Central File Exchange. 검색됨 .

MATLAB 릴리스 호환 정보
개발 환경: R2016b
모든 릴리스와 호환
플랫폼 호환성
Windows macOS Linux
카테고리
Help CenterMATLAB Answers에서 Gravitation, Cosmology & Astrophysics에 대해 자세히 알아보기
도움

줌: SOLAR_GUI

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
버전 게시됨 릴리스 정보
2.3.0.0

Add github repository to the description
- Function now outputs -1 for sunrise or sunset if it is out of the 24h bounds
- Improved the description of the UTC offset input
- Using datenum if daysact is not available
- Eliminated the trigonometric unit conversion where possible

2.2.0.0

Make PLOT input optional

2.1.0.0

Adapted vargout handling and description

2.0.0.0

Updated function description
- Additionally output noon time in seconds and solar declination over the day.
- Improved precision by adaptions in the formulas.
- Improved performance by vectorization.
- Optionally create plots.
Adapted description
Adapted title

1.0.0.0

Replaced "apparent" with "refraction-corrected" for clarification