https://github.com/barbagroup/snake-lips-3d

3d cfd study (OpenFOAM on Azure) on the lateral lips of a gliding snake

https://github.com/barbagroup/snake-lips-3d

Science Score: 36.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
  • DOI references
    Found 7 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

3d cfd study (OpenFOAM on Azure) on the lateral lips of a gliding snake

Basic Info
  • Host: GitHub
  • Owner: barbagroup
  • License: bsd-3-clause
  • Language: C++
  • Default Branch: main
  • Homepage:
  • Size: 256 KB
Statistics
  • Stars: 0
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 2
Created over 5 years ago · Last pushed over 3 years ago
Metadata Files
Readme License

README.md

Three-dimensional study of the lateral lips of a gliding snake using OpenFOAM on Azure

BSD-3 clause Docker Hub

The motion of the flying snake Chrysopelea paradisi is characterized by active deformations of the whole body to generate aerodynamic forces necessary for gliding, stabilization, and maneuvering. One active deformation is the expansion of the rib cage to produce a concave ventral surface with the formation of a pair of ventrally-oriented lips. Here, we aim to identify the role of the lips and quantify their effect on the aerodynamic performance of the glider. Our approach is to modify the anatomically accurate cross-section by removing one or both lips and measure the relative change in aerodynamic forces.

geometries

Figure: Original and modified geometries of the snake section (oriented at a $35$-degree angle of attack).}{From left to right: (1) original profile, (2) profile with the front lip only, (3) profile with the back lip only, and (4) profile with no lips.

The original geometry of the body cross-section of the snake Chrysopelea paradisi is available on FigShare:

Krishnan, Anush; J. Socha, John; P. Vlachos, Pavlos; Barba, Lorena A. (2013): Body cross-section of the flying snake Chrysopelea paradisi. figshare. Dataset. https://doi.org/10.6084/m9.figshare.705877.v1

We used OpenFOAM (version v6) to compute the flow past cylinders with different cross-sections (original and modified shapes of the gliding snake) at Reynolds number $1000$, $2000$, and $3000$ over a range of angles of attack. All simulations ran inside Docker containers on Microsoft Azure. We used Batch Shipyard (version 3.9.1) and Azure CLI (version 2.3.1) to deploy resources on Azure and submit containerized jobs to Azure Batch.

Create a conda environment for pre- and post-processing of the simulations

shell conda env create --name=py37-snakelips-3d --file=environment.yml conda activate py37-snakelips-3d pip install --no-deps --editable rodney/

Example of running a simulation on Azure Batch

Navigate to a simulation directory, e.g., runs/snake3d/both_lips/2k35:

shell SNAKELIPS_DIR=$(pwd) cd runs/snake3d/both_lips/2k35

Copy and update the template credentials.yaml with your credentials:

```shell cp ${SNAKELIPSDIR}/misc/template-credentials.yaml configshipyard/credentials.yaml

Edit the file with your credentials

```

Create the geometry of the snake section:

shell python scripts/create_body_obj.py

Create a directory in your Azure Storage fileshare to save the output of the simulation:

shell az storage directory create --name snake3d2k35_both --account-name <your-account-name> --share-name fileshare

Deploy resources (2 dedicated CentOS-based H16r instances) on Azure with Batch Shipyard:

shell export SHIPYARD_CONFIGDIR=config_shipyard shipyard pool add

Upload input data to the Gluster FS on the compute nodes:

shell shipyard data ingress

Submit the jobs:

shell shipyard jobs add

Once the job has completed, delete the compute resources and download the numerical solution output from Azure Storage:

shell shipyard pool del mkdir output az storage file download-batch --source fileshare/snake3d2k35_both --destination output --account-name <your-account-name>

Results: mean force coefficients

fig_mean_force_coefficients

Figure: Mean lift (top) and drag (bottom) coefficients at Reynolds numbers $1000$, $2000$, and $3000$ versus the angle of attack of a snake cross-section with both lips, only the front lip or the back lip, and no lips. All values are averaged along the spanwise direction and in time (between $100$ and $200$ non-dimensional time units of flow simulation).

Reproducibility packages

  • Olivier Mesnard, & Lorena A. Barba. (2022). Effect of the lips on the gliding performance of the Chrysopelea paradisi snake with 3D OpenFOAM on Azure (repro-packs). DOI

To reproduce the figures, download the Zenodo archive (6.7 GB), create a conda environment, and execute the misc/process_all.py script located in the snake-lips-3d-repropacks folder.

shell cd snake-lips-3d-repropacks conda env create --name=py37-snakelips-3d --file=environment.yml conda activate py37-snakelips-3d python misc/process_all.py

Owner

  • Name: Barba group
  • Login: barbagroup
  • Kind: organization
  • Location: Washington, DC

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: about 1 year ago

All Time
  • Total issues: 0
  • Total pull requests: 3
  • Average time to close issues: N/A
  • Average time to close pull requests: 2 minutes
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 3
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
  • mesnardo (3)
Top Labels
Issue Labels
Pull Request Labels