{"id":13775082,"url":"https://github.com/HelgeGehring/femwell","last_synced_at":"2025-05-11T07:31:55.927Z","repository":{"id":62876261,"uuid":"493779437","full_name":"HelgeGehring/femwell","owner":"HelgeGehring","description":"FEM mode solver for photonic waveguides","archived":false,"fork":false,"pushed_at":"2024-05-29T04:58:51.000Z","size":1233,"stargazers_count":88,"open_issues_count":29,"forks_count":28,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-05-29T11:31:20.361Z","etag":null,"topics":["finite-element-analysis","finite-element-method","photonics","simulation","thermal","waveguide"],"latest_commit_sha":null,"homepage":"https://helgegehring.github.io/femwell/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HelgeGehring.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"docs/contributing.md","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}},"created_at":"2022-05-18T18:22:37.000Z","updated_at":"2024-06-20T19:53:53.025Z","dependencies_parsed_at":"2023-10-20T01:15:39.719Z","dependency_job_id":"d9538330-2d5f-46f9-9b29-0b1a944d7cb0","html_url":"https://github.com/HelgeGehring/femwell","commit_stats":{"total_commits":652,"total_committers":9,"mean_commits":72.44444444444444,"dds":0.1380368098159509,"last_synced_commit":"bfbef56eeda5967ecb6b6ae1be3ff68fa068a485"},"previous_names":[],"tags_count":29,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HelgeGehring%2Ffemwell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HelgeGehring%2Ffemwell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HelgeGehring%2Ffemwell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HelgeGehring%2Ffemwell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HelgeGehring","download_url":"https://codeload.github.com/HelgeGehring/femwell/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224970106,"owners_count":17400294,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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"}},"keywords":["finite-element-analysis","finite-element-method","photonics","simulation","thermal","waveguide"],"created_at":"2024-08-03T17:01:33.664Z","updated_at":"2024-11-17T10:30:31.224Z","avatar_url":"https://github.com/HelgeGehring.png","language":"Python","funding_links":[],"categories":["Physics"],"sub_categories":[],"readme":"# Femwell\n\n![logo](https://raw.githubusercontent.com/HelgeGehring/femwell/main/logo_inline.svg)\n\n[![Docs](https://github.com/helgegehring/femwell/actions/workflows/docs.yml/badge.svg)](https://HelgeGehring.github.io/femwell/)\n[![Build](https://github.com/helgegehring/femwell/actions/workflows/build.yml/badge.svg)](https://github.com/HelgeGehring/femwell/actions/workflows/build.yml)\n[![PiPy](https://img.shields.io/pypi/v/femwell)](https://pypi.org/project/femwell/)\n[![Downloads](https://static.pepy.tech/badge/femwell/month)](https://pepy.tech/project/femwell)\n\n## Welcome to FEMWELL!\n\nFEMWELL is a physics simulation tool that utilises the Finite Element Method (FEM). With FEMWELL, you can simulate integrated circuits, electronic and photonic systems, and so much more. \nThe project is created to provide an Open-Source FEM solver. You are welcome to contribute to FEMWELL or just use it. Any feedback and input are valuable and will make FEMWELL better!\n\n## What is a FEM simulation?\n\nFEM is a method to solve various types of differential equations that appear in physics, maths or engineering. FEM methods are used when describing how fields behave in an inhomogeneous setting, for example are electromagnetic fields in structured matter described by Maxwell’s equations. FEM uses a mesh to discretize the space and solve Maxwell’s equations via these “finite elements”.\n\nA FEM simulation typically involves the following steps:\n\n1.\tDiscretization (or Meshing) of the structure\n2.\tCalculation of the problem in each element\n3.\tAssembly accounting for boundary conditions between the elements\n4.\tSolution via iterative solvers or direct solution methods\n   \nFEM can be applied to various problems, from Maxwell’s equations to fluid simulation, heat transport or structural analysis.\n\n## What is special about FEMWELL?\n\nFirst and foremost: FEMWELL is open source! You can just use FEMWELL, you can contribute to FEMWELL and you can modify FEMWELL to fit your specific problem. \n\nAt the moment we focus on photonic and electronic problems, meaning we concentrate on solving Maxwell’s equation. This is useful to understand the physics in modern devices used in classical or quantum computing technologies. \n\nWe are actively working on extending FEMWELL to address other questions. You can find a list of examples below. \n\n## How can I use FEMWELL?\n\nThe simplest thing it to try out the examples in the browser! Hover the rocket at the top on the example pages and click live code. (Might take some time to load).\nFor more involved calculations, we recommend installing FEMWELL following the instructions.\nIf you can to improve FEMWELL, please get in touch with us. We are looking forward to your contributions! \n\n### Please note:\nThe documentation is lagging behind the state of code, so there's several features for which there are only examples in the code.\n\n## Features\n\n- Photonic eigenmode solver\n- Periodic photonic eigenmode solver\n- Electric eigenmode solver\n- Thermal mode solver (static and transient)\n- Coulomb solver\n\n## Possible Simulations\n\n### Photonic problems\n  \n- Eigenmodes of waveguides and determining their effective refractive index\n- Coupling between neighboring waveguides\n- Eigenmodes of bent waveguides\n- Propagation loss of circular bends and mode mismatch loss with straight waveguides\n- Calculation of the group velocity and its dispersion\n- Calculation of overlap-integrals and confinement-factors\n- Bragg grating cells\n- Grating coupler cells\n- Overlap integrals between waveguide modes\n- Overlap integral between a waveguide mode and a fiber mode\n- Coupled mode theory - coupling between adjacent waveguides\n- Heat based photonic phase shifters\n- Pockels based photonic phase shifters\n- PN junction depletion modulator (analytical)\n\n### Heat transport \n- Static thermal profiles\n- Transient thermal behavior\n\n### Electronics problems\n\n- Coplanar waveguide RF design\n- Eigenmode of a coaxial cable and its specific impedance\n- Eigenmodes of electric transmission lines\n  and determining their propagation constant (in work)\n- Static electric fields\n\nSomething missing? Feel free to open an [issue](https://github.com/HelgeGehring/femwell/issues) :)\n\n## Contributors\n\n- Helge Gehring (Google, WWU Münster)\n- Simon Bilodeau (Google, Princeton University)\n- Joaquin Matres (Google)\n- Marc de Cea Falco (Google, Massachusetts Institute of Technology)\n- Lodovico Rossi (Princeton University)\n- Doris Reiter (TU Dortmund University)\n- Yannick Augenstein (Google, Karlsruhe Institute of Technology)\n- Niko Savola (Google, Aalto University)\n- Rouven Glauert (Idalab)\n- Markus DeMartini (Google)\n- Lucas Grosjean (Google, Femto-ST Institute)\n- Eliza Leung (University of Adelaide)\n- Duarte Silva (Eindhoven University of Technology)\n\nHappy about every form of contribution -\npull requests, feature requests, issues, questions, ... :)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FHelgeGehring%2Ffemwell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FHelgeGehring%2Ffemwell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FHelgeGehring%2Ffemwell/lists"}