libRoadRunner C API  1.0.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions
rrc_api.h File Reference

libRoadRunner C API 2012-2013 More...

#include "rrc_exporter.h"
#include "rrc_types.h"
#include "rrc_utilities.h"
#include "rrc_logging_api.h"
#include "rrc_nom_api.h"
#include "rrc_libstruct_api.h"

Go to the source code of this file.

Functions

RRHandle createRRInstance (void)
 Initialize a new roadRunner instance and return a handle to it. More...
 
RRHandle createRRInstanceEx (const char *tempFolder, const char *compiler)
 Initialize a new roadRunner instance and return a handle to it. More...
 
bool freeRRInstance (RRHandle handle)
 Free the roadRunner instance. More...
 
char * getInstallFolder (void)
 Returns the folder in which the RoadRunner API is installed. More...
 
bool setInstallFolder (const char *folder)
 Set the internal string containing the folder in where the RoadRunner C API is installed. More...
 
char * getAPIVersion (void)
 Retrieve the current version number of the C API library. More...
 
char * getCPPAPIVersion (RRHandle handle)
 Retrieve the current version number of the C++ API (Core RoadRunner API) library. More...
 
int getVersion ()
 
char * getVersionStr ()
 
char * getVersionEx ()
 
char * getExtendedAPIInfo ()
 Retrieve extended API info. More...
 
char * getBuildDate (void)
 Retrieve the current build date of the library. More...
 
char * getBuildTime (void)
 Retrieve the current build time (HH:MM:SS) of the library. More...
 
char * getBuildDateTime (void)
 Retrieve the current build date + time of the library. More...
 
char * getCopyright (void)
 Retrieve the current copyright notice for the library. More...
 
char * getInfo (RRHandle handle)
 Retrieve info about current state of roadrunner, e.g. loaded model, conservationAnalysis etc. More...
 
char * getlibSBMLVersion (RRHandle handle)
 Retrieve the current version number of the libSBML library. More...
 
bool setTempFolder (RRHandle handle, const char *folder)
 Set the path to the temporary folder where the C code will be stored. More...
 
char * getTempFolder (RRHandle handle)
 Retrieve the current temporary folder path. More...
 
char * getWorkingDirectory (void)
 Retrieve the current working directory path. More...
 
char * getRRCAPILocation (void)
 Retrieve the directory path of the shared rrCApi library. More...
 
bool setCompiler (RRHandle handle, const char *fNameWithPath)
 Set the path and filename to the compiler to be used by roadrunner. More...
 
char * getCompiler (RRHandle handle)
 Get the name of the compiler currently being used by roadrunner.
 
bool setCompilerLocation (RRHandle handle, const char *folder)
 Set the path to a folder containing the compiler to be used. More...
 
char * getCompilerLocation (RRHandle handle)
 Get the path to a folder containing the compiler being used. More...
 
bool setSupportCodeFolder (RRHandle handle, const char *folder)
 Set the path to a folder containing support code for model generation. More...
 
char * getSupportCodeFolder (RRHandle handle)
 Get the path to a folder containing support code. More...
 
bool setCodeGenerationMode (RRHandle handle, int mode)
 Set the runtime generation option [Not yet implemented]. More...
 
bool hasError (void)
 Check if there is an error string to retrieve. More...
 
char * getLastError (void)
 Retrieve the current error string. More...
 
bool setComputeAndAssignConservationLaws (RRHandle handle, const bool On_Or_Off)
 Enable or disable conservation analysis. More...
 
bool loadSBML (RRHandle handle, const char *sbml)
 Load a model from an SBML string. More...
 
bool loadSBMLEx (RRHandle handle, const char *sbml, bool forceRecompile)
 Load a model from an SBML string. More...
 
bool loadSBMLFromFile (RRHandle handle, const char *fileName)
 Load a model from a SBML file. More...
 
bool loadSBMLFromFileE (RRHandle handle, const char *fileName, bool forceRecompile)
 Load a model from a SBML file, force recompilation. More...
 
bool unLoadModel (RRHandle handle)
 Unload current model. More...
 
bool isModelLoaded (RRHandle handle)
 check if a model is loaded More...
 
bool loadSimulationSettings (RRHandle handle, const char *fileName)
 Load simulation settings from a file. More...
 
char * getCurrentSBML (RRHandle handle)
 Retrieve the current state of the model in the form of an SBML string. More...
 
char * getSBML (RRHandle handle)
 Retrieve the SBML model that was last loaded into roadRunner. More...
 
char * getParamPromotedSBML (RRHandle handle, const char *sArg)
 Promote any local parameters to global status. More...
 
