| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 
 |  
void function_test_natural(char * function_name, IDL_LONG n_q_values, double *q_values, double *p_values, double *results)
{
 
    int i;    
 
    sasfit_param param;
 
    // Sets the parameters according to user-defined values.
    for (i = 0; i < MAXPAR; i = i + 1)
    {
        param.p[i] = *p_values++;
    }
 
 
    if (strcmp(function_name, "sphere") == 0)
 
        // Loop over the q values.        
        for (i = 0; i < (int)n_q_values; i = i + 1)
        {
            *results++ = (double) sasfit_ff_sphere(*q_values++, ¶m);
        }
 
    else
        *results++ = -9999.999;
 
}
 
void function_test(int argc, void *argv[])
{  
    double *q_values, *p_values, *results;
    IDL_LONG n_q_values;
    char * function_name;
 
    function_name = argv[0];
    n_q_values    = (IDL_LONG) argv[1];
    q_values      = argv[2];
    p_values      = argv[3];
    results       = argv[4];
 
    function_test_natural(function_name, n_q_values, q_values, p_values, results);
} | 
Partager