QPALM main
Proximal Augmented Lagrangian method for Quadratic Programs
Loading...
Searching...
No Matches
Functions
qpalm.h File Reference

Detailed Description

QPALM main solver API.

Author
Ben Hermans

This file contains the main functions that can be called by the user. The user can load the default settings, setup the workspace with data and settings, warm_start the primal and dual variables, run the solver, update the settings, bounds and linear part of the cost, and finally cleanup the workspace afterwards.

Definition in file qpalm.h.

#include <qpalm/constants.h>
#include <qpalm/global_opts.h>
#include <qpalm/iteration.h>
#include <qpalm/lin_alg.h>
#include <qpalm/linesearch.h>
#include <qpalm/newton.h>
#include <qpalm/nonconvex.h>
#include <qpalm/scaling.h>
#include <qpalm/solver_interface.h>
#include <qpalm/termination.h>
#include <qpalm/types.h>
#include <qpalm/util.h>
#include <qpalm/validate.h>
+ Include dependency graph for qpalm.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void qpalm_set_default_settings (QPALMSettings *settings)
 Set default settings from constants.h file.
 
QPALMWorkspaceqpalm_setup (const QPALMData *data, const QPALMSettings *settings)
 Initialize QPALM solver allocating memory.
 
void qpalm_warm_start (QPALMWorkspace *work, const c_float *x_warm_start, const c_float *y_warm_start)
 Warm start workspace variables x, x_0, x_prev, Ax, Qx, y and sigma.
 
void qpalm_solve (QPALMWorkspace *work)
 Solve the quadratic program.
 
void qpalm_cancel (QPALMWorkspace *work)
 Cancel the ongoing call to qpalm_solve.
 
void qpalm_update_settings (QPALMWorkspace *work, const QPALMSettings *settings)
 Update the settings to the new settings.
 
void qpalm_update_bounds (QPALMWorkspace *work, const c_float *bmin, const c_float *bmax)
 Update the lower and upper bounds.
 
void qpalm_update_q (QPALMWorkspace *work, const c_float *q)
 Update the linear part of the cost.
 
void qpalm_update_Q_A (QPALMWorkspace *work, const c_float *Qx, const c_float *Ax)
 Update the matrix entries of Q and A.
 
void qpalm_cleanup (QPALMWorkspace *work)
 Cleanup the workspace by deallocating memory.