bool setConfigurationXML (RRHandle handle, const char *caps)
 Set the simulator's capabilities. More...
 
char * getConfigurationXML (RRHandle handle)
 Get the simulator's capabilities. More...
 
bool setTimeStart (RRHandle handle, double timeStart)
 Set the time start for a time course simulation. More...
 
bool setTimeEnd (RRHandle handle, double timeEnd)
 Set the time end for a time course simulation. More...
 
bool setNumPoints (RRHandle handle, int numberOfPoints)
 Set the number of points to generate in a time course simulation. More...
 
bool setTimeCourseSelectionList (RRHandle handle, const char *list)
 Set the selection list for output from simulate(void) or simulateEx(void) More...
 
RRStringArrayPtr getTimeCourseSelectionList (RRHandle handle)
 Get the current selection list for simulate(void) or simulateEx(void) More...
 
RRDataHandle simulate (RRHandle handle)
 Carry out a time-course simulation, use setTimeStart, setTimeEnd and setNumPoints etc to set the simulation characteristics. More...
 
RRCDataPtr getSimulationResult (RRHandle handle)
 Retrieve the result of the last simulation. More...
 
RRDataHandle getRoadRunnerData (RRHandle handle)
 Retrieve a handle to RoadRunners internal data. More...
 
RRDataHandle simulateEx (RRHandle handle, const double timeStart, const double timeEnd, const int numberOfPoints)
 Carry out a time-course simulation based on the given arguments, time start, time end and number of points. More...
 
bool oneStep (RRHandle handle, const double currentTime, const double stepSize, double *value)
 Carry out a one step integration of the model. More...
 
bool getTimeStart (RRHandle handle, double *timeStart)
 Get the value of the current time start. More...
 
bool getTimeEnd (RRHandle handle, double *timeEnd)
 Get the value of the current time end. More...
 
bool getNumPoints (RRHandle handle, int *numPoints)
 Get the value of the current number of points. More...
 
bool steadyState (RRHandle handle, double *value)
 Compute the steady state of the current model. More...
 
RRVectorPtr computeSteadyStateValues (RRHandle handle)
 A convenient method for returning a vector of the steady state species concentrations. More...
 
bool setSteadyStateSelectionList (RRHandle handle, const char *list)
 Set the selection list of the steady state analysis. More...
 
RRStringArrayPtr getSteadyStateSelectionList (RRHandle handle)
 Get the selection list for the steady state analysis. More...
 
bool getValue (RRHandle handle, const char *symbolId, double *value)
 Get the value for a given symbol, use getAvailableTimeCourseSymbols(void) for a list of symbols. More...
 
bool setValue (RRHandle handle, const char *symbolId, const double value)
 Set the value for a given symbol, use getAvailableTimeCourseSymbols(void) for a list of symbols. More...
 
RRVectorPtr getFloatingSpeciesConcentrations (RRHandle handle)
 Retrieve in a vector the concentrations for all the floating species. More...
 
RRVectorPtr getBoundarySpeciesConcentrations (RRHandle handle)
 Retrieve the concentrations for all the boundary species in a vector. More...
 
RRVectorPtr getGlobalParameterValues (RRHandle handle)
 Retrieve the values for all the lgobal parameter values in a vector. More...
 
bool setBoundarySpeciesByIndex (RRHandle handle, const int index, const double value)
 Set the concentration for a particular boundary species. More...
 
bool setFloatingSpeciesInitialConcentrationByIndex (RRHandle handle, int index, double value)
 Set the initial concentration for a particular floating species. More...
 
bool getFloatingSpeciesInitialConcentrationByIndex (RRHandle handle, int index, double *value)
 Get the initial concentration for a particular floating species. More...
 
bool setFloatingSpeciesByIndex (RRHandle handle, const int index, const double value)
 Set the concentration for a particular floating species. More...
 
bool setGlobalParameterByIndex (RRHandle handle, const int index, const double value)
 Set the value for a particular global parameter. More...
 
bool getBoundarySpeciesByIndex (RRHandle handle, const int index, double *value)
 Retrieve the concentration for a particular floating species. More...
 
bool getFloatingSpeciesByIndex (RRHandle handle, const int index, double *value)
 Retrieve the concentration for a particular floating species. More...
 
bool getGlobalParameterByIndex (RRHandle handle, const int index, double *value)
 Retrieve the global parameter value. More...
 
bool getCompartmentByIndex (RRHandle handle, const int index, double *value)
 Retrieve the compartment volume for a particular compartment. More...
 
