# EPW Future Weather Generator

### What is this tool?

The EPW Future Weather Generator V2.0 creates climate-adjusted weather files for building energy simulation. It takes existing EPW (EnergyPlus Weather) files and morphs them to represent future climate conditions based on IPCC climate scenarios and global climate model projections. This is for energy modelers who need to assess how buildings will perform under climate change, not for meteorological research.

The tool implements the Future Weather Generator (FWG) methodology documented by Rodrigues et al. (2023), including Kusuda-Achenbach ground temperature calculations and multiple diffuse radiation separation models. Advanced users can import custom climate deltas from official FWG outputs or other sources for location-specific accuracy. If you're doing climate-responsive design, long-term resilience planning, or future-proofing buildings against warming temperatures, this generates the weather files your simulation software needs.

**Official FWG Tool:** [future-weather-generator.adai.pt](https://future-weather-generator.adai.pt/)

<figure><img src="https://2129322768-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfKJnzF2TwHA3APPbiCpF%2Fuploads%2FtqgCBP9KZlr3nSAQTcr6%2Fimage.png?alt=media&#x26;token=a83852e3-f0c5-4d5a-9547-abac66709ab9" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
**Download the tool here:** [EPW Future Weather Generator V1.0](https://files.betterbuilding.io/docs/epw_future_weather_generator_v_1_0.html)
{% endhint %}

***

### System Requirements

**Browser:** Any modern browser with JavaScript enabled. Chrome, Firefox, Edge, Safari all work fine.

**Network:** Required only for the logo image. All calculations run entirely in your browser.

**Files:** Standalone HTML file. No installation, no dependencies, no server needed. The Christchurch TMYx weather file is embedded as a default example.

***

### Quick Start

#### Generate Future Weather Files (5 minutes)

The core workflow. You have a present-day EPW file, you need future climate versions.

**Step 1: Load your EPW file**

Drop an EPW file onto the upload area or click to browse. The Christchurch file loads automatically as a demo. You can load multiple files and process them all at once.

**Step 2: Select climate scenarios**

Check the SSP scenarios you want:

* **SSP1-2.6:** Low emissions, aggressive mitigation
* **SSP2-4.5:** Middle of the road
* **SSP3-7.0:** Regional rivalry, high emissions
* **SSP5-8.5:** Fossil-fueled development, worst case

Most compliance work uses SSP2-4.5 and SSP5-8.5 to bracket likely outcomes.

**Step 3: Select time periods**

Check the future years: 2030, 2050, 2080, 2090. Near-term (2030, 2050) for operational planning, far-term (2080, 2090) for building lifespan analysis.

**Step 4: Choose GCM model**

Select a Global Climate Model or use the ensemble average. Different models have different climate sensitivities:

* **Ensemble Average:** Balanced projection across multiple models
* **CanESM5:** High sensitivity (warmer projections)
* **EC-Earth3:** Moderate sensitivity
* **ACCESS-CM2:** Low sensitivity (cooler projections)

For most work, use ensemble average. For sensitivity analysis, run multiple GCMs.

**Step 5: Click Generate Future Weather**

Progress bar shows completion. Each combination of scenario and year produces one output file. Three scenarios times four years equals twelve files per input EPW.

**Step 6: Download results**

Generated files appear in the results panel. Click the download button on each file, or load them directly into EnergyPlus, IES VE, or other simulation software that accepts EPW format.

***

#### Compare Weather Files (3 minutes)

Use the built-in viewer to compare original and morphed files.

**Step 1: Select files for comparison**

Click the file badges above the charts. Selected files highlight in blue. Maximum five files can display simultaneously.

**Step 2: Choose time filter**

* **Year:** Full 8760 hours
* **Summer:** December-February (Southern Hemisphere) or June-August (Northern Hemisphere)
* **Winter:** June-August (Southern Hemisphere) or December-February (Northern Hemisphere)
* **Peak Summer Day:** Hottest 24-hour period by average temperature
* **Peak Summer Week:** Hottest 168-hour period
* **Peak Winter Day:** Coldest 24-hour period
* **Peak Winter Week:** Coldest 168-hour period

Peak periods are calculated from the first selected file and applied to all displayed files for direct comparison.

**Step 3: Toggle statistics**

Click "Show Statistics" to display min, mean, max, P5, and P95 values for temperature, solar radiation, and humidity. Statistics update when you change the time filter.

**Step 4: Export diagnostics**

Click "Export Diagnostics" to download a comprehensive text report for verifying morphing quality. The report includes:

* Header information (location, coordinates, elevation)
* Ground temperatures at all depths
* Annual statistics for all key variables (N6-N21)
* Monthly temperature and solar summaries
* Peak period identification
* Data quality checks (missing values, physical consistency)
* Sample hourly data for each season
* File comparison (temperature, humidity, radiation deltas)

Use this to verify that morphed files are physically reasonable before running simulations.

***

### Understanding the Inputs

#### Climate Scenarios (SSP)

Shared Socioeconomic Pathways describe different futures based on policy choices, technology development, and societal trends. They replace the older RCP scenarios.

**SSP1-2.6** assumes rapid decarbonization, global cooperation, sustainable development. Temperature increase limited to approximately 1.8°C by 2100. Use this for optimistic policy scenarios.

**SSP2-4.5** assumes current trends continue with moderate mitigation efforts. Temperature increase approximately 2.7°C by 2100. This is the "business as usual" scenario most commonly used for planning.

**SSP3-7.0** assumes regional rivalry, slow economic growth, and weak climate policies. Temperature increase approximately 3.6°C by 2100. Use for stress-testing designs.

**SSP5-8.5** assumes fossil-fuel intensive development with minimal climate policy. Temperature increase approximately 4.4°C by 2100. Worst-case scenario for resilience analysis.

The tool applies scaling factors based on these scenarios: SSP1-2.6 at 65% of baseline warming, SSP2-4.5 at 100%, SSP3-7.0 at 135%, SSP5-8.5 at 170%.

#### Time Periods

Future years determine how far the climate projections extend:

* **2030:** Near-term, 0.45× baseline warming factor
* **2050:** Mid-century, 1.0× baseline warming factor
* **2080:** Late-century, 1.55× baseline warming factor
* **2090:** End-century, 1.75× baseline warming factor

These factors compound with the SSP scenario factors. A 2090 SSP5-8.5 projection shows substantially more warming than a 2030 SSP1-2.6 projection.

#### GCM Models

Global Climate Models simulate Earth's climate system. Different modeling groups produce different results based on their approaches to representing atmospheric physics, ocean circulation, and feedback mechanisms.

**Ensemble Average** combines results from multiple models. This smooths out individual model biases and provides a consensus projection. Best for general-purpose work.

**CanESM5** (Canadian Earth System Model) has high climate sensitivity. Projections run warmer than average. Use for conservative design margins.

**EC-Earth3** (European consortium) has moderate sensitivity close to the ensemble mean. Good alternative to the ensemble for European projects.

**ACCESS-CM2** (Australian model) has lower climate sensitivity. Projections run cooler than average. Use for lower-bound estimates.

The tool applies model-specific factors for temperature, humidity, solar radiation, cloud cover, wind speed, and precipitation. High-sensitivity models amplify all climate changes; low-sensitivity models dampen them.

#### Radiation Models

**Diffuse Separation (N15)**

Three models separate global horizontal radiation into direct and diffuse components. This affects illuminance calculations and daylighting analysis.

**Ridley, Boland & Lauret (2010):** Default model. Uses clearness index, solar time, altitude angle, daily clearness, and persistence. Well-validated across multiple climates.

**Engerer (2015):** Method 3 from the Engerer series. Similar inputs with different coefficient fitting. May perform better in specific climates.

**Paulescu & Blaga (2019):** Two-predictor model using clearness index and solar altitude. Simpler formulation, still accurate for most applications.

For most work, stick with Ridley. Switch models only if you have specific validation data for your climate zone.

**Illuminance Model (N16-N19)**

Two methods are available for calculating illuminance values:

**Luminous Efficacy (default):** Converts radiation to illuminance using sky-condition-dependent efficacy values (lm/W). More robust across edge cases and produces physically consistent results. Recommended for most applications.

**Perez et al. 1990:** The coefficient-based model from the original FWG methodology. Uses 8 sky clearness bins with tabulated coefficients for precipitable water content, zenith angle, and atmospheric brightness. Use this when you need results comparable to official FWG outputs or other tools using the Perez model.

#### Ground Temperature Update

When enabled, the tool recalculates monthly ground temperatures at three depths (0.5m, 2.0m, 4.0m) using the Kusuda-Achenbach (1965) equations. Ground temperatures lag air temperature changes and affect basement heat transfer, ground-source heat pump performance, and slab-on-grade calculations.

Leave this enabled unless you have separate ground temperature data from a geotechnical study.

***

### Advanced Options

Click the "⚙️ Advanced Options" panel header to expand advanced settings. These options give sophisticated users more control over the morphing process.

#### Climate Data Source

Choose how climate change deltas are calculated:

**Built-in scaling factors (default):** Uses the tool's internal scaling approach based on SSP scenarios, time periods, GCM model sensitivities, and latitude. Suitable for most design work.

**Custom monthly deltas (CSV):** Import your own monthly climate change values. Use this when you have:

* Output from the official FWG tool for your specific location
* Regional climate study data
* Custom projections from a climate consultant

**Importing Custom Deltas**

1. Click **"📤 Template"** to download a CSV template with the required format
2. Edit the template with your monthly delta values (12 rows, one per month)
3. Click **"📥 Import CSV"** to load your custom data
4. The status indicator confirms successful import

**CSV Format:**

```csv
Month,dTAS,dTASMAX,dTASMIN,dHUSS,dPSL,dRSDS_pct,dCLT,windRel,snowRel,precRel
Jan,2.0,2.5,1.7,0.0012,-30,0.02,0.3,1.02,0.85,1.05
Feb,2.1,2.6,1.8,0.0013,-32,0.02,0.3,1.02,0.84,1.06
...
```

**Column definitions:**

| Column     | Unit    | Description                                     |
| ---------- | ------- | ----------------------------------------------- |
| dTAS       | °C      | Mean temperature change                         |
| dTASMAX    | °C      | Daily maximum temperature change                |
| dTASMIN    | °C      | Daily minimum temperature change                |
| dHUSS      | kg/kg   | Specific humidity change (e.g., 0.0012)         |
| dPSL       | Pa      | Sea level pressure change                       |
| dRSDS\_pct | decimal | Solar radiation change as fraction (0.02 = +2%) |
| dCLT       | tenths  | Cloud cover change (0-10 scale)                 |
| windRel    | ratio   | Wind speed multiplier (1.05 = +5%)              |
| snowRel    | ratio   | Snow depth multiplier (0.85 = -15%)             |
| precRel    | ratio   | Precipitation multiplier                        |

When custom deltas are loaded, the SSP and year selections are ignored—your values are applied directly. Output files are named with `_custom_` instead of the GCM model name.

#### Regional Adjustments

Fine-tune the built-in scaling factors for your region:

**Latitude amplification (default 0.35):** Controls polar amplification—how much more high latitudes warm compared to the equator. Higher values increase warming at high latitudes. The formula is: `warming × (1 + |latitude|/90 × amplification)`

**Seasonal amplitude (default 0.15):** Controls how much warming varies by season. Higher values create larger differences between summer and winter warming. Set to 0 for uniform year-round warming.

These settings only affect the built-in scaling factors, not custom imported deltas.

#### Output Options

**Embed methodology in EPW:** When enabled, adds a comment line to the EPW header documenting how the file was created:

```
COMMENTS 2, Morphed by EPW-FWG V2.0 on 2025-01-08 | GCM:ensemble SSP:ssp245 Year:2050 | Climate:Built-in scaling Diffuse:ridley Illum:efficacy
```

This creates an audit trail when files are shared between team members or archived for future reference.

**Export validation CSV:** Generates a CSV file comparing original and morphed file statistics. Useful for QA documentation and verifying that morphing produced expected results.

**Export applied deltas:** Generates a CSV file listing the exact monthly delta values that were applied. Useful for:

* Documenting methodology for reports
* Comparing built-in values to official FWG outputs
* Replicating results in other tools

***

### How the Calculation Works

The tool implements the morphing methodology from the Future Weather Generator documentation. Each weather variable gets adjusted differently.

#### Temperature (Dry Bulb, Dew Point)

Temperature uses shift-and-stretch morphing:

```
T_future = T_present + ΔT_mean + α × (T_present - T_mean_present)
```

Where:

* **ΔT\_mean** is the projected mean temperature change
* **α** is the stretch factor calculated from changes in daily maximum and minimum temperatures
* **T\_mean\_present** is the baseline monthly mean temperature

This preserves the diurnal temperature range while shifting and potentially amplifying extremes. Hot days get hotter; cold nights may warm more or less depending on the GCM projections.

Dew point is derived from morphed humidity using Newton-Raphson iteration to find the temperature where saturation vapor pressure equals the calculated vapor pressure.

#### Humidity

Relative humidity morphs through specific humidity to preserve physical consistency:

1. Calculate present specific humidity from relative humidity and saturation pressure
2. Add projected specific humidity change (ΔQ)
3. Calculate new vapor pressure from modified specific humidity
4. Derive relative humidity from vapor pressure and saturation pressure at the new temperature

This prevents impossible values (humidity over 100%) that simple scaling would produce.

#### Solar Radiation

Global horizontal radiation uses stretch morphing:

```
GHR_future = GHR_present × (1 + ΔGHR / GHR_mean_present)
```

Diffuse horizontal radiation is separated from global using the selected diffuse model (Ridley, Engerer, or Paulescu), which considers:

* Hourly clearness index (ratio of measured to extraterrestrial radiation)
* Daily clearness index
* Clearness persistence (previous and next hour values)
* Solar altitude angle
* Solar time

Direct normal radiation is calculated from global and diffuse using solar geometry:

```
DNR = (GHR - DHR) / sin(solar_altitude)
```

Values are capped at 1200 W/m² to prevent unrealistic spikes at low solar angles.

#### Illuminance

Two calculation methods are available:

**Luminous Efficacy Method (Default)**

Converts radiation to illuminance using sky-condition-dependent efficacy values:

* **Global Horizontal Illuminance (N16):** GHR × efficacy × altitude factor
* **Direct Normal Illuminance (N17):** DNR × efficacy × altitude factor
* **Diffuse Horizontal Illuminance (N18):** DHR × efficacy × altitude factor
* **Zenith Luminance (N19):** Derived from diffuse illuminance and solar altitude

Luminous efficacy values (lm/W) vary by sky clearness:

| Sky Condition                | Global | Direct | Diffuse |
| ---------------------------- | ------ | ------ | ------- |
| Overcast (ε < 1.5)           | 115    | 95     | 130     |
| Intermediate (1.5 ≤ ε < 3.0) | 110    | 100    | 120     |
| Clear (ε ≥ 3.0)              | 105    | 105    | 110     |

The altitude factor adjusts efficacy based on solar position: `0.9 + 0.2 × sin(altitude)`.

**Perez Model (FWG-Compatible)**

Uses the Perez et al. (1990) coefficient tables with 8 sky clearness bins. Each illuminance type uses different coefficients based on:

* Precipitable water content (from dew point)
* Atmospheric brightness (from diffuse radiation and air mass)
* Zenith angle
* Sky clearness category

This method matches the official FWG implementation for comparison purposes.

#### Other Variables

**Atmospheric pressure:** Simple offset based on projected sea level pressure change.

**Wind speed:** Multiplicative scaling based on projected wind speed ratio.

**Sky cover:** Additive offset for total sky cover; opaque sky cover scaled proportionally.

**Snow depth:** Multiplicative scaling (typically decreasing with warming).

**Precipitation:** Multiplicative scaling (may increase or decrease depending on region).

#### Ground Temperatures

Kusuda-Achenbach (1965) equations calculate monthly ground temperatures from:

* Annual mean air temperature (from morphed data)
* Annual temperature amplitude
* Soil thermal diffusivity (0.056 m²/day default)
* Phase lag from coldest month
* Depth below surface

Temperature variation decreases with depth. At 4m, seasonal swing is minimal; at 0.5m, it tracks air temperature with a phase delay.

#### Header Updates

The tool updates EPW header lines:

* **Line 1 (LOCATION):** Appends GCM model, scenario, and year to city name
* **Line 4 (GROUND TEMPERATURES):** Replaces with calculated values at three depths
* **Line 6 (COMMENTS 2):** Adds methodology stamp when "Embed methodology" is enabled

***

### Reading the Results

#### Charts

Three time-series charts show:

**Temperature (°C):** Dry bulb temperature over the selected period. Future files shift upward and may show amplified peaks.

**Global Horizontal Radiation (Wh/m²):** Solar radiation reaching a horizontal surface. Changes are typically smaller than temperature changes.

**Relative Humidity (%):** Bounded 0-100%. May increase or decrease depending on the balance between temperature and moisture changes.

Each selected file displays as a different color. The legend identifies which line corresponds to which file.

#### Statistics Table

When visible, shows for each selected file:

| Metric | Description                                     |
| ------ | ----------------------------------------------- |
| Min    | Minimum value in filtered period                |
| Mean   | Average value                                   |
| Max    | Maximum value                                   |
| P5     | 5th percentile (value exceeded 95% of the time) |
| P95    | 95th percentile (value exceeded 5% of the time) |

P5 and P95 are more robust than min/max for identifying typical extremes without outlier sensitivity.

#### Generated Files

Output files follow the naming convention:

```
[OriginalName]_[GCM]_[SSP]_[Year].epw
```

Example: `Christchurch_ensemble_ssp245_2050.epw`

When using custom deltas:

```
[OriginalName]_custom_[SSP]_[Year].epw
```

Example: `Christchurch_custom_ssp245_2050.epw`

Files are valid EPW format compatible with EnergyPlus, IES VE, TRNSYS, and other simulation engines that read EPW weather data.

***

### Common Scenarios

#### Scenario 1: Code Compliance Future-Proofing

Design team wants to show the building performs adequately under 2050 climate conditions.

1. Load the site's TMY weather file
2. Select SSP2-4.5 (likely scenario) and SSP5-8.5 (stress test)
3. Select 2050 only
4. Use ensemble GCM
5. Generate files
6. Run energy simulations with both future files
7. Document that design cooling capacity handles projected loads

**Result:** Evidence that the HVAC system won't be undersized mid-building-lifespan.

#### Scenario 2: Climate Risk Assessment

Owner wants full range of climate projections for a 60-year building life.

1. Load weather file
2. Select all four SSP scenarios
3. Select 2050 and 2080
4. Use ensemble GCM
5. Generate files (8 total)
6. Compare peak cooling loads across all scenarios
7. Identify when/if existing systems become inadequate

**Result:** Risk matrix showing probability and timing of climate-related performance issues.

#### Scenario 3: Resilience Design

Architect designing for climate adaptation wants worst-case summer conditions.

1. Load weather file
2. Select SSP5-8.5 only
3. Select 2080 and 2090
4. Use CanESM5 (high sensitivity)
5. Generate files
6. Use Peak Summer Week filter to view extreme conditions
7. Design passive cooling strategies for these extremes

**Result:** Design parameters for a building that maintains habitability during future heat waves.

#### Scenario 4: Sensitivity Analysis

Researcher comparing how different GCMs affect results.

1. Load weather file
2. Select SSP2-4.5
3. Select 2050
4. Generate with ensemble, then repeat with CanESM5 and ACCESS-CM2
5. Compare statistics across all three
6. Document uncertainty range in projections

**Result:** Confidence intervals on climate projections for academic or policy work.

#### Scenario 5: FWG-Compatible Output

User needs results that match official FWG tool outputs for comparison or validation.

1. Run official FWG tool for your location to get monthly deltas
2. Export the deltas to CSV format matching the template
3. Load weather file in this tool
4. Expand Advanced Options
5. Select "Custom monthly deltas (CSV)"
6. Import your FWG-derived deltas
7. Select Perez illuminance model for full compatibility
8. Enable "Export applied deltas" for documentation
9. Generate files

**Result:** Future weather files using official FWG climate data with this tool's visualization and comparison features.

#### Scenario 6: Regional Calibration

User has regional climate study data suggesting different warming patterns.

1. Load weather file
2. Expand Advanced Options
3. Adjust latitude amplification if regional studies show different polar amplification
4. Adjust seasonal amplitude if regional studies show different seasonal patterns
5. Enable validation CSV export
6. Generate files
7. Review validation CSV to confirm expected temperature changes

**Result:** Future weather files calibrated to regional climate research.

***

### Limitations

This tool implements a simplified morphing methodology suitable for building energy analysis.

**What it is:**

* A tool for generating future weather files for simulation
* Suitable for climate-responsive design analysis
* Appropriate for code compliance future-proofing studies
* Based on peer-reviewed FWG methodology
* Extensible via custom delta import for location-specific accuracy

**What it isn't:**

* A substitute for regional climate modeling
* Suitable for detailed meteorological analysis
* Going to capture changes in weather patterns, storm frequency, or extreme event timing
* Applicable for agricultural, hydrological, or ecological studies

**Morphing limitations:** The methodology assumes climate change shifts and stretches existing weather patterns rather than fundamentally changing them. A location that never had heat waves won't suddenly generate realistic heat wave sequences. The morphed file shows higher temperatures but maintains the original temporal patterns.

**Spatial resolution:** Built-in GCM projections are applied uniformly based on latitude. Real climate change varies locally based on urban heat islands, coastal effects, and topography. The tool doesn't downscale to microclimate level. For location-specific projections, import custom deltas from regional climate studies.

**Extreme events:** The methodology handles gradual shifts in means and variances. It doesn't insert new extreme events or change the frequency distribution of existing ones. For extreme event analysis, use dedicated climate impact tools.

**Uncertainty:** Climate projections have inherent uncertainty. The spread between SSP scenarios and GCM models gives some indication, but doesn't capture all sources of uncertainty. Use results for planning ranges, not precise predictions.

**Built-in vs. Official FWG:** The built-in scaling factors are simplified approximations. For research-grade accuracy or when comparing to peer-reviewed studies using FWG, import actual GCM deltas from the official FWG tool using the custom delta feature.

***

### Technical Reference

#### EPW Fields Modified

| Field | Name                                     | Morphing Method            |
| ----- | ---------------------------------------- | -------------------------- |
| N6    | Dry Bulb Temperature                     | Shift + Stretch            |
| N7    | Dew Point Temperature                    | Derived from humidity      |
| N8    | Relative Humidity                        | Via specific humidity      |
| N9    | Atmospheric Pressure                     | Offset                     |
| N10   | Extraterrestrial Horizontal Radiation    | Recalculated               |
| N11   | Extraterrestrial Direct Normal Radiation | Recalculated               |
| N12   | Horizontal Infrared Radiation            | Recalculated               |
| N13   | Global Horizontal Radiation              | Stretch                    |
| N14   | Direct Normal Radiation                  | Derived (capped 1200 W/m²) |
| N15   | Diffuse Horizontal Radiation             | Diffuse model              |
| N16   | Global Horizontal Illuminance            | Efficacy or Perez          |
| N17   | Direct Normal Illuminance                | Efficacy or Perez          |
| N18   | Diffuse Horizontal Illuminance           | Efficacy or Perez          |
| N19   | Zenith Luminance                         | Efficacy or Perez          |
| N21   | Wind Speed                               | Scale                      |
| N22   | Total Sky Cover                          | Offset                     |
| N23   | Opaque Sky Cover                         | Proportional               |
| N30   | Snow Depth                               | Scale                      |
| N33   | Liquid Precipitation                     | Scale                      |

#### Key Constants

| Constant                       | Value               | Source            |
| ------------------------------ | ------------------- | ----------------- |
| Solar Constant                 | 1367 W/m²           | Standard          |
| Stefan-Boltzmann               | 5.67×10⁻⁸ W/(m²·K⁴) | Physical constant |
| Ground Diffusivity             | 0.056 m²/day        | Typical soil      |
| DNR Maximum Cap                | 1200 W/m²           | Physical limit    |
| Clear Sky Efficacy             | 105 lm/W            | Typical daylight  |
| Overcast Efficacy              | 115-130 lm/W        | Typical daylight  |
| Default Latitude Amplification | 0.35                | Calibrated        |
| Default Seasonal Amplitude     | 0.15                | Calibrated        |

#### Output Files

When output options are enabled, the tool generates:

| File                        | Content                                   |
| --------------------------- | ----------------------------------------- |
| `*_[scenario].epw`          | Morphed weather files                     |
| `epw_validation_[date].csv` | Original vs morphed statistics comparison |
| `applied_deltas_[date].csv` | Monthly delta values actually applied     |

***

### References

Rodrigues, E., Fernandes, M.S., Carvalho, D., & Andrade, C. (2023). Future Weather Generator methodology documentation. *Building and Environment*, 233, 110104.

Perez, R., Ineichen, P., Seals, R., Michalsky, J., & Stewart, R. (1990). Modeling daylight availability and irradiance components from direct and global irradiance. *Solar Energy*, 44(5), 271-289.

Kusuda, T., & Achenbach, P.R. (1965). Earth temperature and thermal diffusivity at selected stations in the United States. *ASHRAE Transactions*, 71(1), 61-75.

Ridley, B., Boland, J., & Lauret, P. (2010). Modelling of diffuse solar fraction with multiple predictors. *Renewable Energy*, 35(2), 478-483.

Engerer, N.A. (2015). Minute resolution estimates of the diffuse fraction of global irradiance for southeastern Australia. *Solar Energy*, 116, 215-237.

Paulescu, M., & Blaga, R. (2019). A simple and reliable empirical model with two predictors for estimating 1-minute diffuse fraction. *Solar Energy*, 180, 75-84.

***

### Keyboard Shortcuts

| Shortcut | Action                                    |
| -------- | ----------------------------------------- |
| Tab      | Navigate between input fields             |
| Enter    | Trigger calculation when focused on input |
| Escape   | Close modal dialogs                       |
