示例#1
0
        public static CompiledOutputData run(GISData gis, GUIData gui)
        {
            PVSAMV1Settings           pvss       = GISAdapter.getSettings(gis);
            float                     arraypower = pvss.modules_per_string * pvss.strings_in_parallel * pvss.module_model.getRatedPower();
            DatasheetInverterSettings inverter   = new DatasheetInverterSettings("default", arraypower * 1.15f);

            pvss.inverter_model = inverter;

            PVSAMV1Output pvo = (PVSAMV1Output)ModuleRunner.runModule(pvss);

            UtilityRateSettings urs = GUIAdapter.getUtilityRateSettings(gui);

            urs.setValuesFromPriorOutput(pvo);
            UtilityRateOutput uro = (UtilityRateOutput)ModuleRunner.runModule(urs);


            SizeAndCostSettings sc = GUIAdapter.getSizeAndCostSettings(gui);

            sc.setValuesFromPriorOutput(pvo);

            CashLoanSettings cls = GUIAdapter.getCashLoanSettings(gui);

            cls.setValuesFromPriorOutput(sc, uro);
            CashLoanOutput clo = (CashLoanOutput)ModuleRunner.runModule(cls);

            return(new CompiledOutputData(pvo, uro, clo, sc));
        }
示例#2
0
        public void setValuesFromPriorOutput(PVSAMV1Output smo)
        {
            ac_rating = smo.inv_ac_rating;
            dc_rating = smo.sys_dc_rating * 1000;

            direct_cost = dc_rating * (pv_cost_per_watt_dc + other_system_cost_per_watt_dc + installation_cost_per_watt_dc + installer_overhead_per_watt_dc)
                          + ac_rating * inv_cost_per_watt_ac;
            float sales_tax = (direct_cost) * (sales_tax_rate / 100f) * (sales_tax_cost_basis_as_pct / 100f);

            indirect_cost = sales_tax + dc_rating * (permitting_env_cost_per_watt_dc + engineering_cost_per_watt_dc + grid_intercon_cost_per_watt_dc + land_cost_per_watt_dc);


            if (use_overall_cost_per_watt_dc > 0)
            {
                direct_cost   *= overall_cost_per_watt_dc / cost_per_watt_dc;
                indirect_cost *= overall_cost_per_watt_dc / cost_per_watt_dc;
            }
        }
示例#3
0
 public void setValuesFromPriorOutput(PVSAMV1Output s)
 {
     e_with_system = s.getHourlyElectricityProuction();
 }