.. _fpc_physical_ref: Flat Plate Collector (Physical) =============================== .. code-block:: python from watertap_contrib.reflo.solar_models import FlatPlatePhysical .. note:: This model was designed for use in a model utilizing the `multiperiod framework `_. Steady-state applications are not recommended. This Flat Plate Collector (FPC) unit model is a physical model that inherits its base model structure from the :ref:`Solar Energy Base Class `. A flat plate collector (FPC) converts solar energy into thermal energy that is transferred to a heat transfer fluid. Solar collectors usually operate with low and variable energy and do not track the sun, thus requiring minimal maintenance. They can deliver moderate temperatures up to 100°C. The following model uses physical equations to predict the useful heat generated by an FPC as a function of its design, heat transfer fluid and irradiance. Degrees of Freedom & Variables ------------------------------- The model has 6 degrees of freedom that should be fixed for the unit to be fully specified. The following 4 variables define the input stream state variables. .. csv-table:: :header: "Variables", "Variable Name", "Symbol", "Units" "Inlet mass flow rate liquid water", "``flow_mass_phase_comp['Liq','H2O']``", ":math:`m_{l}`", ":math:`\text{kg} / \text{s}`" "Inlet mass flow rate vapor water", "``flow_mass_phase_comp['Vap','H2O']``", ":math:`m_{v}`", ":math:`\text{kg} / \text{s}`" "Inlet temperature", "``temperature``", ":math:`T_{f}`", ":math:`\text{K}`" "Inlet pressure", "``pressure``", ":math:`P_{in}`", ":math:`\text{Pa}`" The following variables must be fixed by the user for a fully defined model. .. csv-table:: :header: "Variables", "Variable Name", "Symbol", "Units" "Collector area", "``collector_area``", ":math:`A_{c}`", ":math:`\text{m}^2`" "Total irradiance", "``total_irradiance``", ":math:`G_{total}`", ":math:`\text{W}/\text{m}^2`" Model Structure --------------- This flat plate collector model consists of 2 StateBlocks assigned to the inlet and outlet ports of the heating fluid. * ``inlet_block`` * ``outlet_block`` The mass flow rate of liquid and vapor water, temperature, and pressure at the inlet port must be specified by the user. Sets ---- The model consists of the phase set included in the property package. .. csv-table:: :header: "Description", "Symbol", "Indices" "Time", ":math:`t`", "[0]" "Phases", ":math:`p`", "['Liq', 'Vap']" Parameters ---------- The following parameters are used and are mutable (except for the test conditions). .. csv-table:: :header: "Description", "Parameter Name", "Symbol", "Value", "Units" "Number of collectors", "``number_collectors``", ":math:`n_{c}`", "1", ":math:`\text{dimensionless}`" "Product of cover transmittance and shortwave absorptivity of absorber", "``trans_absorb_prod``", ":math:`\tau\alpha`", "1", ":math:`\text{dimensionless}`" "Product of collector heat removal factor, cover transmittance, and shortwave absorptivity of absorber", "``FR_ta``", ":math:`{F}_{R}\tau\alpha`", "0.689", ":math:`\text{dimensionless}`" "Product of collector heat removal factor and overall heat loss coeff. of collector", "``FR_UL``", ":math:`{F}_{R}{U}_{L}`", "3.85", ":math:`\text{W}\text{/m}^2\text{/K}`" "Mass flow rate of fluid during characterization test (fixed)", "``mdot_test``", ":math:`\dot{m}_{test}`", "1", ":math:`\text{kg/s}`" "Specific heat capacity of fluid during characterization test (fixed)", "``cp_test``", ":math:`c_{ptest}`", "4184", ":math:`\text{J/kg/K}`" "Specific heat capacity of fluid being used for heat transfer in operation", "``cp_use``", ":math:`c_{use}`", "4184", ":math:`\text{J/kg/K}`" "Pump power", "``pump_power``", ":math:`P_{pump}`", "1", ":math:`\text{W}`" "Pump efficiency", "``pump_eff``", ":math:`\eta_{pump}`", "1", ":math:`\text{dimensionless}`" "Ambient temperature", "``temperature_ambient``", ":math:`T_{amb}`", "303.15", ":math:`\text{K}`" "Maximum irradiance at the location", "``max_irradiance``", ":math:`G_{max}`", "1000", ":math:`\text{W}/\text{m}^2`" "Influent minus ambient temperature", "``factor_delta_T``", ":math:`\Delta T`", "0.03", ":math:`\text{K}`" Equations --------- The following equations calculate the variables used in estimating heat transfer in a flat plate collector. .. csv-table:: :header: "Description", "Variable Name", "Equation", "Units" "Product of collector efficiency factor and overall heat loss coefficient at test conditions","``Fprime_UL``", ":math:`F^{'}U_{L} = -(\dot{m}_{test}*{c}_{ptest})/A_{c}* log(1-{F}_{R}{U}_{L}*A_{c}/(\dot{m}_{test}*{c}_{ptest}))`",":math:`\text{dimensionless}`" "Ratio of FRta_use to FRta_test","``ratio_FRta``", ":math:`r = [m_{l}*{c}_{ptest}/A_{c}]*[1 - \text{exp}(-A_{c}*F^{'}U_{L}/m_{l}*{c}_{ptest})]/F_{R}U_{L}|_{test}`", ":math:`\text{dimensionless}`" "Useful net heat gain","``net_heat_gain``", ":math:`P_{gain} = {n}_{c}*A_{c}*r*(F_{R}\tau\alpha*G_{total}*\tau\alpha - F_{R}U_{L}*(T_{f}-{T}_{amb}))`", ":math:`\text{W}`" "Rated plant heat capacity", "``system_capacity``", ":math:`P_{th} = {n}_{c}*A_{c}*(F_{R}\tau\alpha*G_{total}*\tau\alpha - F_{R}U_{L}*\Delta T )`", ":math:`\text{MW}`" "Annual thermal energy produced by the system","``heat_annual``", ":math:`H_{annual} = P_{gain} * 8760`", ":math:`\text{kWh}`" Costing --------- The costing approach is adopted from the SAM costing for flat plate collector systems. The following parameters are constructed on the costing block for FPC costing: .. csv-table:: :header: "Cost Component", "Variable", "Symbol", "Value", "Units", "Description" "Cost per area collector", "``cost_per_area_collector``", ":math:`c_{c}`", "600", ":math:`\text{USD/m}^2`", "Cost per area for solar collector" "Cost per volume storage", "``cost_per_volume_storage``", ":math:`c_{hs}`", "120", ":math:`\text{USD}\text{/m}^3`", "Cost per volume for thermal storage" "Contingency factor", "``contingency_frac_direct_cost``", ":math:`X_{c}`", "0.07", ":math:`\text{dimensionless}`", "Fraction of direct costs for contingency" "Indirect cost factor", "``indirect_frac_direct_cost``", ":math:`X_{i}`", "0.11", ":math:`\text{dimensionless}`", "Fraction of direct costs for indirect costs" "Sales tax as fraction of capital costs", "``sales_tax_frac``", ":math:`X_{t}`", "0", ":math:`\text{dimensionless}`", "Sales tax as fraction of capital costs" "Fixed operating cost per system capacity", "``fixed_operating_by_capacity``", ":math:`c_{fix,op}`", "16", ":math:`\text{USD/kW/year}`", "Fixed operating cost of flat plate plant per kW capacity" .. csv-table:: :header: "Cost Component", "Symbol", "Equation" "Collector cost", ":math:`C_{coll}`", ":math:`c_{c} \times A_{total}`" "Land Cost", ":math:`C_{land}`", ":math:`c_{land} \times A_{land}`" "Fixed Operating Cost", ":math:`C_{fix,op}`", ":math:`c_{fix,op} \times P_{th}`" The direct costs include the cost of the collectors and contingency. .. math:: C_{direct} = C_{coll} * (1 + X_{c}) Indirect costs are calculated as a fraction of the direct costs and the land cost: .. math:: C_{indirect} = A_{land} c_{land} + C_{direct} X_{i} The total capital cost of the FPC system is the sum of direct and indirect costs and sales tax: .. math:: C_{capital} = (C_{indirect} + C_{direct}) (1 + X_{t}) Note that by default, REFLO assumes no sales tax (i.e., :math:`X_{t} = 0`) or land cost (i.e., :math:`c_{land} = 0`). The total operating cost is the fixed operating cost: .. math:: C_{operating} = C_{fix,op} Energy Balance -------------- The FPC model has both thermal and electric power flows. The steady-state thermal output of the FPC system is calculated as: .. math:: Q_{out} = H_{annual} / 8760 - :math:`Q_{out}` is the steady-state thermal output (in kW) at the target temperature - :math:`H_{annual}` is the annual thermal energy generation (in kWh) The parasitic power consumption of the FPC system is calculated as: .. math:: P_{cons} = E_{annual} / 8760 - :math:`P_{cons}` is the parasitic power consumption (in kW) - :math:`E_{annual}` is the annual electric energy consumption (in kWh) References ---------- [1] Solar Engineering of Thermal Processes, Duffie and Beckman, 4th ed.