Nothing
#------------------------------------------------------------------------------#
# R Interface to C API of IBM ILOG CPLEX #
#------------------------------------------------------------------------------#
# cplex_checkAPI.R
# R Interface to C API of IBM ILOG CPLEX Version 12.1 to 12.10.
#
# Copyright (C) 2011-2014 Gabriel Gelius-Dietrich, Dpt. for Bioinformatics,
# Institute for Informatics, Heinrich-Heine-University, Duesseldorf, Germany.
# All right reserved.
# Email: geliudie@uni-duesseldorf.de
#
# This file is part of cplexAPI.
#
# CplexAPI is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# CplexAPI is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with cplexAPI. If not, see <http://www.gnu.org/licenses/>.
#------------------------------------------------------------------------------#
# the interface (check) #
#------------------------------------------------------------------------------#
checkCopyLpCPLEX <- function(env, lp, nCols, nRows, lpdir, objf, rhs, sense,
matbeg, matcnt, matind, matval, lb, ub,
rngval = NULL
) {
if (is.null(rngval)) {
Crngval <- as.null(rngval)
}
else {
Crngval <- as.numeric(rngval)
}
status <- .Call("checkCopyLp", PACKAGE = "cplexAPI",
cplexPointer(env),
cplexPointer(lp),
as.integer(nCols),
as.integer(nRows),
as.integer(lpdir),
as.numeric(objf),
as.numeric(rhs),
as.character(paste(sense, collapse = "")),
as.integer(matbeg),
as.integer(matcnt),
as.integer(matind),
as.numeric(matval),
as.numeric(lb),
as.numeric(ub),
Crngval
)
return(status)
}
#------------------------------------------------------------------------------#
checkCopyLpwNamesCPLEX <- function(env, lp, nCols, nRows, lpdir, objf, rhs,
sense, matbeg, matcnt, matind, matval,
lb, ub, rngval = NULL,
cnames = NULL, rnames = NULL) {
if (is.null(rngval)) {
Crngval <- as.null(rngval)
}
else {
Crngval <- as.numeric(rngval)
}
if (is.null(cnames)) {
Ccnames <- as.null(cnames)
}
else {
Ccnames <- as.character(cnames)
}
if (is.null(rnames)) {
Crnames <- as.null(rnames)
}
else {
Crnames <- as.character(rnames)
}
status <- .Call("checkCopyLpwNames", PACKAGE = "cplexAPI",
cplexPointer(env),
cplexPointer(lp),
as.integer(nCols),
as.integer(nRows),
as.integer(lpdir),
as.numeric(objf),
as.numeric(rhs),
as.character(paste(sense, collapse = "")),
as.integer(matbeg),
as.integer(matcnt),
as.integer(matind),
as.numeric(matval),
as.numeric(lb),
as.numeric(ub),
Crngval,
Ccnames,
Crnames
)
return(status)
}
#------------------------------------------------------------------------------#
checkCopyQuadCPLEX <- function(env, lp, qmatbeg, qmatcnt, qmatind, qmatval) {
status <- .Call("checkCopyQuad", PACKAGE = "cplexAPI",
cplexPointer(env),
cplexPointer(lp),
as.integer(qmatbeg),
as.integer(qmatcnt),
as.integer(qmatind),
as.numeric(qmatval)
)
return(status)
}
#------------------------------------------------------------------------------#
checkCopyQPsepCPLEX <- function(env, lp, qsepvec) {
status <- .Call("checkCopyQPsep", PACKAGE = "cplexAPI",
cplexPointer(env),
cplexPointer(lp),
as.numeric(qsepvec)
)
return(status)
}
#------------------------------------------------------------------------------#
checkAddRowsCPLEX <- function(env, lp, ncols, nrows, nnz,
matbeg, matind, matval,
rhs = NULL, sense = NULL,
cnames = NULL, rnames = NULL) {
if (is.null(rhs)) {
Crhs <- as.null(rhs)
}
else {
Crhs <- as.numeric(rhs)
}
if (is.null(sense)) {
Csense <- as.null(sense)
}
else {
Csense <- as.character(paste(sense, collapse = ""))
}
if (is.null(cnames)) {
Ccnames <- as.null(cnames)
}
else {
Ccnames <- as.character(cnames)
}
if (is.null(rnames)) {
Crnames <- as.null(rnames)
}
else {
Crnames <- as.character(rnames)
}
status <- .Call("checkAddRows", PACKAGE = "cplexAPI",
cplexPointer(env),
cplexPointer(lp),
as.integer(ncols),
as.integer(nrows),
as.integer(nnz),
Crhs,
Csense,
as.integer(matbeg),
as.integer(matind),
as.numeric(matval),
Ccnames,
Crnames
)
return(status)
}
#------------------------------------------------------------------------------#
checkAddColsCPLEX <- function(env, lp, ncols, nnz, objf, matbeg, matind, matval,
lb = NULL, ub = NULL, cnames = NULL) {
if (is.null(lb)) {
Clb <- as.null(lb)
}
else {
Clb <- as.numeric(lb)
}
if (is.null(ub)) {
Cub <- as.null(ub)
}
else {
Cub <- as.numeric(ub)
}
if (is.null(cnames)) {
Ccnames <- as.null(cnames)
}
else {
Ccnames <- as.character(cnames)
}
status <- .Call("checkAddCols", PACKAGE = "cplexAPI",
cplexPointer(env),
cplexPointer(lp),
as.integer(ncols),
as.integer(nnz),
as.numeric(objf),
as.integer(matbeg),
as.integer(matind),
as.numeric(matval),
Clb,
Cub,
Ccnames
)
return(status)
}
#------------------------------------------------------------------------------#
checkChgCoefListCPLEX <- function(env, lp, nnz, ia, ja, ra) {
status <- .Call("checkChgCoefList", PACKAGE = "cplexAPI",
cplexPointer(env),
cplexPointer(lp),
as.integer(nnz),
as.integer(ia),
as.integer(ja),
as.numeric(ra)
)
return(status)
}
#------------------------------------------------------------------------------#
checkCopyColTypeCPLEX <- function(env, lp, xctype) {
status <- .Call("checkCopyColType", PACKAGE = "cplexAPI",
cplexPointer(env),
cplexPointer(lp),
as.character(paste(xctype, collapse = ""))
)
return(status)
}
#------------------------------------------------------------------------------#
checkValsCPLEX <- function(env, lp, nval,
rind = NULL, cind = NULL, val = NULL) {
if (is.null(rind)) {
Crind <- as.null(rind)
}
else {
Crind <- as.integer(rind)
}
if (is.null(cind)) {
Ccind <- as.null(cind)
}
else {
Ccind <- as.integer(cind)
}
if (is.null(val)) {
Cval <- as.null(val)
}
else {
Cval <- as.numeric(val)
}
status <- .Call("checkVals", PACKAGE = "cplexAPI",
cplexPointer(env),
cplexPointer(lp),
as.integer(nval),
Crind,
Ccind,
Cval
)
return(status)
}
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.