bool setCompartmentByIndex (RRHandle handle, const int index, const double value)
 Set the volume for a particular compartment. More...
 
bool setFloatingSpeciesConcentrations (RRHandle handle, const RRVectorPtr vec)
 Set the floating species concentration to the vector vec. More...
 
bool setBoundarySpeciesConcentrations (RRHandle handle, const RRVectorPtr vec)
 Set the boundary species concentration to the vector vec. More...
 
RRDoubleMatrixPtr getFullJacobian (RRHandle handle)
 Retrieve the full Jacobian for the current model. More...
 
RRDoubleMatrixPtr getReducedJacobian (RRHandle handle)
 Retrieve the reduced Jacobian for the current model. More...
 
RRDoubleMatrixPtr getEigenvalues (RRHandle handle)
 Retrieve the eigenvalue matrix for the current model. More...
 
RRDoubleMatrixPtr getStoichiometryMatrix (RRHandle handle)
 Retrieve the stoichiometry matrix for the current model. More...
 
RRDoubleMatrixPtr getLinkMatrix (RRHandle handle)
 Retrieve the Link matrix for the current model. More...
 
RRDoubleMatrixPtr getNrMatrix (RRHandle handle)
 Retrieve the reduced stoichiometry matrix for the current model. More...
 
RRDoubleMatrixPtr getConservationMatrix (RRHandle handle)
 Retrieve the conservation matrix for the current model. More...
 
bool reset (RRHandle handle)
 Reset all floating species concentrations to their intial conditions. More...
 
bool setFloatingSpeciesInitialConcentrations (RRHandle handle, const RRVectorPtr vec)
 Set the initial floating species concentrations. More...
 
RRVectorPtr getFloatingSpeciesInitialConcentrations (RRHandle handle)
 Get the initial floating species concentrations. More...
 
RRStringArrayPtr getFloatingSpeciesInitialConditionIds (RRHandle handle)
 Get the initial floating species Ids. More...
 
int getNumberOfReactions (RRHandle handle)
 Obtain the number of reactions in the loaded model. More...
 
bool getReactionRate (RRHandle handle, const int index, double *rate)
 Retrieve a give reaction rate as indicated by the index parameter. More...
 
RRVectorPtr getReactionRates (RRHandle handle)
 Retrieve a vector of reaction rates as determined by the current state of the model. More...
 
RRVectorPtr getReactionRatesEx (RRHandle handle, const RRVectorPtr vec)
 Retrieve a vector of reaction rates given a vector of species concentrations. More...
 
RRVectorPtr getRatesOfChange (RRHandle handle)
 Retrieve the vector of rates of change as determined by the current state of the model. More...
 
RRStringArrayPtr getRatesOfChangeIds (RRHandle handle)
 Retrieve the string list of rates of change Ids. More...
 
bool getRateOfChange (RRHandle handle, const int, double *value)
 Retrieve the rate of change for a given floating species. More...
 
RRVectorPtr getRatesOfChangeEx (RRHandle handle, const RRVectorPtr vec)
 Retrieve the vector of rates of change given a vector of floating species concentrations. More...
 
bool evalModel (RRHandle handle)
 Evaluate the current model, that it update all assignments and rates of change. Do not carry out an integration step. More...
 
int getNumberOfCompartments (RRHandle handle)
 Returns the number of compartments in the model. More...
 
int getNumberOfBoundarySpecies (RRHandle handle)
 Returns the number of boundary species in the model. More...
 
int getNumberOfFloatingSpecies (RRHandle handle)
 Returns the number of floating species in the model. More...
 
int getNumberOfGlobalParameters (RRHandle handle)
 Returns the number of global parameters in the model. More...
 
int getNumberOfDependentSpecies (RRHandle handle)
 Returns the number of dependent species in the model. More...
 
int getNumberOfIndependentSpecies (RRHandle handle)
 Returns the number of independent species in the model. More...
 
RRStringArrayPtr getReactionIds (RRHandle handle)
 Obtain the list of reaction Ids. More...
 
RRStringArrayPtr getBoundarySpeciesIds (RRHandle handle)
 Obtain the list of boundary species Ids. More...
 
RRStringArrayPtr getFloatingSpeciesIds (RRHandle handle)
 Obtain the list of floating species Id. More...
 
RRStringArrayPtr getGlobalParameterIds (RRHandle handle)
 Obtain the list of global parameter Ids. More...
 
RRStringArrayPtr getCompartmentIds (RRHandle handle)
 Obtain the list of compartment Ids. More...
 
