{"id":341474,"name":"WEIS","description":"WEIS is a framework that combines multiple tools to enable design optimization of floating offshore wind turbines.","url":"https://github.com/nlrwindsystems/weis","last_synced_at":"2026-04-20T11:00:41.516Z","repository":{"id":37871140,"uuid":"289320573","full_name":"NLRWindSystems/WEIS","owner":"NLRWindSystems","description":"Workflow for Energy with Integrated Servo-controls Toolset","archived":false,"fork":false,"pushed_at":"2026-04-10T03:48:16.000Z","size":249587,"stargazers_count":68,"open_issues_count":15,"forks_count":54,"subscribers_count":12,"default_branch":"main","last_synced_at":"2026-04-10T05:23:30.350Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://weis.readthedocs.io/en/latest/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NLRWindSystems.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-08-21T16:54:28.000Z","updated_at":"2026-03-27T21:57:01.000Z","dependencies_parsed_at":"2024-03-18T06:03:20.072Z","dependency_job_id":"e5daa4c1-a1e9-4aa1-8a49-a442fb490dfe","html_url":"https://github.com/NLRWindSystems/WEIS","commit_stats":{"total_commits":3788,"total_committers":35,"mean_commits":"108.22857142857143","dds":0.6404435058078142,"last_synced_commit":"375bed11a3c449de7c8f144a042673f0d084289a"},"previous_names":["wisdem/weis"],"tags_count":19,"template":false,"template_full_name":null,"purl":"pkg:github/NLRWindSystems/WEIS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NLRWindSystems%2FWEIS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NLRWindSystems%2FWEIS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NLRWindSystems%2FWEIS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NLRWindSystems%2FWEIS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NLRWindSystems","download_url":"https://codeload.github.com/NLRWindSystems/WEIS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NLRWindSystems%2FWEIS/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31878830,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-16T07:36:03.521Z","status":"ssl_error","status_checked_at":"2026-04-16T07:35:53.576Z","response_time":69,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"NLRWindSystems","name":"NLRWindSystems","uuid":"5444272","kind":"organization","description":"The home of wind energy systems models developed, released, and maintained by the National Laboratory of the Rockies, formerly named NREL ","email":"systems.engineering@nrel.gov","website":"https://www.nrel.gov/wind/systems-engineering.html","location":"United States of America","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/5444272?v=4","repositories_count":40,"last_synced_at":"2026-01-15T00:49:55.882Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/NLRWindSystems","funding_links":[],"total_stars":null,"followers":95,"following":0,"created_at":"2022-11-06T18:00:11.891Z","updated_at":"2026-01-15T00:49:55.882Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NLRWindSystems","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NLRWindSystems/repositories"},"packages":[],"commits":{"id":11615057,"full_name":"nlrwindsystems/weis","default_branch":"master","total_commits":4092,"total_committers":37,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":110.5945945945946,"dds":0.6671554252199414,"past_year_total_commits":111,"past_year_total_committers":8,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":13.875,"past_year_dds":0.4864864864864865,"last_synced_at":"2026-04-18T05:57:26.643Z","last_synced_commit":"f5055db52b1afd2b87390f23fc4d2a965a003e81","created_at":"2026-01-15T00:01:45.115Z","updated_at":"2026-04-18T05:57:14.665Z","committers":[{"name":"Nikhar Abbas","email":"nikhar.abbas@colorado.edu","login":"nikhar-abbas","count":1362},{"name":"dzalkind","email":"dzalkind@nrel.gov","login":"dzalkind","count":1028},{"name":"Garrett Barter","email":"garrett.barter@nrel.gov","login":"gbarter","count":722},{"name":"pibo","email":"ptrbortolotti@gmail.com","login":"ptrbortolotti","count":404},{"name":"John Jasa","email":"johnjasa11@gmail.com","login":"johnjasa","count":310},{"name":"Sebastiaan Mulders","email":"s.p.mulders@tudelft.nl","login":null,"count":79},{"name":"Rafael M Mudafort","email":"rafmudaf@gmail.com","login":"rafmudaf","count":39},{"name":"Paul","email":"paul.fleming@nrel.gov","login":"paulf81","count":26},{"name":"Jake Nunemaker","email":"jake.d.nunemaker@gmail.com","login":"JakeNunemaker","count":24},{"name":"Mayank Chetan","email":"mayankchetan@gmail.com","login":"mayankchetan","count":21},{"name":"Eliot Quon","email":"eliot.quon@nrel.gov","login":"ewquon","count":9},{"name":"yqliaohk","email":"yqliao@umich.edu","login":"yqliaohk","count":8},{"name":"Sora Ryu","email":"64963755+sora-ryu","login":"sora-ryu","count":6},{"name":"Cory Frontin","email":"cory.frontin@nrel.gov","login":"cfrontin","count":6},{"name":"nikhar-abbas","email":"nikhar.abbas@gmail.com","login":null,"count":6},{"name":"dakotaramos","email":"ramos.dakotasky@gmail.com","login":"dakotaramos","count":5},{"name":"AthulKrishnaSundarrajan","email":"rajan.s.athul@gmail.com","login":"AthulKrishnaSundarrajan","count":4},{"name":"Bartdoekemeijer","email":"B.M.Doekemeijer@tudelft.nl","login":null,"count":4},{"name":"Evan Gaertner","email":"evan.gaertner@gmail.com","login":"evan-gaertner","count":3},{"name":"Emmanuel Branlard","email":"emmanuel.branlard@nrel.gov","login":"ebranlard","count":3},{"name":"gbarter","email":"gbarter@el1.ib0.cm.hpc.nrel.gov","login":null,"count":2},{"name":"Pietro Bortolotti","email":"pbortolo@el2.ib0.cm.hpc.nrel.gov","login":null,"count":2},{"name":"Daniel Zalkind","email":"dzalkind@kl2.head.cm.kestrel.hpc.nrel.gov","login":null,"count":2},{"name":"info@sebastiaanmulders.nl","email":"info@sebastiaanmulders.nl","login":"spmulders","count":2},{"name":"Yong Hoon Lee","email":"yonghoonlee@outlook.com","login":"yonghoonlee","count":2},{"name":"Abhineet Gupta","email":"abhineet.gupta@nrel.gov","login":"abhineet-gupta","count":2},{"name":"Alicia Key","email":"akey7","login":"akey7","count":1},{"name":"Sebastiaan Mulders","email":"sebastiaanmuld@tudelft.net","login":null,"count":1},{"name":"Mayank Chetan","email":"mchetan@x1001c0s5b1n1.hsn.cm.kestrel.hpc.nrel.gov","login":null,"count":1},{"name":"Daniel Zalkind","email":"dzalkind@x1007c0s0b0n1.hsn.cm.kestrel.hpc.nrel.gov","login":null,"count":1},{"name":"Bart Doekemeijer","email":"bmdoekemeijer@hpc06.hpc","login":null,"count":1},{"name":"David Heffernan","email":"david.heff@gmail.com","login":"davidheff","count":1},{"name":"Gerrit Motes","email":"40202026+DeepFriedDerp","login":"DeepFriedDerp","count":1},{"name":"Jenni Rinker","email":"jennirinker","login":"jennirinker","count":1},{"name":"Paul-Emile Meunier","email":"71760505+PE-Meunier","login":"PE-Meunier","count":1},{"name":"Xianping Du","email":"38188001+Seager1989","login":"Seager1989","count":1},{"name":"amoratoc","email":"44236838+amoratoc","login":"amoratoc","count":1}],"past_year_committers":[{"name":"dzalkind","email":"dzalkind@nrel.gov","login":"dzalkind","count":57},{"name":"Garrett Barter","email":"garrett.barter@nrel.gov","login":"gbarter","count":37},{"name":"Pietro Bortolotti","email":"ptrbortolotti@gmail.com","login":"ptrbortolotti","count":9},{"name":"sora-ryu","email":"sryu@umass.edu","login":"sora-ryu","count":3},{"name":"Yingqian Liao","email":"yqliao@umich.edu","login":"yqliaohk","count":2},{"name":"Mayank Chetan","email":"mayankchetan@gmail.com","login":"mayankchetan","count":1},{"name":"Cory Frontin","email":"cory.frontin@nrel.gov","login":"cfrontin","count":1},{"name":"Abhineet Gupta","email":"abhineet.gupta@nrel.gov","login":"abhineet-gupta","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/nlrwindsystems%2Fweis/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-20T00:00:09.037Z","repositories_count":6214605,"commits_count":900268862,"contributors_count":34914974,"owners_count":1143507,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"NLRWindSystems/WEIS","html_url":"https://github.com/NLRWindSystems/WEIS","last_synced_at":"2026-04-18T10:01:03.662Z","status":"active","issues_count":6,"pull_requests_count":8,"avg_time_to_close_issue":null,"avg_time_to_close_pull_request":1209565.0,"issues_closed_count":0,"pull_requests_closed_count":5,"pull_request_authors_count":3,"issue_authors_count":5,"avg_comments_per_issue":1.6666666666666667,"avg_comments_per_pull_request":0.75,"merged_pull_requests_count":5,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":6,"past_year_pull_requests_count":8,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":1209565.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":5,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":5,"past_year_avg_comments_per_issue":1.6666666666666667,"past_year_avg_comments_per_pull_request":0.75,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":5,"created_at":"2026-01-24T00:00:15.666Z","updated_at":"2026-04-18T10:01:03.662Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/NLRWindSystems%2FWEIS","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/NLRWindSystems%2FWEIS/issues","issue_labels_count":{"help wanted":1},"pull_request_labels_count":{},"issue_author_associations_count":{"NONE":6},"pull_request_author_associations_count":{"COLLABORATOR":7,"MEMBER":1},"issue_authors":{"hymdrj":2,"nRiccobo":1,"john-zuluaga":1,"fangjianju":1,"bluemiracle4862":1},"pull_request_authors":{"dzalkind":6,"ptrbortolotti":1,"gbarter":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-20T00:00:09.428Z","repositories_count":14338000,"issues_count":34433006,"pull_requests_count":112728871,"authors_count":11239494,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{"help wanted":1},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{"NONE":6},"past_year_pull_request_author_associations_count":{"COLLABORATOR":7,"MEMBER":1},"past_year_issue_authors":{"hymdrj":2,"bluemiracle4862":1,"fangjianju":1,"john-zuluaga":1,"nRiccobo":1},"past_year_pull_request_authors":{"dzalkind":6,"gbarter":1,"ptrbortolotti":1},"maintainers":[{"login":"dzalkind","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/dzalkind"},{"login":"ptrbortolotti","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ptrbortolotti"},{"login":"gbarter","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gbarter"}],"active_maintainers":[{"login":"dzalkind","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/dzalkind"},{"login":"gbarter","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gbarter"},{"login":"ptrbortolotti","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ptrbortolotti"}]},"events":{"total":{"DeleteEvent":3,"PullRequestEvent":3,"IssuesEvent":8,"IssueCommentEvent":5,"PushEvent":19,"PullRequestReviewEvent":2,"CreateEvent":1},"last_year":{"DeleteEvent":3,"PullRequestEvent":3,"IssuesEvent":8,"IssueCommentEvent":5,"PushEvent":19,"PullRequestReviewEvent":2,"CreateEvent":1}},"keywords":[],"dependencies":[{"ecosystem":"pypi","filepath":"docs/requirements.txt","sha":null,"kind":"manifest","created_at":"2022-07-20T00:48:40.397Z","updated_at":"2022-07-20T00:48:40.397Z","repository_link":"https://github.com/NLRWindSystems/WEIS/blob/main/docs/requirements.txt","dependencies":[{"id":276530928,"package_name":"matplotlib","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276530929,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276530930,"package_name":"scipy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276530931,"package_name":"openmdao","ecosystem":"pypi","requirements":"\u003e=3.2","direct":true,"kind":"runtime","optional":false},{"id":276530932,"package_name":"simpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276530933,"package_name":"marmot-agents","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276530934,"package_name":"sphinx","ecosystem":"pypi","requirements":"\u003e2.0","direct":true,"kind":"runtime","optional":false},{"id":276530935,"package_name":"numpydoc","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276530936,"package_name":"sphinxcontrib-bibtex","ecosystem":"pypi","requirements":"\u003c2.0.0","direct":true,"kind":"runtime","optional":false},{"id":276530937,"package_name":"sphinx-rtd-theme","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2022-07-20T00:48:41.261Z","updated_at":"2022-07-20T00:48:41.261Z","repository_link":"https://github.com/NLRWindSystems/WEIS/blob/main/setup.py","dependencies":[{"id":276541545,"package_name":"openmdao","ecosystem":"pypi","requirements":"\u003e=3.4","direct":true,"kind":"runtime","optional":false},{"id":276541546,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276541547,"package_name":"scipy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276541548,"package_name":"nlopt","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276541549,"package_name":"dill","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276541550,"package_name":"smt","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276541551,"package_name":"control","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276541552,"package_name":"jsonmerge","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":276541553,"package_name":"fatpack","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/CI_WEIS.yml","sha":null,"kind":"manifest","created_at":"2023-12-20T13:18:14.598Z","updated_at":"2023-12-20T13:18:14.598Z","repository_link":"https://github.com/NLRWindSystems/WEIS/blob/main/.github/workflows/CI_WEIS.yml","dependencies":[{"id":15189433625,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":15189433626,"package_name":"s-weigand/setup-conda","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/run_exhaustive_examples.yml","sha":null,"kind":"manifest","created_at":"2023-12-20T13:18:15.020Z","updated_at":"2023-12-20T13:18:15.020Z","repository_link":"https://github.com/NLRWindSystems/WEIS/blob/main/.github/workflows/run_exhaustive_examples.yml","dependencies":[{"id":15189433637,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":15189433638,"package_name":"s-weigand/setup-conda","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2024-01-30T01:49:02.155Z","updated_at":"2024-01-30T01:49:02.155Z","repository_link":"https://github.com/NLRWindSystems/WEIS/blob/main/pyproject.toml","dependencies":[{"id":15912244669,"package_name":"marmot-agents","ecosystem":"pypi","requirements":"\u003e=0.2.5","direct":true,"kind":"runtime","optional":false},{"id":15912245317,"package_name":"mat4py","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912245596,"package_name":"moorpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912245640,"package_name":"nlopt","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912245675,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912245676,"package_name":"openmdao","ecosystem":"pypi","requirements":"\u003c3.28","direct":true,"kind":"runtime","optional":false},{"id":15912245677,"package_name":"openpyxl","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912245678,"package_name":"openraft","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912245679,"package_name":"osqp","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912245680,"package_name":"pcrunch","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912245727,"package_name":"pyhams","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912246383,"package_name":"rosco","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912246769,"package_name":"scipy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912246770,"package_name":"smt","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":15912247580,"package_name":"wisdem","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"conda","filepath":"environment.yml","sha":null,"kind":"manifest","created_at":"2024-03-18T06:03:13.140Z","updated_at":"2024-03-18T06:03:13.140Z","repository_link":"https://github.com/NLRWindSystems/WEIS/blob/main/environment.yml","dependencies":[{"id":16886169757,"package_name":"anyio","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169770,"package_name":"argon2-cffi","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169771,"package_name":"arrow","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169772,"package_name":"async-lru","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169773,"package_name":"babel","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169774,"package_name":"beautifulsoup4","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169775,"package_name":"bleach","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169776,"package_name":"cffi","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169777,"package_name":"comm","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169778,"package_name":"debugpy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169779,"package_name":"decorator","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169780,"package_name":"dill","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169781,"package_name":"executing","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169782,"package_name":"fqdn","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169783,"package_name":"git","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169866,"package_name":"ipython","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169867,"package_name":"isoduration","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169868,"package_name":"jedi","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169869,"package_name":"jinja2","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169870,"package_name":"json5","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169871,"package_name":"jsonmerge","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169885,"package_name":"jupyter","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169886,"package_name":"jupyterlab","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169887,"package_name":"markupsafe","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169888,"package_name":"mat4py","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169952,"package_name":"matplotlib","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169953,"package_name":"meson","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169960,"package_name":"mistune","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169961,"package_name":"moorpy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169996,"package_name":"ninja","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886169997,"package_name":"nlopt","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170023,"package_name":"notebook","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170024,"package_name":"openfast","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170452,"package_name":"openpyxl","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170453,"package_name":"openraft","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170491,"package_name":"osqp","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170588,"package_name":"overrides","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170589,"package_name":"pandas","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170590,"package_name":"parso","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170591,"package_name":"patsy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170592,"package_name":"pcrunch","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170700,"package_name":"pexpect","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170701,"package_name":"pip","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170702,"package_name":"platformdirs","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170703,"package_name":"psutil","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170704,"package_name":"ptyprocess","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886170705,"package_name":"pydoe3","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171140,"package_name":"pygments","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171141,"package_name":"pyhams","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171185,"package_name":"pyoptsparse","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171344,"package_name":"python-json-logger","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171345,"package_name":"pyzmq","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171346,"package_name":"qdldl-python","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171347,"package_name":"qtpy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171348,"package_name":"rosco","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171498,"package_name":"scikit-learn","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171499,"package_name":"setuptools","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171500,"package_name":"smt","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171609,"package_name":"tornado","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171610,"package_name":"traitlets","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171611,"package_name":"treon","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171612,"package_name":"webencodings","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":16886171613,"package_name":"wisdem","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false}]}],"score":8.029758520440822,"created_at":"2026-01-15T00:01:39.066Z","updated_at":"2026-04-20T11:00:41.518Z","avatar_url":"https://github.com/NLRWindSystems.png","language":"Python","category":"Renewable Energy","sub_category":"Wind Energy","monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"# WEIS\n\n[![Coverage Status](https://coveralls.io/repos/github/NLRWindSystems/WEIS/badge.svg?branch=develop)](https://coveralls.io/github/NLRWindSystems/WEIS?branch=develop)\n[![Actions Status](https://github.com/NLRWindSystems/WEIS/workflows/CI_WEIS/badge.svg?branch=develop)](https://github.com/NLRWindSystems/WEIS/actions)\n[![Documentation Status](https://readthedocs.org/projects/weis/badge/?version=develop)](https://weis.readthedocs.io/en/develop/?badge=develop)\n[![DOI](https://zenodo.org/badge/289320573.svg)](https://zenodo.org/badge/latestdoi/289320573)\n\nWEIS, Wind Energy with Integrated Servo-control, performs multifidelity co-design of wind turbines. WEIS is a framework that combines multiple NLR-developed tools to enable design optimization of floating offshore wind turbines.\n\nAuthor: [NLR Wind Systems \u0026 OpenFAST \u0026 Control Teams](mailto:systems.engineering@nrel.gov)\n\n## Part of the WETO Stack\n\nWEIS is primarily developed with the support of the U.S. Department of Energy and is part of the [WETO Software Stack](https://nrel.github.io/WETOStack). For more information and other integrated modeling software, see:\n- [Portfolio Overview](https://nrel.github.io/WETOStack/portfolio_analysis/overview.html)\n- [Entry Guide](https://nrel.github.io/WETOStack/_static/entry_guide/index.html)\n- [Systems Engineering Workshop](https://nrel.github.io/WETOStack/workshops/user_workshops_2024.html#systems-engineering)\n- [OpenFAST Workshop](https://nrel.github.io/WETOStack/workshops/user_workshops_2024.html#openfast-ecosystem)\n\n## Documentation\n\nSee local documentation in the `docs`-directory or access the online version at \u003chttps://weis.readthedocs.io/en/latest/\u003e\n\n## Packages\n\nWEIS integrates in a unique workflow four models:\n* [WISDEM](https://github.com/NLRWindSystems/WISDEM) is a set of models for assessing overall wind plant cost of energy (COE).\n* [OpenFAST](https://github.com/OpenFAST/openfast) is the community model for wind turbine simulation to be developed and used by research laboratories, academia, and industry.\n* [TurbSim](https://www.nrel.gov/docs/fy09osti/46198.pdf) is a stochastic, full-field, turbulent-wind simulator.\n* [ROSCO](https://github.com/NREL/ROSCO) provides an open, modular and fully adaptable baseline wind turbine controller to the scientific community.\n* [RAFT](https://github.com/NLRWindSystems/RAFT) is a tool for assessing the performance of floating offshore wind turbines in the frequency domain. RAFT is designed to be computationally efficient while still capturing the essential physics of floating offshore wind turbine dynamics, making it a valuable tool for preliminary design and optimization studies.\n\nIn addition, three external libraries are added:\n* [pCrunch](https://github.com/NREL/pCrunch) is a collection of tools to ease the process of parsing large amounts of OpenFAST output data and conduct loads analysis.\n* [pyOptSparse](https://github.com/mdolab/pyoptsparse) is a framework for formulating and efficiently solving nonlinear constrained optimization problems.\n\nThe core WEIS modules are:\n * _aeroelasticse_ is a wrapper to call [OpenFAST](https://github.com/OpenFAST/openfast)\n * _control_ contains the routines calling [ROSCO](https://github.com/NREL/ROSCO) and the routines supporting distributed aerodynamic control devices, such trailing edge flaps\n * _gluecode_ contains the scripts glueing together all models and libraries\n * _multifidelity_ contains the codes to run multifidelity design optimizations\n * _optimization_drivers_ contains various optimization drivers\n * _schema_ contains the YAML files and corresponding schemas representing the input files to WEIS\n\n## Installation\n\nOn laptop and personal computers, installation with [Anaconda](https://www.anaconda.com) is the recommended approach because of the ability to create self-contained environments suitable for testing and analysis.  WEIS requires [Anaconda 64-bit](https://www.anaconda.com/distribution/). However, the `conda` command has begun to show its age and we now recommend the one-for-one replacement with the [Miniforge3 distribution](https://github.com/conda-forge/miniforge?tab=readme-ov-file#miniforge3), which is much more lightweight and more easily solves for the package dependencies.  Sometimes, using `mamba` in place of `conda` with this distribution speeds up the installation process. WEIS is supported on Linux, MAC, Windows Sub-system for Linux (WSL), and native Windows.\n\nThe installation instructions below use the environment name, \"weis-env,\" but any name is acceptable. For those working behind company firewalls, you may have to change the conda authentication with `conda config --set ssl_verify no`.  Proxy servers can also be set with `conda config --set proxy_servers.http http://id:pw@address:port` and `conda config --set proxy_servers.https https://id:pw@address:port`.\n\n0.  If you are NOT installing WEIS on DOE's HPC system Kestrel, skip step 0 and run step 1 and 2 (skip step 3). If you are on Kestrel, follow steps 0, 1, and 3, and skip step 2. On Kestrel, start by purging existing modules and load conda\n\n        module purge\n        module load conda        \n\n1.  In a terminal, setup and activate the Anaconda environment\n\n        conda config --add channels conda-forge\n        conda install git\n        git clone https://github.com/NLRWindSystems/WEIS.git\n        cd WEIS\n        git checkout branch_name                         # (Only if you want to switch branches, say \"develop\")\n        conda env create --name weis-env -f environment.yml\n        conda activate weis-env                          # (if this does not work, try source activate weis-env)\n        conda install -y petsc4py mpi4py pyoptsparse     # (Mac / Linux only, sometimes Windows users may need to install mpi4py)\n\n2. If you are NOT on Kestrel, install the software\n        \n        pip install -e .\n\n3. If you are on Kestrel, first load some modules and then install:\n        \n        module load intel-oneapi-compilers intel-oneapi-mpi intel-oneapi-mkl conda\n        pip install --no-deps -e . -v\n\n**NOTE:** To use WEIS again after installation is complete, you will always need to activate the conda environment first with `conda activate weis-env` (or `source activate weis-env`). On Kestrel, make sure to reload the necessary modules\n\nFor Windows users, we recommend installing `git` and the `m264` packages in separate environments as some of the libraries appear to conflict such that WISDEM cannot be successfully built from source.  The `git` package is best installed in the `base` environment.\n\n## Developer guide\n\nIf you plan to contribute code to WEIS, please first consult the [developer guide](https://weis.readthedocs.io/en/latest/how_to_contribute_code.html).\n\n## Feedback\n\nFor software issues please use \u003chttps://github.com/NLRWindSystems/WEIS/issues\u003e.  \n","funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["wind","openmdao","systems-engineering","wisdem","wind-turbine","aeroelasticity","wind-energy","wind-farm","wind-power","amrex"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/341474","html_url":"https://ost.ecosyste.ms/projects/341474"}