Developer documentation
Version 3.0.3-105-gd3941f44
ZSH.h File Reference
#include <Eigen/Dense>
#include "math/legendre.h"
#include "math/least_squares.h"
#include "math/SH.h"

Go to the source code of this file.

Classes

class  MR::Math::ZSH::Transform< ValueType >
 

Namespaces

namespace  MR
 
namespace  MR::Math
 
namespace  MR::Math::ZSH
 

Functions

size_t MR::Math::ZSH::NforL (int lmax)
 the number of (even-degree) coefficients for the given value of lmax More...
 
size_t MR::Math::ZSH::index (int l)
 compute the index for coefficient l More...
 
size_t MR::Math::ZSH::LforN (int N)
 returns the largest lmax given N parameters More...
 
template<typename value_type , class VectorType >
Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > MR::Math::ZSH::init_amp_transform (const VectorType &els, const size_t lmax)
 form the ZSH->amplitudes matrix for a set of elevation angles More...
 
template<typename value_type , class VectorType >
Eigen::Matrix< value_type, Eigen::Dynamic, Eigen::Dynamic > MR::Math::ZSH::init_deriv_transform (const VectorType &els, const size_t lmax)
 form the ZSH->derivatives matrix for a set of elevation angles More...
 
template<class VectorType >
VectorType::Scalar MR::Math::ZSH::value (const VectorType &coefs, typename VectorType::Scalar elevation, const size_t lmax)
 
template<class VectorType >
VectorType::Scalar MR::Math::ZSH::derivative (const VectorType &coefs, const typename VectorType::Scalar elevation, const size_t lmax)
 
template<class VectorType1 , class VectorType2 >
VectorType1 & MR::Math::ZSH::ZSH2SH (VectorType1 &sh, const VectorType2 &zsh)
 
template<class VectorType >
Eigen::Matrix< typename VectorType::Scalar, Eigen::Dynamic, 1 > MR::Math::ZSH::ZSH2SH (const VectorType &zsh)
 
template<class VectorType1 , class VectorType2 >
VectorType1 & MR::Math::ZSH::SH2ZSH (VectorType1 &zsh, const VectorType2 &sh)
 
template<class VectorType >
Eigen::Matrix< typename VectorType::Scalar, Eigen::Dynamic, 1 > MR::Math::ZSH::SH2ZSH (const VectorType &sh)
 
template<class VectorType1 , class VectorType2 >
VectorType1 & MR::Math::ZSH::ZSH2RH (VectorType1 &rh, const VectorType2 &zsh)
 
template<class VectorType >
Eigen::Matrix< typename VectorType::Scalar, Eigen::Dynamic, 1 > MR::Math::ZSH::ZSH2RH (const VectorType &zsh)
 
template<class VectorType1 , class VectorType2 >
VectorType1 & MR::Math::ZSH::zsconv (VectorType1 &zsh, const VectorType2 &RH)
 perform zonal spherical convolution, in place More...
 
template<class VectorType1 , class VectorType2 , class VectorType3 >
VectorType1 & MR::Math::ZSH::zsconv (VectorType1 &C, const VectorType2 &RH, const VectorType3 &zsh)
 perform zonal spherical convolution More...
 
template<class VectorType >
VectorType & MR::Math::ZSH::FA2ZSH (VectorType &zsh, default_type FA, default_type ADC, default_type bvalue, const size_t lmax, const size_t precision=100)
 compute ZSH coefficients corresponding to specified tensor More...