RRStringArrayPtr getEigenvalueIds (RRHandle handle)
 Obtain the list of eigenvalue Ids. More...
 
RRListPtr getAvailableTimeCourseSymbols (RRHandle handle)
 Obtain the list of all available symbols. More...
 
RRListPtr getAvailableSteadyStateSymbols (RRHandle handle)
 Obtain the list of all available steady state symbols. More...
 
RRListPtr getElasticityCoefficientIds (RRHandle handle)
 Obtain the list of elasticity coefficient Ids. More...
 
RRListPtr getUnscaledFluxControlCoefficientIds (RRHandle handle)
 Obtain the list of unscaled flux control coefficient Ids. More...
 
RRListPtr getFluxControlCoefficientIds (RRHandle handle)
 Obtain the list of flux control coefficient Ids. More...
 
RRListPtr getUnscaledConcentrationControlCoefficientIds (RRHandle handle)
 Obtain the list of unscaled concentration control coefficient Ids. More...
 
RRListPtr getConcentrationControlCoefficientIds (RRHandle handle)
 Obtain the list of concentration coefficient Ids. More...
 
RRDoubleMatrixPtr getUnscaledElasticityMatrix (RRHandle handle)
 Retrieve the unscaled elasticity matrix for the current model. More...
 
RRDoubleMatrixPtr getScaledElasticityMatrix (RRHandle handle)
 Retrieve the scaled elasticity matrix for the current model. More...
 
bool getScaledFloatingSpeciesElasticity (RRHandle handle, const char *reactionId, const char *speciesId, double *value)
 Retrieve the scaled elasticity matrix for the current model. More...
 
RRDoubleMatrixPtr getUnscaledConcentrationControlCoefficientMatrix (RRHandle handle)
 Retrieve the matrix of unscaled concentration control coefficients for the current model. More...
 
RRDoubleMatrixPtr getScaledConcentrationControlCoefficientMatrix (RRHandle handle)
 Retrieve the matrix of scaled concentration control coefficients for the current model. More...
 
RRDoubleMatrixPtr getUnscaledFluxControlCoefficientMatrix (RRHandle handle)
 Retrieve the matrix of unscaled flux control coefficients for the current model. More...
 
RRDoubleMatrixPtr getScaledFluxControlCoefficientMatrix (RRHandle handle)
 Retrieve the matrix of scaled flux control coefficients for the current model. More...
 
bool getuCC (RRHandle handle, const char *variable, const char *parameter, double *value)
 Retrieve a single unscaled control coefficient. More...
 
bool getCC (RRHandle handle, const char *variable, const char *parameter, double *value)
 Retrieve a single control coefficient. More...
 
bool getEE (RRHandle handle, const char *name, const char *species, double *value)
 Retrieve a single elasticity coefficient. More...
 
bool getuEE (RRHandle handle, const char *name, const char *species, double *value)
 Retrieve a single unscaled elasticity coefficient. More...
 

Detailed Description

libRoadRunner C API 2012-2013

Author
Totte Karlsson & Herbert M Sauro

<-----------------------------------------------------------— This file is part of libRoadRunner. See http://code.google.com/p/roadrunnerlib/ for more details.

Copyright (C) 2012 University of Washington, Seattle, WA, USA

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

In plain english this means:

You CAN freely download and use this software, in whole or in part, for personal, company internal, or commercial purposes;

You CAN use the software in packages or distributions that you create.

You SHOULD include a copy of the license in any redistribution you may make;

You are NOT required include the source of software, or of any modifications you may have made to it, in any redistribution you may assemble that includes it.

YOU CANNOT:

redistribute any piece of this software without proper attribution;

Function Documentation

char* getParamPromotedSBML ( RRHandle  handle,
const char *  sArg 
)

Promote any local parameters to global status.

This routine will convert any local reaction parameters and promote them to global status. The promoted parameters are prefixed with the name of the reaction to make them unique.

Parameters
[in]handleHandle to a RoadRunner instance
[in]sArgpoints to the SBML model to promote
Returns
Returns null if it fails otherwise it returns the promoted SBML model as a string
int getVersion ( )

Get the version number.

Returns
the roadrunner version number in the form or 102030 if the number is 1.2.3

returns the individual version numbers as XXYYZZ where XX is the major version, YY the minor and ZZ the revision, eg 10000, or 10100, 20000 etc

char* getVersionEx ( )

returns something like "1.0.0; compiled with clang "3.3 (tags/RELEASE_33/final)" on date Dec 8 2013, 17:24:57'

char* getVersionStr ( )

returns roadrunner as a string, i.e. "1.0.0"