Scippy

SCIP

Solving Constraint Integer Programs

dcmp.h File Reference

Detailed Description

internal methods for decompositions and the decomposition store

Author
Gregor Hendel

Definition in file dcmp.h.

#include "scip/type_dcmp.h"
#include "scip/type_var.h"
#include "scip/type_cons.h"
#include "blockmemshell/memory.h"

Go to the source code of this file.

Macros

#define SCIP_DECOMPSTORE_CAPA   10
 

Functions

SCIP_RETCODE SCIPdecompstoreCreate (SCIP_DECOMPSTORE **decompstore, BMS_BLKMEM *blkmem, int nslots)
 
void SCIPdecompstoreFree (SCIP_DECOMPSTORE **decompstore, BMS_BLKMEM *blkmem)
 
SCIP_RETCODE SCIPdecompstoreAdd (SCIP_DECOMPSTORE *decompstore, SCIP_DECOMP *decomp)
 
SCIP_RETCODE SCIPtransformDecompstore (SCIP *scip)
 
void SCIPexitSolveDecompstore (SCIP *scip)
 
SCIP_DECOMP ** SCIPdecompstoreGetDecomps (SCIP_DECOMPSTORE *decompstore)
 
int SCIPdecompstoreGetNDecomps (SCIP_DECOMPSTORE *decompstore)
 
SCIP_DECOMP ** SCIPdecompstoreGetOrigDecomps (SCIP_DECOMPSTORE *decompstore)
 
int SCIPdecompstoreGetNOrigDecomps (SCIP_DECOMPSTORE *decompstore)
 

Macro Definition Documentation

◆ SCIP_DECOMPSTORE_CAPA

#define SCIP_DECOMPSTORE_CAPA   10

hardcoded maximum capacity of decomposition store

Definition at line 48 of file dcmp.h.

Referenced by copyProb(), and SCIPcreateProb().

Function Documentation

◆ SCIPdecompstoreCreate()

SCIP_RETCODE SCIPdecompstoreCreate ( SCIP_DECOMPSTORE **  decompstore,
BMS_BLKMEM blkmem,
int  nslots 
)

creates a decomposition storage

Parameters
decompstorepointer to store decomposition storage
blkmemblock memory data structure
nslotsmaximum number of decomposition slots in storage

Definition at line 500 of file dcmp.c.

References BMSallocBlockMemory, BMSallocBlockMemoryArray, NULL, SCIP_ALLOC, and SCIP_OKAY.

Referenced by copyProb(), and SCIPcreateProb().

◆ SCIPdecompstoreFree()

void SCIPdecompstoreFree ( SCIP_DECOMPSTORE **  decompstore,
BMS_BLKMEM blkmem 
)

frees a decomposition storage

Parameters
decompstorepointer to store decomposition storage
blkmemblock memory data structure

Definition at line 555 of file dcmp.c.

References BMSfreeBlockMemory, BMSfreeBlockMemoryArray, freeDecompositions(), and NULL.

Referenced by SCIPfreeProb().

◆ SCIPdecompstoreAdd()

SCIP_RETCODE SCIPdecompstoreAdd ( SCIP_DECOMPSTORE decompstore,
SCIP_DECOMP decomp 
)

adds decomposition to storage

Parameters
decompstoredecomposition storage
decompdecomposition to add

Definition at line 575 of file dcmp.c.

References SCIP_DecompStore::decomps, SCIP_DecompStore::decompssize, SCIP_DecompStore::ndecomps, SCIP_DecompStore::norigdecomps, NULL, SCIP_DecompStore::origdecomps, SCIP_ERROR, SCIP_OKAY, SCIPdecompIsOriginal(), and SCIPerrorMessage.

Referenced by SCIPaddDecomp(), and SCIPtransformDecompstore().

◆ SCIPtransformDecompstore()

◆ SCIPexitSolveDecompstore()

void SCIPexitSolveDecompstore ( SCIP scip)

frees all decompositions in transformed space

Parameters
scipSCIP data structure

Definition at line 543 of file dcmp.c.

References SCIP_DecompStore::decomps, Scip::decompstore, freeDecompositions(), SCIP_DecompStore::ndecomps, NULL, and SCIPblkmem().

Referenced by freeSolve().

◆ SCIPdecompstoreGetDecomps()

SCIP_DECOMP** SCIPdecompstoreGetDecomps ( SCIP_DECOMPSTORE decompstore)

gets decompositions from storage

Parameters
decompstoredecomposition storage

Definition at line 611 of file dcmp.c.

References SCIP_DecompStore::decomps, and NULL.

Referenced by SCIPgetDecomps().

◆ SCIPdecompstoreGetNDecomps()

int SCIPdecompstoreGetNDecomps ( SCIP_DECOMPSTORE decompstore)

gets number of decompositions in storage

Parameters
decompstoredecomposition storage

Definition at line 621 of file dcmp.c.

References SCIP_DecompStore::ndecomps, and NULL.

Referenced by SCIPgetDecomps().

◆ SCIPdecompstoreGetOrigDecomps()

SCIP_DECOMP** SCIPdecompstoreGetOrigDecomps ( SCIP_DECOMPSTORE decompstore)

gets decompositions in original space from storage

gets decompositions from storage

Parameters
decompstoredecomposition storage

Definition at line 630 of file dcmp.c.

References NULL, and SCIP_DecompStore::origdecomps.

Referenced by SCIPapplyBendersDecomposition(), and SCIPgetDecomps().

◆ SCIPdecompstoreGetNOrigDecomps()

int SCIPdecompstoreGetNOrigDecomps ( SCIP_DECOMPSTORE decompstore)

gets number of decompositions in original space in storage

gets number of decompositions in storage

Parameters
decompstoredecomposition storage

Definition at line 640 of file dcmp.c.

References SCIP_DecompStore::norigdecomps, and NULL.

Referenced by SCIPapplyBendersDecomposition(), SCIPgetDecomps(), and SCIPsolve().