https://github.com/cda-tum/mmft-spheroid-trap-designer
A tool that generates a microfluidic chip or channel design for trapping spheroids.
Science Score: 39.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 2 DOI reference(s) in README -
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (17.3%) to scientific vocabulary
Keywords
Repository
A tool that generates a microfluidic chip or channel design for trapping spheroids.
Basic Info
- Host: GitHub
- Owner: cda-tum
- License: mit
- Language: Python
- Default Branch: main
- Homepage: https://www.cda.cit.tum.de/mmft-spheroid-trap-designer/
- Size: 5.71 MB
Statistics
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 4
Topics
Metadata Files
README.md
Spheroid-Trap-Designer
The MMFT spheroid-trap designer is a tool that generates a microfluidic chip and/or channel design for trapping spheroids based on hydrodynamic principles in a dedicated location on a chip, by employing a SAT solver to optimize the design process and automatically compute the required parameters while adhering to ISO guidelines. It is possible to chain several traps together and thereby trap several spheroids. These traps are especially useful for studying complex biological processes such as the vascularization of spheroids and organoids [1].
The tool is available online: https://www.cda.cit.tum.de/mmft-spheroid-trap-desiger. It is part of the Munich Microfluidics Toolkit (MMFT) by the Chair for Design Automation at the Technical University of Munich.
If you have any questions about the fabrication and the trapping experiments feel free to contact us at microfab@cea.fr. If you have questions about using or the development of the code write us via microfluidics.cda@xcit.tum.de or by creating an issue on GitHub.
System Requirements
The project is tested with python 3.11. To install the required python packages please type the following in your command line:
bash
pip install -r requirements.txt
Run
To run the script, via the command line, type:
bash
python spheroid_all.py
You can adapt the parameters in the same script.
Simulation Setup
The Spheroid Trap Designer allows you to generate a customized geometry based on your specified parameters. Once the geometry is created, you can simulate fluid flow within it. For this you can use OpenFOAM, an open-source computational fluid dynamics (CFD) tool, COMSOL, a commercial CFD tool, or any other tool. For OpenFOAM and COMSOL we have included some of the simulation files that can be adapted for personal use.
OpenFOAM
Before proceeding, ensure that OpenFOAM is installed on your system. Installation instructions can be found on the official OpenFOAM website. The set up described here is tailored for OpenFOAM 12.
Simulation Setup Guide
1. Generate the Geometry
- Define your parameters and generate the spheroid trap geometry via the web interface or by running the provided command-line tool.
- The generated STL file will represent the 3D shape of the trap. The generated STL is defined in mm, here the STL is automatically scaled to size.
2. Prepare for Simulation
- Copy the generated STL file into the following directory: (You might need to generate the
geometryfolder)sh /simulation/openFoam/constant/geometry - Rename the STL file to
trap.stl. - Modify the vertices in the blockMeshDict file to ensure the mesh properly fits around your geometry:
sh /simulation/openFoam/system/blockMeshDictImportant: The block mesh needs to "cut-off" the inlet and the outlet so these can be defined as specialized boundaries, i.e., that an inflow or outflow can be defined. Currently the block mesh is defined for a trap input for spheroids with a diameter of 300 µm.
3. Run the Fluid Flow Simulation
- Navigate to the OpenFOAM simulation directory:
sh cd /simulation/openFoam - Start the simulation by executing:
sh run
This will generate the computational mesh and simulate fluid flow within your custom spheroid trap.
COMSOL
The comsol simulation file is uploaded in the simulation folder. The simulation parameters can be adapted via the user interface of the tool.
References
[1] Quintard, C., Tubbs, E., Jonsson, G. et al. A microfluidic platform integrating functional vascularized organoids-on-chip. Nat Commun 15, 1452 (2024).
Developed in collaboration between:
Owner
- Name: Chair for Design Automation, TU Munich
- Login: cda-tum
- Kind: organization
- Location: Germany
- Website: https://www.cda.cit.tum.de
- Repositories: 22
- Profile: https://github.com/cda-tum
The CDA provides expertise for all main steps in the design and realization of integrated circuits, embedded systems, as well as cyber-physical systems.
GitHub Events
Total
- Release event: 12
- Watch event: 2
- Delete event: 13
- Push event: 26
- Pull request event: 17
- Create event: 20
Last Year
- Release event: 12
- Watch event: 2
- Delete event: 13
- Push event: 26
- Pull request event: 17
- Create event: 20
Issues and Pull Requests
Last synced: 8 months ago
All Time
- Total issues: 0
- Total pull requests: 24
- Average time to close issues: N/A
- Average time to close pull requests: less than a minute
- Total issue authors: 0
- Total pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 24
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 24
- Average time to close issues: N/A
- Average time to close pull requests: less than a minute
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 24
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
- MariaEmmerich (36)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v4 composite
- actions/setup-python v5 composite
- matplotlib ==3.7.2
- numpy ==1.25.1
- numpy-stl ==3.1.1
- ezdxf ==1.3.5
- flask ==2.3.3
- matplotlib ==3.9.2
- numpy ==2.1.1
- numpy-stl ==3.1.1
- z3-solver ==4.13.0.0