C
26
nrerror
Guest on 27th April 2022 01:41:55 AM
#include <stdio.h>
#include <stddef.h>
#include <stdlib.h>
#define NR_END 1
#define FREE_ARG char*
void nrerror(char error_text[])
/* Numerical Recipes standard error handler */
{
fprintf(stderr
,"Numerical Recipes run-time error...\n");
fprintf(stderr
,"...now exiting to system...\n");
}
int *ivector(long nl, long nh)
/* allocate an int vector with subscript range v[nl..nh] */
{
int *v;
v
=(int *)malloc((size_t) ((nh
-nl
+1+NR_END
)*sizeof(int)));
if (!v) nrerror("allocation failure in ivector()");
return v-nl+NR_END;
}
double *dvector(long nl, long nh)
/* allocate a double vector with subscript range v[nl..nh] */
{
double *v;
v
=(double *)malloc((size_t) ((nh
-nl
+1+NR_END
)*sizeof(double)));
if (!v) nrerror("allocation failure in dvector()");
return v-nl+NR_END;
}
void free_dvector(double *v, long nl, long nh)
/* free a double vector allocated with dvector() */
{
free((FREE_ARG
) (v
+nl
-NR_END
));
}
void free_ivector(int *v, long nl, long nh)
/* free an int vector allocated with ivector() */
{
free((FREE_ARG
) (v
+nl
-NR_END
));
}