MEDYAN.jl

Documentation for MEDYAN.

MEDYAN.jl WIP

CI docs website

Warning, the API is very unstable, and this package is not released yet.

Welcome to Papoian Lab’s Mechanochemical Dynamics of Active Networks Julia package.

This is based on the C++ medyan command line tool also developed by the Papoian Lab.

Copyright 2022, Papoian lab at the University of Maryland.

This code is distributed under the license found in this directory, license.txt.

Usage

First install and run Julia https://julialang.org/downloads/

Next download or clone this repository.

Finally, to use MEDYAN.jl, in Julia run:

using Pkg; pkg"dev <path to repo>"

Where <path to repo> should be replaced with a local or absolute path to the repo.

Authors

Active developers:

Name Email
Nathan Zimmerberg nzimmerb@umd.edu
Mengxin Gu mxgu1234@umd.edu
Patrick Kelly ptfk1677@umd.edu

All developers including developers of C++ medyan:

Garegin Papoian (gpapoian@umd.edu), Konstantin Popov, James Komianos, Aravind Chandrasekaran, Qin Ni, Carlos Floyd, Haoran Ni, Nathan Zimmerberg, Joshua Lucker, Mengxin Gu, Patrick Kelly

All general correspondence about the code and its applications should be directed to Garegin Papoian. All developer and more specific code, installation, and usage correspondence should be directed to Active developers via email or the issue tracker.

Running tests

In shell:

cd test
julia --project -e 'using Pkg; Pkg.instantiate()'
julia --project runtests.jl

You can also include individual test files to run just those tests.

Sub Packages

There are a number of sub packages found in the “lib” directory.

For example “lib/MEDYAN2Vtk”, can be tested using the following shell commands:

cd lib/MEDYAN2Vtk/test
julia --project -e 'using Pkg; Pkg.instantiate()'
julia --project runtests.jl

To use “lib/MEDYAN2Vtk” package in a new environment in Julia run:

using Pkg; pkg"dev <path to repo>/lib/MEDYAN2Vtk"

If the sub package depends on other sub packages or depends on MEDYAN, you may have to dev multiple paths.

Running notebooks

To run interactively in a Pluto Notebook, run the following shell commands:

cd notebooks
julia --project -e 'using Pkg; Pkg.instantiate()'
julia --project -e 'import Pluto; Pluto.run()'

To generate static html files, run the following shell commands:

cd notebooks
julia --project -e 'using Pkg; Pkg.instantiate()'
julia --project runnotebooks.jl

Editing Documentation

First, if you haven’t yet, install quarto at least 1.2.

Run the following to check your quarto installation has the julia kernel.

quarto check jupyter

You may have to run the following after updating julia if jupyter doesn’t have the latest kernel.

using Pkg
Pkg.add("IJulia")
Pkg.build("IJulia")

Run the following to set up the environment and create a preview. Any changes to files in docs should auto update.

./docs/make.jl

or

julia docs/make.jl

Run the following to refresh the docstrings for the site.

julia --project=docs docs/make-docstrings.jl