COPP C ABI
C interface for COPP trajectory optimization
Loading...
Searching...
No Matches
copp3.h
Go to the documentation of this file.
1#ifndef COPP_COPP3_H
2#define COPP_COPP3_H
3
4/*
5 * Generated by bindings/c/scripts/generate_headers.ps1.
6 * Do not edit by hand; update src/ffi/c and regenerate.
7 */
8
14
15#include <stddef.h>
16#include <stdbool.h>
17#include <stdint.h>
18#include "copp/core.h"
19#include "copp/formulation.h"
20
21#ifdef __cplusplus
22extern "C" {
23#endif
24
29
103
148 struct CoppClarabelOptions options,
149 struct CoppProfile3rd *out_profile);
150
168 struct CoppClarabelOptions options,
169 struct Copp3SocpResult *out_result);
170
178
180
181#ifdef __cplusplus
182}
183#endif
184
185#endif /* COPP_COPP3_H */
Core status, memory, matrix, and shared solver option types.
TOPP/COPP problem descriptors, objectives, and profile ownership.
enum CoppStatus copp3_socp(struct Copp3Problem problem, struct CoppClarabelOptions options, struct CoppProfile3rd *out_profile)
Solve a COPP3-SOCP problem.
void copp3_socp_result_free(struct Copp3SocpResult result)
Release memory owned by a Copp3SocpResult.
enum CoppStatus copp3_socp_expert(struct Copp3Problem problem, struct CoppClarabelOptions options, struct Copp3SocpResult *out_result)
Solve a COPP3-SOCP problem and always return Clarabel diagnostics.
CoppClarabelSolverStatus
Clarabel solver status returned by SOCP expert results.
Definition core.h:380
CoppStatus
C ABI status code returned by COPP FFI functions.
Definition core.h:34
Borrowed value descriptor for a COPP3 problem solved from C.
Compact COPP3-SOCP expert result returned to C.
Definition copp3.h:39
struct CoppProfile3rd profile
Accepted third-order profile, or an empty profile when has_profile == false.
Definition copp3.h:48
struct CoppVecF64 s
Raw Clarabel primal-cone slack vector.
Definition copp3.h:60
struct CoppVecF64 z
Raw Clarabel dual solution vector.
Definition copp3.h:56
double obj_val
Primal objective value reported by Clarabel.
Definition copp3.h:68
struct CoppVecF64 objective_terms
Per-objective unweighted values computed from accepted profile.
Definition copp3.h:101
double solve_time
Clarabel solve time in seconds.
Definition copp3.h:76
double objective_value
Weighted COPP objective value computed from accepted profile; NaN otherwise.
Definition copp3.h:97
struct CoppClarabelLinearSolverInfo linsolver
Linear solver metadata reported by Clarabel.
Definition copp3.h:92
enum CoppClarabelSolverStatus solver_status
Final Clarabel solver status.
Definition copp3.h:64
double obj_val_dual
Dual objective value reported by Clarabel.
Definition copp3.h:72
bool has_profile
Whether profile contains an accepted third-order profile.
Definition copp3.h:43
double r_prim
Primal residual reported by Clarabel.
Definition copp3.h:84
struct CoppVecF64 x
Raw Clarabel primal solution vector.
Definition copp3.h:52
double r_dual
Dual residual reported by Clarabel.
Definition copp3.h:88
uint32_t iterations
Number of interior-point iterations.
Definition copp3.h:80
Linear solver metadata reported by Clarabel.
Definition core.h:434
Shared Clarabel options for COPP SOCP solvers.
Definition core.h:627
Owned third-order profile returned by TOPP3/COPP3 C ABI solvers.
Library-owned f64 vector returned to C.
Definition core.h:828