Thanks for all the comments -- have been a little busy, so pushing changes I have so far. Point by point:
Make func_factory private or change func_factory to be methods of BasisFunction subclasses (change _basis.pyx).
_Added both func_factory and func_stringfactory as methods of subclasses
Support SmoothedHingeBasisFunction (for smoothed models) - see section 3.7 (Degree of continuity) of Friedman, 1991(see README.md for reference) for details.
This is done, and added to the tests
Unit test for export_labelled_coefficients
Removed this function for now. Do you have an idea for testing? Maybe just hardcoding in the correct coefficients.
Match names for unit tests and the functions they test
Done
Update doc string for export_python_string to indicate it returns a string
Done
Maybe change name of export_python_model to export_python_function?
Good idea. These functions are really in preparation to export a string in C.
Does this support the constant term?
It supports ConstantBasisFunction, if that's what you mean.
Add function_name argument to export_python_model
_I documented this a little better in the export_python_string method, but for export_python_model, I'm not sure what functionname would do.
Move all this export related code into its own module, export.py. I think it will be easier to read and think about that way.
_Good idea, also added test/test_export.py_
Thanks for all the comments -- have been a little busy, so pushing changes I have so far. Point by point:
export_python_string
method, but forexport_python_model
, I'm not sure what functionname would do.test/test_export.py
_