elastic_surface_evolver_tools
for create surface evolver surfaces and read surface evolver data
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (7.2%) to scientific vocabulary
Repository
for create surface evolver surfaces and read surface evolver data
Basic Info
- Host: GitHub
- Owner: shengdie
- License: mit
- Language: Python
- Default Branch: main
- Size: 218 KB
Statistics
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Tools for generating input files of elastic surfaces and reading surface evolver data (http://facstaff.susqu.edu/brakke/evolver/evolver.html)
Surface Generator
For generate different shape of surfaces and input files for Surface Evolver.
Any mesh
For create surface meshes of any shape, currently support annular shape only. It has some general algorithms to help generate surfaces, like distinguishing boundary edges, writing mesh according to Surface Evolver syntax etc, so it can be easily extended to generate other shapes.
Examples
./create_ring.py -ir 1 -or 20 -es 0.1 -ds "lambda p: abs(ic.dist(p))**0.5/10 + 0.06" -kw "{'max_steps': 100000}" ring1_20
which creates a ring with inner radius 1 and outer radius 20. And the edge size is increasing with radius in a square root order.
Requirements
dmsh==0.1.10
Rectangular mesh with periodic boundary conditions
For create rectangular mesh with periodic condition.
Export data
You can export the mesh data easily by command,
save_dict
which will save the data in json format. You can also add any other variable you want in diagnostics.cmd
Smart converge
There is a smart converge procedure hgb, it will automatically choose the quicker one between hessian_seek and g and run until converging to a minima.
Surface Reader
Can read rectangular and annular surface evolver data generated by save_dict. It can plot surface, stress, strain, cross sections, contour etc.
Examples

Requirements
h5py==3.7.0
Owner
- Login: shengdie
- Kind: user
- Repositories: 12
- Profile: https://github.com/shengdie
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use these tools, please cite it as below." authors: - family-names: "Xin" given-names: "Meng" orcid: "https://orcid.org/0000-0003-1375-3231" title: "Surface evolver for elastic simulations" version: 1.0.0 doi: date-released: 2023-03-30 url: "https://github.com/shengdie/elastic_surface_evolver_tools"
GitHub Events
Total
- Watch event: 2
Last Year
- Watch event: 2
Dependencies
- Nuitka ==0.6.14.7
- Pygments ==2.9.0
- QtPy ==1.9.0
- astroid ==2.5.6
- attrs ==21.2.0
- brotlipy ==0.7.0
- certifi ==2020.12.5
- conda ==4.10.1
- cycler ==0.10.0
- decorator ==5.0.7
- dmsh ==0.1.10
- entrypoints ==0.3
- h5py ==3.2.1
- idna ==3.1
- importlib-metadata ==4.0.1
- ipykernel ==5.5.4
- ipython ==7.23.1
- jedi ==0.18.0
- llvmlite ==0.36.0
- matplotlib ==3.4.2
- matplotlib-inline ==0.1.2
- mccabe ==0.6.1
- meshio ==4.0.8
- meshplex ==0.12.1
- mkl-fft ==1.3.0
- mkl-service ==2.3.0
- npx ==0.0.16
- numpy ==1.20.3
- olefile ==0.46
- pandas ==1.2.4
- parso ==0.8.2
- prompt-toolkit ==3.0.18
- pycosat ==0.6.3
- pylint ==2.8.2
- pyzmq ==22.0.3
- qtconsole ==5.1.0
- retrying ==1.3.3
- scipy ==1.6.3
- sip ==6.0.3
- six ==1.16.0
- terminado ==0.9.4
- tqdm ==4.60.0
- webencodings ==0.5.1
- h5py ==3.7.0
- ipython ==8.11.0
- matplotlib ==3.5.2
- numpy ==1.21.5
- plotly ==5.9.0
- scipy ==1.9.1