return;
}
+double norm_theta(theta)
+double theta;
+{
+ double T = 2*M_PI;
+ while( theta < -M_PI || M_PI < theta ){
+ theta -= GSL_SIGN(theta)*T;
+ }
+ return theta;
+}
+
typedef struct {
double m;
int l;
2.221939e-16 8.203930e-05
*/
i = 0;
- p->delta = 6.0;
+ p->delta = norm_theta(6.0);
p->k = sqrt(2 * p->m * p->E) / hbar;
p->A = 1E+16;
p->r_num = 100;
}
double norm_theta(double theta);
-double norm_theta(theta)
-double theta;
-{
- double T = 2*M_PI;
- while( theta < -M_PI || M_PI < theta ){
- theta -= GSL_SIGN(theta)*T;
- }
- return theta;
-}
-
void param_free(p)
param *p;
{
param *p;
double t;
{
- double delta = p->delta;
+ double delta = norm_theta(p->delta);
int l = p->l;
double kt = p->k * t;
double A = p->A;
param *p;
double t;
{
- double delta = p->delta;
+ double delta = norm_theta(p->delta);
int l = p->l;
double kt = p->k * t;
double result = 0.0;
param *p;
double t;
{
- double delta = p->delta;
+ double delta = norm_theta(p->delta);
int l = p->l;
double kt = p->k * t;
double A = p->A;
gsl_multifit_function_fdf f;
double x_init[2];
x_init[0] = p->A;
- x_init[1] = p->delta;
+ x_init[1] = norm_theta(p->delta);
x = gsl_vector_view_array(x_init, 2);
f.f = &calc_f;
f.df = &calc_df;
double *u_data = p->u->data;
double *dudr_data = p->dudr->data;
double A_init = p->A;
- double delta_init = p->delta;
+ double delta_init = norm_theta(p->delta);
printf("\n");
printf("#");
printf("chisq/dof\t");