Oakfield API Documentation 1.0.0
Numerical core APIs
Loading...
Searching...
No Matches
coords.h File Reference

Shared spatial coordinate helpers for stimulus operators. More...

#include "oakfield/field.h"
#include "oakfield/field_patch.h"
#include <math.h>
#include <stdbool.h>
Include dependency graph for coords.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  SimStimulusCoordConfig
 Shared coordinate mapping configuration used by stimulus operators. More...
 
struct  SimStimulusCoordRow
 Precomputed coordinate row state for efficient stimulus patch iteration. More...
 

Macros

#define STIMULUS_COORD_EPS   1.0e-12
 

Typedefs

typedef enum SimStimulusCoordMode SimStimulusCoordMode
 Spatial coordinate mappings shared by stimulus operators.
 
typedef enum SimStimulusCoordAxis SimStimulusCoordAxis
 Cartesian axis selector for stimulus coordinates.
 
typedef enum SimStimulusSeparableMode SimStimulusSeparableMode
 Combination mode for separable X/Y stimulus coordinates.
 
typedef struct SimStimulusCoordConfig SimStimulusCoordConfig
 Shared coordinate mapping configuration used by stimulus operators.
 
typedef struct SimStimulusCoordRow SimStimulusCoordRow
 Precomputed coordinate row state for efficient stimulus patch iteration.
 

Enumerations

enum  SimStimulusCoordMode {
  SIM_STIMULUS_COORD_AXIS = 0 , SIM_STIMULUS_COORD_ANGLE , SIM_STIMULUS_COORD_RADIAL , SIM_STIMULUS_COORD_POLAR ,
  SIM_STIMULUS_COORD_AZIMUTH , SIM_STIMULUS_COORD_ELLIPTIC , SIM_STIMULUS_COORD_SEPARABLE , SIM_STIMULUS_COORD_SPIRAL
}
 Spatial coordinate mappings shared by stimulus operators. More...
 
enum  SimStimulusCoordAxis { SIM_STIMULUS_AXIS_X = 0 , SIM_STIMULUS_AXIS_Y = 1 }
 Cartesian axis selector for stimulus coordinates. More...
 
enum  SimStimulusSeparableMode { SIM_STIMULUS_SEPARABLE_MULTIPLY = 0 , SIM_STIMULUS_SEPARABLE_ADD = 1 }
 Combination mode for separable X/Y stimulus coordinates. More...
 

Detailed Description

Shared spatial coordinate helpers for stimulus operators.

Enumeration Type Documentation

◆ SimStimulusCoordAxis

Cartesian axis selector for stimulus coordinates.

Enumerator
SIM_STIMULUS_AXIS_X 

X axis.

SIM_STIMULUS_AXIS_Y 

Y axis.

◆ SimStimulusCoordMode

Spatial coordinate mappings shared by stimulus operators.

Enumerator
SIM_STIMULUS_COORD_AXIS 

Single Cartesian axis coordinate.

SIM_STIMULUS_COORD_ANGLE 

Rotated linear coordinate.

SIM_STIMULUS_COORD_RADIAL 

Radial distance from center.

SIM_STIMULUS_COORD_POLAR 

Polar coordinate pair collapsed by projection.

SIM_STIMULUS_COORD_AZIMUTH 

Azimuthal angle around center.

SIM_STIMULUS_COORD_ELLIPTIC 

Elliptic radial coordinate.

SIM_STIMULUS_COORD_SEPARABLE 

Separable X/Y coordinate combination.

SIM_STIMULUS_COORD_SPIRAL 

Spiral phase coordinate.

◆ SimStimulusSeparableMode

Combination mode for separable X/Y stimulus coordinates.

Enumerator
SIM_STIMULUS_SEPARABLE_MULTIPLY 

Multiply separable components.

SIM_STIMULUS_SEPARABLE_ADD 

Add separable components.