{"id":48562902,"url":"https://github.com/iitrabhi/topo-fenics","last_synced_at":"2026-04-08T12:36:05.500Z","repository":{"id":38342881,"uuid":"283438691","full_name":"iitrabhi/topo-fenics","owner":"iitrabhi","description":"This repository contains a simple 55 lines code to carry out large scale parallel Topology Optimization using FEniCS in python","archived":false,"fork":false,"pushed_at":"2023-11-12T22:16:50.000Z","size":692,"stargazers_count":42,"open_issues_count":2,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-09-01T21:45:43.193Z","etag":null,"topics":["fenics","optimization","parallel","parallel-computing","petsc","petsc4py","python","topology","topology-optimization"],"latest_commit_sha":null,"homepage":"https://abhigupta.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iitrabhi.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}},"created_at":"2020-07-29T08:10:29.000Z","updated_at":"2024-07-21T13:27:03.000Z","dependencies_parsed_at":"2023-12-15T20:07:14.489Z","dependency_job_id":"d62e3e9c-4926-45ab-99e2-451c64d7ea76","html_url":"https://github.com/iitrabhi/topo-fenics","commit_stats":{"total_commits":7,"total_committers":2,"mean_commits":3.5,"dds":0.4285714285714286,"last_synced_commit":"5009da3ebe0655a2ebcca73efda55fe398d9fc87"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/iitrabhi/topo-fenics","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitrabhi%2Ftopo-fenics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitrabhi%2Ftopo-fenics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitrabhi%2Ftopo-fenics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitrabhi%2Ftopo-fenics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iitrabhi","download_url":"https://codeload.github.com/iitrabhi/topo-fenics/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iitrabhi%2Ftopo-fenics/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31556238,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T10:21:54.569Z","status":"ssl_error","status_checked_at":"2026-04-08T10:21:38.171Z","response_time":54,"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"}},"keywords":["fenics","optimization","parallel","parallel-computing","petsc","petsc4py","python","topology","topology-optimization"],"created_at":"2026-04-08T12:35:57.104Z","updated_at":"2026-04-08T12:36:01.832Z","avatar_url":"https://github.com/iitrabhi.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# topo-fenics\nThis repository contains a simple 55 line code written in python for 2D and 3D  to carry out large-scale parallel Topology Optimization using the open-source package FEniCS. \n\n![Topology optimization of bridge](./github/bridge.gif)\n\n## Abstract\n\nThis paper presents a 55-line code written in python for 2D and 3D topology optimization based on the open-source finite element computing software (FEniCS), equipped with various finite element tools and solvers. PETSc is used as the linear algebra back-end, which results in significantly less computational time than standard python libraries. The code is designed based on the popular solid isotropic material with penalization (SIMP) methodology. Extensions to multiple load cases, different boundary conditions, and incorporation of passive elements are also presented. Thus, this implementation is the most compact implementation of SIMP based topology optimization for 3D as well as 2D problems.\n\nDetailed explanation could be found [here](https://www.researchgate.net/publication/347300347_A_55-line_code_for_large-scale_parallel_topology_optimization_in_2D_and_3D).\n\n## Citation\n\nIf this code is useful for your research, please cite our [publication](https://www.researchgate.net/publication/347300347_A_55-line_code_for_large-scale_parallel_topology_optimization_in_2D_and_3D).\n```bibtex\n@article{gupta55lineCodeLargescale2020,\ntitle = {A 55-Line Code for Large-Scale Parallel Topology Optimization in {{2D}} and {{3D}}},\nauthor = {Gupta, Abhinav and Chowdhury, Rajib and Chakrabarti, Anupam and Rabczuk, Timon},\nyear = {2020},\ndoi = {https://doi.org/10.48550/arXiv.2012.08208},\njournal = {arXiv preprint arXiv:2012.08208},\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiitrabhi%2Ftopo-fenics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiitrabhi%2Ftopo-fenics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiitrabhi%2Ftopo-fenics/lists"}