Skip to content

insysbio/slv-utils

Repository files navigation

slv-utils

Utilities for transformation of DBSolve files (.SLV, .RCT and .DAT). It can be used as node package as well as command line tool.

DBSolveOptimum is modeling software for systems biology and systems pharmacology modeling developed by InSysBio, see http://insysbio.com/en/software/db-solve-optimum.

Autotests GitHub issues GitHub npm GitHub license

Installation

Required nodejs installed. Recommended version is >= 10.0.0.

npm install --global slv-utils
slv --version

Help

See list of commands

slv -h

See help for particular command

slv help [command]

Transformation of .SLV files

Parse SLV file and save in SLVJS format (JSON).

slv parse -o output.json model.slv

Export SLV file to Heta module file (.HETA).

slv slv2heta -o output.heta model.slv

Note. Conversion of SLV to Heta modules is intended for learning purposes and should NOT be used for modeling workflow. After creating Heta file one should check and manually fix update file for proper structure. Known restrictions are:

  • slv-utils does not transform slv functions to Heta supported list.
  • All SLV ODE variables are transformed to species.
  • slv-utils ignores Pools and if/else statements.
  • slv-utils throw error when Initial Values includes expressions.

Export SLV file to Heta JSON file.

slv slv2heta --json -o output.json model.slv

Transformation of .RCT files

Parse and save RCT in RCTJS format (JSON).

slv rct-parse -o output.json structure.rct

Serialize RCT from RCTJS format (reverse to slv rct-parse).

slv rct-serialize -o output.rct input.json

Transformation of .DAT files

Parse and save DAT file in DATJS format (JSON).

slv dat-parse -o output.json data.dat

Serialize DAT from DATJS format (reverse to slv dat-parse).

slv dat-serialize -o output.dat input.json

Transformations available in previous versions

Convert XLSX file with specific structure to DAT.

slv excel2dat -o output.dat input.xlsx

Convert XLSX file with specific structure to DATJS (JSON).

slv excel2json -o output.json input.xlsx

Convert DATJS file to XLSX.

slv json2excel -o output.xlsx input.json

Usage for git

The tool can be used to display changes in Git diff command. It represents .SLV as text file based on RHS and Initial Values part.

Try

slv clear model.slv >> out.txt

For implementation in all git repositories use

git config --global diff.slv.textconv "slv clear"

In particular project include lines in .gitattributes

*.slv diff=slv

Git settings

Developers

  • Evgeny Metelkin @metelkin
  • Viktoria Tkachenko @vetedde