✨ What's New — Recent Simulation Updates
Latest additions across Step 4, Step 6, Step 7 and the report generator. Newest first.
Grid-Code Compliance (Step 4 — LVRT/HVRT, Reactive Power/PF Reserve, Ramp-Rate Limiting)
New "📜 Grid-Code Compliance" card alongside the Grid Delivery Chain:
- Reactive Power / PF Reserve — optionally enforces a minimum power factor (e.g. 0.95). Since inverter apparent power is fixed, holding Q headroom derates the usable active-power ceiling to Srated×PFmin — a genuinely simulated, per-timestep effect reported as its own "Reactive Power Reserve (PF) Derate Loss" row, separate from ordinary DC/AC-ratio clipping.
- Ramp-Rate Limiting — optionally caps how fast grid-injected power may rise (%/min of AC rating). Only the up-ramp is throttled; reported as "Ramp-Rate Limiting Loss". Most meaningful at Hourly/Sub-hourly resolution.
- LVRT/HVRT reference — select a grid-code standard (CEA/IEGC, IEEE 1547-2018, EN 50549-1, or Custom) for an indicative ride-through table, plus a certification checkbox and datasheet/type-test reference field for the report. This is documentation only — LVRT/HVRT is a sub-second transient-protection requirement verified by equipment certification, not an annual-energy effect, so it is not simulated.
- All settings and the actual simulated PF/ramp-rate loss % are summarised on the report's Grid Interconnection page (systems ≥ 1000 kW AC).
Report SLD — LT Panel & Grid Interconnection Diagrams (systems ≥ 1000 kW AC)
- New page 8.1: a Grid Interconnection diagram (Step-Up Transformer → Switchyard Incomer Bay → Outgoing Feeder Metering (ABT) → Grid Interconnection Point) using the plant's actual configured transformer rating, followed by the LT Panel — Main Busbar Scheme diagram (up to 3 inverters shown, MCCB 3P+N and ACB Incomer ratings computed from actual load current, Copper Main Busbar R/Y/B/N).
- New DISCOM Substation / Grid Interconnection Voltage (kV) field (Step 4) — the LT Panel and Grid Interconnection diagrams now use this real value instead of a fixed 33 kV assumption.
- Main SLD: sub-array-1 inverters are capped at 2 individually-drawn boxes (extra inverters fold into a "+N more" summary), with a Notes callout stating any sub-array configuration differences, remaining-inverter counts, and any per-sub-array inverter that differs from the project's main selected inverter.
Step 7 — Batch/Parametric Simulation Log: Save & Open .batch Files
- ▶ Run Simulation no longer auto-jumps to the Simulation Results sub-tab — it now stays on ▶ Run Simulation so the Batch/parametric log stays in view across successive what-if runs.
- Each logged run now captures Tilt, Azimuth, the selected Module/Inverter, and each Sub-array (Unit)'s Mod/String, String/MPPT, MPPT Used, No. Inverters — not just the resulting KPIs.
- New 💾 Save Batch Simulation button exports the full log to a
<project-name>-batch-sim.batch file; 📂 Open Batch Simulation reloads one — scoped to the current project only (a project-name mismatch shows a warning instead of loading).
Project File (.pro) — Module/Inverter Datasheet Now Saved
The .pro file now stores the full selected module/inverter datasheet, not just its database ID. If the loading device's database doesn't have that exact module/inverter (a different install, a custom-extracted datasheet, or a since-edited/removed entry), it's restored directly from the .pro file instead of failing to select anything.
Step 6 — CAPEX Template, Discount Rate, Depreciation & Escalation Reference
- New 📋 Apply Template button on the CAPEX — Installation Cost table, loading a standard 17-line BOQ (PV Modules, Mounting Structure, Hardware, Inverter, Weather Station/RMS, cabling, DCDB/ACDB, earthing, Net Meter/DISCOM, Installation & Commissioning) — with Module/Inverter make & quantities auto-filled from your current selection.
- New help reference content: Discount Rate formula & recommended ranges, OPEX Escalation and Tariff Escalation recommended values, WDV vs SLM depreciation methods with formulas, Additional Depreciation, Salvage Value ranges, and explicit formulas for every column of the Year-by-Year Projection and Full Cash-Flow Calculation tables (see Step 6 below), plus clear definitions of Simple Payback Year vs Discounted Payback Year.
Report — Probability Analysis Tidy-Up
Removed the "Composite σtotal = √(IAV ⊕ Data ⊕ Model ⊕ Component) | Px = P50 × (1 − z×σtotal/100)" line from Section 6, and the "Assumed-normal annual-energy distribution…" caption from the 6.1 Probability Chart (also removed from the same live chart on Step 7 → Simulation Results, since both share the one chart function).
Single-Axis Tracker backtracking (Marion & Anderson / pvlib-equivalent Loutzenhiser algorithm) has been part of the per-timestep hourly engine for some time — see Step 2 → Single-Axis Tracker → Tracker Mode ("Backtracking (recommended)" vs "True-Tracking"), and Step 7 → Simulation Results for the difference it makes at your site's GCR.
☀ Introduction & Features — Why IST PVSolar Simulator V9.0.0
IST PVSolar Simulator V9.0.0 is a professional, browser-based photovoltaic yield-assessment and bankability platform. It pairs a full 8,760-step (hourly) / 35,040-step (15-min sub-hourly) time-series engine with a fast monthly engine, and follows the same physics used by many other simulator, SAM and PVGIS — Perez (1990) transposition, a real single-/two-diode I–V solver, the Faiman cell-temperature model and a Bifacial Radiance view-factor rear-irradiance model — while staying entirely in the browser with no install.
⏱ Hourly / 15-min Engine
☀ Perez (1990) Transposition
⚡ Single-/Two-Diode I–V
◈ Bifacial View-Factor
📊 P50–P90 Bankability
🌐 No Install — Runs in Browser
Key Advantages
⏱Real Time-Series Engine
Hour-by-hour (or 15-min) sun position, POA, IAM, spectral, cell temperature, row shading, diode I–V and true inverter clipping — not flat monthly de-rates. Monthly mode is kept for fast what-if studies.
☀Perez (1990) Transposition
Anisotropic sky-diffuse with circumsolar + horizon brightening, more accurate than isotropic/Hay-Davies at steep tilts and clear/overcast extremes.
⚡Single- / Two-Diode Model
De Soto 5-parameter I–V solved at every step, capturing low-light roll-off and datasheet-matched temperature response — replacing the old linear "Pmax × temp-coeff" approximation.
◈Bifacial View-Factor Model
Bifacial Radiance single-bounce rear irradiance Grear = Gground × albedo × VFground→rear; monthly & hourly bifacial gain from real geometry (GCR, tilt, albedo, ground shading).
📊Bankability P50–P90
IEC 61724-3 composite uncertainty (IAV ⊕ data ⊕ model ⊕ component) and a NumPy Monte-Carlo (NPV, equity IRR, LCOE, DSCR, discounted payback) on the exported hourly series.
📐Shadow-Free Row Spacing
Built-in Solar Row Spacing Calculator with full-year shadow-free pitch, GCR, front-shading, bifacial-gain and albedo-capture metrics, and an animated Side / 3D / Front view.
🔁Deterministic & Reproducible
The same design reproduces the same PR every run; the hourly resource is derived deterministically from the monthly table unless you explicitly import a TMY.
🇮🇳India-Ready & Standards-Aligned
CEA grid emission factor, MNRE/ALMM, PM Surya Ghar (PMSGMY) subsidy logic, GST/AD, net-metering and ISTS-waiver context, with IEC/BIS references throughout.
📄One-Click Reporting
8-page A4 PDF with charts, loss waterfall, P50/P90 table and (optional) economics & Monte-Carlo bankability pages.
Two engines, one model. Monthly and hourly engines share the same physics and cross-validate to within ~1% PR on the same design. Use Monthly for rapid comparisons and Hourly / Sub-hourly for final, bankable numbers.
Standards baseline: IEC 61724-1:2021 (performance monitoring), IEC 61724-3 (energy assessment & uncertainty), IEC 61853-1..4 (irradiance/temperature performance & energy rating), IEC 61215:2021, IEC 62548:2016, IS 16169, CEA Technical Standards (Amdt 2023), MNRE/ALMM 2025.
Key Advantages & Capabilities — Full Report
A Technical & Financial Overview for Rooftop, Utility-Scale and Hybrid Solar Design.
1Introduction
The IST PVSolar Simulator is a solar power plant design and bankability platform built to take a project from first site data through to an investment-grade financial report, without leaving a single tool. Where many yield-simulation tools stop at kWh/yr, IST PVSolar Simulator continues through country-specific financial modeling, lender-grade bankability metrics, engineering drawings and EPC-ready deliverables — all from one design.
This report summarizes the platform's principal advantages across six areas: (a) multi-currency, multi-country financial modeling; (b) flexible, low-friction component and resource-data import; (c) transparent, auditable simulation and irradiance handling; (d) flexible system design including hybrid/BESS; (e) complete bankability and investment-decision analysis; and (f) automated, EPC-ready reporting. Each capability is described below together with the practical benefit it delivers to a designer, developer, EPC contractor, or lender/investor.
Financial Framework
2Multi-Currency & Country-Specific Financial Framework
2.1 Multi-Currency Support — Every financial input, table and output — CAPEX, OPEX, tariff, revenue, NPV, cash flow — can be expressed in the currency of the project's own market (₹, $, €, £, and others) rather than being locked to a single home currency.
- Removes manual conversion errors when a project, its lenders, and its EPC contractor sit in different currency zones.
- Client-ready reporting in the currency the client actually budgets and borrows in.
2.2 Country-wise Tax System — Corporate income tax rate, depreciation method (WDV, SLM, or a fully custom schedule), additional first-year depreciation, and tax holidays are all configurable to match a specific country's tax code rather than assuming one fixed regime.
- Accurate post-tax cash flow for markets with materially different depreciation rules (e.g. India's 40% WDV rate for solar plant & machinery vs. straight-line regimes elsewhere).
- One model, many jurisdictions — the same underlying design can be re-costed for a different country's tax treatment without rebuilding the financial sheet.
2.3 Country-wise CO₂ Grid Factor — The grid emissions factor (kg CO₂/kWh) used to translate generated energy into avoided-emissions reporting is set per country/grid rather than using one generic global average.
- Credible ESG and carbon-avoidance reporting that matches the actual grid mix the plant is displacing.
- Supports carbon-credit and sustainability disclosures that increasingly require grid-specific, not global, emission factors.
2.4 Country/Region-Specific CAPEX/Wp Bankability Bands — The bankability assessment benchmarks the project's CAPEX/Wp against realistic cost bands for the selected country/region, rather than a single universal number that may be meaningless outside one market.
- Instantly flags an unrealistic CAPEX assumption before it reaches a lender's independent engineer.
- Localised due-diligence credibility — the benchmark a lender in India sees is different from one in the Middle East or Europe, exactly as real underwriting expects.
Component Database
3Flexible Component Database & Data Import
3.1 Add Module — PAN Import, PDF Extraction, or Manual Entry — New PV modules can be added to the library three ways: importing an industry-standard manufacturer's .PAN file, extracting parameters automatically from a manufacturer datasheet PDF, or typing values in manually.
- No re-keying of PAN files already available from module manufacturers' library.
- PDF extraction saves data-entry time and reduces transcription errors versus manual entry from a scanned datasheet.
- Manual entry remains available for bespoke or undocumented modules, so the workflow never blocks on missing files.
3.2 Add Inverter — OND Import, PDF Extraction, or Manual Entry — Inverters are added the same three ways: importing manufacturer's .OND file, extracting parameters from a manufacturer datasheet PDF, or manual input — including hybrid-inverter battery parameters (max/min battery voltage, battery chemistry) where relevant.
- Interoperable with existing component libraries many engineering teams already maintain.
- Faster onboarding of new inverter models as manufacturers release them, without waiting on a vendor-supplied database update.
Resource & Uncertainty
4Solar Resource Data & Uncertainty
4.1 Multi-Source Solar Resource Data — Weather/irradiance data can be sourced from PVGIS, NASA Hourly TMY (multi-year hourly average), or manually imported from third-party providers such as Meteonorm, SolarGIS, a generic TMY file, or SolarAnywhere.
- No single point of failure on one data provider's coverage or licensing terms.
- Matches the data source a lender or IE already trusts for that region, supporting bankable-grade due diligence.
- Hourly-resolution options (NASA Hourly TMY, imported hourly files) unlock the sub-hourly clipping, battery-dispatch and Monte-Carlo financial-risk tools that a monthly-only dataset cannot drive.
4.2 Year-on-Year (Y-o-Y) Variability — Inter-annual variability of the solar resource is captured explicitly (either from the imported TMY's own year-to-year spread or entered manually) and feeds directly into the P50–P95 uncertainty/Monte-Carlo budget alongside data, model and component uncertainty.
- Realistic P90 energy estimate for debt-sizing, instead of treating a single average year as certain.
- Transparent uncertainty budget (σtotal = √(IAV²+Data²+Model²+Component²)) an independent engineer can trace line by line.
Orientation & Irradiance
5Orientation & Irradiance Optimization
5.1 Auto-Optimize Tilt — A one-click optimizer sweeps tilt (and, where applicable, azimuth) to find the orientation that maximizes annual in-plane irradiation for the site's latitude and weather profile. Removes guesswork from orientation selection, especially for non-obvious sites (e.g. shallow-tilt tropical roofs).
5.2 Orientation Loss vs Optimum — The plant's chosen tilt/azimuth is compared directly against the optimum, reported as a percentage loss (e.g. Orientation Loss vs Optimum: 0.00% when the chosen orientation matches the optimum exactly). Quantifies the real cost of a roof-constrained or aesthetically-driven orientation choice in yield terms, not just angles.
5.3 Yearly Transposition Factor (FT) — The GHI-to-POA transposition factor is calculated and reported explicitly (e.g. FT = 1.105), showing exactly how much the tilt/orientation gained or lost relative to the horizontal irradiation baseline. Full auditability of the GHI → POA step, the same transparency an independent engineer's report expects.
5.4 Monthly POA Irradiance — Plane-of-array irradiance is available and used month by month (not just as a single annual figure), driving the seasonal yield profile, the PV-sizing tool's worst-month/annual-average comparison, and the monthly simulation results table. Captures monsoon dips and seasonal extremes that an annual-average figure would hide — critical for battery/BESS sizing and realistic monthly cash-flow modeling.
System Design
6Flexible System Design
6.1 Hybrid System — Energy Storage (BESS) Calculation — For rooftop-plus-battery and hybrid-inverter systems, the platform runs an hourly self-consumption/BESS dispatch simulation (self-consumption first, then peak shaving, then grid import/export or islanding), with dedicated tools to suggest battery size from the load tally, estimate backup autonomy during an outage, and back-calculate the PV array size needed to cover the daily energy requirement — accounting for battery charging losses, inverter efficiency, clipping and seasonal POA variation.
- One workflow for grid-tied AND storage-coupled designs — no separate spreadsheet needed to reconcile PV, battery and load.
- Practical outage planning via the backup-autonomy estimate, not just an annual self-consumption percentage.
6.2 Single or Multi Sub-Array Design — Systems can be modeled as one simple string/array, or built up from multiple independently-configured sub-arrays (different module/inverter counts, tilts, or MPPT wiring) within the same project. Scales from a small rooftop to a complex multi-orientation or multi-inverter utility-scale plant in the same tool.
6.3 Satellite Roof Layout Designer — Shadow-Free Pitch Design — Module rows can be laid out directly on a satellite image of the actual roof, with obstruction and parapet shading modeled in 3D and a shadow-free row pitch computed automatically for the site's latitude and chosen shading-window hours.
- Real roof geometry, not an assumed rectangle — obstructions, roof edges and parapets are placed exactly where they are on site.
- Avoids under- or over-spacing rows by computing the shadow-free pitch from actual roof height, tilt and sun-path data rather than a rule-of-thumb multiplier.
Simulation Engine
7Transparent Simulation Engine
7.1 Editable Simulation Loss Factor Table — Every loss and gain in the chain (GlobHor → GlobInc → GlobEff → E_Array → E_Grid) — shading, IAM, soiling, spectral, bifacial gain, thermal, LID, mismatch, DC/AC wiring, inverter efficiency, clipping, auxiliary/night consumption, grid unavailability, and the full grid-delivery chain (transformers, cable, reactive-power derate, ramp-rate limiting) — is shown as an individually editable percentage, not buried inside a single black-box "system loss" number.
- Line-by-line auditability that lets an independent engineer map every row to their own due-diligence checklist.
- Fast what-if analysis — update one loss row (e.g. soiling after a site visit) and see the yield impact immediately, without re-deriving the whole loss stack.
Financial & Bankability
8Comprehensive Financial & Bankability Analysis
8.1 LCOE, NPV, IRR, Simple Payback, ROI & Lifetime Revenue — The core economic evaluation produces the standard investment-appraisal set — Levelised Cost of Energy, Net Present Value, Internal Rate of Return, Simple Payback, Return on Investment, and a full year-by-year lifetime revenue/cash-flow projection — driven off the same P90 energy, degradation and tariff-escalation assumptions used throughout the platform.
8.2 Project IRR, Equity IRR, DSCR, Payback, CAPEX/Wp Benchmark & Investment Decision — A dedicated Bankability Perspective builds an equity-level financial model: Project IRR, Equity IRR, Debt Service Coverage Ratio (DSCR), payback, and a CAPEX/Wp benchmark check against the country-specific bands described in Section 2.4 — concluding with an explicit investment-decision indicator. Speaks the lender's language directly (DSCR, Equity IRR) rather than requiring a separate financial model to be built outside the tool.
8.3 Simple Payback, Discounted Payback & Equity Payback — Payback is reported through three distinct lenses — simple (undiscounted) payback, discounted payback (time-value-of-money adjusted), and equity payback (from the investor's own cash contribution) — giving owners, lenders and equity partners the specific payback metric relevant to their position.
8.4 Financial Due Diligence Report — A dedicated Financial Risk Analysis / Due Diligence output — explicitly formatted for MW-scale project due diligence — combines the hourly Perez-engine energy profile with Monte-Carlo financial-risk analysis (composite P50/P90 uncertainty, degradation, tariff and O&M escalation), ready to hand to a lender's independent engineer. Reduces the independent engineer's workload by pre-assembling the risk-adjusted analysis they would otherwise have to build from raw simulation output.
Advanced Analysis
9Advanced Analysis Tools
9.1 Batch / Parametric Simulation — Multiple design variants (tilt, module, inverter, ILR, or other parameter sweeps) can be queued and run automatically as a batch, logging every run's key results (strings, modules, ILR, clipping, DC ratio, energy, CAPEX, income, PR, specific yield) for direct side-by-side comparison. Explores the design space systematically instead of manually re-running the simulation for every variant.
9.2 Analysis: Suggest Optimum Simulation — Building on the batch results, an AI-assisted analysis step recommends the best-performing configuration from the runs logged, weighing yield, financial and bankability outcomes together rather than optimizing on energy yield alone. Turns a batch of raw runs into a single, defensible recommendation the designer can present to a client or investment committee.
Reporting & EPC
10Professional Reporting & EPC Deliverables
10.1 Generate Report — SLD, Array Table, Protection & Cable Schedule, DC & AC Cable Route Diagrams — A full report package can be generated directly from the completed design, including the Single Line Diagram (SLD), the Array Table (module layout), the Protection & Cable Schedule, and DC & AC cable route diagrams — engineering-ready outputs derived from the same sub-array and layout data used for simulation, so drawings and simulation can never drift out of sync.
10.2 AI/ML Recommendation — How to Improve Performance Ratio and Specific Yield (Yf) — An AI/ML-assisted recommendation engine reviews the completed simulation and suggests concrete, prioritized actions to raise Performance Ratio and Specific Yield — e.g. reducing soiling loss through cleaning frequency, improving thermal management, or reducing mismatch through module sorting — each with an estimated PR/yield impact. Converts diagnostic loss data into an action plan rather than leaving the designer to interpret the loss table unaided.
10.3 EPC Proposals & BOQ — The design, CAPEX table and financial results can be turned directly into a client-facing EPC proposal and a structured Bill of Quantities (BOQ), keeping commercial proposal generation inside the same tool used for the technical and financial design. One design, one source of truth for the technical simulation, the bankability report, and the commercial proposal — reducing the risk of inconsistent numbers reaching the client.
11Summary of Advantages
The table below condenses every capability discussed in this report into a single at-a-glance reference.
| Feature | Category | Key Benefit |
| Multi-Currency Support | Financial Framework | Model and report CAPEX/OPEX/revenue in the client's own currency |
| Country-wise Tax System | Financial Framework | Applies the correct depreciation & tax regime per jurisdiction |
| Country-wise CO₂ Grid Factor | Financial Framework | Location-accurate emissions-avoided reporting, not a generic global figure |
| Region-Specific CAPEX/Wp Bankability Bands | Financial Framework | Flags CAPEX outside the locally realistic range for a chosen market |
| Module Add: PAN / PDF / Manual | Component Database | Populate the module library from .PAN files, datasheet PDFs, or by hand |
| Inverter Add: OND / PDF / Manual | Component Database | Populate the inverter library from .OND files, datasheet PDFs, or by hand |
| Multi-Source Solar Resource Data | Resource & Uncertainty | PVGIS, NASA Hourly TMY, or manual Meteonorm / SolarGIS / TMY / SolarAnywhere import |
| Year-on-Year (Y-o-Y) Variability | Resource & Uncertainty | Feeds a realistic P90 uncertainty budget instead of a single-year assumption |
| Auto-Optimize Tilt | Orientation & Irradiance | One click finds the tilt/azimuth that maximises annual yield for the site |
| Orientation Loss vs Optimum | Orientation & Irradiance | Quantifies exactly what the chosen orientation costs vs. the ideal |
| Yearly Transposition Factor (FT) | Orientation & Irradiance | Transparent GHI→POA conversion factor, auditable by an independent engineer |
| Monthly POA Irradiance | Orientation & Irradiance | Seasonal irradiance profile behind every yield and sizing calculation |
| Hybrid System / BESS Calculation | System Design | Battery dispatch, backup autonomy and PV-size sizing for storage-coupled plants |
| Single or Multi Sub-Array Design | System Design | Models simple single-string plants up to complex multi-array rooftops |
| Satellite Roof Layout Designer | System Design | Shadow-free pitch design directly on a satellite roof image |
| Editable Simulation Loss Factor Table | Simulation Engine | Every loss/gain is visible and adjustable, not hidden inside a black box |
| LCOE / NPV / IRR / Payback / ROI | Financial Analysis | Complete lifetime financial picture in one place |
| Project IRR, Equity IRR, DSCR, CAPEX/Wp | Bankability | Lender-grade metrics benchmarked for an investment decision |
| Simple / Discounted / Equity Payback | Bankability | Three payback lenses for owner, lender and equity investor |
| Financial Due Diligence Report | Bankability | Independent-engineer-style report ready for lender review |
| Batch / Parametric Simulation | Advanced Analysis | Runs many design variants automatically to find the best configuration |
| AI-Suggested Optimum Simulation | Advanced Analysis | AI recommends the best-performing configuration from the batch results |
| SLD, Array Table, Cable Schedule & Route Diagrams | Reporting & EPC | Engineering-ready drawings generated directly from the design |
| AI/ML PR & Yield Recommendations | Reporting & EPC | Actionable guidance to raise Performance Ratio and Specific Yield |
| EPC Proposals & BOQ | Reporting & EPC | Turns the design straight into a client-ready proposal and bill of quantities |
12Conclusion
Taken together, these capabilities position the IST PVSolar Simulator as more than a yield-estimation tool: it is a single, auditable workflow spanning site data, component selection, system design (including hybrid/BESS), simulation, country-specific financial and bankability analysis, and EPC-ready reporting. For a designer, this reduces tool-switching and re-keying; for a lender or investor, it produces the transparent, line-by-line evidence trail that an investment-grade decision requires.
🎯 Quick Tour Guide — Step-by-Step Walkthrough
Open Help → Quick Tour in the menu bar to launch the interactive overlay. A yellow highlight box plus a pointing arrowhead marks the exact card each step describes, and the tour switches tabs automatically.
- Title bar — version & standards banner.
- Step 1 · Project Information — mandatory: Project Name, Client Name, Client Address, Project Type, Prepared By.
- Step 1 · Site Location — enter Lat/Lon → Lookup Location fills name, state, country, altitude; opens Google Maps.
- Step 1 · Import Hourly TMY — default years 2005–2024; Import PVGIS TMY or NASA Hourly TMY.
- Step 1 · Site Condition — far-horizon shading allowance (default 0.5%).
- Step 2 · Tilt & Azimuth — Auto-Optimize Tilt; Azimuth 0° (NH); Module Height & Gap; Row Spacing Calc; bifacial sheds model.
- Step 3 · PV Module Selection — manufacturer, model, approx. plant size.
- Step 3 · Inverter Selection — manufacturer, model, Vmp/Imp vs MPPT range.
- Step 4 · Thermal & Other Parameters — check Uc, Uv, uncertainty inputs.
- Step 5 · Add Sub-array — modules/string, strings/MPPT, MPPT/inverter, no. of inverters; make all checks OK; Add; review summary.
- Step 6 · Economic Evaluation — Include-in-Report tick; CAPEX, OPEX, financing.
- Step 7 · Simulation Engine — resolution & cell model; Run; PR/Yf advice; Generate Report.
- Step 6 · Hourly Perez Engine — Run Monte-Carlo financial risk.
- Step 4 · PVSolar Loss Table — values refresh after a run.
- File menu — Save Project →
.pro; reuse via Upload Project.
- Database tab — add module & inverter specifications.
Design Workflow — Recommended Order
- Step 1 — project & client details, Lat/Lon & lookup, monthly resource (manual entry), and TMY import — PVGIS TMY or NASA Hourly TMY — for bankable runs, design temperatures, far-horizon shading.
- Step 2 — tilt (Auto-Optimize), azimuth, module height/gap → row spacing; bifacial sheds geometry if applicable; review monthly POA.
- Step 3 — select module & inverter; verify string-voltage window.
- Step 4 — thermal coefficients, uncertainty, loss table.
- Step 5 — string configuration; pass all electrical checks; add ≥ 1 sub-array.
- Step 6 — CAPEX/OPEX/financing/tariff (optional in report).
- Step 7 — choose resolution + cell model, Run, read PR/Yf advice, Generate Report.
Minimum to run a simulation: a module, an inverter, and at least one sub-array (Step 5). Economics is optional and can be excluded from the report.
Standards & Codes Reference — Updated 2026
International (IEC) & scientific models
| Reference | Scope / where used |
| IEC 61724-1:2021 | PV performance monitoring — PR, Yf, Ya, CF definitions; loss categories (Step 4, Step 7). |
| IEC 61724-3 | Energy assessment & uncertainty — composite P50/P90 methodology (Step 4/Step 7 probability). |
| IEC 61853-1/-2:2011/2016 | Irradiance & temperature performance matrix; angular & spectral response (diode model, IAM, spectral). |
| IEC 61853-3/-4:2018 | Energy rating & reference climate profiles; POA transposition basis (Step 2/Step 7). |
| IEC 61215:2021 / IEC 61730 | Module design qualification & safety (datasheet STC parameters, Step 3). |
| IEC 62548:2016 / IEC 60364-7-712 | PV array DC design — string voltage limits, OCPD (Step 3/Step 5 electrical checks). |
| IEC 62109-1/-2 | Inverter safety; MPPT & AC limits (Step 3/Step 5). |
| IEC 60891 | I–V translation procedures (diode-model temperature correction). |
| Perez et al. (1990) | Anisotropic diffuse transposition (hourly POA). |
| Liu & Jordan (1960) / Collares-Pereira & Rabl (1979) | Daily beam ratio & sub-daily irradiance distribution for the monthly Perez integration. |
| Faiman (2008) | Cell-temperature model (Uc + Uv·wind). |
| De Soto et al. (2006) | Single-diode 5-parameter model. |
| Martin & Ruiz (2001) | Incidence-angle modifier (IAM). |
| Bifacial Radiance (view-factor) | Rear irradiance G_rear = G_ground × albedo × VF_ground→rear (single-bounce ground reflection). |
Indian (BIS / CEA / MNRE) — current 2025–26
| Reference | Scope |
| IS 16169:2014 | Grid-connected PV system design & installation; DC wiring losses. |
| IS 16221 (Pt 1/2) / IS/IEC 61730 | Module safety qualification; DC overvoltage & SPD. |
| CEA (Technical Standards for Connectivity to the Grid) — Amdt 2023 | Grid interconnection, protection, metering. |
| CEA CO₂ Baseline Database (v20, 2023–24) | Grid emission factor ≈ 0.82 kg CO₂/kWh (Step 1/CO₂). |
| MNRE ALMM (List-I modules, List-II cells) 2025 | Approved models & certification context (databases). |
| BIS Quality Control Order (QCO) | Mandatory module/inverter certification. |
| PM Surya Ghar: Muft Bijli Yojana (PMSGMY) 2024 | Residential rooftop subsidy slabs (Step 6). |
| CERC ISTS charges waiver | Inter-state transmission waiver window (Step 6 context). |
Standards evolve — always confirm the latest amendment with BIS, CEA, MNRE and your DISCOM before finalising a bankable design.
Step 1 — Project & Site Information
Project Information mandatory*
Required fields (gate to later tabs & report): Project Name, Client Name, Client Address, Project Type, Prepared By. Optional: Engineer/Organization, Date, Ref No.
Project Type currently offers On-grid Rooftop Residential and On-grid Rooftop Commercial; it also drives which segment (Utility-Scale Ground-Mount vs Rooftop/C&I) the Bankability Assessment Report's CAPEX/Wp benchmark check uses.
Site Location & Lookup
Enter Latitude (°N) and Longitude (°E) in decimal degrees, then click 📍 Lookup Location — a reverse-geocode fetches location name, state/country and altitude (m) and fills the fields below; an Open in Google Maps link is provided. Design temperatures (entered manually, or carried in from an imported TMY):
| Field | Use | Default |
| Min Winter Temp | Voc-max string check (coldest cell) | site-specific |
| Winter Vmpp Temp | MPPT max-voltage design | site-specific |
| Summer Vmpp Temp | MPPT min-voltage / hot-cell power | site-specific |
| CO₂ Factor | grid emission factor | 0.82 kg/kWh (CEA) |
Monthly Resource & Hourly TMY Import
The 12-row Monthly Weather table (GHI, DNI, DHI, Temp, Wind) is the base resource. Populate it manually, or import a measured hourly TMY whose monthly summary fills it automatically. For bankable runs, import one of:
- 🛰 NASA Hourly TMY — typical-year hourly built from NASA POWER hourly climatology (06:00–18:00 LST, 365 days).
- 🇪🇺 PVGIS TMY — true ISO 15927-4 Typical Meteorological Year with measured beam-normal DNI.
Data Start/End Year sets the range NASA POWER is queried over for both the monthly climatology and the Hourly TMY build (default 2005–2024; end year is clamped server-side to the latest available). 💾 Save Site Data / 📂 Load Site Data save just this tab's location, weather and TMY selection to a small file — a faster round-trip than a full Save Project when you only need to reuse or share a site's resource data across designs.
Imported TMY is cached and selectable under
Solar Resource for Simulation; it is what Hourly/Sub-hourly runs use. If you do
not import a TMY, the hourly engine derives a deterministic hourly series from the monthly table (reproducible results — see
Solar Resource & Data).
📝 Manual Solar Resource Input — Meteonorm / SolarGIS / SolarAnywhere / other TMY
For projects where the lender, IE or client already has a named bankable-grade dataset — a Meteonorm 8.2 run, a SolarGIS Prospect report, a SolarAnywhere TGY, or any other third-party TMY — the Manual Solar Resource Input card lets you type that source's own values straight in, instead of relying on NASA/PVGIS:
- Tick "Use in simulation" to activate it — this clears the Monthly Weather Data table below (GHI/DNI/DHI/Temp/Wind/Humidity) so the named source's real figures can be entered directly, month by month.
- Data Source Name (e.g. "Meteonorm 8.2", "SolarGIS Prospect", "SolarAnywhere TGY") is recorded and shown as the active Weather Source label wherever the resource is referenced (Monthly Weather Data header, Solar Resource for Simulation selector, reports).
- Year-to-Year GHI Variability (±%) feeds straight into the IAV term of the P50–P95 uncertainty/Monte-Carlo budget, in place of the generic satellite-derived default.
Once enabled, Manual joins NASA Hourly TMY and PVGIS TMY as a selectable option under ☀ Solar Resource for Simulation — whichever is selected there is the exact irradiance source used for Hourly/Sub-hourly runs (Step 7) and is what gets saved with 💾 Save Site Data / 💾 Save Project.
Site Condition — Far-Horizon Shading Allowance
Select a far-horizon (distant obstruction) shading-loss factor representative of the site. Default 0.5% (open site). This is distinct from row-to-row near-shading, which the engine computes geometrically.
Standards: IEC 61724-1:2021 §13.7/§14.3 (horizon shading), NASA POWER (MERRA-2), PVGIS TMY, CEA CO₂ baseline 2023–24.
🔧 Tilt & Azimuth — Uses & Orientation Tools
Tilt & Azimuth is where the array's facing direction is fixed and checked against the theoretical best case for the site — it directly sets the POA irradiance every downstream tab and report figure is built on.
- 🌍 Northern Hemisphere / Southern Hemisphere — the moment a Latitude is entered, the app detects the hemisphere and auto-suggests the correct facing and starting tilt: Northern Hemisphere → Azimuth 0° (face south), Southern Hemisphere → Azimuth 180° (face north), with a suggested tilt ≈ |latitude| × 0.87 + 2°. This only fills blank fields — it never overwrites a tilt or azimuth you've already entered — and a hint line under the inputs states the hemisphere and suggested values in plain language.
- Azimuth setting for an SE- or SW-oriented pitched roof — Azimuth follows the convention 0° = due-equator-facing (NH south / SH north), negative = east of that, positive = west of that. So for a roof pitched to the south-east in the Northern Hemisphere, enter a negative azimuth (e.g. −30° to −45°); for a south-west pitch, enter a positive azimuth (e.g. +30° to +45°) — the same offsets mirror to north-east/north-west once the site is in the Southern Hemisphere. This lets the tool model real roof-constrained orientations instead of assuming a perfectly equator-facing array.
- ⚡ Auto-Optimize Tilt — sweeps tilt from 0–60° in 1° steps at whatever azimuth you've set (not forced back to due-equator), and writes back the tilt that maximises annual H_POA for that facing. Use it first to find the best tilt for a fixed, roof-constrained azimuth, then compare against a due-equator orientation to see what the roof pitch is costing you.
- Graphical presentation of panel orientation — a live side-view diagram redraws as you edit Tilt/Azimuth/Latitude: a grey line is the ground, a green line is the module tilting up from a hinge point, and an amber arrow labelled "faces equator (South / South-East / South-West / North / North-East / North-West…)" shows exactly which way the array points and by how much it deviates from straight equator-facing. It's a quick visual sanity-check that the numbers you typed actually point the array where you intended.
Why Orientation Loss vs Optimum matters to the whole simulation — this single percentage (Orientation Loss% = (H_actual − H_opt)/H_opt × 100) is the first, and often largest, yield lever in the entire design: every other loss row in Step 4 (thermal, soiling, wiring, inverter, etc.) is applied on top of whatever POA this orientation choice delivers, so a poorly-oriented array under-performs before a single other loss is even considered. It quantifies, in energy terms rather than degrees, exactly what a roof-constrained or aesthetically-driven azimuth/tilt choice costs against the site's true optimum — the same comparison an independent engineer or lender's due-diligence review expects to see justified, not assumed. The companion Yearly Transposition Factor (FT = H_POA_annual ÷ H_GHI_annual) shown alongside it separately confirms how much the chosen tilt/orientation gains over a flat horizontal surface, so the two figures together give full audit-trail visibility into the GHI → POA step before the simulation engine runs at all.
Step 2 — Orientation Setting & POA Calculation focus
Tilt & Azimuth Settings
| Field | Meaning | Default |
| Tilt (°)* | surface tilt from horizontal | — (use Auto-Optimize) |
| Azimuth (°) | NH South = 0°, SH South = 180° (E negative, W positive) | 0 |
| Module Height (m) | single-module dimension along the slope | 1.05 |
| Gap between two module (mm) | air gap between the two stacked modules | 20 |
⚡ Auto-Optimize Tilt sweeps 0–60° (1° steps) and selects the tilt with maximum annual H_POA (computed at due-south). The Orientation Loss vs Optimum panel shows the % deviation of your chosen tilt/azimuth from the optimum.
Module Height and Gap combine into the collector slant length used by the row-spacing tool: L = 2·H + gap (two-module table). With the defaults, L = 2×1.05 + 0.02 = 2.12 m.
POA transposition method
POA (Plane-of-Array) transposition is required because solar resource data is usually available on a horizontal surface, while PV modules are installed at a tilt and azimuth. The transposition model converts horizontal irradiance into the irradiance actually received by the PV modules.
Monthly POA uses a daily-integrated Liu-Jordan beam ratio (Rb) + full Perez (1990) anisotropic diffuse model; the hourly/sub-hourly engine uses the same Perez (1990) anisotropic diffuse instantaneously. Both share identical beam and ground terms:
Beam: G_b = DNI · cos(AOI)
Ground: G_g = GHI · ρ · (1 − cos β) / 2
Diffuse: Perez(1990) → isotropic (1−F1)(1+cosβ)/2 + circumsolar F1·a/b + horizon F2·sinβ
POA = G_b + G_diffuse + G_g (ρ = albedo, β = tilt)
Ground albedo ρ default 0.2 (green/typical). The monthly POA table and chart, and the bifacial gain table, are produced here.
🪟 Unlimited Sheds 2D Model — Bifacial Rear-Irradiance Geometry
If a bifacial module is selected (Bifacial Factor ɸ > 0), expand this section to model the front and rear POA with the Bifacial Radiance view-factor model (Grear = Gground × albedo × VFground→rear). Select ground type (albedo), set mounting height and pitch, and the live preview shows bifacial gain %, POA front and POA back. The simulation uses the same model per-month (monthly) and per-step (hourly).
GCR = collector_slant / pitch
effective irradiance = POA_front + ɸ · POA_back
bifacial gain (%) = (POA_global / POA_front − 1) · 100
Standards / models: Perez (1990), Hay-Davies (1980), Liu-Jordan (1960), Bifacial Radiance view-factor (Marion et al.); IEC 61853-3 (POA), IEC 61724-1 §6.
Step 2 — Solar Row Spacing Calculator (Shadow-Free Pitch Design) focus
Open the calculator with the orange Row Spacing Calc button. It sizes the row-to-row pitch so the array is shadow-free during the chosen window, and reports the design trade-offs.
Inputs & defaults
| Input | Meaning | Default |
| Latitude / Longitude | from Step 1 | site |
| Tilt (°) | from Step 2 | — |
| Azimuth (°) | same convention as Step 2: NH = 0° | 0 |
| Module Height H (m) / Gap (mm) | collector slant L = 2·H + gap | 1.05 / 20 → L = 2.12 m |
| Front Edge Min Ht (m) | front-edge ground clearance | 0.3 |
| Ground Albedo ρ / Bifaciality ɸ | for bifacial & albedo metrics | 0.2 / module value |
| Morning / Evening Limit (hr) | shading window (local apparent solar time) | 9:00 – 15:00 |
Method — full-year shadow-free pitch
V = L · sin θ (vertical rise)
F = L · cos θ (horizontal footprint)
Gap = V · cos(az_off) / tan(α_min) (α = solar altitude)
Pitch = Gap + F GCR = L / Pitch
For each season — Winter (Dec 21), Equinox (Mar 20), Summer (Jun 21) — the tool sweeps the window in 15-min steps (local apparent solar time, so noon = solar noon) and finds the worst-case minimum altitude. Each season shows a calculated suggested pitch and an editable "Use pitch". The Full-year shadow-free pitch is the largest of the three (★ winter governs in the NH) and is what Apply to Step 2 writes.
Performance metrics at the chosen pitch
| Metric | Meaning |
| GCR | L / pitch — higher packs rows tighter but lowers rear gain & raises shading. |
| Front-side string shading loss | worst-case shaded fraction of the back row within the window; 0% (✔) when pitch ≥ the shadow-free value. |
| Bifacial gain | rear-side energy from the view-factor model (G_rear = G_ground × albedo × VF). |
| Ground-reflected albedo capture | share of front POA arriving from ground reflection. |
Three synchronized views (Side, 3D, Front) animate the sun and live shadow; the 3D view shows a metrics HUD plus albedo & rear-glow cues.
Reference: shadow-free pitch worst-case = winter solstice; GCR per PV simulator convention (collector slant / pitch); MNRE rooftop design guidance.
Step 3 — System Parameters (Module & Inverter)
PV Module Selection
Narrow the list with the Manufacturer, Technology and Pmax (Wp) filters (they combine and cascade — each filter only offers values valid for the ones above it), then choose the Module; STC parameters auto-fill: Pmax, Voc, Isc, Vmp, Imp, TC_Pmax, TC_Voc, TC_Isc, NOCT, Rs, Rsh, bifaciality ɸ, area, length. Enter the approximate Plant Size for quick string sizing.
Year of the Project Life (right after Approx. Modules Needed) defaults to 25 years and auto-updates the moment you select a module — it's set to whichever is higher: 25, or that module's warranty period (N years). The field's maximum input range is capped at the same figure, so project life can't be pushed past the module's own warranty term for a 25+ year warrantied module. This value is mirrored into Step 6's Project Life (Years) field (either field can be edited — they stay in sync both ways) and drives every downstream financial calculation: LCOE, NPV, IRR, DSCR, the Full Cash-Flow Calculation table, and the Bankability Assessment Report.
Inverter Selection
Narrow the list with the Manufacturer, Type and AC Power (kW) filters (combining and cascading), then choose the Inverter; rated AC power, max DC voltage, MPPT min/max voltage, max DC current and efficiency populate. Check module Vmp/Imp against the inverter MPPT voltage & current range.
String Voltage Design Check
Voc_max @ T_min ≤ Inverter Vdc_max (safety, IEC 62548 ×1.15)
Vmp_max @ T_winter ≤ MPPT V_max
Vmp_min @ T_summer ≥ MPPT V_min
Standards: IEC 61215:2021, IEC 62548:2016 / IS 16221, IEC 62109; ALMM/QCO certified equipment.
Step 4 — Thermal & Other Parameters · Loss Calculation focus
Thermal & uncertainty parameters (defaults)
| Parameter | Meaning | Default |
| Thermal Loss Coeff Uc (W/m²K) | Faiman constant heat-loss term | 25 (use 29 with Uv=0 if no wind data) |
| Wind Factor Uv (W/m²K per m/s) | convective (wind) cooling | 6.84 (set 0 to ignore wind → runs hotter) |
| Interannual Variability σ (IAV) | year-to-year resource variability | 5% (India 4–7%) |
| Resource / Data Uncertainty | long-term GHI uncertainty (satellite ≈5%, measured TMY / ground 2–3%) | 5% satellite → 2.5% auto when a measured hourly TMY is loaded |
| Model Uncertainty | full Perez (1990) transposition + pvlib-validated diode/bifacial conversion | 1.5% |
| Component Uncertainty | module tolerance + soiling/degradation estimate | 2% |
Cell temp (Faiman): Tcell = Tamb + G_POA / (Uc + Uv · wind)
NOCT fallback: Tcell = Tamb + (NOCT − 20)/800 · G_POA
Combined σ_total = √(IAV² + data² + model² + component²) → e.g. √(5²+5²+2²+2²) = 7.62%
Thermal behavior of PV modules
In this PV Simulation, the thermal behavior of PV modules is modeled using the Faiman thermal model.
| Mounting Type | Uc (W/m²·K) | Uv (W/m²·K per m/s) | Typical Use |
| Free Mounted modules with air circulation | 29 | 0 | Ground-mounted, elevated rooftop structures, carports, trackers |
| Domes | 29 | 0 | Flat-roof ballast dome systems with good rear ventilation |
| Semi-integrated with air duct behind | 20 | 0 | Building-mounted with rear ventilation gap (≈5–10 cm or more) |
| Integration with fully insulated back | 15 | 0 | Building-integrated PV (BIPV), façade, roof-integrated systems |
Uc and Uv describe how well your specific racking/mounting hardware dissipates heat — how much the module rises above ambient for a given irradiance and wind speed. That's a property of the physical structure (open-rack vs. roof-mount vs. BIPV, rear ventilation gap, etc.).
Is it consirded wind-speed in simulation?
Yes it's genuinely considered — real per-hour wind speed is fully wired into the actual Tcell calculation. Here's the complete chain, real per-hour wind is fully wired into the actual cell temperature verified directly in the simulation,
Every one of your 8760 hours gets its own Tcell computed from that hour's actual GPOA, ambient temperature, and wind speed together with your chosen Uc/Uv.
How does NOCT fit into this?
NOCT → T_cell → (T_cell − 25°C) × TC_Pmax% → DC power derate. NOCT itself never appears directly in the % loss; it only sets how hot the cell gets for a given irradiance, and the temperature coefficient converts that ΔT into a power loss. NOCT is only used combined with the temperature coefficient.
PVSolar Loss Table (defaults, signed: − loss / + gain)
| Loss row | Default | How applied |
| Array Thermal (Uc+Uv) | −5.0% | computed physically per step ↻ Simulation loss factor update |
| DC Ohmic (Wiring) | −1.5% | table multiplier (follow loss table bellow) |
| AC Ohmic (Cabling) | −0.5% | applied at inverter AC (follow loss table bellow) |
| Module LID (1st yr) | −2.0% | table multiplier |
| Module Mismatch | −1.0% | table multiplier |
| Soiling | −2.0% | table multiplier |
| IAM (incidence angle) | −2.5% | monthly table / hourly Martin-Ruiz ↻ Simulation loss factor update |
| Module Aging/Degradation | 0.0% | applied by lifetime compounding ↻ Simulation loss factor update |
| Grid Unavailability | −1.0% | table multiplier |
| Spectral | −0.5% | monthly table / hourly AM model ↻ Simulation loss factor update |
| Inverter Efficiency | −2.0% | applied via η-curve ↻ Simulation loss factor update |
| Auxiliary Consumption | −0.5% | table multiplier |
| Shading (Far Horizon) | −0.5% | table multiplier (near-shading computed separately) |
| Sub-hourly Clipping | −0.5% | computed per step from ILR ↻ Simulation loss factor update |
| Bifacial Gain (rear) | +2.0% | computed by view-factor model ↻ Simulation loss factor update |
| Inverter Auxiliary/Night Consumption | 0.0% | per-step standby (dawn/dusk) + night draw from the inverter's Standby Power/Night Consump (W) datasheet fields (Step 3); Hourly/Sub-hourly only ↻ Simulation loss factor update |
Inverter Auxiliary/Night Consumption is "AC auxiliary loss": most inverters keep control
electronics, communications, and anti-islanding monitoring powered even when not converting, drawing a small amount
from the grid at night and during dawn/dusk standby. Set Standby Power (W) and
Night Consump (W) on the inverter record (Step 3) — both default to blank/0 (no-op, fully backward
compatible) unless entered. Requires Hourly or Sub-hourly resolution (Step 7); the Monthly engine doesn't have a
per-timestep day/night distinction to hang this off of.
Site-Level Auxiliaries (new card above the Loss Table, Step 4) adds PVsyst's second, independent
auxiliary-loss source — its plant-level "Auxiliaries" dialog, distinct from the inverter's own intrinsic
Standby/Night draw above. Four fields, all optional and default to 0 (no effect): a Constant Draw
(kW) gated by an Activation Threshold (kW AC output) — e.g. PVsyst's own example, a
fixed 72 kW load that only switches on once the plant exceeds 100 kW output; a Proportional Draw (W per
kW AC output) — e.g. cooling load scaling with inverter heat output; and its own fixed
Night Draw (kW), separate from the inverter's Night Consump, since site equipment (SCADA,
lighting, security) keeps running overnight regardless of the inverter's own state — this same night value is
also used as the plant's idle-daytime baseline (dawn/dusk zero-output steps). Both sources combine into the same
single Inverter Auxiliary/Night Consumption Loss row after a run — mirroring PVsyst's own
combined "Aux_Lss" reporting (plant auxiliaries + the inverter's own "IL_Night").
Avoiding double counting: some inverter manufacturers already fold fan/cooling self-consumption
into their published efficiency curve. If that's the case for your selected inverter, check
"Standby/Night consumption already included in efficiency curve" next to the Standby Power /
Night Consump fields (Step 3) — this skips the inverter's own separate draw while still applying any Site-Level
Auxiliaries configured above, mirroring PVsyst's own opt-in checkbox for its inverter-level "Auxiliary
consumption" (OND) field.
Typical magnitude by plant scale (rule-of-thumb starting points)
| Plant size | Constant Draw (kW) | Night Draw (kW) | Notes |
| Residential (1–10 kWp) | 0 | 0 | Usually no separate site equipment — leave at 0, rely on the inverter's own Standby/Night Consump only |
| Commercial rooftop (10–100 kWp) | 0.05–0.3 | 0.05–0.2 | Basic monitoring/networking gear, maybe a small CCTV DVR |
| Utility-scale (≥1 MWp) | 1–10+ (scales with plant size) | similar to constant draw, sometimes less (cooling fans off at night) | Control room, SCADA, security lighting, perimeter fencing |
Activation Threshold (kW AC output): usually left at 0 (meaning the constant draw applies
whenever there's any output at all) unless you specifically know a piece of equipment (e.g. a large cooling fan
bank) only kicks in past a certain generation level — example uses a threshold precisely for that case (72 kW
load activating only above 100 kW plant output on a large utility plant).
Proportional Draw (W per kW AC output): this represents load that scales with how hard the
plant is working — typically 0.5–3 W/kW for cooling/ventilation systems in switchgear or transformer rooms on
larger plants. Small/medium systems usually don't have this at all — leave at 0.
No double counting. Rows that the engine models physically per step — Thermal, Clipping, Bifacial, Inverter, AC-Ohmic — are excluded from the DC loss-factor product; they are refreshed for display after a run. Shading (far-horizon) and near-shading are kept distinct.
The Sankey loss diagram and Clipping Loss chart update live; ILR (DC/AC) best practice for India is 1.1–1.3.
IAM Loss (Incidence Angle)
Hourly/Sub-hourly mode = real per-timestep AOI-driven Martin-Ruiz calculation, responsive to your actual tilt/azimuth/location and glass coefficient. Run Hourly or Sub-hourly resolution whenever IAM accuracy matters (which is essentially always for a bankable yield estimate) — that's the one meaningful lever in this simulation for IAM accuracy.
Recommended AC Ohmic Loss Values
| Project Size | Typical AC Ohmic Loss |
| 1–10 kW Rooftop | 0.5–1.5% |
| 10–100 kW Commercial | 0.3–1.0% |
| 100 kW–1 MW | 0.2–0.8% |
| Bankable Design Target | 0.5–1.0% |
Typical DC Ohmic Loss by Project Size
| Project Size | Typical DC Ohmic Loss |
| 1–10 kW | <1.5% |
| 10–100 kW | <1.0% |
| 100 kW–1 MW | <0.8% |
| Bankable Design Target | 0.3–0.5% |
PV Module LID (Light-Induced Degradation) Loss in Simulation
| Module Technology | Typical 1st Year LID Loss (%) | Bankable Design Value (%) |
| Mono PERC (p-type) | 1.5–2.5% | 2.0% |
| Mono PERC (high quality) | 1.0–1.5% | 1.5% |
| TOPCon (n-type) | 0.1–0.5% | 0.3% |
| HJT (Heterojunction) | 0–0.3% | 0.2% |
| IBC (n-type) | 0–0.2% | 0.1% |
| Thin Film CdTe | 0–1.0% | 0.5% |
Spectral Loss
Hourly/Sub-hourly resolution: Used a real per-timestep calculation using the First Solar /
Lee-Panchula (2016) 2D model coefficients and the same Gueymard Pw-from-RH fallback. Always computing it means
the model responds correctly to your specific site's altitude, humidity, and technology, rather than requiring
the user to remember to turn on an extra toggle. For humid tropical sites, high-altitude sites, or CdTe/thin-film
technology — where spectral shift is more pronounced — this is a genuine accuracy advantage over a design where
most users never enable the correction at all.
If you're optimizing for the most physically complete standalone estimate, leaving it on is reasonable — just
don't treat the resulting number as more "true" than PVsyst's, since both ultimately rest on the same
unvalidated First Solar coefficients.
Soiling Loss (%) Consideration
| Site Condition | Monthly Cleaning |
| Very Clean (high rainfall) | 0.5–1% |
| Rural/Agricultural | 1–2% |
| Urban | 2–3% |
| Industrial | 2-4% |
| Desert/Semi-arid | 3-6% |
Recommended Bankable Design Soiling Loss Values
| Project Location / Condition | Cleaning Frequency | Recommended Annual Soiling Loss (%) | Bankability Rating |
| Very clean, high-rainfall regions | Weekly to Monthly | 0.5–1.5 | Excellent |
| Moderate rainfall, low dust | Monthly | 1.5–2.5 | Excellent |
| Typical India rooftop | Monthly | 2.0–3.0 | Standard Bankable |
| Utility-scale, normal Indian conditions | 2–4 weeks | 2.0–3.5 | Standard Bankable |
| Semi-arid regions | Every 2–3 weeks | 3.0–4.0 | Acceptable |
| Desert areas (Rajasthan, Gujarat) | Weekly to Bi-weekly | 4.0–6.0 | Conservative |
| Desert with infrequent cleaning | Monthly or longer | 6.0–10.0 | High Risk |
Typical Auxiliary Consumption Loss (%)
| Plant Type | % of Annual AC Energy Consumption | Bankable Design Value |
| 1–10 kWp Residential | 0–0.2% | 0.1% |
| 10–100 kWp Commercial Rooftop | 0.1–0.3% | 0.2% |
| 100 kWp–1 MWp | 0.2–0.5% | 0.3% |
Module Efficiency
Module Efficiency — not actually a "loss" in the calculation chain. DC power comes from Pmax, TC_Pmax, and irradiance/temperature, not from efficiency × area. So there's no "module efficiency loss" line in the loss table.
Module Mismatch Loss
Module Mismatch Loss or Modules and strings Mismatch loss - The bypass-diode/shading-driven MPP loss is a different row in Near-Shading electrical loss in this simulation.
By default this is implemented as a flat, editable % in the loss table — no I-V-curve-based computation
behind it, a static assumption like other simulation default mode. Step 6 now offers an optional
upgrade — see Module Aging & Age-Driven Mismatch below — which replaces this flat number with
a dedicated Monte-Carlo calculation that grows across the project's lifetime table, when enabled.
Module Aging & Age-Driven Mismatch (Step 6, PVsyst-style)
Degradation now uses a linear accumulation model, evaluated at the mid-point
of each project year (e.g. Year 10's degradation is evaluated at 9.5 elapsed years, not 10) — matching PVsyst's
own documented convention, and matching the industry-standard practice of treating degradation as roughly
linear over time (real-world degradation studies report linear median rates), rather than this app's previous
compounding/geometric-decay curve.
Each project year's degraded module is now physically reconstructed rather than treated as a
single flat power scalar: the year's total power loss is split between the current channel
(Isc/Imp) and the voltage channel (Voc/Vmp) via an Imp Degradation Sharing
fraction (default 80%, PVsyst v8's own default — current-related degradation mechanisms, e.g. LID and cell
cracking, are generally faster than voltage-related ones per published studies), then the single-/two-diode
reference parameters are re-derived from that degraded nameplate — the same "elaboration of a degraded module"
PVsyst performs internally. Requires the single-/two-diode PV model (Step 7); the linear Pmax×temp-coefficient
model has no I-V curve to reconstruct from.
Dedicated Monte-Carlo module-mismatch model (optional — enabled by setting the Isc/Voc
Dispersion RMS fields above 0, Step 6): individual modules don't all degrade at exactly the same rate, so their
Isc/Voc dispersion naturally widens over the plant's life even as the population mean keeps falling uniformly.
This runs genuine random sampling of per-module Isc/Voc offsets across a representative 20-module string, solves
each string's ACTUAL series-connected operating point (common current, module voltages summed, via the same
Newton V(I) solver validated for the bypass-diode substring model), and compares the dispersed string's
realised MPP against the "no dispersion" ideal to get an expected mismatch loss % — once per project year, using
a single fixed set of random draws scaled by that year's growing dispersion (so the resulting curve is smooth
and monotonic in age, not independently re-sampled noise each year). The two dispersion inputs represent the
population spread expected by the end of the project life (e.g. entering "2%" means ~2% RMS
Isc spread by the final year), scaled down proportionally for earlier years and combined in quadrature with a
small fixed manufacturing/binning tolerance (1.0%, does not grow). Leaving both dispersion fields at 0 keeps the
previous flat "Module Mismatch Loss" table row unchanged — fully backward compatible.
Combined display (Step 4 preview-a-specific-year control): when the Monte-Carlo mismatch model
is active, previewing a project year folds that year's mismatch % into a single combined figure shown in the
Module Aging/Degradation Loss row, rather than showing degradation and mismatch as two separate
rows — the underlying energy calculation already applies both effects correctly regardless of this; only the
Step 4 display is combined. The separate "Module Mismatch Loss" row is shown as 0% at the same time, so its
effect isn't counted twice visually. The combination is a proper compounding of the two loss fractions
(1 − capacity_fraction × (1 − mismatch_fraction)), not a simple sum, so it will read very slightly lower than
adding the two percentages by hand.
Standards: IEC 61724-1:2021 Annex A (loss categories), IEC 61724-3 (uncertainty), IEC 61853-2, Faiman (2008), Martin-Ruiz (2001), MNRE soiling norms, IS 16169 §7.
🔋 Energy Storage — Load Tally, Battery Sizing & Self-Consumption focus
The 🔋 Energy Storage sub-tab (under Step 3 → System Design) tallies connected appliance load, sizes the plant against real day/night consumption, and — for rooftop-plus-battery and hybrid-inverter systems — runs a full hourly self-consumption / BESS dispatch simulation. It is a supplementary analysis layer, like Step 6's Monte-Carlo risk tool: the load tally is independent of module/inverter selection on the next sub-tab, and the battery/self-consumption analysis runs client-side against the Step 7 hourly simulation result without feeding back into the core PV yield engine.
☀ Day Load & 🌙 Night Load Calculation
Two identical appliance-tally tables — one for daytime use, one for night — each row capturing Application, Power (W), Quantity, Hours of Use, auto-computing Total Watts and Energy consumed/day (Wh) per row and as a running total. Use + Add more Load to add rows for every appliance on site. The Day/Night split matters because the app assumes daytime load is served directly by PV and night-time load is served via the battery — it drives both the PV-size suggestion and the battery backup-autonomy figure below.
📊 Load Profile — Day vs Night
A doughnut chart (day vs night energy share) and a column chart visualise the tallied load the moment rows are entered, giving an immediate sanity-check on where the site's consumption actually falls before sizing anything.
🎯 Design Consideration — Total Required Energy and Power
Combines the Day Load and Night Load totals into the sizing figures the rest of this sub-tab (and the PV-size suggestion) is built from — the single reference point for "how much energy does this site actually need per day".
☀ Suggest PV Size from Total Required Energy / day
Works backwards from the site's own POA irradiance to approximate the PV array size (kWp) needed to cover the Total Required Energy/day figure above, passing through:
- Common System Loss (%) — soiling, thermal, DC/AC wiring, mismatch, IAM, spectral, LID, etc.; auto-filled from the Step 4 Loss Table (excluding Inverter Efficiency and Clipping, applied separately).
- Inverter Efficiency (%) — auto-filled from the selected inverter's Euro Efficiency (Step 3 → Module and Inverter Selection), defaulting to 97.5% if none is selected yet.
- PV Clipping Loss (%) — auto-filled from the Step 4 ILR (DC/AC ratio) via the app's own clipping-loss model.
- Battery Charging Efficiency (%) — the one-way charging efficiency (√ Round-Trip Efficiency from Battery Configuration below), applied only to the Night Load share, since that share is assumed served via the battery.
- Design Basis — size against the site's Worst Month POA (conservative) or its Annual Average POA, so the seasonal-variation spread is visible before you commit to a plant size.
Click ☀ Suggest PV Size to compute it, then ↳ Apply to Approx. Plant Size to carry the figure straight into Step 3's Module Selection card.
🔋 AC-Coupled Battery — Self-Consumption, Peak Shaving & Islanding
Runs an hourly dispatch simulation of PV generation vs. the load profile with a battery in between — self-consumption first, then (optionally) peak shaving, then export/import — reusing the hourly AC series from Step 7 (run Hourly/Sub-hourly there first) matched hour-for-hour against either an imported load profile or the Day/Night tally spread evenly across the year.
| Card | What it configures |
| 📥 Load Profile | Source: an imported hourly CSV (8,760 rows, one column of kW or timestamp,kW — sub-hourly imports are averaged to hourly; a sample template is downloadable), or the Day/Night tally above repeated flat across every day of the year. |
| 🔋 Battery Configuration | Chemistry (LFP, NMC, Lead-Acid Flat/Tubular, VRLA — each applies typical Round-Trip Efficiency, Min SOC and cost defaults, all editable), Usable Capacity (kWh), Charge/Discharge Power (kW, symmetric C-rate), Round-Trip Efficiency (%), Min/Initial SOC (%), and Battery Cost (currency/kWh) for the payback estimate. |
| 🎯 Suggest Size from Night Load | Enter a Backup Autonomy (days) and click Suggest & Apply Size to size the Usable Capacity from how many days of the Night Load tally it should cover. |
| 🔌 Backup Autonomy (Outage Runtime) | Enter a Critical Load (kW) to keep powered during a grid outage (or leave 0 to use the Night Load tally's average power) and see the estimated runtime the configured battery would provide. |
| ⛰ Peak Shaving | Optional: the battery discharges — ahead of pure self-consumption logic, whenever SOC allows — to keep grid import at or below a configured Grid Import Cap (kW). |
| 🏝 Weak Islanding / Grid Export Limit | Islanded/Weak-Grid Mode disallows grid import entirely — any load not met by PV+battery is recorded as unmet (loss-of-load) rather than imported. A Grid Export Limit (kW) caps power exported to the grid (0 = no limit); in islanded mode this should normally be 0, since any PV the battery can't absorb once load is met is curtailed. |
Click ▶ Run Self-Consumption Simulation to get the full KPI set: PV Generation, Total Load, Self-Consumed PV, Self-Consumption Ratio (% of PV generation used on-site), Self-Sufficiency Ratio (% of load met by PV+battery), Grid Import/Export, Curtailed PV, Unmet Load (islanding), Battery Cycles/yr, Battery CAPEX, estimated annual battery savings and a simple payback (battery only) — plus a monthly chart of self-consumed energy vs grid import. 🎯 Optimize Battery Size (SCR sweep) instead sweeps a range of battery capacities and tables Self-Consumption Ratio, Self-Sufficiency Ratio, Unmet Load and Curtailed PV for each, so you can see the diminishing-returns curve before committing to a capacity.
One workflow for grid-tied AND storage-coupled designs — no separate spreadsheet needed to reconcile PV, battery and load. Practical outage planning via the backup-autonomy estimate, not just an annual self-consumption percentage.
Step 5 — Sub-array Design (String Configuration) focus
The selected module & inverter spec cards appear at the top. Configure a sub-array and watch the Live Electrical Check update as you type — add the unit only when all checks read OK.
Inputs
| Field | Meaning |
| Modules / String | series modules per string (sets string voltage) |
| Strings / MPPT | parallel strings per MPPT input (sets MPPT current) |
| MPPT / Inverter | MPPT inputs used per inverter |
| No. of Inverters | identical inverters in this sub-array |
Computed quantities
Total modules = Mod/Str × Str/MPPT × MPPT/Inv × N_inv
DC kWp = Total modules × Pmax / 1000
AC kW = Inverter Pac × N_inv
ILR (DC/AC) = DC kWp / AC kW
Voc_max (cold)= Voc · [1 + TC_Voc/100 · (T_winter − 25)] · Mod/Str
Vmp window = Vmp · [1 + TC_Pmax/100 · (T − 25)] · Mod/Str (T = winter / summer)
String current= Imp · Str/MPPT MPPT current = Imp · Str/MPPT × MPPT/Inv
Live safety checks (✅ / ⚠️)
- Voc_max @ T_min ≤ Inverter Vdc_max
- Vmp_max @ T_winter ≤ MPPT V_max
- Vmp_min @ T_summer ≥ MPPT V_min
- Array Current/MPPT (Imp × Str/MPPT) ≤ inverter MPPT max input current
- Total DC Current/Inv (Imp × Str/MPPT × MPPT) ≤ inverter max DC input current
ILR is shown alongside these for reference but is not itself a pass/fail check — see the recommended band below.
Click + Add Sub-array. You need at least one sub-array to run a simulation. The Total System Summary aggregates DC kWp, AC kW, ILR, total modules and strings across all sub-arrays. Mixed sub-arrays (different tilt/inverter) are supported by adding multiple units.
➕ Add New Sub-array (Unit) — Why Build the Plant This Way
Each sub-array is one independently-sized block — its own Modules/String, Strings/MPPT, MPPT used/Inverter and No. of Inverters — built from the module and inverter currently selected above. Adding more than one lets a single project represent a plant that isn't one uniform block, while every sub-array still simulates together as one system on Step 7 (one Total DC kWp, one AC energy series, one PR).
- Design multiple arrays with different conditions, simulated as a whole system — a real site is rarely one identical block: different inverter-room groupings, a partially-filled last string group, or blocks sized to fit distinct roof/ground areas. Add one sub-array per block, each with the string/MPPT/inverter count that actually fits that block, and the Live Electrical Check confirms every block clears its own Voc/Vmp/current limits before you add it. The Total System Summary then rolls every block up into the single set of numbers (DC kWp, AC kW, strings, modules, overall ILR) that Step 7 actually simulates — so the whole plant is checked and run as one coherent system, not stitched together after the fact.
- Improve the design toward optimum & manage ILR — each unit shows its own ILR the moment it's added, and the Total System Summary shows the blended Overall ILR (Pnom Ratio) across every sub-array. This makes it easy to nudge the plant toward the recommended 1.1–1.3 DC:AC band (see the ILR table below) even when the site can't take one uniform block: oversize one sub-array slightly and undersize another to land the overall ratio where you want it, rather than being locked to whatever a single block's module/string math happens to produce.
- Split a project into many small units, or design it as a single large unit / single inverter — both are fully supported by the same tool. For a straightforward plant, add one sub-array with a high No. of Inverters and let it represent the whole system in a single block. For a plant that's physically built from several inverter stations, combiner rooms, or phased construction blocks, add one sub-array per real block instead — down to a single-inverter sub-array where useful. Either way the design stays auditable block-by-block (each with its own pass/fail electrical checks) while still being simulated and reported as one plant, and the per-block breakdown carries forward into Step 7's Array Table and Protection & Cable Schedule for a realistic engineering layout.
Typical behavior as ILR (Inverter Loading Ratio) or DC/AC Pnom Ratio increases
| DC:AC Ratio | Annual Energy (kWh) | Specific Yield (kWh/kWp DC) | PR | Clipping Loss |
| 1.00 | Baseline | High | High | Very low |
| 1.10 | ↑ | ≈ Same or slightly ↓ | ≈ Same or slightly ↓ | Low |
| 1.20 | ↑↑ | slightly ↓ | slightly ↓ | Moderate |
| 1.30 | ↑↑ | ↓ | ↓ | Higher |
| 1.40 | Small increase | ↓ | ↓ | Significant |
Why annual energy increases: Adding more DC modules allows the inverter to operate closer to its rated AC power for more hours of the year, especially during mornings, evenings, winter, and cloudy conditions. Therefore:
Total annual AC energy (kWh) generally increases. However, inverter clipping also increases around solar noon on high-irradiance days.
Standards: IEC 62548:2016 / IS 16221 (string voltage, OCPD), IEC 62109 (inverter limits), IEC 61730 (safety).
Step 6 — Economic Evaluation & Bankability focus
Tick Include in Report (top-right) to add the economics & financial-risk pages to the PDF; leave unchecked to skip them.
Inputs & defaults
| Group | Fields | Default |
| CAPEX | itemised install cost (qty × rate, GST per line) | editable table |
| Financing Structure | own fund, subsidy (PMSGMY), loan amount/rate/tenure (EMI) | — |
| Annual OPEX | O&M, insurance, cleaning, etc. | — |
| Tariff (₹/kWh) / escalation | energy price & yearly rise | 7.5 / 5% |
| OPEX Escalation / Inflation | compounds Annual OPEX the same way Tariff Escalation compounds revenue — O&M is no longer held flat over the project life | 5%/yr |
| Discount rate | real/nominal WACC | 10%/yr |
| Project life / degradation | years / %/yr | 25 yr / 0.7%/yr |
| Corporate Income Tax Rate | applied to taxable profit each year (0% during any Tax Holiday years) | 25% |
| Depreciation Method | WDV (declining balance on book value), SLM (fixed % of original cost/yr), or a Custom Schedule (comma-separated %/yr) | WDV |
| Depreciation Rate | %/yr — 40% is India's standard WDV rate for solar power generating equipment under the Income Tax Act | 40% |
| Additional Depreciation | optional — adds to the Year-1 rate only, for new plant & machinery (India: Sec 32(1)(iia), standard 20%) | off / 20% |
| Tax Holiday | years with zero income tax regardless of profit | 0 yr |
| Salvage Value | % of CAPEX — depreciation never reduces book value below this floor, in any method | 0% |
📦 CAPEX — Sub-tab
The itemised install-cost table (Item Description, Qty, Unit, Rate, GST%, Total). 📋 Apply Template replaces the current line items with the standard BOQ template — PV Modules and Inverter rows pre-fill their Make from whatever module/inverter is selected in Step 3, with quantities pulled from the sub-array design (total modules/inverters); the remaining rows cover Mounting Structure (hot-dip galvanised 'C' channel), Hardware, Weather Station/RMS, DC & AC cabling (XLPE, MC4, earthing, armoured), AJB/DCDB and ACDB, accessories, Cat 6/FOC cable, Net Meter/DISCOM charges, and Installation & Commissioning — each with an indicative rate and GST%. 🔄 Recalculate refreshes the Total CAPEX after manual edits.
🏦 OPEX & Financing — Sub-tab
Combines the project's debt/equity structure with its running costs:
- Financing Structure — Total Investment, Own Fund, and an editable list of Subsidies/Grants/Other Finance (names editable, e.g. PMSGMY); the Loan Amount is whatever remains. Beyond the basic Rate/Tenure, this now also models: Moratorium / Grace Period (interest-only years counted within the Loan Tenure, no principal repayment); Repayment Type — Amortizing (EMI, default) or Bullet/Balloon (interest-only after any moratorium, full principal due at maturity); DSRA Coverage (months), which sizes a real Debt Service Reserve Account target from the peak year's annual debt service (not just an average year); and DSCR Testing Frequency (Annual/Semi-Annual/Quarterly), which splits the year's energy using the actual Step 7 monthly generation profile so a seasonal shortfall isn't masked by an annual-only test.
- Annual OPEX — itemised O&M list plus Electricity Tariff, Tariff Escalation, OPEX Escalation, Discount Rate, an optional distinct Cost of Equity (leave blank to fall back to Discount Rate — project-finance practice discounts equity cash flows at a higher rate than project-level debt+equity blended cash flows), Project Life and Degradation Rate.
- 💰 Calculate Economics runs the whole model and populates Financial Analysis, Bankability Perspective and Financial Risk Analysis.
- Tax & Depreciation — Corporate Income Tax Rate, Depreciation Method/Rate, Additional (first-year) Depreciation, Tax Holiday, Salvage Value, and GST/VAT Input Tax Credit Recoverable % — feeding Accelerated Depreciation, the tax shield, after-tax cash flow, and the Effective Project Cost summary.
Solar Power Plant Economic — Discount Rate
The discount rate is the rate used to convert future solar project cash flows into their present value. It reflects the project's cost of capital, financing cost, investment risk, and expected return.
PV_t = CF_t / (1 + r)^t
Where:
PV_t = Present value of cash flow in year t
CF_t = Net cash flow in year t
r = Discount rate
t = Year number
Recommended input ranges for Indian solar projects:
| Project / Investor Condition | Typical Discount Rate |
| Low-risk utility-scale project | 8%–10% |
| Bank-financed commercial or industrial project | 9%–12% |
| Rooftop solar project | 10%–14% |
| SME / higher-risk project | 12%–16% |
| Equity investor target return | 14%–20%+ |
For a general preliminary solar project analysis, a reasonable default may be:
| Field | Description | Suggested Default |
| Discount Rate (%) | The annual rate used to discount future project cash flows to their present value for NPV and economic feasibility analysis. The rate should reflect the project's cost of capital, financing structure, investment risk, and required investor return. | 10.00% |
Recommended preliminary OPEX Escalation values:
| Project Condition | Typical OPEX Escalation |
| Long-term fixed-price O&M contract | 2%–3%/year |
| Large utility-scale solar project | 3%–5%/year |
| Commercial & industrial solar plant | 4%–6%/year |
| Rooftop solar project | 4%–6%/year |
| Conservative/high-inflation sensitivity case | 6%–8%/year |
Tariff Escalation (%/yr)
The expected annual percentage increase in the electricity tariff, avoided grid electricity cost, or solar energy selling price over the project lifetime. This escalation is used to calculate future energy savings or revenue.
Suggested default: 5.00%/year
Recommended preliminary values:
| Project Type / Tariff Structure | Typical Tariff Escalation |
| Fixed-tariff utility-scale PPA | 0%/year |
| Fixed commercial PPA | 0%/year |
| Escalating PPA | 1%–3%/year |
| Captive rooftop — grid tariff savings | 3%–6%/year |
| C&I captive project | 4%–7%/year |
| Conservative preliminary analysis | 3%–5%/year |
Depreciation Method: WDV
WDV (Written Down Value) depreciation is a method in which depreciation is calculated each year on the remaining book value of the solar power plant asset after deducting previous years' depreciation. Under WDV, the depreciation amount is generally higher in the initial years and decreases gradually over the project life.
Depreciation_t = Opening WDV_t × Depreciation Rate
Closing WDV_t = Opening WDV_t − Depreciation_t
The closing WDV of one year becomes the opening WDV of the next year:
Opening WDV_(t+1) = Closing WDV_t
Example — Assume: Eligible solar asset cost = ₹1,00,00,000; WDV depreciation rate = 15% per year.
| Year | Opening WDV | Depreciation | Closing WDV |
| 1 | ₹1,00,00,000 | ₹15,00,000 | ₹85,00,000 |
| 2 | ₹85,00,000 | ₹12,75,000 | ₹72,25,000 |
Depreciation Method: SLM
SLM (Straight-Line Method) is a depreciation method in which the same depreciation amount is charged every year over the useful life of the solar power plant asset. Unlike the WDV method, the annual depreciation amount remains constant throughout the selected depreciation period.
Annual Depreciation = (Depreciable Asset Cost − Residual Value) / Useful Life
Where:
Depreciable Asset Cost = Eligible solar project CAPEX
Residual Value = Expected asset value at the end of its useful life
Useful Life = Number of years over which depreciation is applied
Additional Depreciation
Additional Depreciation is an extra tax depreciation benefit that may be claimed in addition to normal depreciation on eligible new plant and machinery, subject to applicable tax law and eligibility conditions. For an Indian solar power project, it should be treated as a tax incentive, not as an operating expense or direct cash income.
Salvage Value (% of CAPEX)
Salvage Value is the estimated remaining value or recoverable value of the solar power plant at the end of the project analysis period.
Recommended preliminary values:
| Project Assumption | Salvage Value |
| Conservative bankability case | 0%–2% of CAPEX |
| Standard preliminary solar model | 2%–5% of CAPEX |
| Optimistic residual-value case | 5%–10% of CAPEX |
| Conservative default | 0%–2% |
Financial formulas
Energy_t = P90 · (1 − deg/100)^(t−1) Tariff_t = Tariff·(1+tariffEsc/100)^(t−1)
OPEX_t = OPEX·(1+opexEsc/100)^(t−1) (OPEX Escalation / Inflation — compounds like revenue)
Depreciation_t : per Depreciation Method (WDV / SLM / Custom), capped at the Salvage Value floor
Profit Before Tax_t = Revenue_t − OPEX_t − Depreciation_t
Tax_t = 0 if within Tax Holiday, else max(0, Profit Before Tax_t · TaxRate/100)
CF_t = (Profit Before Tax_t − Tax_t) + Depreciation_t (Net Profit After Tax + Depreciation add-back)
LCOE = [CAPEX + Σ OPEX_t/(1+r)^t] / Σ Energy_t/(1+r)^t (pre-tax cost metric, unaffected by tax/depreciation)
NPV = −CAPEX + Σ CF_t/(1+r)^t
IRR : rate where NPV = 0 (Newton-Raphson)
Payback: first year cumulative CF_t ≥ 0
ROI = (Σ CF_t − CAPEX) / CAPEX · 100
Accelerated Depreciation (Yr 1) = Depreciation_1 Tax Saving (Yr 1) = Depreciation_1 · TaxRate/100
Effective Project Cost = CAPEX − PV(Tax Shield) − Subsidy − GST ITC
The Year-by-Year Projection table lists energy, tariff, revenue, OPEX, depreciation, tax, net saving (after-tax), cumulative cash-flow and degraded PR for each year; lifetime revenue is the column total. LCOE stays a pre-tax cost metric (standard practice, for comparability across financing structures) — tax and depreciation only enter the cash-flow-based metrics (NPV, IRR, Payback, ROI, DSCR, Equity IRR).
Year-by-Year Projection (P90 energy basis):
Tax_t (₹L) = 0 if within Tax Holiday, else max(0, Profit Before Tax_t · TaxRate/100)
Net Saving_t (₹L) = (Profit Before Tax_t − Tax_t) + Depreciation_t (Net Profit After Tax + Depreciation add-back)
Cumulative CF_t (₹L) = Σ (k=1..t) Net Saving_k
Disc. Cumulative CF_t (₹L) = Σ (k=1..t) Net Saving_k / (1+r)^k (r = Discount Rate)
📊 Financial Analysis — A. Project-Level Financial Model
Once 💰 Calculate Economics has run, the 📊 Financial Analysis sub-tab shows nine KPI boxes computed on the conservative P90 annual energy over the actual Project Life: LCOE, NPV, IRR, Simple Payback, ROI, {N}-Yr Revenue, Discounted Payback, Profitability Index (PI) and Break-Even Tariff. Each box is colour-coded 🟢 clears the covenant/comfortable margin, 🟠 marginal, 🔴 fails it — IRR, Payback, Discounted Payback and Lifetime Revenue are tested against the editable Lender-Specific Covenant Thresholds (Financial Due Diligence sub-tab); LCOE, NPV, ROI, PI and Break-Even Tariff use fixed, non-configurable screening bars shown in each box's tooltip. Below the KPI grid, the Year-by-Year Projection table lists energy, tariff, revenue, OPEX, depreciation, tax, net saving, cumulative and discounted-cumulative cash flow for every year.
🏦 Bankability Perspective — B. Equity-Level Financial Model
Shown once Calculate Economics has run. Four cards report Project IRR (unlevered), Equity IRR (levered — nets annual debt service against the own-fund outflow), Minimum DSCR (over the loan tenure), and Simple Payback, each rated Poor/Marginal/Good/Excellent (or the DSCR-specific Poor–Strong scale) against standard project-finance thresholds. A CAPEX/Wp benchmark check (against the country-specific bands set in Databases) and an overall Investment Decision indicator sit alongside them.
📊 Financial Risk Score — a quantified 0–100 composite, rating-agency style, built from the same underlying ratings that drive the Investment Decision, rescaled to a single number: Investment Grade (Low Risk) ≥80, Investment Grade (Moderate Risk) 60–79, Sub-Investment Grade (Elevated Risk) 40–59, otherwise Speculative (High Risk). A hard-override applies regardless of the numeric average: if Project NPV, Equity NPV or DSCR bankability fails outright, the grade is forced to Speculative — a structurally unbankable project cannot score Investment Grade just by averaging well elsewhere.
🏦 Bankability Perspective & Recommendations: — beneath the score, a numbered list of concrete, prioritised actions for improving any weak metric (e.g. extend loan tenure to raise DSCR, increase own-fund contribution to lift Equity IRR, revisit CAPEX assumptions against the benchmark band) — turning the rating into next steps rather than leaving it as a bare number.
Below the cards, the Full Cash-Flow Calculation table lists every year of the project life (Year, Energy at P90, Revenue, OPEX, Depreciation, Tax, Net Operating Cash Flow — after-tax, Debt Service, DSCR, Equity Cash Flow, Cumulative Equity Cash Flow) — a genuine year-by-year recalculation, not a summary. Net Operating CF is Net Profit After Tax + Depreciation add-back, per the Tax & Depreciation settings. Debt Service and DSCR are shown only while the loan is outstanding (Years 1–Loan Tenure); the payback year is highlighted. The Overall Bankability Verdict (Highly Bankable / Bankable / Marginally Bankable / Weak) is the average of the four card ratings, followed by numbered recommendations for improving any weak metric.
Full Cash-Flow Calculation (Year-by-Year):
Net Operating CF_t, after-tax (L) = (Profit Before Tax_t − Tax_t) + Depreciation_t
Debt Service_t (L) = EMI annuity = P·i·(1+i)^n/[(1+i)^n−1], for Years 1..Loan Tenure, else 0
DSCR_t = Net Operating CF_t / Debt Service_t (only while the loan is outstanding)
Equity CF_t (L) = Net Operating CF_t − Debt Service_t (Year 0 = −Own Fund contribution)
Cumulative Equity CF_t (L) = Σ (k=0..t) Equity CF_k
📈 Financial Risk Analysis — Hourly Perez Engine & Monte-Carlo
The 📈 Hourly Perez Engine card drives a NumPy Monte-Carlo on the exported 8,760-step AC series. Click 🎲 Run Monte-Carlo to sample energy (systematic ⊕ inter-annual), degradation, tariff & OPEX escalation and report the P10/P50/P90 distribution of:
- Project NPV, Equity IRR (levered), LCOE,
- Minimum DSCR (EBITDA / level debt-service annuity), discounted payback.
Debt service (annuity) = P · r / [1 − (1+r)^(−n)]
DSCR_y = EBITDA_y / debt_service EBITDA = revenue − OPEX
Simple Payback Year: the first year t where the undiscounted cumulative cash flow (−CAPEX + Σ Net Saving) turns ≥ 0 — i.e., the year the plant's raw cash generation has paid back the initial investment, with no allowance for the time value of money. This is the ★ green-highlighted row.
Discounted Payback Year: the first year t where the discounted cumulative cash flow (−CAPEX + Σ Net Saving_k/(1+r)^k) turns ≥ 0 — each year's cash flow is first shrunk by the discount rate r (your cost of capital) before being summed, since money received later is worth less today. Because discounting always reduces future cash flows, Discounted Payback Year is always ≥ Simple Payback Year — it's the more conservative of the two metrics. This is the ‡ blue-highlighted row.
References: IEC 61724-3 (P50/P90), standard project-finance practice (DSCR, equity IRR, discounted payback); India: PMSGMY 2024 subsidy, GST/AD, CERC ISTS waiver, net metering.
🔎 Financial Due Diligence
🏦 Generate Bankability Assessment Report builds the full lender-facing PDF from everything entered across Step 6 — this format is suitable for a bankable MW-scale solar project due diligence report.
🖋️ Report Preparer, Review & Resource Data Provenance — records who actually prepared and independently reviewed the report (Preparer/Reviewer credential and firm, report revision status) and how the solar resource data is graded (free/satellite-derived, bankable-grade paid provider, ground-measured, or ground-measured + satellite corroboration) — this feeds the report's cover page/Reliance section and its resource-data disclosure, and includes an explicit confirmation checkbox that the report will be reviewed and issued by a named, independent, professionally-qualified engineer before any lender or investor relies on it.
📐 Lender-Specific Covenant Thresholds — Min Project IRR, Min Equity IRR, Min DSCR Covenant, Target Average DSCR, Min LLCR/PLCR Covenant, Max Acceptable Simple Payback and Min Lifetime Revenue Multiple. Every Rating column across Step 6 — and the Financial Risk Score / Investment Decision — tests against these values, not a fixed generic assumption; set them to the actual term sheet/covenant package for this facility and lender before issuing the report.
The Technology Assessment card captures PV Module, Inverter, BOS, EPC and O&M assessment notes and criteria (BNEF Tier 1 status, product maturity, warranty terms, contract type, performance ratio guarantee, delay liquidated damages, defects liability period, insurance, change order mechanism, and Parent Company Guarantee) — these drive the auto-derived risk ratings shown in the Bankability Assessment Report's Technology and Developer/EPC sections.
Below it, the 🌐 Legal, Insurance, Country Risk & Fiscal — Global Bankability Inputs card covers the additional due-diligence content international lenders, DFIs and ECAs typically expect: Offtaker Credit Rating & Payment Security Mechanism; Land Title, Grid Code Compliance, Local Content and Force Majeure allocation; Operational-phase Insurance Program (All-Risk+BI, Third-Party Liability, Natural Catastrophe cover); Sovereign/Political Risk and Currency/FX mismatch; and Environmental & Social Action Plan (ESAP) target date/owner plus Depreciation Method, Tax Incentives and Import Duty treatment. All of these feed directly into the Bankability Assessment Report's Legal, Insurance/Country-Risk, ESAP and Fiscal sections and the consolidated Conditions Precedent table.
Financial outputs are decision-support, not investment advice — confirm tariffs, subsidies and tax treatment with current DISCOM/CERC/CBDT rules.
Step 7 — Simulation Engine focus
Simulation Resolution & PV Cell Model
| Setting | Options | Default |
| Time Resolution | Monthly (12) · Hourly (8,760) · Sub-hourly (35,040, 15-min) | Monthly |
| PV Cell Model | Single-diode · Two-diode · Linear (temp-coeff) | Single-diode |
| IAM ar (Martin-Ruiz) | angular-loss coefficient | 0.16 |
Monthly = fast what-if (12 mid-month values, empirical loss %). Hourly/Sub-hourly = full time-series (exact sun path, Perez POA, Martin-Ruiz IAM, air-mass spectral, Faiman temperature, row shading, diode I–V, true clipping) — use for bankable reports.
Per-step energy chain (hourly)
POA (Perez) → IAM(beam) + diffuse mask → spectral → G_eff
Tcell (Faiman) → diode Pmp(G_eff,Tcell)/Pmax → ×DC-loss ×degradation → P_dc
P_dc → inverter η-curve → clip at AC rating → P_ac
(bifacial path: effective irradiance = POA_front + ɸ·G_rear via the view-factor model)
Results
KPIs: DC kWp, E_AC (MWh/yr), PR (%), Yf (kWh/kWp); monthly table; Eac/Earray/GPOA chart; P50/P75/P90/P95 probability & CDF; 25-year grid-injection & revenue forecast; PR-vs-year; CO₂ savings.
The selected solar resource: exact sun position, Perez (1990) POA transposition, Martin-Ruiz IAM, air-mass spectral correction, Faiman cell-temperature model, row-to-row self-shading, and true inverter clipping.
PR = E_AC / (H_POA · P_nom) · 100 Yf = E_AC / P_nom (kWh/kWp)
Ya = E_array / P_nom CF = E_AC / (P_nom · 8760) · 100
Read the 💡 How to Improve Performance Ratio (PR) advice and the 🎯 Specific Yield (Yf) Rating Check, then click Generate Report.
The same design reproduces the same PR every run. A smooth-resource PR (~78%) and a measured-TMY PR (~70%, more clipping & thermal) are both correct for their inputs — the difference is real physics, not an error.
🗂 Batch / Parametric Simulation
Every click of ▶ RUN SIMULATION is automatically logged to a per-project, session-only table — Batch / parametric simulation mode — capturing Tilt, Azimuth, the selected Module/Inverter, every Sub-array (Unit), and the run's KPIs (Total Strings/Modules, Pnom Ratio, Clipping %, DC kWp, AC Energy, CAPEX, Est. Income/yr, PR, Yf). This makes it easy to sweep a design variable (tilt, module, inverter, ILR, string count…), re-run, and compare every attempt side-by-side without losing earlier results.
- Click any row ↩ to instantly restore that run's Module/Inverter selection, Sub-array Design and KPI cards — no server call, no re-simulation.
- 🔄 on a row triggers a full re-run that also refreshes the Monthly Table, charts, AI/ML recommendations and Environmental Impact/CO₂.
- 📊 Analysis: Suggest Optimum Simulation — an AI-assisted step (runs entirely client-side, no API key or server call) that reviews every logged run and recommends the best-performing configuration, weighing yield, financial and bankability outcomes together rather than energy yield alone.
- 💾 Save Batch Simulation / 📂 Open Batch Simulation — the session log is cleared when the browser tab closes, so save it to a
project-name-batch-sim.batch file to keep it, and re-open that file later (scoped to the same project) to continue comparing.
CAPEX shown in the batch log initially considers only PV Module and Inverter line items (roughly 50–60% of total plant CAPEX) — just to gauge an early idea. It becomes meaningful once Step 6's Financial Analysis has been run; it is not the final CAPEX.
🔥 Cell-temperature (thermal) effect dominating over irradiance
May be in June July August GPOA (kWh/m²/month) minimum but PR maximum, Why this happens:
- June–August is monsoon season in this weather profile — heavy cloud cover cuts direct beam radiation drastically (DNI drops from ~6.1 kWh/m² in April to just 1.5–2.0 in Jun/Jul/Aug), so GPOA bottoms out.
- PR is defined as E_AC ÷ (H_POA × Pnom) — it deliberately normalizes out how much sunlight was available. It measures how efficiently the system converts whatever irradiance it got, not how much energy it made.
- Cell temperature is driven mostly by irradiance itself, not just ambient air temp — less sunlight means less panel self-heating. Combined with monsoon's much higher wind speed (5.4–6.2 m/s vs 2.8–3.8 m/s pre-monsoon) providing extra convective cooling, cell temperature drops nearly 10°C below the hot, sunny months (35–38°C vs 46–48°C).
- Since modules lose power as they heat above the 25°C STC reference (via the module's negative temperature coefficient), less heating = less thermal derating = higher PR — even though there's far less energy being produced in absolute terms.
So the pattern makes physical sense: highest energy months (Apr/May) run hottest and post the lowest PR; lowest energy months (Jun–Aug) run coolest and post the highest PR. This is standard, expected PV fleet behavior and actually a good sign the temperature model (Faiman cell-temp + power temperature coefficient) is behaving correctly — a flat or irradiance-correlated PR curve would be the sign of something wrong, not this inverse relationship.
🔌 Protection Standard — Array Table & Protection/Cable Schedule
The 🔌 Protection Standard sub-tab is populated after every simulation run, and contains two cards:
- 📐 Array Table (Module Layout) — the physical footprint of one mounting table: C modules across (horizontally) × R modules stacked vertically. R and the module length/width come from Step 3 → 3D Shading Model → Module Geometry; C is derived from Sub-array 1's Modules/String (Step 3 → Sub-array Design) ÷ R.
- 🔌 Protection & Cable Schedule — this table lists indicative electrical protection and cable specifications calculated automatically from your module, inverter, and sub-array design — a ready engineering reference for detailed system design.
Schematic electrical diagram of the PV system from DC array to grid connection point.
Cable sizes and protection ratings are indicative design values calculated per
IEC 60364-7-712, IEC 60269-6 (gPV string fuses), and
CEA (Measures relating to Safety and Electricity Supply) Regulations 2010.
Final specifications to be confirmed by a licensed electrical engineer before installation.
📏 Cable Route Lengths — before the schedule/voltage-drop numbers are final, enter the actual site distances for each leg of the run (add as many rows as needed per leg): String, String-to-DCDB, DCDB-to-Inverter, Inverter-to-ACDB (AC-side topology is auto-selected from project size), and — utility-scale only — LV-Busbar-to-Transformer and Transformer-to-33kV-Switchgear. These lengths feed the voltage-drop calculation directly; the schedule and route diagram auto-update as you edit them, or click 🔄 Re-Calculate to force an immediate refresh.
Calculation Formulas & Basis
| Item | Formula & Basis | Standard |
| DC String Fuse |
I_fuse ≥ 1.25 × I_sc_mod (minimum rating)
I_fuse ≤ 2.40 × I_sc_mod (maximum rating)
Rounded up to nearest 5 A standard gPV frame.
Example: I_sc = 13.88 A → min = 17.35 A → rated 20 A gPV
|
IEC 60269-6 (gPV class) IEC 60364-7-712 §712.5.3.1 |
| DC SPD Voltage |
V_oc_string (winter) = V_oc_STC × [1 + (α_Voc/100) × (T_min − 25)] × N_mod/string
SPD rated voltage ≥ 1.2 × V_oc_string.
Select standard: ≤ 1000 V → 1000 V DC SPD; else → 1500 V DC SPD.
Example: V_oc_STC = 48 V, N = 10, T_min = 5°C, α = −0.28%/°C → V_oc = 499 V → SPD 1000 V
|
IEC 61643-31 IEC 62305 |
| DC Cable Size |
Required current capacity ≥ 1.25 × I_sc_mod
Cable size by required current: ≤ 12 A → 4 mm²; ≤ 18 A → 6 mm²; > 18 A → 10 mm²
Single-core, 1000 V DC rated, UV-resistant XLPE/PVC.
|
IEC 60228 IEC 60364-7-712 §712.522.8.1 |
| DCDB/AJB Total Current |
I_DCDB = N_strings × I_sc_mod × 1.25
This is the maximum combined short-circuit current at the combiner busbar.
|
IEC 60364-7-712 |
| AC MCCB Rating |
I_FL = P_AC / (√3 × V_LL × PF)
MCCB rating ≥ 1.25 × I_FL, rounded to nearest 10 A standard frame.
Example: P_AC = 100 kW, V = 415 V, PF = 1.0 → I_FL = 139.1 A → MCCB ≥ 173.9 A → rated 180 A
|
IS 13947 IEC 60947-2 |
| AC SPD Voltage |
Type 2 surge arrester, rated ≥ system AC voltage.
≤ 415 V system → 415 V AC SPD; > 415 V → 690 V AC SPD.
I_n ≥ 5 kA, I_max ≥ 20 kA.
|
IEC 61643-11 |
| AC Cable Size |
Required current ≥ 1.25 × I_FL
Cable size: ≤ 25 A → 10 mm²; ≤ 40 A → 16 mm²; ≤ 65 A → 25 mm²; ≤ 95 A → 35 mm²; > 95 A → 50 mm²
3-core + Earth (3C+E), Cu conductor, armoured or in conduit.
|
IEC 60228 IS 694 |
| Earthing Conductor |
GI flat size per IS 3043 §8.4:
≤ 100 kW → 25×3 mm GI / 50 mm² Cu; ≤ 500 kW → 40×6 mm GI / 70 mm² Cu;
> 500 kW → 50×6 mm GI / 95 mm² Cu.
Earth resistance ≤ 1 Ω (TN-S or TT scheme per site conditions).
|
IS 3043 IEC 62305 CEA Regs 2010 |
| Transformer |
Required when: P_AC > 100 kW OR AC voltage > 690 V (HV connection).
Rating: kVA = ceil(P_AC / 100) × 100, loaded ≤ 90% of rated kVA.
|
IS 2026 IEC 60076 |
All values are indicative design references. A licensed electrical engineer must verify final specifications, cable routing, derating factors for temperature, grouping, and installation method per site-specific conditions.
Standards: IEC 60364-7-712 | IEC 60269-6 | IEC 61643-11/-31 | IEC 60947-2 | IEC 60228 | IS 13947 | IS 3043 | IS 2026 | IS 694 | CEA Regulations 2010 | IEC 62053.
🤖 AI ML Recommendation
The 🤖 AI ML Recommendation sub-tab has two parts: a free-form AI Engineering Assistant and two auto-generated performance-improvement cards.
AI Engineering Assistant — ask anything about the current project's simulation, or use a quick-action prompt; the assistant automatically receives your live simulation context (design, losses, financials) so answers are specific to this project, not generic advice. Quick actions: 🔍 Full Analysis, ⚙ Optimize System, 📉 Loss Audit, 💰 Financial Review, ⚠ Risk Assessment, 📊 Benchmark vs India, 🧹 Soiling Strategy, 🔆 Bifacial Upgrade, 🏦 Bankability Check, 🔌 Grid Compliance. Type a follow-up question in the chat box and press Enter (Shift+Enter for a new line) to continue the conversation; 🗑 Clear resets it.
💡 How to Improve Performance Ratio (PR) and 🎯 Specific Yield (Yf) Rating Check — appear automatically once a simulation has run: concrete, prioritized suggestions (e.g. reduce soiling loss via cleaning frequency, improve thermal management, reduce mismatch through module sorting) each tied to an estimated PR/Yf impact, turning the diagnostic loss table into an action plan rather than leaving it to be interpreted unaided.
Solar PV Cell Model: Single-Diode (5-Parameter De Soto Model)
The Single-Diode 5-Parameter De Soto Model is one of the most widely used mathematical models for photovoltaic (PV) cell and module simulation.
It calculates cell performance across varying irradiance and temperature using manufacturer datasheet values.
Typical Use: for Engineering & bankable simulations
IAM Coefficient (Martin–Ruiz ar)
The Martin–Ruiz IAM coefficient (ar) is a single empirical parameter used in the Martin–Ruiz Incidence Angle Modifier (IAM) model to describe the reduction in transmittance of solar radiation through the module glass as the angle of incidence increases.
Standard glass PV module: Default value 0.16
Uncertainty Model in PV Simulation & Bankability Reports
For bankable PV energy yield assessments, the total uncertainty is not taken from a single value. It is calculated by combining several independent uncertainty sources using the Root Sum Square (RSS) method.
The simulator collects four independent uncertainty inputs (defaults shown, all user-editable in the UI as iav, unc_data, unc_model, unc_component):
- Interannual variability (IAV) — default ±5%. Year-to-year weather variation. This is the only one that varies per simulated year. IAV is real weather spread, not a model error, so it is excluded from the accuracy-vs-measured figure below.
- Resource / data uncertainty — data-source-aware: ±5% for satellite climatology or weather synthesized from monthly means, automatically ±2.5% when a measured hourly TMY (PVGIS ISO 15927-4 / NASA POWER) is loaded. This is the dominant lever on annual-yield error vs measured.
- Model (transposition + PV) — default ±1.5%. Both engines use the full Perez (1990) transposition plus the pvlib-validated single-diode (De Soto) model and the Bifacial Radiance view-factor rear model, so the transposition+conversion model error is ~1.5%.
- Component (tolerance / soiling / degradation) — default ±2%. Hardware and field effects: module power tolerance, soiling estimate, degradation-rate estimate.
σ_total = √(IAV² + Data² + Model² + Component²) (used for P50→P90)
Annual yield error vs measured = σ_systematic = √(Data² + Model² + Component²), i.e. σ_total without IAV. With satellite/synthetic input this is ≈±5–8%; with a measured hourly TMY it tightens to ≈±2–4% —
the simulator reach ±2–4% only when validated against measured resource. The simulator reports this automatically (sigma_systematic_pct); it does not assert a tighter band than the input data justifies.
How they're used differently in the Monte-Carlo
That energy then feeds revenue → NPV, equity IRR, LCOE, and DSCR across thousands of trials, producing the P10/P50/P90 distributions and the P(NPV>0) / P(DSCR≥1.30) probabilities.
So in short: IAV is the per-year noise; data + model + component are the once-per-project systematic bias; the RSS of all four is σ_total, which sets the P75/P90/P95 energy band. A fallback exists too — if no breakdown is supplied, the code uses a single lumped sigma_total_pct (default 7.62%) instead.
One thing worth noting: in the P-value table all four are RSS'd together into σ_total, but in the Monte-Carlo the IAV is deliberately separated out as per-year noise. That's an intentional modeling choice, not an inconsistency — though it does mean the MC's effective year-1 spread and the static P90 won't be numerically identical.
If you want, I can trace a single numerical example through both paths to show the difference.
Standards: IEC 61724-1:2021 (PR/Yf/CF), IEC 61724-3 (P50/P90), Perez (1990), De Soto (2006), Faiman (2008).
📋 EPC Proposals & BOQ
The 📋 EPC Proposals & BOQ sub-tab turns the completed design, CAPEX table and financial results directly into a client-facing EPC proposal and a structured Bill of Quantities — one design, one source of truth, so the technical simulation, the bankability numbers and the commercial proposal can never drift apart. Requires Step 7 simulation + Step 6 "Calculate Economics" to have been run.
| Card | What it covers |
| 📋 Proposal Card — 🏢 Company & 🏦 Bank Details | EPC company name, address, GSTIN/VAT, contact, website, authorized person and logo upload (auto-fitted beside the company name on every proposal page header); bank account details for payment instructions. Save/reload as company.json to reuse across projects. |
| 📖 About Us / ✉ Cover Letter / 📜 Terms & Conditions | Rich-text (bold/italic/underline, bullet/numbered list) editors for the company profile, a customer-addressed cover letter, and standard commercial terms — Cover Letter & Terms save separately as letter-TC.json so standard wording can be reused across proposals. |
| 🧾 Quotation & Customer Details | Quotation No./Date, Project Type, Customer name/address/phone, DISCOM Consumer ID and Project App ID — saved/reloaded as customer.json. |
| 📈 Financial Analysis & 💼 Bankability Perspective | Pulled live from Step 6 Economics via 🔄 Refresh from Step 6 — the core investment metrics and bankability verdict, kept in sync with whatever the latest Step 6 run produced. |
| 📊 Financial Analysis Results — Year-by-Year Projection | Click ▶ Generate Projection for the full P90-energy-basis year-by-year table (exportable as CSV) — the same figures behind the Bankability Assessment Report's cash-flow table, formatted for the client-facing proposal. |
| 🧱 CAPEX — Installation Cost | The Step 6 CAPEX table, reusable here; untick "Show item-wise cost" to blank the Rate/GST/Amount per line (Total still shown) for a scope-only, client-facing version that hides internal cost breakdown. |
| 🏦 Financing Structure | Pulled from Step 6 OPEX & Financing via 🔄 Refresh from Step 6. |
| 🧮 BOQ Card — Bill of Quantities | Click ▶ Generate BOQ to auto-derive a technical quantities list from Step 3's module/inverter selection and sub-array units — separate from the CAPEX currency table above, and editable after generating. Exportable as CSV. |
| 🗓 Project Implementation Schedule | An editable, pre-filled phase-by-phase EPC schedule — add/remove/rename/re-order phases, set a Project Start Date, then 🔗 Auto-Chain Dates from Start Date to fill in every phase's Start/End automatically from its duration (still editable afterwards). Renders as a Gantt chart alongside the table; exportable as CSV. |
Once everything is filled in, 🖨 Print Proposal builds the industry-quality proposal PDF via the browser's Print/Save-as-PDF dialog.
Databases — Module, Inverter, Settings & Bankability Bands
The Databases tab is organised into 5 sub-tabs — the shared equipment libraries, application settings and reference defaults every project design draws from:
| Sub-tab | Contains |
| 🔋 PV Module | PV Module Database (panel.JSON) — used in Step 3 |
| 🔌 Inverter | Inverter Database (inverter.JSON) — used in Step 3 |
| ⚙ Settings | File paths, Start Year, Currency Symbol, Tax Name, CO₂ Grid Factor, AI-feature status |
| 🌍 Country/Region-Specific CAPEX/Wp Bankability Bands | Editable CAPEX/Wp benchmark table (see below) |
| 📋 Default Parameters | Full reference list of every engine fallback/default value (101 rows, 10 categories) |
🔋 PV Module Database
Manages the panel.JSON library of modules offered in Step 3 → Module & Inverter Selection. Every record can be built three ways, in the same Add/Edit PV Module form:
- 📄 Extract from PDF Datasheet — upload the manufacturer's PDF; the fields below are auto-filled for review before saving (everything runs through the server-side AI service, never exposing your API key to the browser — see Settings).
- 📄 PAN File — paste raw
.PAN file content (or comma/semicolon-separated values); Update Module maps each value onto the form by position.
- Manual entry — type the datasheet values directly: ID, Manufacturer, Model, Technology (Mono/Poly PERC, HalfCell, Bifacial Mono/N-Type TOPCon/HJT, Si-mono/poly/EFG, a-Si:H variants…), Pmax, Efficiency, Voc, Isc, Vmp, Imp, TC_Pmax/TC_Voc/TC_Isc, NOCT, Length/Width/Weight, Warranty period (N) and Guaranteed end-of-life power (Pr), Bifacial Factor ɸ, and cell count (Ncs/Ncp).
Auto-calculated (derived) fields — Area, Fill Factor (FF), Module Rs, Module Rsh and Degradation are pre-filled with an engineering approximation the moment the required inputs are present (Area = L×W; FF = Pmax/(Voc·Isc); Rs = (Voc−Vmp)/Imp; Rsh = Vmp/(0.2·(Isc−Imp)); Degradation = (100−Pr)/N). They're shown on a pale-yellow background to flag them as auto — type the manufacturer's own datasheet value to override, or clear the field to resume auto-calc. Use the datasheet value wherever it's published; the auto figure is only a fallback.
Live I–V/P–V preview — a canvas chart re-draws from the single-diode (De Soto) model as you edit the form, at an adjustable cell temperature; an optional table view lists Current–Voltage points at several irradiance levels. 🤖 AI-Refine Accuracy digitises the manufacturer's own printed I–V curve from the datasheet PDF and overlays those points on the preview so you can visually cross-check the physics-based curve against the real one.
Managing records — + Add Module opens a blank form; each row's Actions column edits or deletes it. ☑ Select All / ☐ Deselect All plus per-row checkboxes drive 📥 Download Selected (export just the checked modules to module.json) and 🗑 Delete Selected. ⭐ Set Favorite / ☆ Remove Favorite pins checked modules to the top of the picker in Step 3 → Select Module. 📂 Import JSON / 💾 Export JSON move the whole library in or out; records persist in the browser's localStorage between sessions. In Edit mode, 📋 Copy followed by 📥 Paste on a new Add-Module form quickly clones one record as the starting point for a close variant.
🔌 Inverter Database
Manages the inverter.JSON library, mirroring the module workflow: 📄 Extract from PDF Datasheet, 📄 OND File paste-and-map, or manual entry — all inside the same Add/Edit Inverter form.
Core fields — ID, Manufacturer, Model, Type (String / Central / Micro / Hybrid), AC/DC Power, MPPT Min/Max voltage window, Max DC Volt & Current, number of MPPTs and per-MPPT current/strings, Max & Euro efficiency, AC Voltage/Frequency, Power Factor, THD, Protection Class and Phase. Selecting Hybrid Inverter reveals battery-side fields (Battery Max/Min Volt, Battery Chemistry).
Partial-load efficiency curve — optional EN 50530 / IEC 61683 points at 5/10/20/30/50/75/100% load; the simulation interpolates between whichever points are entered (falling back to a Max/Euro-synthesised curve if none are given). Once a full Euro (5/10/20/30/50/100%) or CEC (10/20/30/50/75/100%) set is complete, the computed weighted efficiency is automatically cross-checked against the Euro Eff field, flagging any mismatch. 🤖 AI-Refine Accuracy digitises the manufacturer's printed efficiency curve/table from the PDF and overlays it on the live preview chart the same way as the module I–V tool.
Standby Power & Night Consumption (W) feed the engine's Inverter Auxiliary/Night Consumption Loss row; tick "Standby/Night consumption already included in efficiency curve" if the manufacturer's published curve already bakes this in, to avoid double-counting.
Managing records — the same Select All/Deselect, Download Selected, Delete Selected, Favorite (pins to the top of Step 3 → Select Inverter), Import/Export JSON and Copy/Paste tools as the PV Module database.
⚙ Settings
Application-wide defaults, separate from any one project:
- Database / Project / Report Path — reference file-system locations used when the desktop-style workflow saves/loads component libraries and reports.
- Start Year — the default simulation start year.
- Currency Symbol — sets the currency used throughout Step 6 Economic Evaluation and the generated reports (20 currencies supported; also drives which row of the CAPEX/Wp Bankability Bands table applies).
- Applicable Tax Name — choose GST, VAT, State Sales Tax, SST, HST or Other (with a custom short form up to 10 characters, e.g. "PST"); this label is used for the CAPEX table's tax columns and the report's Cost of System (CAPEX) section.
- CO₂ Grid Factor (kg/kWh) — the emission factor used for the CO₂-avoided calculation (default 0.82, CEA CO₂ Baseline).
💾 Save Settings / 📂 Load Settings persist or restore this whole block. An info note also confirms whether the AI features (Auto-Create from Datasheet, AI curve digitizer, in-app assistant) are enabled — they run through the server so your API key is never exposed to the browser; the administrator sets ANTHROPIC_API_KEY in ai_config.php or as an environment variable to turn them on.
🌍 Country/Region-Specific CAPEX/Wp Bankability Bands
An editable table covering all 20 supported currencies, giving a typical CAPEX/Wp benchmark range (Low / High) for each market, expressed in that currency's own units — not a fixed USD figure, since installed costs vary materially by country (labour, land, import duties, local EPC competition). Two segments are tracked separately because they have structurally different cost bases:
- 🏭 Utility-Scale Ground-Mount — economies of scale, simple racking.
- 🏢 Rooftop / C&I — mounting complexity, working-at-height labour, smaller BOS economies — typically ~30–40% higher per Wp.
This table is the single source the PV Solar — Bankability Assessment Report reads from (Section 5.2 CAPEX benchmark and the Project Bankability verdict). The report automatically picks the matching segment from Step 1's Project Type (Ground Mounted → Utility-Scale; Rooftop Commercial/Residential → Rooftop/C&I): a project's CAPEX/Wp at or below "Low" is assessed as reasonable, between "Low" and "High" as slightly elevated, and above "High" as materially above benchmark. Values are approximate, indicative defaults — edit them to reflect current EPC market pricing for your project's country; use ↺ Reset to Defaults to restore the built-in indicative values.
📋 Default Parameters Table
A scrollable, 101-row reference table of every default/fallback value the simulation engine uses when a field is left blank or not overridden by the user, an imported TMY, or a selected library component — grouped by category: 📍 Site/Location, 🧭 Orientation, ☀ Weather, 📉 System Losses (in the same cascade order the engine applies them), 🏗 Row Spacing/Shading, 🌗 Single-Axis Tracker, 🔲 Bifacial Settings, 💰 Financial/Economic, 💸 Tax & Depreciation, and 📊 Uncertainty (P50–P95/Monte Carlo). It's read-only — a reference to consult when checking why a result looks a certain way, not an input form.
No Need for .PAN and .OND Files
Unlike many conventional PV simulation software packages that require proprietary PV module (.PAN) and inverter (.OND) files, IST PVSolar Simulator eliminates this limitation.
Many PV module and inverter manufacturers do not provide downloadable .PAN and .OND files, making it difficult and time-consuming to evaluate different equipment in traditional simulation software.
With IST PVSolar Simulator, users can directly create a complete PV module or inverter model using the manufacturer's PDF datasheet.
Key Benefits
- No dependency on proprietary .PAN or .OND files.
- Supports virtually any commercially available PV module and inverter.
- Easy entry of electrical specifications from manufacturer datasheets.
- Quickly build a customized equipment database.
- Compare multiple manufacturers without waiting for simulation files.
- Ideal for feasibility studies, EPC design, technical due diligence, and bankable energy yield assessments.
- Reduces engineering time and increases flexibility during equipment selection.
Users simply enter the required electrical parameters from the manufacturer's datasheet, and the software automatically creates the simulation model. Once created, the PV module and inverter are saved in the project database and can be reused in future simulations.
This feature makes IST PVSolar Simulator one of the most flexible and user-friendly PV design and energy simulation platforms, enabling engineers to simulate projects using their preferred equipment—even when official simulation files are unavailable.
Use ALMM List-I / BIS-QCO certified models and the manufacturer datasheet values (Rs, Rsh, NOCT, temp-coeffs) for the most accurate diode-model results.
🔬 Research Tab — Overview & Workflow advanced
The Research tab is an advanced post-processing layer that sits on top of a completed simulation. It reads the simulation results, the Tab 5 sub-array designs and the selected module/inverter, then renders engineering diagnostics, statistical analysis and machine-learning studies. Nothing here changes the design — it only characterises the plant you have already built.
Prerequisite — run a simulation first
Open Tab 7 and run a simulation, then click Refresh Analysis in the Research tab. Several panels need a time-series run:
| Panel | Minimum data required |
| Per-Design table, Yield/Loss (IEC 61724), Sensitivity, Uncertainty | Any run (Monthly is enough) |
| Operating-point distributions, Heatmap, AI/ML, Thermal models, Inverter, Shading factors | Hourly (8,760) or Sub-hourly (35,040) run |
| SCADA Benchmarking | Hourly/Sub-hourly run + uploaded measured CSV |
Sub-tabs
| Sub-tab | Purpose |
| 🏗 Per-Design Diagnostics | String-sizing margins, ILR/MPPT use, IEC 61724 yield & loss accounting, weather-corrected PR, operating-point distributions, generation heatmap |
| 🎚 Sensitivity Analysis | First-order tornado of annual energy vs design/site parameters |
| 🎲 Uncertainty Analysis | Composite P50/P75/P90/P95 energy band from a six-source 1σ budget |
| 🤖 AI & ML Application | Transparent client-side regression models (energy, PR, fault, soiling, cleaning, weather) |
| 🌡 Module Characterisation | Faiman / NOCT / Sandia / Ross cell-temperature models calibrated on the run |
| 🔌 Inverter Characterisation | MPPT efficiency, clipping, partial-load curve, voltage window, reactive power |
| 🌑 Shading Characterisation | Five row-to-row self-shading models, monthly & sample-week factors |
| ⚡ Bifacial Characterisation | View-factor rear-gain sensitivity vs albedo, height and surface |
| 📡 SCADA Benchmarking | Validate simulated energy against uploaded measured operational data |
Exports
Tables export to CSV/JSON; every chart has a ⬇ Download .PNG link beneath it (see Chart Watermark & PNG). Aligned hourly SCADA data exports as scada_aligned_hourly.csv.
All Research models are fully transparent and dependency-free — every chart is inline SVG and every model is computed in-browser from the simulator's own physics. They are intended for methodology research and teaching; field deployment of the ML models still needs real monitored data.
🏗 Per-Design Diagnostics & IEC 61724 Accounting
1. Per-Design (sub-array) table
One row per Tab 5 sub-array (U1, U2 …) reporting string-sizing margins against the inverter window and energy apportioned by DC share.
| Column | Formula / meaning |
| ILR | Pdc / Pac. Flagged DC-light < 1.0, optimal 1.10–1.30, clip-risk > 1.40 |
| Voc margin | (Vdc,max − Voc,string at Tmin) / Vdc,max × 100 — head-room below the inverter absolute-max DC voltage |
| Vmp margin | Tightest margin of operating Vmp inside the MPPT window (cold-top & hot-bottom) |
| MPPT I | Array current per MPPT ÷ MPPT input-current limit × 100 |
| Inv I | Total DC current ÷ inverter DC-current limit × 100 |
| Eac, Yf, CF | Energy = Eac,system · (DCunit/DCtotal); Yf = E/DC; CF = E/(AC·8760)·100 |
2. IEC 61724-1 yield & loss accounting
Yr = H_POA / G_STC (reference yield, h) G_STC = 1 kW/m²
Ya = E_array / P_nom (array yield, kWh/kWp)
Yf = E_AC / P_nom (final yield, kWh/kWp)
Lc = Yr − Ya (capture loss) Ls = Ya − Yf (system loss)
PR = Yf / Yr × 100 (performance ratio, %)
3. Weather-corrected performance
Energy-weighted mean cell temperature and PR corrected to 25 °C, separating the thermal component from the rest of the loss chain so designs at different sites can be compared on equal terms.
4. Operating-point distributions hourly
| Chart | What it shows / method |
| POA Irradiance Regime | Energy-weighted histogram of operating POA (bins 0–1100+ W/m²): each bin = Σ Eac while POA in band ÷ annual E. Caption gives the energy-weighted mean POA — the band that makes most of the kWh. |
| Cell-Temperature Distribution | Energy-weighted histogram of Tcell (<15 … >65 °C). Caption gives energy-weighted mean Tcell — the driver of thermal capture loss. |
| Part-Load Signature — PR vs Irradiance | Instantaneous PR binned by POA (100 W/m²). PRinst = (PAC/PDC,rated)/(G/1000). Rising-then-flat is healthy; a high-irradiance droop indicates inverter clipping. |
| Thermal Signature — PR vs Cell Temp | Instantaneous PR binned by Tcell (5 °C). The downward slope is the in-situ temperature signature; its gradient tracks the module Pmax coefficient. |
| Generation Heatmap | Mean AC generation (kWh) by clock hour (rows) × month (columns) — reveals seasonal day-length, peak-sun timing and any midday clipping plateau. |
Standards: IEC 61724-1:2021 (yield, PR, loss definitions). Instantaneous PR normalises to STC irradiance, so values approach 1.0 (100%) in clean mid-range light.
🎚 Sensitivity Analysis (Tornado)
Ranks how strongly annual AC energy responds to each design/site parameter, perturbed independently about the current design point. Runs on the fast monthly engine for responsiveness.
ΔE_i (%) = (E_AC(base + perturbation_i) − E_AC(base)) / E_AC(base) × 100
Parameters swept
| Parameter | Perturbation |
| Tilt | ±5° |
| Azimuth | ±15° |
| Ground albedo | ±0.10 |
| Thermal coefficient Uc | ±20% |
| Soiling loss | +2 pt |
| DC ohmic loss | +1 pt |
Bars are first-order, independent responses — combined effects are not additive. Use the ranking to decide which inputs to refine, then confirm magnitudes with a full Hourly run.
🎲 Uncertainty Analysis — P50 / P75 / P90 / P95
Combines six independent 1σ uncertainty sources by root-sum-square (RSS) into a total uncertainty, then converts it to exceedance percentiles — the bankability band lenders size debt against.
σ_total = √(σ_IAV² + σ_data² + σ_model² + σ_transp² + σ_soil² + σ_temp²) (%, 1σ)
P_X = P50 × (1 − z_X · σ_total)
z: P50 = 0.000 P75 = 0.674 P90 = 1.282 P95 = 1.645
The six sources (1σ, % of annual yield)
| Source | Meaning |
| Interannual variability (IAV) | Year-to-year spread of the resource about its long-term mean |
| Resource / data | TMY / measurement uncertainty of the irradiance input |
| Model | PV conversion model error |
| Transposition | Horizontal-to-POA conversion error |
| Soiling | Soiling-estimate uncertainty |
| Temperature | Cell-temperature / thermal-model uncertainty |
Outputs
Variance contribution chart shows each source as a share of total variance (σ², not σ — that is why a slightly larger σ dominates disproportionately). The Annual-energy probability distribution is an assumed-normal curve about P50 with the percentile markers dashed in. The table lists z, the (1 − z·σ) factor, MWh, kWh, specific yield and % of P50.
Standards/practice: IEC 61724-3, IST PVSolar Simulator P50–P90 methodology. P90 is the usual bankable basis. Tab 7's probability table folds IAV into the composite σ; this panel lets you isolate and re-weight each source. Note the Tab 7 probability chart now uses the same Gaussian-curve presentation as this panel.
🤖 AI & Machine Learning Application hourly
Lightweight, fully transparent models trained client-side on the simulated hourly dataset — no external library and no data leaves the page. The core is ordinary least squares (OLS) via the normal equations with ridge stabilisation; features are scaled (POA/1000, Tcell/100) for good conditioning. Because they learn the simulator's own physics, they are for methodology research and teaching — field use needs real monitored data.
OLS: β = (XᵀX + λI)⁻¹ Xᵀy (ridge λ stabilises the inversion)
Reported per model: R² (fit quality) and RMSE
Models
| Model | Form |
| Energy prediction | P̂AC = β₀ + β₁g + β₂g² + β₃t + β₄g·t (g = POA/1000, t = Tcell/100) |
| Performance ratio | P̂R = β₀ + β₁g + β₂t — the β₂/100 term is the data-driven %PR/°C thermal sensitivity |
| Fault / anomaly | z-score of observed vs expected output; flags CHECK when |z| is large (sensor/clipping) |
| Soiling prediction | loss(%) = rate · days; rate calibrated so the 30-day cycle mean matches the site soiling loss (rate = 2·meanSoil/30 %/day) |
| Cleaning schedule | Finds the cleaning interval minimising total annual cost = energy lost to soiling + cleaning spend |
| Weather forecasting | Daily-GHI model over a full-year hourly series (reports daily-GHI R²) |
Each predictor is interactive — change the inputs and the predicted output updates live, so you can probe the learned response surface.
🌡 Module / Thermal Model Characterisation hourly
Calibrates four standard cell-temperature models against the simulator's own hourly Tcell series (treated as truth), then ranks them on temperature accuracy and on the energy error they would cause.
Faiman (2008): T_cell = T_amb + G / (U0 + U1·WS) (2-param, wind-aware; default)
NOCT (IEC 61215): T_cell = T_amb + G·(NOCT − 20)/800 (1-param nameplate; NOCT @ 800 W/m², 20 °C, 1 m/s)
Sandia (King 2004): T_cell = T_mod + (G/1000)·ΔT (mount-type coefficients a, b, ΔT)
Ross (1976): T_cell = T_amb + k·G (1-param simplest, no wind)
Accuracy metrics
RMSE = √(Σ(T_model − T_sim)² / n) MAE = Σ|T_model − T_sim| / n
R² = 1 − SS_res / SS_tot
Energy error (%): replace T_sim with T_model, recompute P_AC via γ_Pmax·ΔT, integrate over the year
Faiman/NOCT/Ross slopes are recovered by linear OLS (e.g. Faiman linearises as G/(Tcell−Tamb) = U0 + U1·WS). The comparison view ranks models by Tcell RMSE (🏆 = best) and shows the energy error each induces; a ±1 °C mean offset is roughly ±|γPmax|% energy.
Standards: IEC 61215 (NOCT), Faiman (2008), King et al. (Sandia, 2004), Ross (1976). Faiman's wind term makes it the most accurate in windy/open-rack climates; NOCT/Ross tend to over-predict at high wind speed.
🔌 Inverter Characterisation hourly
Characterises five inverter behaviours from the hourly series.
| Study | Method / metric |
| MPPT efficiency | ηMPPT distribution vs DC load fraction |
| Clipping | Clipped-energy fraction, clipped-hour count and the POA threshold at which clipping begins (set by ILR & AC rating) |
| Partial loading — efficiency curve | AC-power / conversion efficiency vs DC load fraction (the Euro-η weighting region) |
| Voltage window utilisation | Fraction of operating Vmp that sits inside the MPPT voltage window |
| Reactive power operation | Power-factor / Q-capacity headroom: Q = √(S² − P²), S = PAC/PF |
Standards: IEC 61683 (efficiency), EN 50530 (Euro/overall MPPT efficiency), grid-code reactive-power envelopes (CEA / IEC 62116).
🌑 Shading Characterisation hourly
Derives hourly row-to-row self-shading factors from the simulated geometry using five models, then reports annual and monthly losses and two sample weeks.
Row-to-row geometric factor (per step):
f_rr(h) = max(0, 1 − GCR · cos(SZA(h)) / sin(tilt)) (GCR = ground-cover ratio)
| Model | Treatment of diffuse / sky |
| Raycast | Direct-beam geometric blocking (baseline) |
| Sky-view | Adds isotropic sky-view-factor reduction between rows |
| Isotropic diffuse | Uniform sky diffuse masking |
| Perez | Anisotropic: circumsolar + horizon brightening reduce the diffuse loss |
| Near-shading | Near-shading electrical/optical blend |
Outputs
Annual shading loss by model, monthly shading loss, and the time-based shading factor for a sample winter week and a sample summer week (when low winter sun angles make row shading worst). Full 8,760-step factors are available via Export Hourly CSV.
Standards/refs: IEC 61724-1 loss framework; Perez (1990) anisotropic diffuse; Near-shading methodology.
⚡ Bifacial Characterisation
Explores the rear-side gain predicted by the simplified view-factor model used by the engine, as a function of ground albedo, mounting height and surface type.
G_rear = ρ · G_front · (1 − GCR) · VF_ground · VF_height
VF_ground ≈ (1 − cos(tilt)) / 2 (ground view factor from the rear face)
Bifacial gain (%) = φ · G_rear / G_front × 100 (φ = module bifaciality factor)
Studies
| Chart | Sweep |
| Gain vs ground albedo | ρ from low (asphalt) to high (snow/white membrane) |
| Gain vs mounting height | Ground clearance (m) — higher = more uniform rear irradiance |
| Gain by ground surface type | Five real-world albedo classes |
| Model comparison | View-factor vs Marion (2017) and related models |
Refs: Marion et al. (2017) view-factor method; bifacial model. Simplified view-factor models typically predict 5–8% lower rear irradiance than NREL bifacial_radiance ray-tracing — treat results as a conservative estimate.
📡 SCADA Benchmarking needs measured data
Validates the simulated energy against uploaded measured operational data (hourly SCADA), aligning the two series by timestamp and reporting standard validation statistics overall, by month, by irradiance band and by hour-of-day.
MBE = Σ(sim − meas)/n (mean bias error; % of mean shown too)
MAE = Σ|sim − meas|/n
RMSE = √(Σ(sim − meas)²/n)
nRMSE = RMSE / mean(meas) × 100 (also normalisable to plant capacity)
R² = squared Pearson correlation
Regression: meas = a + b·sim (slope b, intercept a)
Charts
| Chart | Reads as |
| Parity — measured vs simulated | Scatter with 1:1 (dashed) and fitted line (red). Slope > 1 ⇒ model under-predicts. |
| Monthly energy reconciliation | Dual bars (measured vs simulated) per month |
| Hour-of-day bias profile | Mean % bias by clock hour — exposes time-of-day errors (e.g. AM/PM transposition) |
| Residual heatmap | Mean % bias by hour × month — localises where the model drifts |
Bias colour guide: |MBE| < 3% green, 3–7% amber, > 7% red. Standard: IEC 61724-1/-2 energy-performance evaluation. Aligned hourly pairs export to scada_aligned_hourly.csv.
🖼 Chart Watermark & PNG Export new
Centre watermark on every chart
Every chart across the app — server-rendered (POA, Eac, probability, grid, life, PR, Sankey, finance, clipping) and client-rendered (all Research charts, Monte-Carlo, satellite-tracker charts) — carries a faint light-gray box at its centre reading IST PVSolar / Simulator. On-screen it is drawn at 9 px bold; the link is size-guarded so small UI icons never receive it.
⬇ Download .PNG (Research tab)
Beneath each Research chart is a Download .PNG link. It rasterises that chart on a white background at 2× resolution and saves it. The exported PNG re-stamps the watermark at 12 px for print legibility.
| Item | Detail |
| File name | chart-name-IST-PVSolar-Simulator.png (chart name auto-derived from its title) |
| On-screen watermark | 9 px bold, opacity 0.55, light-gray box, centred |
| PNG watermark | 12 px bold, centred, on a white background |
| Resolution | 2× the chart's native size, PNG (lossless) |
PNG export uses only inline SVG → canvas (no external images), so it works offline and never fails on a cross-origin canvas error.
Solar Resource & Data
| Source | What & when |
| NASA POWER (SSE) | multi-year monthly GHI/DNI/DHI/Temp/Wind climatology (MERRA-2) — the monthly table (Step 1). |
| 🛰 NASA Hourly TMY | typical-year hourly built from NASA POWER hourly climatology (06:00–18:00 LST, 365 days). |
| 🇪🇺 PVGIS TMY | ISO 15927-4 Typical Meteorological Year with measured beam-normal DNI. |
| 📝 Manual input (Meteonorm / SolarGIS / SolarAnywhere / other TMY) | type a named third-party bankable-grade dataset (e.g. Meteonorm 8.2, SolarGIS Prospect, SolarAnywhere TGY) directly into the Manual Solar Resource Input card — Data Source Name and Year-to-Year GHI Variability feed the Weather Source label and the IAV uncertainty input, and enabling it clears the Monthly Weather Data table so the source's own GHI/DNI/DHI/Temp/Wind/Humidity values can be typed in. |
| Deterministic synthetic | hourly series disaggregated from the monthly table when no TMY/manual source is used. |
Reproducibility. The hourly/sub-hourly auto path derives weather deterministically from the monthly table, so the same design gives the same PR every run. Import a TMY, or enable Manual Solar Resource Input, to run against measured/bankable-grade hourly or named-source data (Step 1) — the active source is always shown in the status line and under Solar Resource for Simulation.
Report Generation
Three report outputs are available, each opened in a print-preview window — use the browser Print / Save as PDF dialog to save each. Run a simulation first so every report carries live results.
| Report | What it contains |
| 📄 Simulation Report | Project → Generate Report with SLD (or the Step 7 button) builds an 8-page A4 PDF: cover & project info, site & resource, system design, loss waterfall, monthly & annual results, P50/P90, 25-year forecast, CO₂ and Single Line Diagram; plus economics & Monte-Carlo bankability pages (up to 12 pages total) when Include in Report is ticked in Step 6, and an extra LT Panel / Grid Interconnection page when that diagram is shown. |
| 🗺 DC & AC Cable Route Diagram | From Step 7's electrical/cable schedule card — a 2-page print: Page 1 is the Protection & Cable Schedule (Item / Specification / Standard / Remark), Page 2 is the DC- and AC-side cable route diagram (String → String-to-DCDB → Inverter → ACDB) with cable sizing (by Isc per string / inverter full-load current) and the voltage-drop calculation using the actual site Cable Route Length inputs. |
| 🏦 PV Solar — Bankability Assessment Report | 🏦 Generate Bankability Assessment Report (Step 6, Financial Due Diligence) — a lender-facing document built from the Technology Assessment and Global Bankability Inputs cards: Technology, Developer/EPC, Legal, Insurance/Country-Risk, ESAP and Fiscal sections, the CAPEX benchmark (Country-wise Bankability Bands), the four bankability-card ratings and Overall Verdict, the Full Cash-Flow table and the consolidated Conditions Precedent table. |
Industry Best Practices
- ILR (DC/AC) 1.1–1.3 for Indian irradiance; higher raises clipping.
- Tilt ≈ latitude for annual energy; lower for summer-biased loads; use Auto-Optimize.
- Row spacing: design to the full-year (winter) shadow-free pitch; check the GCR vs bifacial-gain trade-off.
- Bankable runs: import a measured TMY and use Hourly/Sub-hourly with the single-diode model.
- Soiling/cleaning: schedule per MNRE norms (pre-/post-monsoon, winter fog).
- Certification: ALMM List-I modules, BIS-QCO inverters.
Troubleshooting
| Symptom | Cause / fix |
| PR differs between runs | You switched weather source (TMY vs synthetic) or resolution. The auto path is deterministic; the status line shows the active source. |
| Cannot run simulation | Select a module & inverter (Step 3) and add ≥ 1 sub-array (Step 5). |
| Red electrical check | Adjust modules/string so Voc_max ≤ Vdc_max and the MPP window fits the MPPT range. |
| Very low PR with TMY | High ILR → clipping on peaky measured weather; lower the DC/AC ratio. |
| NASA fetch fails | Network/rate-limit; enter the monthly table manually or import PVGIS TMY. |
| GCR > 100% (summer) | Per-season artefact when pitch < collector slant; the applied design pitch is the winter-governed value. |
References & Default Values
Key engine defaults
| Parameter | Default |
| Ground albedo ρ | 0.2 |
| Uc / Uv (Faiman) | 25 / 6.84 |
| IAM ar (Martin-Ruiz) | 0.16 |
| IAV / data / model / component σ | 5 / 5 / 2 / 2 % → σ_total 7.62% |
| Degradation | 0.5%/yr (module) · 0.7%/yr (economics) |
| CO₂ factor | 0.82 kg/kWh |
| Tariff / escalation / discount / life | ₹7.5 · 5% · 10% · 25 yr |
| Module height / gap | 1.05 m / 20 mm → L = 2.12 m |
| Far-horizon shading | 0.5% |
| PV model / resolution | single-diode / monthly |
Glossary
| Term | Meaning |
| GHI / DNI / DHI | Global-horizontal / Direct-normal / Diffuse-horizontal irradiance |
| POA / H_POA | Plane-of-array irradiance / annual POA insolation (kWh/m²/yr) |
| PR / Yf / Ya / CF | Performance ratio / final yield / array yield / capacity factor |
| AOI / IAM | Angle of incidence / incidence-angle modifier |
| NOCT | Nominal operating cell temperature |
| Uc / Uv | Faiman constant & wind heat-loss coefficients |
| ILR | Inverter loading ratio (DC/AC) |
| GCR | Ground coverage ratio (collector slant / pitch) |
| ɸ (bifaciality) | Rear/front efficiency ratio of a bifacial module |
| TMY | Typical Meteorological Year (hourly) |
| IAV | Inter-annual variability of the resource |
| P50 / P90 | Energy exceedance probabilities (P90 = lender-conservative) |
| LCOE / NPV / IRR / DSCR | Levelised cost / net present value / internal rate of return / debt-service coverage |
| STC | Standard test conditions (1000 W/m², 25°C, AM1.5) |
| ALMM / QCO | Approved List of Models & Manufacturers / Quality Control Order |
| PMSGMY | PM Surya Ghar: Muft Bijli Yojana (rooftop subsidy) |
| MERRA-2 | NASA reanalysis dataset behind NASA POWER |
| CBD | Central Business District |
| SEZ | Special Economic Zone |