elastic_surface_evolver_tools

for create surface evolver surfaces and read surface evolver data

https://github.com/shengdie/elastic_surface_evolver_tools

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
Last synced: 6 months ago · JSON representation ·

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
Created almost 3 years ago · Last pushed almost 3 years ago
Metadata Files
Readme License Citation

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

fig

Requirements

h5py==3.7.0

Owner

  • Login: shengdie
  • Kind: user

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

any_mesh/requirements.txt pypi
  • 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
surface_reader/requirements.txt pypi
  • h5py ==3.7.0
  • ipython ==8.11.0
  • matplotlib ==3.5.2
  • numpy ==1.21.5
  • plotly ==5.9.0
  • scipy ==1.9.1