Blame vector/gsl_vector_complex.h
|
Packit |
67cb25 |
#ifndef __GSL_VECTOR_COMPLEX_H__
|
|
Packit |
67cb25 |
#define __GSL_VECTOR_COMPLEX_H__
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
#define GSL_VECTOR_REAL(z, i) ((z)->data[2*(i)*(z)->stride])
|
|
Packit |
67cb25 |
#define GSL_VECTOR_IMAG(z, i) ((z)->data[2*(i)*(z)->stride + 1])
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
#if GSL_RANGE_CHECK
|
|
Packit |
67cb25 |
#define GSL_VECTOR_COMPLEX(zv, i) (((i) >= (zv)->size ? (gsl_error ("index out of range", __FILE__, __LINE__, GSL_EINVAL), 0):0 , *GSL_COMPLEX_AT((zv),(i))))
|
|
Packit |
67cb25 |
#else
|
|
Packit |
67cb25 |
#define GSL_VECTOR_COMPLEX(zv, i) (*GSL_COMPLEX_AT((zv),(i)))
|
|
Packit |
67cb25 |
#endif
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
#define GSL_COMPLEX_AT(zv,i) ((gsl_complex*)&((zv)->data[2*(i)*(zv)->stride]))
|
|
Packit |
67cb25 |
#define GSL_COMPLEX_FLOAT_AT(zv,i) ((gsl_complex_float*)&((zv)->data[2*(i)*(zv)->stride]))
|
|
Packit |
67cb25 |
#define GSL_COMPLEX_LONG_DOUBLE_AT(zv,i) ((gsl_complex_long_double*)&((zv)->data[2*(i)*(zv)->stride]))
|
|
Packit |
67cb25 |
|
|
Packit |
67cb25 |
#endif /* __GSL_VECTOR_COMPLEX_H__ */
|