Todo List

Class bin_size
This class is not working yet.

Class cli
There are some fixme entries in cli.cpp associated with when cop is zero

Class cli
Only add get() and set() commands if some parameters are set

Global cli::cli_gets (const char *c)
Should this be protected?

Class collection
  • If pointer_in gets a null pointer it does nothing. Should we replace this behaviour by two pointer_in() functions. One which does nothing if it gets a null pointer, and one which will go ahead and set the pointer to null. This is useful for output object which have default values to be used if they are given a null pointer.
  • More testing on rewrite() function.
  • Think more about adding arrays of pointers? pointers to arrays?
  • Modify static data output so that if no objects of a type are included, then no static data is output for that type? (No, it's too hard to go through all objects looking for an object of a particular type).

Class eqi_deriv
The uncertainties in the derivatives are not yet computed and the second and third derivative formulas are not yet finished.

Global eqi_deriv::calc_vector (double x, double x0, double dx, size_t nx, const vec_t &y)
Document or change the value of 100.0 which appears here

Global eqi_deriv::deriv_vector (size_t nv, double dx, const vec_t &y, vec_t &dydx)
generalize to other values of npoints.

Class gaussian_2d
Double check that sigma is implemented correctly

Class gsl_bsimp
Ensure error handling is sensible if the "derivs" or jacobian functions return a non-zero value

Class gsl_bsimp
Create an example with a stiff diff eq. which requires this kind of stepper

Class gsl_fit
Properly generalize other vector types than ovector_base

Class gsl_fit
Allow the user to specify the derivatives

Class gsl_fit
Fix so that the user can specify automatic scaling of the fitting parameters, where the initial guess are used for scaling so that the fitting parameters are near unity.

Class gsl_inte_qag
Verbose output has been setup for this class, but this needs to be done for some of the other GSL-like integrators

Class gsl_inte_qagiu
I had to add extra code to check for non-finite values for some integrations. This should be checked.

Class gsl_inte_qags
The convergence errors need to be handled correctly in function qags in gsl_inte_qag_b.h.

Class gsl_inte_qawf_cos
Verbose output has been setup for this class, but this needs to be done for the other GSL-like integrators

Class gsl_inte_qawf_sin
Improve documentation a little

Class gsl_inte_qawo_cos
Verbose output has been setup for this class, but this needs to be done for the other GSL-like integrators

Class gsl_inte_qawo_sin
Improve documentation

Class gsl_inte_qaws
Finish this!

Class gsl_inte_qng
Shouldn't feval be last_iter ?

Class gsl_inte_table
Make the workspace size protected

Class gsl_miser
The testing file calls the error handler on the composite_inte section. Fix this.

Class gsl_vegas
Need to double check that the verbose output is good for all settings of verbose.

Class gsl_vegas
BINS_MAX and bins_max are somehow duplicates. Fix this.

Class io_base
Should the remove() functions be moved to class collection?

Class multi_min_fix
Generalize to all vector types

Class multi_min_fix
Generalize to minimizers which require derivatives

Class o2scl_interp
Make sure the min size is checked on both 'itp' and 'ritp'.

Class o2scl_interp_vec
Need to fix constructor to behave properly if init() fails. It should free the memory and set ln to zero.

Class o2scl_interp_vec
Specify a base_interp_mgr object instead of base_interp objects

Class ode_bv_multishoot
Improve documentation a little and create testing code

Class ode_it_solve
Implement as a child of ode_bv_solve ?

Class ode_it_solve
Max and average tolerance?

Class ode_it_solve
partial correction option?

Global ode_iv_solve::solve_final_value_derivs (double x0, double x1, double h, size_t n, vec_t &ystart, vec_t &yend, vec_t &dydx_start, vec_t &dydx_end, param_t &pa, func_t &derivs)
Add error information

Global ode_iv_solve::solve_grid_derivs (double x0, double x1, double h, size_t n, vec_t &ystart, size_t nsol, vec_t &xsol, mat_t &ysol, mat_t &dydx_sol, param_t &pa, func_t &derivs)
Add error information

Class ool_constr_mmin
Implement automatic computations of gradient and Hessian

Class ool_constr_mmin
Construct a non-trivial example for the "examples" directory

Global ool_constr_mmin::mmin (size_t nvar, vec_t &xx, double &fmin, param_t &pa, func_t &ff)
Need to finish this function somehow since it's pure virtual in multi_min.

Class ool_mmin_pgrad
Complete the mmin() interface with automatic gradient

Class ool_mmin_pgrad
Replace the explicit norm computation below with the more accurate dnrm2 from linalg

Class other_todos_and_bugs
  • The o2scl-test and o2scl-examples targets require grep, awk, tail, cat, and wc. It would be good to reduce this list to ensure better compatibility.
  • More examples and benchmarks
  • There are a couple classes which Doxygen doesn't yet parse properly for the class hierarchy: gsl_root_stef, and ool_mmin_gencan. Also should double check smart_interp, etc.

Class other_todos_and_bugs
At present, the testing code assumes that shared libraries are installed. Can this be improved? (12/3/08 - I'm not sure what the status is on this...this should be checked.)

Class other_todos_and_bugs
Make sure default template parameters are documented in each class, and make sure default template parameters exist where they should.

Class ovector_cx_tlate
Add subvector_stride, const_subvector_stride

Class pointer_alloc
Call error handler appropriately here

Class polylog
  • Give error estimate?
  • Improve accuracy?
  • Use more sophisticated interpolation?
  • Add the series $Li(n,x)=x+2^{-n} x^2+3^{-n} x^3+...$ for $ x \rightarrow 0$?
  • Implement for positive arguments < 1.0
  • Make another polylog class which implements series acceleration?

Global smart_interp::find_subset (const double a, const double b, size_t sz, const vec_t &x, const vec_t &y, size_t &nsz, bool &increasing)
The error handling is a bit off here, as it can return a non-zero value even with there is no real "error". We should just make a new bool reference paramter.

Global smart_interp::interp (const double x0, size_t n, const vec_t &x, const vec_t &y)
After calling find_subset, I think we might need to double check that nn is larger than the minimum interpolation size.

Class tensor
More complete testing.

Class text_out_file
Create a real "close" function so that files can be closed at the right time

Global text_out_file::text_out_file (std::ostream *out_file, int width=80)
Ensure streams are not opened in binary mode for safety.

File cx_arith.h
Ensure all the functions are tested.

Global solve_cyc_tridiag_sym
Put reference in correctly.

File vec_arith.h
Properly document the operators defined as macros


Documentation generated with Doxygen and provided under the GNU Free Documentation License. See License Information for details.

Project hosting provided by SourceForge.net Logo, O2scl Sourceforge Project Page