treverhines / RBF

Python package containing the tools necessary for radial basis function (RBF) applications
MIT License
220 stars 51 forks source link

Some windows installations do not have a c compiler, please allow for python only execution. #6

Closed NelisW closed 5 years ago

NelisW commented 6 years ago

RBF requires a c compiler to be present during installation and also during routine execution after installation (required for sympy symbolic to executable code). Building a binary wheel allowed me to install RBF on another computer, but then during execution it still required a compiler to build code.

Please provide the option to use Python only for users without c compilers (e.g., on Windows). Something like

if ccompiler: ufuncify(x_sym+c_sym+(_EPS,), expr,backend='numpy') else: sympy.lambdify(x_sym+c_sym+(_EPS,), expr, modules=['numpy'])

thanks and keep up the good work!

treverhines commented 6 years ago

@NelisW I added the function rbf.basis.set_symbolic_to_numeric_method (https://rbf.readthedocs.io/en/latest/basis.html#rbf.basis.set_symbolic_to_numeric_method). Which controls whether ufuncify or lambdify is used. You will need to call rbf.basis.set_symbolic_to_numeric_method("lambdify") at the start of your script if a c compiler is not available.