Xmipp  v3.23.11-Nereus
Classes | Macros | Functions | Variables
polar.h File Reference
#include <mutex>
#include "core/multidim_array.h"
#include "core/transformations_defines.h"
#include "core/xmipp_fftw.h"
#include "core/xmipp_filename.h"
Include dependency graph for polar.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Polar_fftw_plans
 
class  Polar< T >
 
class  RotationalCorrelationAux
 

Macros

#define GRIDDING_K   6
 

Functions

void fourierTransformRings (Polar< double > &in, Polar< std::complex< double > > &out, Polar_fftw_plans &plans, bool conjugated=DONT_CONJUGATE)
 
void inverseFourierTransformRings (Polar< std::complex< double > > &in, Polar< double > &out, Polar_fftw_plans &plans, bool conjugated=DONT_CONJUGATE)
 
void rotationalCorrelation (const Polar< std::complex< double > > &M1, const Polar< std::complex< double > > &M2, MultidimArray< double > &angles, RotationalCorrelationAux &aux)
 
template<bool NORMALIZE>
void polarFourierTransform (const MultidimArray< double > &in, Polar< double > &inAux, Polar< std::complex< double > > &out, bool conjugated, int first_ring, int last_ring, Polar_fftw_plans *&plans, int BsplineOrder)
 
template<bool NORMALIZE>
void polarFourierTransform (const MultidimArray< double > &in, Polar< std::complex< double > > &out, bool flag, int first_ring, int last_ring, Polar_fftw_plans *&plans, int BsplineOrder=3)
 
void normalizedPolarFourierTransform (Polar< double > &polarIn, Polar< std::complex< double > > &out, bool conjugated, Polar_fftw_plans *&plans)
 
double best_rotation (const Polar< std::complex< double > > &I1, const Polar< std::complex< double > > &I2, RotationalCorrelationAux &aux)
 
void alignRotationally (MultidimArray< double > &I1, MultidimArray< double > &I2, RotationalCorrelationAux &aux, int splineOrder=1, int wrap=xmipp_transformation::WRAP)
 
void image_convertCartesianToPolar (MultidimArray< double > &in, MultidimArray< double > &out, double Rmin, double Rmax, double deltaR, double angMin, double angMax, double deltaAng)
 
void image_convertCartesianToPolar_ZoomAtCenter (const MultidimArray< double > &in, MultidimArray< double > &out, Matrix1D< double > &R, double zoomFactor, double Rmin, double Rmax, int NRSteps, float angMin, double angMax, int NAngSteps)
 
void volume_convertCartesianToCylindrical (const MultidimArray< double > &in, MultidimArray< double > &out, double Rmin, double Rmax, double deltaR, float angMin, double angMax, float deltaAng, Matrix1D< double > &axis)
 
void volume_convertCartesianToSpherical (const MultidimArray< double > &in, MultidimArray< double > &out, double Rmin, double Rmax, double deltaR=1., double deltaRot=2.*PI/360., double deltaTilt=PI/180.)
 

Variables

constexpr int FULL_CIRCLES = 0
 
constexpr int HALF_CIRCLES = 1
 
constexpr bool DONT_CONJUGATE = false
 
constexpr bool CONJUGATE = true
 
constexpr bool DONT_KEEP_TRANSFORM = false
 
constexpr bool KEEP_TRANSFORM = true
 

Macro Definition Documentation

◆ GRIDDING_K

#define GRIDDING_K   6

Get Cartesian Coordinates of the Polar sampling

The output of this function can be used to calculate Voronoi areas, lists of neighbours etc.

To deal with the borders of the polar structure (a maximum of) "extra_shell" extra rings are calculated on the inside and outside of the polar structure.

Definition at line 558 of file polar.h.

Variable Documentation

◆ CONJUGATE

constexpr bool CONJUGATE = true

Definition at line 43 of file polar.h.

◆ DONT_CONJUGATE

constexpr bool DONT_CONJUGATE = false

Definition at line 42 of file polar.h.

◆ DONT_KEEP_TRANSFORM

constexpr bool DONT_KEEP_TRANSFORM = false

Definition at line 44 of file polar.h.

◆ FULL_CIRCLES

constexpr int FULL_CIRCLES = 0

Definition at line 40 of file polar.h.

◆ HALF_CIRCLES

constexpr int HALF_CIRCLES = 1

Definition at line 41 of file polar.h.

◆ KEEP_TRANSFORM

constexpr bool KEEP_TRANSFORM = true

Definition at line 45 of file polar.h.