Skip to content

Commit

Permalink
updated docs
Browse files Browse the repository at this point in the history
  • Loading branch information
marouenbg committed May 27, 2020
1 parent f5d50bd commit 8288b25
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 13 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ The supported languages are: C (veryfastFVA.c) with wrappers in MATLAB (VFFVA.m

Please refer to the [documentation](https://vffva.readthedocs.io/en/latest/) and the [UserGuide](UserGuide.md) for veryfastFVA (VFFVA) usage.

Add the project folder to your MATLAB path and save it.
In MATLAB, add the project folder to your MATLAB path and save it, then use `VFFVA()`. In Python, `import VFFA` to use `VFFVA()`.

For the comparison with fastFVA (FFVA), you can install FFVA [here](http://wwwen.uni.lu/lcsb/research/mol_systems_physiology/fastfva).

Expand Down
13 changes: 8 additions & 5 deletions UserGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,17 +50,21 @@ You can use the provided MATLAB script `convertProblem.m` to convert MATLAB LP p

7. Run VFFVA like the following:

`mpirun -np a --bind-to none -x OMP_NUM_THREADS=b ./veryfastFVA ./models/c.mps d`
`mpirun -np a --bind-to none -x OMP_NUM_THREADS=b ./veryfastFVA ./models/c.mps d e f`

a: Number of non-memory sharing cores

b: Number of memory-sharing threads

c: model name, a selection of models is provided in model folder

d: optional if not specified scaling (SCAIND) parameter is set to default
d: (optional) if not specified scaling (SCAIND) parameter is set to default

if set to -1, scaling is deactivated

e: (optional) percentage of objective function to consider

f: (optional) .csv file containing the indices of the reactions to optimize.

with openMPI 1.10.2 you might get error messages, launch the application as following:

Expand Down Expand Up @@ -147,6 +151,5 @@ Regarding VFFVA, please set environment variables `OMP_PROC_BIND=FALSE` and expo
- `EmatrixCoupledAnalysisVFFVA_LA.sh`: runs VFFVA on E_Matrix_coupled model and saves loading and analysis time.

#### Important note
VFFVA is run on a suboptimal objective equal to 90% the optimal objective of the original problem, because with large models, numerical infeasibilities can occur with optimisation percentage
equal to 100%. You can change the optPerc varibale to the desired value. In the future, this variable
will be passed in the VFFVA call.
VFFVA is run by default on a suboptimal objective equal to 90% the optimal objective of the original problem, because with large models, numerical infeasibilities can occur with optimisation percentage
equal to 100%. You can change the optPerc variable to the desired value.
9 changes: 3 additions & 6 deletions docs/guide/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,11 @@ Replace the following variables with your own parameters:
+ OPTPERC: Optimization percentage of the objective value (0-100). The default is 90, where VFFVa will be computed with the objective value set to 90% of the optimal
objective.


+ SCAIND: (optional) corresponds to the scaling CPLEX parameter SCAIND and can take the values 0 (equilibration scaling: default), 1(aggressive scaling), -1 (no scaling).
scaling is usually desactivated with tightly constrained metabolic model such as coupled models to avoid numerical instabilities and large solution times.

+ ex: .csv file containing indices of reactions to optimize.

Example: `mpirun -np 2 --bind-to none -x OMP_NUM_THREADS=4 veryfastFVA ecoli_core.mps`

`VFFVA` will perform 2n Linear Programs (LP), where n is the number of reactions in a metabolic model, corresponding to
Expand Down Expand Up @@ -77,12 +78,8 @@ Then VFFVA.py can be imported into a Python 3 script using the following functi

```
VFFVA performs Very Fast Flux Variability Analysis (VFFVA). VFFVA is a parallel implementation of FVA that
allows dynamically assigning reactions to each worker depending on their computational load
Guebila, Marouen Ben. "Dynamic load balancing enables large-scale flux variability analysis." bioRxiv (2018): 440701.
USAGE:
minFlux,maxFlux=VFFVA(nCores, nThreads, model, scaling, memAff, schedule, nChunk, optPerc)
minFlux,maxFlux=VFFVA(nCores, nThreads, model, scaling, memAff, schedule, nChunk, optPerc, ex)
:param nCores: Number of non-shared memory cores/machines.
:param nThreads: Number of shared memory threads in each core/machine.
Expand Down
2 changes: 1 addition & 1 deletion lib/VFFVA.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ def VFFVA(nCores, nThreads, model, scaling=0, memAff='none', schedule='dynamic',
Guebila, Marouen Ben. "Dynamic load balancing enables large-scale flux variability analysis." bioRxiv (2018): 440701.
USAGE:
minFlux,maxFlux=VFFVA(nCores, nThreads, model, scaling, memAff, schedule, nChunk, optPerc)
minFlux,maxFlux=VFFVA(nCores, nThreads, model, scaling, memAff, schedule, nChunk, optPerc, ex)
:param nCores: Number of non-shared memory cores/machines.
:param nThreads: Number of shared memory threads in each core/machine.
Expand Down

0 comments on commit 8288b25

Please sign in to comment.