Scippy

    SCIP

    Solving Constraint Integer Programs

    SPQRColReducedMember Struct Reference

    Detailed Description

    A struct that keeps track of the relevant data for the members that are in the subtree given by the specified row arcs.

    We typically call these 'reduced' members (members of the reduced tree).

    Definition at line 3549 of file network.c.

    Data Fields

    spqr_member member
     
    spqr_member rootMember
     
    int depth
     
    ReducedMemberType type
     
    reduced_member_id parent
     
    children_idx firstChild
     
    children_idx numChildren
     
    path_arc_id firstPathArc
     
    int numPathArcs
     
    SCIP_Bool reverseArcs
     
    spqr_node rigidPathStart
     
    spqr_node rigidPathEnd
     
    SCIP_Bool pathBackwards
     
    int numPropagatedChildren
     
    int componentIndex
     
    MemberPathType pathType
     
    reduced_member_id nextPathMember
     
    SCIP_Bool nextPathMemberIsParent
     
    spqr_arc pathSourceArc
     
    spqr_arc pathTargetArc
     

    Field Documentation

    ◆ member

    ◆ rootMember

    spqr_member SPQRColReducedMember::rootMember

    The root member of the arborescence that contains this member

    Definition at line 3552 of file network.c.

    Referenced by constructReducedDecomposition(), and createReducedMembersToRoot().

    ◆ depth

    int SPQRColReducedMember::depth

    The depth of this member in the arborescence

    Definition at line 3553 of file network.c.

    Referenced by constructReducedDecomposition(), and createReducedMembersToRoot().

    ◆ type

    ◆ parent

    reduced_member_id SPQRColReducedMember::parent

    The reduced member id of the parent of this reduced member

    Definition at line 3555 of file network.c.

    Referenced by constructReducedDecomposition(), createReducedMembersToRoot(), determineSingleComponentType(), and propagateCycles().

    ◆ firstChild

    children_idx SPQRColReducedMember::firstChild

    The index of the first child in the children array.

    Definition at line 3557 of file network.c.

    Referenced by constructReducedDecomposition(), determinePathTypes(), and propagateCycles().

    ◆ numChildren

    children_idx SPQRColReducedMember::numChildren

    The number of children in the arborescence of this reduced member

    Definition at line 3558 of file network.c.

    Referenced by computeLeafMembers(), constructReducedDecomposition(), createReducedMembersToRoot(), determinePathTypes(), determineSingleComponentType(), propagateCycles(), and transformComponent().

    ◆ firstPathArc

    ◆ numPathArcs

    int SPQRColReducedMember::numPathArcs

    The number of path arcs in the linked list

    Definition at line 3561 of file network.c.

    Referenced by columnTransformSingleParallel(), createPathArc(), createReducedMembersToRoot(), splitSeries(), and splitSeriesMerging().

    ◆ reverseArcs

    SCIP_Bool SPQRColReducedMember::reverseArcs

    Will the arcs in this component be reversed?

    Definition at line 3563 of file network.c.

    Referenced by determinePathRigidType(), and transformAndMergeRigid().

    ◆ rigidPathStart

    spqr_node SPQRColReducedMember::rigidPathStart

    The start node of the path. Only used for Rigid/3-connected nodes

    Definition at line 3564 of file network.c.

    Referenced by checkRigidLeaf(), columnTransformSingleRigid(), createReducedMembersToRoot(), determinePathRigidType(), determineRigidPath(), transformAndMergeRigid(), and transformFirstPathMember().

    ◆ rigidPathEnd

    spqr_node SPQRColReducedMember::rigidPathEnd

    The end node of the path. Only used for Rigid/3-connected nodes

    Definition at line 3565 of file network.c.

    Referenced by checkRigidLeaf(), columnTransformSingleRigid(), createReducedMembersToRoot(), determinePathRigidType(), determineRigidPath(), transformAndMergeRigid(), and transformFirstPathMember().

    ◆ pathBackwards

    SCIP_Bool SPQRColReducedMember::pathBackwards

    Indicates if the path direction is reversed with respect to the default orientation within series and parallel members.

    Definition at line 3567 of file network.c.

    Referenced by checkLeaf(), columnTransformSingleParallel(), determinePathSeriesType(), determineSingleComponentType(), and splitSeries().

    ◆ numPropagatedChildren

    int SPQRColReducedMember::numPropagatedChildren

    Counts the number of children that are cycles that propagated to this reduced member

    Definition at line 3570 of file network.c.

    Referenced by createReducedMembersToRoot(), determineSingleComponentType(), propagateCycles(), and transformComponent().

    ◆ componentIndex

    int SPQRColReducedMember::componentIndex

    Stores the index of the component of the SPQR forest that this reduced member is contained in.

    Definition at line 3572 of file network.c.

    Referenced by createReducedMembersToRoot(), and propagateCycles().

    ◆ pathType

    MemberPathType SPQRColReducedMember::pathType

    ◆ nextPathMember

    reduced_member_id SPQRColReducedMember::nextPathMember

    Indicates the id of the next reduced member in the path during merging. During merging, the SPQR tree must be a path itself.

    Definition at line 3576 of file network.c.

    Referenced by determinePathTypes(), and transformPath().

    ◆ nextPathMemberIsParent

    SCIP_Bool SPQRColReducedMember::nextPathMemberIsParent

    Indicates if the next reduced member in the path is a parent of this member

    Definition at line 3578 of file network.c.

    Referenced by determinePathTypes(), and transformPath().

    ◆ pathSourceArc

    spqr_arc SPQRColReducedMember::pathSourceArc

    The virtual arc from where the path originates

    Definition at line 3580 of file network.c.

    Referenced by determinePathMemberType(), transformAndMergeParallel(), transformAndMergeRigid(), and transformAndMergeSeries().

    ◆ pathTargetArc

    spqr_arc SPQRColReducedMember::pathTargetArc

    The virtual arc where the path has to go

    Definition at line 3581 of file network.c.

    Referenced by determinePathMemberType(), transformAndMergeParallel(), transformAndMergeRigid(), transformAndMergeSeries(), and transformFirstPathMember().