cyqlone develop
Fast, parallel and vectorized solver for linear systems with optimal control structure.
Loading...
Searching...
No Matches
cyqlone::norms< T, simd > Struct Template Reference

#include <cyqlone/reduce.hpp>

Detailed Description

template<class T, class simd>
struct cyqlone::norms< T, simd >

Utilities for computing vector norms.

Template Parameters
TScalar type.
simdSIMD type. Void for scalar-only.

Definition at line 26 of file reduce.hpp.

Classes

struct  result_simd
 Lane-wise accumulators. More...

Public Types

using result = typename norms<T>::result
 Accumulator.

Public Member Functions

result_simd operator() (result_simd accum, simd t) const
 Update the accumulator with a new value.
result operator() (result_simd accum) const
 Reduce the SIMD accumulator to a scalar result.

Static Public Member Functions

static result_simd zero_simd ()

Class Documentation

◆ cyqlone::norms::result_simd

struct cyqlone::norms::result_simd
Class Members
simd amax
simd asum
simd sumsq

Member Typedef Documentation

◆ result

template<class T, class simd>
using cyqlone::norms< T, simd >::result = typename norms<T>::result

Accumulator.

Definition at line 28 of file reduce.hpp.

Member Function Documentation

◆ operator()() [1/2]

template<class T, class simd>
result_simd cyqlone::norms< T, simd >::operator() ( result_simd accum,
simd t ) const
inline

Update the accumulator with a new value.

Definition at line 39 of file reduce.hpp.

◆ operator()() [2/2]

template<class T, class simd>
result cyqlone::norms< T, simd >::operator() ( result_simd accum) const
inline

Reduce the SIMD accumulator to a scalar result.

Definition at line 47 of file reduce.hpp.

◆ zero_simd()

template<class T, class simd>
result_simd cyqlone::norms< T, simd >::zero_simd ( )
inlinestatic

Definition at line 55 of file reduce.hpp.


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