RTOpPack: Extra C/C++ Code for Vector Reduction/Transformation Operators  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Classes
RTOp_ROp_max_near_feas_step.h File Reference
#include "RTOp.h"
Include dependency graph for RTOp_ROp_max_near_feas_step.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  RTOp_ROp_max_near_feas_step_reduct_obj_t
 

Detailed Description

Reduction operator for finding the maximum near feasibl step.

targ_obj <- { max alpha | v[0] - beta <= v[1] + alpha * v[2] <= v[3] + beta }

This is a specialized reduction operation that is used in many optimization methods to find the maximum step length alpha# such that the iterates remain positive. This reduction operation returns a target object which consists of a set of values targ_obj = { alpha_pos, alpha_neg }. Here, alpha_pos# and alpha_neg are the largets positive and negative steps alpha# respectively that satifies the relaxed bounds. If alpha_pos < 0.0 on return then this is a flag that v[1]# is already out of bounds and the value of alpha_neg is insignificant.

This operator is defined to allow exactly four vector arguments (num_vecs == 2) v[0], v[1], and can only handle dense vectors.

Definition in file RTOp_ROp_max_near_feas_step.h.