I am currently at the final stage of my GSoC (#2750). After expanding support for diffuse components in transposition functions and adding support for diffuse component-specific IAM in the Array and PVSystem classes, the remaining step is to integrate this functionality into ModelChain.
Here are some points I think are worth discussing:
Default behavior
The existing behavior applied fd to all diffuse irradiance. fd was essentially always 1, meaning no optical losses were accounted for for diffuse irradiance.
What should the new default behavior be?
marion_diffuse is a good candidate for a default diffuse IAM model, since it is the only model that supports all three diffuse components: sky diffuse, horizon, and ground. (martin_ruiz_diffuse and schlick_diffuse support sky ground only).
As for marion_diffuse's model parameter (i.e. the direct IAM model used by the Marion integration method), I'm considering doing something like the existing infer_aoi_model which selects a model based on the available parameters when the user does not explicitly choose one.
FD
Do we want to keep FD around as an option?
Handling missing IAM for existing components
Let's say the user chooses the perez transposition model, and therefore diffuse irradiance includes the horizon component, and then chooses the martin_ruiz_diffuse IAM model, which does not provide an IAM for the horizon component. How should this be handled?
Options:
- Throw an error prompting the user to select a compatible combination of transposition and IAM models
- Apply the sky diffuse IAM to the horizon component
- Apply no optical losses to the horizon component
- Something else?
I am currently at the final stage of my GSoC (#2750). After expanding support for diffuse components in transposition functions and adding support for diffuse component-specific IAM in the
ArrayandPVSystemclasses, the remaining step is to integrate this functionality intoModelChain.Here are some points I think are worth discussing:
Default behavior
The existing behavior applied
fdto all diffuse irradiance.fdwas essentially always 1, meaning no optical losses were accounted for for diffuse irradiance.What should the new default behavior be?
marion_diffuseis a good candidate for a default diffuse IAM model, since it is the only model that supports all three diffuse components: sky diffuse, horizon, and ground. (martin_ruiz_diffuseandschlick_diffusesupport sky ground only).As for
marion_diffuse'smodelparameter (i.e. the direct IAM model used by the Marion integration method), I'm considering doing something like the existinginfer_aoi_modelwhich selects a model based on the available parameters when the user does not explicitly choose one.FD
Do we want to keep FD around as an option?
Handling missing IAM for existing components
Let's say the user chooses the
pereztransposition model, and therefore diffuse irradiance includes the horizon component, and then chooses themartin_ruiz_diffuseIAM model, which does not provide an IAM for the horizon component. How should this be handled?Options: