SoPlex
Toggle main menu visibility
Loading...
Searching...
No Matches
src
soplex
spxsteepexpr.h
Go to the documentation of this file.
1
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
/* */
3
/* This file is part of the class library */
4
/* SoPlex --- the Sequential object-oriented simPlex. */
5
/* */
6
/* Copyright (c) 1996-2026 Zuse Institute Berlin (ZIB) */
7
/* */
8
/* Licensed under the Apache License, Version 2.0 (the "License"); */
9
/* you may not use this file except in compliance with the License. */
10
/* You may obtain a copy of the License at */
11
/* */
12
/* http://www.apache.org/licenses/LICENSE-2.0 */
13
/* */
14
/* Unless required by applicable law or agreed to in writing, software */
15
/* distributed under the License is distributed on an "AS IS" BASIS, */
16
/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */
17
/* See the License for the specific language governing permissions and */
18
/* limitations under the License. */
19
/* */
20
/* You should have received a copy of the Apache-2.0 license */
21
/* along with SoPlex; see the file LICENSE. If not email to soplex@zib.de. */
22
/* */
23
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
24
25
26
/**@file spxsteepexpr.h
27
* @brief Steepest edge pricer with exact initialization of weights.
28
*/
29
#ifndef _SPXSTEEPEXPR_H_
30
#define _SPXSTEEPEXPR_H_
31
32
33
#include <assert.h>
34
35
#include "
soplex/spxdefines.h
"
36
#include "
soplex/spxsteeppr.h
"
37
38
namespace
soplex
39
{
40
41
/**@brief Steepest edge pricer.
42
@ingroup Algo
43
44
Class SPxSteepExPR implements a steepest edge pricer to be used with
45
SoPlex. Exact initialization of weights is used.
46
47
See SPxPricer for a class documentation.
48
*/
49
template
<
class
R>
50
class
SPxSteepExPR
:
public
SPxSteepPR
<R>
51
{
52
53
public
:
54
55
//-------------------------------------
56
/**@name Construction / destruction */
57
///@{
58
///
59
SPxSteepExPR
()
60
:
SPxSteepPR
<R>(
"SteepEx"
,
SPxSteepPR
<R>::
EXACT
)
61
{
62
assert(this->
isConsistent
());
63
}
64
/// copy constructor
65
SPxSteepExPR
(
const
SPxSteepExPR
& old)
66
:
SPxSteepPR
<R>(old)
67
{
68
assert(this->
isConsistent
());
69
}
70
/// assignment operator
71
SPxSteepExPR
&
operator=
(
const
SPxSteepExPR
& rhs)
72
{
73
if
(
this
!= &rhs)
74
{
75
SPxSteepPR<R>::operator=
(rhs);
76
77
assert(this->
isConsistent
());
78
}
79
80
return
*
this
;
81
}
82
/// destructor
83
virtual
~SPxSteepExPR
()
84
{}
85
/// clone function for polymorphism
86
inline
virtual
SPxSteepPR<R>
*
clone
()
const
87
{
88
return
new
SPxSteepExPR
(*
this
);
89
}
90
///@}
91
};
92
93
}
// namespace soplex
94
95
#include "spxsteeppr.hpp"
96
97
#endif
// _SPXSTEEPPR_H_
soplex::SPxSteepExPR::~SPxSteepExPR
virtual ~SPxSteepExPR()
destructor
Definition
spxsteepexpr.h:83
soplex::SPxSteepExPR::SPxSteepExPR
SPxSteepExPR(const SPxSteepExPR &old)
copy constructor
Definition
spxsteepexpr.h:65
soplex::SPxSteepExPR::operator=
SPxSteepExPR & operator=(const SPxSteepExPR &rhs)
assignment operator
Definition
spxsteepexpr.h:71
soplex::SPxSteepExPR::SPxSteepExPR
SPxSteepExPR()
Definition
spxsteepexpr.h:59
soplex::SPxSteepExPR::clone
virtual SPxSteepPR< R > * clone() const
clone function for polymorphism
Definition
spxsteepexpr.h:86
soplex::SPxSteepPR::EXACT
@ EXACT
starting with exactly computed values
Definition
spxsteeppr.h:65
soplex::SPxSteepPR::operator=
SPxSteepPR & operator=(const SPxSteepPR &rhs)
assignment operator
Definition
spxsteeppr.h:152
soplex::SPxSteepPR::isConsistent
virtual bool isConsistent() const
soplex::SPxSteepPR::SPxSteepPR
SPxSteepPR(const char *name="Steep", Setup mode=DEFAULT)
Definition
spxsteeppr.h:130
soplex
Everything should be within this namespace.
spxdefines.h
Debugging, floating point type and parameter definitions.
spxsteeppr.h
Steepest edge pricer.
Generated by
1.17.0