akreon-convex
Typed convex modeling, conic canonicalization, and primal-dual optimization in C++26.
Loading...
Searching...
No Matches
conic::SOCCirc< Vec > Struct Template Reference

Circ - Jordan Map/Product for SOC. More...

#include <soc.hpp>

Public Types

using T = linalg::vector_element_t< Vec >
 types and size extraction
 

Public Member Functions

constexpr auto operator() (const Vec &x, const Vec &y) const
 circ (jordan map/product)
 

Static Public Attributes

static constexpr std::size_t N = linalg::vector_dim_v<Vec>
 

Detailed Description

template<linalg::VectorContainer Vec>
struct conic::SOCCirc< Vec >

Circ - Jordan Map/Product for SOC.

x circ y = JxJ -> J x circ y = (x,t1) circ (y,t2) = (x t2 + y t1, x^T y + t1 t2)

Parameters
xin K
yin K^*
Returns
x circ y (bilinear product)

Definition at line 90 of file soc.hpp.

Member Typedef Documentation

◆ T

template<linalg::VectorContainer Vec>
using conic::SOCCirc< Vec >::T = linalg::vector_element_t<Vec>

types and size extraction

Definition at line 92 of file soc.hpp.

Member Function Documentation

◆ operator()()

template<linalg::VectorContainer Vec>
constexpr auto conic::SOCCirc< Vec >::operator() ( const Vec &  x,
const Vec &  y 
) const
inlineconstexpr

circ (jordan map/product)

x circ y = (x,t1) circ (y,t2) = (x t2 + y t1, x^T y + t1 t2)

Parameters
xin K
yin K^*
Returns
x circ y (bilinear product)

Definition at line 105 of file soc.hpp.

References conic::SOCCirc< Vec >::N.

Member Data Documentation

◆ N

template<linalg::VectorContainer Vec>
constexpr std::size_t conic::SOCCirc< Vec >::N = linalg::vector_dim_v<Vec>
staticconstexpr

Definition at line 93 of file soc.hpp.

Referenced by conic::SOCCirc< Vec >::operator()().


The documentation for this struct was generated from the following file: