Creation

Create a new pcvct project.

Public API

pcvct.createProjectFunction
createProject(project_dir::String="."; clone_physicell::Bool=true, template_as_default::Bool=true, terse::Bool=false)

Create a new pcvct project structure.

Creates a new project directory at project_dir with the following structure:

project_dir
├── data
├── PhysiCell # The latest release from https://github.com/drbergman/PhysiCell
└── scripts

data is populated with the standard structure. PhysiCell is a copy of PhysiCell. scripts contains a generated GenerateData.jl file.

Arguments

  • project_dir::String=".": The directory in which to create the project. Relative paths are resolved from the current working directory where Julia was launched.
  • clone_physicell::Bool=true: Whether to clone the PhysiCell repository. If false, the latest release will be downloaded. Recommended to set to true so pcvct will be able to track changes to the PhysiCell repository.
  • template_as_default::Bool=true: Whether to set up the project with the template files as the default. If false, the project will be set up with an empty structure.
  • terse::Bool=false: Whether to generate a terse GenerateData.jl file. If true, the file will be generated without comments and explanations.

Note

The names of the data and PhysiCell directories are fixed and cannot be changed. Their relative locations should not be changed without updating the GenerateData.jl file. The name of the scripts folder and the GenerateData.jl are just by convention and can be changed.

source

Private API

pcvct.icFilenameMethod
icFilename(table_name::String)

Get the filename for the given IC type for setting up the IC folder.

source
pcvct.setUpComponentsMethod
setUpComponents(data_dir::String, physicell_dir::String)

Set up the components directory in the data directory and populate it with the "Toy_Metabolic_Model.xml" file.

source
pcvct.setUpICFolderMethod
setUpICFolder(path_to_template::String, inputs_dir::String, ic_name::String, folder::String)

Set up the IC folder in the inputs directory for the given IC type.

source
pcvct.setUpInputsMethod
setUpInputs(data_dir::String, physicell_dir::String, template_as_default::Bool)

Set up the inputs directory in the data directory, if the data directory does not already exist.

source
pcvct.setUpPhysiCellMethod
setUpPhysiCell(project_dir::String, clone_physicell::Bool)

Set up the PhysiCell directory in the project directory.

If the directory already exists, it will not be created again. If clone_physicell is true, the latest release of the PhysiCell repository will be cloned.

source
pcvct.setUpRequiredFoldersMethod
setUpRequiredFolders(path_to_template::String, inputs_dir::String, folder::String)

Set up the required folders in the inputs directory.

source
pcvct.setUpScriptsMethod
setUpScripts(project_dir::String, physicell_dir::String, data_dir::String, template_as_default::Bool, terse::Bool)

Set up the scripts directory in the project directory.

source
pcvct.setUpTemplateMethod
setUpTemplate(physicell_dir::String, inputs_dir::String)

Set up the template project in the inputs directory.

source