![]() |
GPUE
v1.0
GPU Gross-Pitaevskii Equation numerical solver for Bose-Einstein condensates
|
Vortex lattice position, orientation, and tracking. More...
#include <math.h>
#include <vector>
#include <stdio.h>
#include <cuda.h>
#include <cuda_runtime.h>
#include "vort.h"
Go to the source code of this file.
Namespaces | |
Tracker | |
Functions | |
int | Tracker::findVortex (int *marker, const double2 *wfc, double radius, int xDim, const double *x, int timestep) |
Find vortex locations in the condensate. More... | |
void | Tracker::vortPos (const int *marker, std::vector< std::shared_ptr< Vtx::Vortex > > &vLocation, int xDim, const double2 *wfc) |
Accepts matrix of vortex locations as argument, returns array of x,y coordinates of locations and winding. More... | |
void | Tracker::olPos (int *marker, int2 *vLocation, int xDim) |
Accepts matrix of vortex locations as argument, returns array of x,y coordinates of locations and winding. More... | |
std::shared_ptr< Vtx::Vortex > | Tracker::vortPosDelta (int *cMarker, int2 *pMarker, double *x, double tolerance, int xDim) |
Changes in vortex positions. Not implemented. See vort.py for current tracking. More... | |
std::shared_ptr< Vtx::Vortex > | Tracker::vortCentre (const std::vector< std::shared_ptr< Vtx::Vortex > > &cArray, int xDim) |
Determines the most central vortex in the condensate. More... | |
double | Tracker::vortAngle (const std::vector< std::shared_ptr< Vtx::Vortex >> &vortCoords, const std::shared_ptr< Vtx::Vortex > central) |
Determines the rotation angle of the vortex lattice. More... | |
double | Tracker::vortSepAvg (const std::vector< std::shared_ptr< Vtx::Vortex > > &vArray, const std::shared_ptr< Vtx::Vortex > centre) |
Determines average inter-vortex separation about the condensate centre. More... | |
double | Tracker::sigVOL (const std::vector< std::shared_ptr< Vtx::Vortex > > &vArr, const int2 *opLatt, const double *x) |
int | Tracker::findOLMaxima (int *marker, double *V, double radius, int xDim, double *x) |
Finds optical lattice maxima locations. Deprecated. More... | |
void | Tracker::vortArrange (std::vector< std::shared_ptr< Vtx::Vortex > > &vCoordsC, const std::vector< std::shared_ptr< Vtx::Vortex >> &vCoordsP) |
Ensures the vortices are tracked and arranged in the right order based on minimum distance between previous and current positions. More... | |
int | Tracker::phaseTest (int2 vLoc, double2 *wfc, int xDim) |
Checks given coordinate for phase singularity of +ve winding. More... | |
void | Tracker::lsFit (std::vector< std::shared_ptr< Vtx::Vortex >> &vortCoords, const double2 *wfc, int xDim) |
Least-squares vortex code estimation. Loosely based on c42f's vortutils code. More... | |
Vortex lattice position, orientation, and tracking.
These functions determine vortex positions, calculate intervortex separation at the max density, determine vortex lattice angle, and all useful routines to know where they are hiding.
Definition in file tracker.h.