New Python-based tool optimizes PV plant deployment on hilly terrain

Share

A group of researchers from the Indian Institute of Technology has developed a novel algorithm to optimize the placement of photovoltaic (PV) panels on undulating hilly terrain.

The Python-based tool was tested on real terrain in Uttarakhand, India. It comprises two key components – an algorithm that identifies patches of land suitable for PV installation and a distribution algorithm that arranges panels on these areas with optimal spacing.

“Several critical factors must be considered when estimating the optical performance of a PV field,” the team explained. “Firstly, solar radiation on hilly terrain is uneven because lower-altitude areas are often shaded by higher elevations. These shaded regions receive significantly less sunlight than elevated areas. Secondly, hilly terrain contains patches with varying orientations, which leads to uneven solar exposure. Finally, steep slopes in some regions make panel installation and maintenance challenging or impractical.”

The model uses terrain geometry data – including latitude, longitude, and elevation – sourced from the Indian geo-platform Bhuvan. Solar radiation and meteorological data come from the National Solar Radiation Database (NSRDB), which provides 15 years of median weather data to generate a typical meteorological year (TMY). Parameters considered include direct normal irradiance (DNI), diffuse horizontal irradiance (DHI), global horizontal irradiance (GHI), and sun position.

The first part of the algorithm applies five filters to identify usable land. It first excludes steep patches with slopes greater than 30°, which are unsuitable for PV installation. Next, an azimuth filter removes north-facing areas, with surface azimuth within 180° and 10°, which remain shaded most of the year. A terrain-shading filter eliminates patches shaded for more than 20% of simulated sun positions annually.

The fourth filter, based on the sky view factor (SVF), excludes patches where less than 80% of the sky dome is visible, as these areas receive insufficient diffuse irradiance. Finally, a local outlier factor (LOF) filter removes isolated patches with fewer than three neighboring grid points, leaving only clustered, accessible regions suitable for installation. The second component of the algorithm determines optimal panel spacing based on local slope, panel tilt, and solar elevation.

“The choice of discard criteria is user-defined,” the researchers noted. “Except for the slope and LOF filters, criteria are set according to the acceptable level of solar radiation loss for a given application. Decisions about discard thresholds are guided by project cost analysis, which is beyond the scope of this study.”

For a case study in Uttarakhand, the selected terrain measured 1,000 m in length and 500 m in width, with elevations ranging from 1,740 m to 1,980 m. After applying the azimuth filter, 5.56% of the area was discarded, followed by 9.7% from the slope filter, 6.36% due to terrain shading, 4.77% from the SVF filter, and 2.7% from the LOF filter, totaling 29.09% of the area excluded.

“The average solar flux incident on a 1 m × 2 m panel is 1,589.1 W, resulting in 1,120.4 MWh of solar energy incident on the PV field at the equinox,” the academics explained. “Panels distributed on hilly terrain capture more energy than an equivalent installation on flat terrain over the same 0.5 km² area, which receives 1,089.67 MWh.”

Their findings were presented in “An algorithm for laying photovoltaic panels on an undulated hilly terrain,” published by Solar Energy.

This content is protected by copyright and may not be reused. If you want to cooperate with us and would like to reuse some of our content, please contact: editors@pv-magazine.com.

Popular content

Rising silver prices drive China’s Longi shift to copper-metallized solar cells
06 January 2026 China’s Longi says it will begin mass production of base-metal PV modules in the second quarter of 2026 as rising silver prices intensify pressure to...