def haurwitz(apparent_zenith):
cos_zenith = tools.cosd(apparent_zenith.values)<EOL>clearsky_ghi = np.zeros_like(apparent_zenith.values)<EOL>cos_zen_gte_0 = cos_zenith > <NUM_LIT:0><EOL>clearsky_ghi[cos_zen_gte_0] = (<NUM_LIT> * cos_zenith[cos_zen_gte_0] *<EOL>np.exp(-<NUM_LIT>/cos_zenith[cos_zen_gte_0]))<EOL>df_out = pd.DataFrame(index=apparent_zenith.index,<EOL>data=clearsky_ghi,<EOL>columns=['<STR_LIT>'])<EOL>return df_out<EOL>
Determine clear sky GHI using the Haurwitz model.

Implements the Haurwitz clear sky model for global horizontal
irradiance (GHI) as presented in [1, 2]. A report on clear
sky models found the Haurwitz model to have the best performance
in terms of average monthly error among models which require only
zenith angle [3].

Parameters
----------
apparent_zenith : Series
    The apparent (refraction corrected) sun zenith angle
    in degrees.

Returns
-------
ghi : DataFrame
    The modeled global horizonal irradiance in W/m^2 provided
    by the Haurwitz clear-sky model.

References
----------

[1] B. Haurwitz, "Insolation in Relation to Cloudiness and Cloud
 Density," Journal of Meteorology, vol. 2, pp. 154-166, 1945.

[2] B. Haurwitz, "Insolation in Relation to Cloud Type," Journal of
 Meteorology, vol. 3, pp. 123-124, 1946.

[3] M. Reno, C. Hansen, and J. Stein, "Global Horizontal Irradiance Clear
 Sky Models: Implementation and Analysis", Sandia National
 Laboratories, SAND2012-2389, 2012.