Questions 9

  1. How do you pass your integrand (= the function that is to be integrated) to gsl_integration_qags rutine?
  2. What are the arguments epsabs, epsrel and abserr (correspondingly the 4th, 5th and last argument) of gsl_integration_qags rutine?
  3. What is the return type of gsl_integration_qags and what does it return?
  4. How does gsl_integration_qags return the calculated result?
  5. Does gsl_integration_qags estimate the error of the calculated result?
  6. Suppose you integrand does not take any extra parameters: what do you do then with the .params member of the corresponding gsl_function structure?
  7. What is the limit argument (the 4th argument) of the gsl_integration_qagi rutine?
  8. What is the argument of the gsl_integration_workspace_alloc function?
  9. Do you need to free any memory having finished with your gsl_integration_qags integrations?
  10. Suppose your C-function returns an integer value, like gsl_integration_qags function, which you would normally call as
    int status = gsl_integration_qags(arguments);
    
    can you call the function simply as
    gsl_integration_qags(arguments);
    
    ?
  11. Suppose you need to calculate an integral with a given requirement to the absolute error and the relative error is irrelevant. How do you then set up your accuracy parameters of gsl_integration_qags routine?
  12. Suppose your integration routine returned the status GSL_EDIVERGE. What does that mean?