Skip to content

Dynamic Snow Loss Model #2044

@kylefmacdonald

Description

@kylefmacdonald

Is your feature request related to a problem? Please describe.
Snow loss modelling is difficult and currently the only model available on pvlib at an hourly timestep is the Marion model:

https://pvlib-python.readthedocs.io/en/v0.10.4/reference/generated/pvlib.snow.coverage_nrel.html

However this model does not account for the movement of a tracker and the snow pile that may accumulate.

Describe the solution you'd like
In 2018, Defne Gun, Mike Anderson, Greg Kimball, and Ben Bourne developed a dynamic snow loss model:

https://gregorykimball.me/wp-content/uploads/2018/07/mewcpec1079_0614162840_snow_2018.pdf

My solution would be to contribute this code to pvlib so the industry may model snow losses accounted for the dynamic nature of Horizontal Single Axis Tracker (HSAT) systems. I wrote code 2 years ago when I was relatively new to python. I would appreciate any feedback and advice you have however in the meantime I will also review my code as I am sure it can be improved. After an initial look I will start by refactoring to functional programming (I can also refactor to OOP if that is what you would prefer). In addition I will also update the code to follow the pvlib guidelines.

Describe alternatives you've considered
No other dynamic model currently exists in pvlib, I am simply using a model that has already been developed and released publicly.

Thank you in advance for the guidance and help on this, looking forward to contributing!

Activity

echedey-ls

echedey-ls commented on May 10, 2024

@echedey-ls
Contributor

Now that's what I call well commented code! The functional programming is perfectly fine. OOP can be tackled down in another PR.

Just a heads up, that's a pretty big model, so be patient to get it all working and reviewed. In any case, that's gonna be a nice contribution!

Recommended readings and tips:

kylefmacdonald

kylefmacdonald commented on May 10, 2024

@kylefmacdonald
Author
echedey-ls

echedey-ls commented on May 10, 2024

@echedey-ls
Contributor

Feel free to do what you need, although I'd leave this open at least as a possible addition.

In any case, if you go further with the code, opening a pull request is possibly a better fit!

(Btw, I'm just a contributor, I wouldn't be able to close your issue)

echedey-ls

echedey-ls commented on May 11, 2024

@echedey-ls
Contributor

It would be too boring if I told you everything that must be done. It's a requirement to figure out some of the changes ;). What's more, isn't open source just another form of human creativity? I'd say it's the finest one.

Seriously, lurk over the repo, it will also help you be confident with it.

cwhanse

cwhanse commented on May 14, 2024

@cwhanse
Member
kylefmacdonald

kylefmacdonald commented on May 14, 2024

@kylefmacdonald
Author
cwhanse

cwhanse commented on May 14, 2024

@cwhanse
Member

I understand. Just to be clear, opening the issue doesn't obligate you to provide code.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @cwhanse@kylefmacdonald@echedey-ls

        Issue actions

          Dynamic Snow Loss Model · Issue #2044 · pvlib/pvlib-python