I think they should work. I think you are not passing them the correct 
information from your model function. To restate Peter's comments in a 
different way. The model function must return numerical values which can be 
compared to your data for the fit algorithms to work. Do not try to do any 
fitting until you have your model function doing that.

Jonathan

On Thursday, August 18, 2022 at 7:51:35 AM UTC-5 z.kari...@gmail.com wrote:

> But not working here.
>
> Zohreh Karimzadeh
> *https://www.researchgate.net/profile/Zohreh-Karimzadeh* 
> <https://www.researchgate.net/profile/Zohreh-Karimzadeh> 
> Skype Name 49a52224a8b6b38b
> Twitter Account @zohrehkarimzad1
> z.kari...@gmail.com 
> +989102116325 <+98%20910%20211%206325>      
>                                                    
> ((((((((((((((((Value Water)))))))))))))))
>
> On Thu, Aug 18, 2022 at 5:12 PM gu...@uwosh.edu <gu...@uwosh.edu> wrote:
>
>> Based on my experience developing fitting tools to be used by 
>> undergraduates (see 
>> https://jupyterphysscilab.github.io/jupyter_Pandas_GUI/) I think your 
>> choice of lmfit and scipy.optimize are good options.
>>
>> Jonathan
>>
>> On Thursday, August 18, 2022 at 7:35:00 AM UTC-5 z.kari...@gmail.com 
>> wrote:
>>
>>> Very useful, can I ask a question?
>>> If you need to make your expression in a symbolic way using sympy which 
>>> includes log or exp. Which fitting library would you recommend to easily 
>>> pass your sympy expression and get your fitted parameters. 
>>> Zohreh Karimzadeh
>>> *https://www.researchgate.net/profile/Zohreh-Karimzadeh* 
>>> <https://www.researchgate.net/profile/Zohreh-Karimzadeh> 
>>> Skype Name 49a52224a8b6b38b
>>> Twitter Account @zohrehkarimzad1
>>> z.kari...@gmail.com 
>>> +989102116325 <+98%20910%20211%206325>      
>>>                                                    
>>> ((((((((((((((((Value Water)))))))))))))))
>>>
>>> On Thu, Aug 18, 2022 at 4:49 PM Peter Stahlecker <peter.st...@gmail.com> 
>>> wrote:
>>>
>>>> Most welcome! If I was of help, great! If not, I still enjoyed our 
>>>> conversation.
>>>>
>>>> On Thu 18. Aug 2022 at 19:08, Zohreh Karimzadeh <z.kari...@gmail.com> 
>>>> wrote:
>>>>
>>>>> thank you very much.
>>>>> Zohreh Karimzadeh
>>>>> *https://www.researchgate.net/profile/Zohreh-Karimzadeh* 
>>>>> <https://www.researchgate.net/profile/Zohreh-Karimzadeh> 
>>>>> Skype Name 49a52224a8b6b38b
>>>>> Twitter Account @zohrehkarimzad1
>>>>> z.kari...@gmail.com 
>>>>> +989102116325 <+98%20910%20211%206325>      
>>>>>                                                    
>>>>> ((((((((((((((((Value Water)))))))))))))))
>>>>>
>>>>>
>>>>> On Thu, Aug 18, 2022 at 4:35 PM Peter Stahlecker <
>>>>> peter.st...@gmail.com> wrote:
>>>>>
>>>>>> Whatever they are, I believe your second return statement does not 
>>>>>> work, because you are adding ‚things‘ which cannot be added.
>>>>>> I do not understand your program, but I do understand, that your 
>>>>>> second return statement cannot work.
>>>>>>
>>>>>> On Thu 18. Aug 2022 at 18:56 Zohreh Karimzadeh <z.kari...@gmail.com> 
>>>>>> wrote:
>>>>>>
>>>>>>> L and K are independent variables that will be passed to minimize.
>>>>>>> Zohreh Karimzadeh
>>>>>>> *https://www.researchgate.net/profile/Zohreh-Karimzadeh* 
>>>>>>> <https://www.researchgate.net/profile/Zohreh-Karimzadeh> 
>>>>>>> Skype Name 49a52224a8b6b38b
>>>>>>> Twitter Account @zohrehkarimzad1
>>>>>>> z.kari...@gmail.com 
>>>>>>> +989102116325 <+98%20910%20211%206325>      
>>>>>>>                                                    
>>>>>>> ((((((((((((((((Value Water)))))))))))))))
>>>>>>>
>>>>>>>
>>>>>>> On Thu, Aug 18, 2022 at 4:08 PM Peter Stahlecker <
>>>>>>> peter.st...@gmail.com> wrote:
>>>>>>>
>>>>>>>> I just have no idea what
>>>>>>>>
>>>>>>>> np.sum((np.log(AV) + Vlam_est)**2)
>>>>>>>>
>>>>>>>> could possibly mean.  np.log(VA) is an array of floats, that is an 
>>>>>>>> array of *numbers*.
>>>>>>>> Vlam_est is a *function*. How you can add numbers and a function I 
>>>>>>>> do not know..
>>>>>>>> Vlam_est will become an array of numbers, once you give it the 
>>>>>>>> arguments.
>>>>>>>>
>>>>>>>> NB: 
>>>>>>>> it seems, that Vi_est uses the arguments alpha,.., eta, L, K
>>>>>>>> When you lambdify it, you skipped the arguments L and K. 
>>>>>>>> Any reason for this? 
>>>>>>>>
>>>>>>>> On Thu 18. Aug 2022 at 18:18 Zohreh Karimzadeh <z.kari...@gmail.com> 
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> It seems always an expression of parameters and independent 
>>>>>>>>> variables is needed to be passed to fit and find parameters.
>>>>>>>>> Zohreh Karimzadeh
>>>>>>>>> *https://www.researchgate.net/profile/Zohreh-Karimzadeh* 
>>>>>>>>> <https://www.researchgate.net/profile/Zohreh-Karimzadeh> 
>>>>>>>>> Skype Name 49a52224a8b6b38b
>>>>>>>>> Twitter Account @zohrehkarimzad1
>>>>>>>>> z.kari...@gmail.com 
>>>>>>>>> +989102116325 <+98%20910%20211%206325>      
>>>>>>>>>                                                    
>>>>>>>>> ((((((((((((((((Value Water)))))))))))))))
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Thu, Aug 18, 2022 at 3:28 PM Peter Stahlecker <
>>>>>>>>> peter.st...@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> In your first return statement, where it works, you seem to 
>>>>>>>>>> return a number.
>>>>>>>>>> In your second return, your a ‚mixture‘ of numbers and functions:
>>>>>>>>>> Vlam_est is a *function*, which requires four arguments as per 
>>>>>>>>>> its definition. Would you not have to return Vlam_est(alpha, beta, 
>>>>>>>>>> gamma, 
>>>>>>>>>> eta) ?
>>>>>>>>>>
>>>>>>>>>> On Thu 18. Aug 2022 at 17:35 Zohreh Karimzadeh <
>>>>>>>>>> z.kari...@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> the following code is ok when expression is passed as :
>>>>>>>>>>>
>>>>>>>>>>> import numpy as np
>>>>>>>>>>> from scipy.optimize import minimize, curve_fit
>>>>>>>>>>> from lmfit import Model, Parameters
>>>>>>>>>>>
>>>>>>>>>>> L = np.array([0.299, 0.295, 0.290, 0.284, 0.279, 0.273, 0.268, 
>>>>>>>>>>> 0.262, 0.256, 0.250])
>>>>>>>>>>> K = np.array([2.954, 3.056, 3.119, 3.163, 3.215, 3.274, 3.351, 
>>>>>>>>>>> 3.410, 3.446, 3.416])
>>>>>>>>>>> VA = np.array([0.919, 0.727, 0.928, 0.629, 0.656, 0.854, 0.955, 
>>>>>>>>>>> 0.981, 0.908, 0.794])
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> def f(param):
>>>>>>>>>>>     gamma = param[0]
>>>>>>>>>>>     alpha = param[1]
>>>>>>>>>>>     beta = param[2]
>>>>>>>>>>>     eta = param[3]
>>>>>>>>>>>     VA_est = gamma - (1 / eta) * np.log(alpha * L ** -eta + beta * 
>>>>>>>>>>> K ** -eta)
>>>>>>>>>>>
>>>>>>>>>>>     return np.sum((np.log(VA) - VA_est) ** 2)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> bnds = [(1, np.inf), (0, 1), (0, 1), (-1, np.inf)]
>>>>>>>>>>> x0 = (1, 0.01, 0.98, 1)
>>>>>>>>>>> result = minimize(f, x0, bounds=bnds)
>>>>>>>>>>> print(result.message)
>>>>>>>>>>> print(result.x[0], result.x[1], result.x[2], result.x[3])
>>>>>>>>>>>
>>>>>>>>>>> but when the expression is passed as the following way:
>>>>>>>>>>>
>>>>>>>>>>> import numpy as np
>>>>>>>>>>> import sympy as sp
>>>>>>>>>>> from scipy.optimize import minimize, curve_fit
>>>>>>>>>>> from lmfit import Model, Parameters
>>>>>>>>>>>
>>>>>>>>>>> L = np.array([0.299, 0.295, 0.290, 0.284, 0.279, 0.273, 0.268, 
>>>>>>>>>>> 0.262, 0.256, 0.250])
>>>>>>>>>>> K = np.array([2.954, 3.056, 3.119, 3.163, 3.215, 3.274, 3.351, 
>>>>>>>>>>> 3.410, 3.446, 3.416])
>>>>>>>>>>> VA = np.array([0.919, 0.727, 0.928, 0.629, 0.656, 0.854, 0.955, 
>>>>>>>>>>> 0.981, 0.908, 0.794])
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> def f(param):
>>>>>>>>>>>     gamma, alpha, beta, eta = sp.symbols('gamma, alpha, beta, eta')
>>>>>>>>>>>     gamma = param[0]
>>>>>>>>>>>     alpha = param[1]
>>>>>>>>>>>     beta = param[2]
>>>>>>>>>>>     eta = param[3]
>>>>>>>>>>>     Vi_est = gamma - (1 / eta) * sp.log(alpha * L ** -eta + beta * 
>>>>>>>>>>> K ** -eta)
>>>>>>>>>>>     Vlam_est = sp.lambdify((gamma, alpha, beta, eta), Vi_est)
>>>>>>>>>>>
>>>>>>>>>>>     return np.sum((np.log(VA) - Vlam_est) ** 2)
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> bnds = [(1, np.inf), (0, 1), (0, 1), (-1, np.inf)]
>>>>>>>>>>> x0 = (1, 0.01, 0.98, 1)
>>>>>>>>>>>
>>>>>>>>>>> result = minimize(f, x0, bounds=bnds)
>>>>>>>>>>>
>>>>>>>>>>> print(result.message)
>>>>>>>>>>> print(result.x[0], result.x[1], result.x[2], result.x[3])
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> I face difficulty:
>>>>>>>>>>> *********************************************
>>>>>>>>>>> Traceback (most recent call last):
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\sympy\core\cache.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 70, in wrapper
>>>>>>>>>>>     retval = cfunc(*args, **kwargs)
>>>>>>>>>>> TypeError: unhashable type: 'numpy.ndarray'
>>>>>>>>>>>
>>>>>>>>>>> During handling of the above exception, another exception 
>>>>>>>>>>> occurred:
>>>>>>>>>>>
>>>>>>>>>>> Traceback (most recent call last):
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\sympy\core\cache.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 70, in wrapper
>>>>>>>>>>>     retval = cfunc(*args, **kwargs)
>>>>>>>>>>> TypeError: unhashable type: 'numpy.ndarray'
>>>>>>>>>>>
>>>>>>>>>>> During handling of the above exception, another exception 
>>>>>>>>>>> occurred:
>>>>>>>>>>>
>>>>>>>>>>> Traceback (most recent call last):
>>>>>>>>>>>   File 
>>>>>>>>>>> "F:\Zohreh\MainZohreh\postdoc-field\CSU\pythonProject\fit_test_2.py",
>>>>>>>>>>>  line 
>>>>>>>>>>> 26, in <module>
>>>>>>>>>>>     result = minimize(f, x0, bounds=bnds)
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\scipy\optimize\_minimize.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 692, in minimize
>>>>>>>>>>>     res = _minimize_lbfgsb(fun, x0, args, jac, bounds,
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\scipy\optimize\_lbfgsb_py.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 308, in _minimize_lbfgsb
>>>>>>>>>>>     sf = _prepare_scalar_function(fun, x0, jac=jac, args=args, 
>>>>>>>>>>> epsilon=eps,
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\scipy\optimize\_optimize.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 263, in _prepare_scalar_function
>>>>>>>>>>>     sf = ScalarFunction(fun, x0, args, grad, hess,
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\scipy\optimize\_differentiable_functions.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 158, in __init__
>>>>>>>>>>>     self._update_fun()
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\scipy\optimize\_differentiable_functions.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 251, in _update_fun
>>>>>>>>>>>     self._update_fun_impl()
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\scipy\optimize\_differentiable_functions.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 155, in update_fun
>>>>>>>>>>>     self.f = fun_wrapped(self.x)
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\scipy\optimize\_differentiable_functions.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 137, in fun_wrapped
>>>>>>>>>>>     fx = fun(np.copy(x), *args)
>>>>>>>>>>>   File 
>>>>>>>>>>> "F:\Zohreh\MainZohreh\postdoc-field\CSU\pythonProject\fit_test_2.py",
>>>>>>>>>>>  line 
>>>>>>>>>>> 17, in f
>>>>>>>>>>>     Vi_est = gamma - (1 / eta) * sp.log(alpha * L ** -eta + beta 
>>>>>>>>>>> * K ** -eta)
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\sympy\core\cache.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 74, in wrapper
>>>>>>>>>>>     retval = func(*args, **kwargs)
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\sympy\core\function.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 476, in __new__
>>>>>>>>>>>     result = super().__new__(cls, *args, **options)
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\sympy\core\cache.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 74, in wrapper
>>>>>>>>>>>     retval = func(*args, **kwargs)
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\sympy\core\function.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 288, in __new__
>>>>>>>>>>>     evaluated = cls.eval(*args)
>>>>>>>>>>>   File 
>>>>>>>>>>> "C:\Users\Zohreh\AppData\Roaming\Python\Python310\site-packages\sympy\functions\elementary\exponential.py",
>>>>>>>>>>>  
>>>>>>>>>>> line 718, in eval
>>>>>>>>>>>     coeff = arg.as_coefficient(I)
>>>>>>>>>>> AttributeError: 'ImmutableDenseNDimArray' object has no 
>>>>>>>>>>> attribute 'as_coefficient'
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> Zohreh Karimzadeh
>>>>>>>>>>> https://www.researchgate.net/profile/Zohreh-Karimzadeh
>>>>>>>>>>> Skype Name 49a52224a8b6b38b
>>>>>>>>>>> Twitter Account @zohrehkarimzad1
>>>>>>>>>>> z.kari...@gmail.com
>>>>>>>>>>> +989102116325 <+98%20910%20211%206325>                         
>>>>>>>>>>>                                
>>>>>>>>>>> ((((((((((((((((Value Water)))))))))))))))
>>>>>>>>>>>
>>>>>>>>>>> Zohreh Karimzadeh
>>>>>>>>>>> *https://www.researchgate.net/profile/Zohreh-Karimzadeh* 
>>>>>>>>>>> <https://www.researchgate.net/profile/Zohreh-Karimzadeh> 
>>>>>>>>>>> Skype Name 49a52224a8b6b38b
>>>>>>>>>>> Twitter Account @zohrehkarimzad1
>>>>>>>>>>> z.kari...@gmail.com 
>>>>>>>>>>> +989102116325 <+98%20910%20211%206325>      
>>>>>>>>>>>                                                    
>>>>>>>>>>> ((((((((((((((((Value Water)))))))))))))))
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Thu, Aug 18, 2022 at 10:42 AM Peter Stahlecker <
>>>>>>>>>>> peter.st...@gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> I use lambdify quite a bit, on rather large expressions.
>>>>>>>>>>>> Basically, it always works like this for me:
>>>>>>>>>>>>
>>>>>>>>>>>> import sympy as sm
>>>>>>>>>>>> x1, x2, …, xn = sm.symbols(‚x1, x2, ….., xn‘)
>>>>>>>>>>>> ….
>>>>>>>>>>>> …
>>>>>>>>>>>> expr = some expression of generally with me: sm.sin, sm.cos, 
>>>>>>>>>>>> sm.exp, sm.sqrt,
>>>>>>>>>>>>             sm.Heaviside, etc..
>>>>>>>>>>>> This expression may have 50,000 terms, may be an (axb) matrix, 
>>>>>>>>>>>> whatever.
>>>>>>>>>>>>
>>>>>>>>>>>> expr_lam = sm.lambdify([x1, x2, …,xn], expr)
>>>>>>>>>>>>
>>>>>>>>>>>> Now I can evaluate expr_lam(…) like I would evaluate any numpy 
>>>>>>>>>>>> function.
>>>>>>>>>>>>
>>>>>>>>>>>> I have no idea, what expr_lam looks like, I would not know how 
>>>>>>>>>>>> to look at it.
>>>>>>>>>>>> I assume, it converts sm.sin(..) to np.sin(…), etc
>>>>>>>>>>>>
>>>>>>>>>>>> This is how it works for me.
>>>>>>>>>>>> As I do not really understand your points, like ‚dynamically 
>>>>>>>>>>>> created‘, ‚parse and subs‘, this may be of not help at all for you.
>>>>>>>>>>>>
>>>>>>>>>>>> Peter
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu 18. Aug 2022 at 09:21 Zohreh Karimzadeh <
>>>>>>>>>>>> z.kari...@gmail.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Before run I import sp.sqrt or sp.exp but after run they get 
>>>>>>>>>>>>> disappeared.  My expression is big and dynamically created  and 
>>>>>>>>>>>>> not 
>>>>>>>>>>>>> possible to parse and subs np.exp or sp.exp.
>>>>>>>>>>>>>
>>>>>>>>>>>>> Zohreh Karimzadeh
>>>>>>>>>>>>>
>>>>>>>>>>>>> Contact me on
>>>>>>>>>>>>>            +989102116325 <+98%20910%20211%206325>
>>>>>>>>>>>>>                      and at
>>>>>>>>>>>>>      z.kari...@gmail.com
>>>>>>>>>>>>>                                  🌧️🌍🌱
>>>>>>>>>>>>>     
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Thu, 18 Aug 2022, 01:17 Aaron Meurer, <asme...@gmail.com> 
>>>>>>>>>>>>> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Your expression uses "sqrt" but you haven't imported it from 
>>>>>>>>>>>>>> anywhere, since you only did "import sympy as sp". You need to 
>>>>>>>>>>>>>> use sp.sqrt. 
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Aaron Meurer
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Wed, Aug 17, 2022 at 11:02 AM Zohreh Karimzadeh <
>>>>>>>>>>>>>> z.kari...@gmail.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Here is my code:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> import matplotlib.pyplot as plt
>>>>>>>>>>>>>>> import numpy as np
>>>>>>>>>>>>>>> import sympy as sp
>>>>>>>>>>>>>>> import pandas as pd
>>>>>>>>>>>>>>> #exp_NaCl path: 
>>>>>>>>>>>>>>> F:\Zohreh\MainZohreh\postdoc-field\CSU\Duplicat_Pure
>>>>>>>>>>>>>>> df = 
>>>>>>>>>>>>>>> pd.read_excel(r'F:\Zohreh\MainZohreh\postdoc-field\CSU\Duplicat_Pure\data.xlsx',
>>>>>>>>>>>>>>>  sheet_name='NaCl_exp')
>>>>>>>>>>>>>>> XNa = df['XNa']
>>>>>>>>>>>>>>> XCl = df['XCl']
>>>>>>>>>>>>>>> Xwater = df['Xwater']
>>>>>>>>>>>>>>> Y = df['gama_x']
>>>>>>>>>>>>>>> L=['WwaterNaCl', 'UwaterNaCl', 'VwaterNaCl', 'XCl', 'XNa', 
>>>>>>>>>>>>>>> 'Xwater', 'BNaCl']
>>>>>>>>>>>>>>> for j in range(len(L)):
>>>>>>>>>>>>>>>     locals()[L[j]] = sp.symbols(L[j])
>>>>>>>>>>>>>>> expr = 
>>>>>>>>>>>>>>> -0.0118343195266272*BNaCl*XCl*XNa*(-2*(9.19238815542512*sqrt(XNa)
>>>>>>>>>>>>>>>  + 9.19238815542512*sqrt(XCl + XNa) + 
>>>>>>>>>>>>>>> 1)*exp(-9.19238815542512*sqrt(XNa) - 9.19238815542512*sqrt(XCl 
>>>>>>>>>>>>>>> + XNa)) + 2)/((XCl + XNa)*(sqrt(XNa) + sqrt(XCl + XNa))**2) + 
>>>>>>>>>>>>>>> 0.00591715976331361*BNaCl*XCl*(-2*(9.19238815542512*sqrt(XNa) + 
>>>>>>>>>>>>>>> 9.19238815542512*sqrt(XCl + XNa) + 
>>>>>>>>>>>>>>> 1)*exp(-9.19238815542512*sqrt(XNa) - 9.19238815542512*sqrt(XCl 
>>>>>>>>>>>>>>> + XNa)) + 2)/(sqrt(XNa) + sqrt(XCl + XNa))**2 + 
>>>>>>>>>>>>>>> 0.00591715976331361*BNaCl*XNa*(-2*(9.19238815542512*sqrt(XNa) + 
>>>>>>>>>>>>>>> 9.19238815542512*sqrt(XCl + XNa) + 
>>>>>>>>>>>>>>> 1)*exp(-9.19238815542512*sqrt(XNa) - 9.19238815542512*sqrt(XCl 
>>>>>>>>>>>>>>> + XNa)) + 2)/(sqrt(XNa) + sqrt(XCl + XNa))**2 - 
>>>>>>>>>>>>>>> 1.0*Cl*WwaterNaCl*Xwater*(0.5*XCl + 0.5*XNa + 0.5)/XCl - 
>>>>>>>>>>>>>>> 0.5*Cl*WwaterNaCl/XCl - 4.0*UwaterNaCl*XCl*XNa*Xwater + 
>>>>>>>>>>>>>>> 2.0*UwaterNaCl*XCl*Xwater + 2.0*UwaterNaCl*XNa*Xwater - 
>>>>>>>>>>>>>>> 4.0*UwaterNaCl*XNa - 6.0*VwaterNaCl*XCl*XNa*Xwater**2 - 
>>>>>>>>>>>>>>> 4.0*VwaterNaCl*XCl*Xwater**2 + 2.0*VwaterNaCl*XNa*Xwater**2 - 
>>>>>>>>>>>>>>> 1.0*WwaterNaCl*Xwater*(0.5*XCl + 0.5*XNa + 0.5) + 
>>>>>>>>>>>>>>> 2.0*WwaterNaCl*Xwater - 0.5*WwaterNaCl - 
>>>>>>>>>>>>>>> 1.45739430799067*(0.707106781186548*sqrt(XNa) + 
>>>>>>>>>>>>>>> 0.707106781186548*sqrt(XCl + XNa))*(-XCl - XNa + 
>>>>>>>>>>>>>>> 1)/(9.19238815542512*sqrt(XNa) + 9.19238815542512*sqrt(XCl + 
>>>>>>>>>>>>>>> XNa) + 1) - 1.45739430799067*(0.707106781186548*sqrt(XNa) + 
>>>>>>>>>>>>>>> 0.707106781186548*sqrt(XCl + XNa))*(-1.4142135623731*sqrt(XNa) 
>>>>>>>>>>>>>>> - 1.4142135623731*sqrt(XCl + XNa) + 
>>>>>>>>>>>>>>> 1)/(9.19238815542512*sqrt(XNa) + 9.19238815542512*sqrt(XCl + 
>>>>>>>>>>>>>>> XNa) + 1) - 0.448429017843282*log(9.19238815542512*sqrt(XNa) + 
>>>>>>>>>>>>>>> 9.19238815542512*sqrt(XCl + XNa) + 1)
>>>>>>>>>>>>>>> model_func = sp.lambdify(L, expr )
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> def f(param):
>>>>>>>>>>>>>>>     BNaCl = param[0]
>>>>>>>>>>>>>>>     UwaterNaCl = param[1]
>>>>>>>>>>>>>>>     VwaterNaCl = param[2]
>>>>>>>>>>>>>>>     WwaterNaCl = param[3]
>>>>>>>>>>>>>>>     Y_est = model_func
>>>>>>>>>>>>>>>     return np.sum((np.log(Y) - Y_est)**2)
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> bnds = [(1, np.inf), (0, 1), (0, 1), (-1, np.inf)]
>>>>>>>>>>>>>>> x0 = (1, 0.01, 0.98, 1)
>>>>>>>>>>>>>>> con = {"type": "eq", "fun": c}
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> result = minimize(f, x0, bounds=bnds)
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> print(result.fun)
>>>>>>>>>>>>>>> print(result.message)
>>>>>>>>>>>>>>> print(result.x[0], result.x[1], result.x[2], result.x[3])
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> while I got :
>>>>>>>>>>>>>>> NameError: name 'sqrt' is not defined
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Zohreh Karimzadeh
>>>>>>>>>>>>>>> *https://www.researchgate.net/profile/Zohreh-Karimzadeh* 
>>>>>>>>>>>>>>> <https://www.researchgate.net/profile/Zohreh-Karimzadeh> 
>>>>>>>>>>>>>>> Skype Name 49a52224a8b6b38b
>>>>>>>>>>>>>>> Twitter Account @zohrehkarimzad1
>>>>>>>>>>>>>>> z.kari...@gmail.com 
>>>>>>>>>>>>>>> +989102116325 <+98%20910%20211%206325>      
>>>>>>>>>>>>>>>                                                    
>>>>>>>>>>>>>>> ((((((((((((((((Value Water)))))))))))))))
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Wed, Aug 17, 2022 at 7:46 PM Peter Stahlecker <
>>>>>>>>>>>>>>> peter.st...@gmail.com> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I use lambdify(....) a lot, but always like this:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> x = sympy.symbols('x')
>>>>>>>>>>>>>>>> expr = symy.S(10.) * sympy.sqrt(x)
>>>>>>>>>>>>>>>> expr_lam = sympy.lambdify([x], expr)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> a = expr_lam(10.)
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> This seems to work for me.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Wed 17. Aug 2022 at 20:38, Zohreh Karimzadeh <
>>>>>>>>>>>>>>>> z.kari...@gmail.com> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Dear sympy group
>>>>>>>>>>>>>>>>> Thanks for your sympy.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> I am working on a code, after creating my big expression 
>>>>>>>>>>>>>>>>> using sympy it includes sqrt.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> I need to lambdify my expression to make it consistent 
>>>>>>>>>>>>>>>>> with numpy and other suffs.
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> expr =10 * sp.sqrt(sp.symbols('x'))
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> model_func = sp.lambdify('x', expr)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> But I found my expression after lambdifying becomes 
>>>>>>>>>>>>>>>>> somethings like this:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> 10*sqrt(x)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> while I need :
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> 10*numpy.sqrt(x)
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Could possibly let me know how get sqrt to work with numpy?
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Regards,
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Zohreh
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> -- 
>>>>>>>>>>>>>>>>> You received this message because you are subscribed to 
>>>>>>>>>>>>>>>>> the Google Groups "sympy" group.
>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails 
>>>>>>>>>>>>>>>>> from it, send an email to sympy+un...@googlegroups.com.
>>>>>>>>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/1f0b313f-31c5-402e-991e-142a556016f4n%40googlegroups.com
>>>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>>>> <https://groups.google.com/d/msgid/sympy/1f0b313f-31c5-402e-991e-142a556016f4n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> -- 
>>>>>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Peter Stahlecker
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> -- 
>>>>>>>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>>>>>>>> Google Groups "sympy" group.
>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails 
>>>>>>>>>>>>>>>> from it, send an email to sympy+un...@googlegroups.com.
>>>>>>>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CABKqA0ZoGwsadsk4SWCbJVMbCDwXcO_gNGumJH00GAeEFod7Cw%40mail.gmail.com
>>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>>> <https://groups.google.com/d/msgid/sympy/CABKqA0ZoGwsadsk4SWCbJVMbCDwXcO_gNGumJH00GAeEFod7Cw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> -- 
>>>>>>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>>>>>>> Google Groups "sympy" group.
>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails 
>>>>>>>>>>>>>>> from it, send an email to sympy+un...@googlegroups.com.
>>>>>>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CA%2B1XYLPRvXZ6jiJbUS_xpWNKqMuUH7Kt5evue%2BwKEwDMvGekBQ%40mail.gmail.com
>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>> <https://groups.google.com/d/msgid/sympy/CA%2B1XYLPRvXZ6jiJbUS_xpWNKqMuUH7Kt5evue%2BwKEwDMvGekBQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> -- 
>>>>>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>>>>>> Google Groups "sympy" group.
>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from 
>>>>>>>>>>>>>> it, send an email to sympy+un...@googlegroups.com.
>>>>>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CAKgW%3D6JfUmU7Uu%2BSrcA1STxVvWWm7bGWE%3Dit8CTchksTC0Qk7g%40mail.gmail.com
>>>>>>>>>>>>>>  
>>>>>>>>>>>>>> <https://groups.google.com/d/msgid/sympy/CAKgW%3D6JfUmU7Uu%2BSrcA1STxVvWWm7bGWE%3Dit8CTchksTC0Qk7g%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>
>>>>>>>>>>>>> -- 
>>>>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>>>>> Google Groups "sympy" group.
>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from 
>>>>>>>>>>>>> it, send an email to sympy+un...@googlegroups.com.
>>>>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CA%2B1XYLPiCR%3DS2Fac3FZtjMpspqB7BRKtYEi45BVWPjkizVbNvw%40mail.gmail.com
>>>>>>>>>>>>>  
>>>>>>>>>>>>> <https://groups.google.com/d/msgid/sympy/CA%2B1XYLPiCR%3DS2Fac3FZtjMpspqB7BRKtYEi45BVWPjkizVbNvw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>> .
>>>>>>>>>>>>>
>>>>>>>>>>>> -- 
>>>>>>>>>>>> Best regards,
>>>>>>>>>>>>
>>>>>>>>>>>> Peter Stahlecker
>>>>>>>>>>>>
>>>>>>>>>>>> -- 
>>>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>>>> Google Groups "sympy" group.
>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from 
>>>>>>>>>>>> it, send an email to sympy+un...@googlegroups.com.
>>>>>>>>>>>>
>>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CABKqA0b%3DF0akMH4oyg5%2By9dGvgrf_vvVJTnVhVduMP1f%2Bp1pFw%40mail.gmail.com
>>>>>>>>>>>>  
>>>>>>>>>>>> <https://groups.google.com/d/msgid/sympy/CABKqA0b%3DF0akMH4oyg5%2By9dGvgrf_vvVJTnVhVduMP1f%2Bp1pFw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>> .
>>>>>>>>>>>>
>>>>>>>>>>> -- 
>>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>>> Google Groups "sympy" group.
>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from 
>>>>>>>>>>> it, send an email to sympy+un...@googlegroups.com.
>>>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CA%2B1XYLMK-fgpxc71GYzue5gJvd%3Dfj2sV6Dvhj8zrmVpPhiVk%2Bw%40mail.gmail.com
>>>>>>>>>>>  
>>>>>>>>>>> <https://groups.google.com/d/msgid/sympy/CA%2B1XYLMK-fgpxc71GYzue5gJvd%3Dfj2sV6Dvhj8zrmVpPhiVk%2Bw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>> .
>>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> Best regards,
>>>>>>>>>>
>>>>>>>>>> Peter Stahlecker
>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> You received this message because you are subscribed to the 
>>>>>>>>>> Google Groups "sympy" group.
>>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>>> send an email to sympy+un...@googlegroups.com.
>>>>>>>>>>
>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CABKqA0aBsD2WhpTuQqzZGUK1pfkUyH4q3Om9DdBQOpoaaO4rqQ%40mail.gmail.com
>>>>>>>>>>  
>>>>>>>>>> <https://groups.google.com/d/msgid/sympy/CABKqA0aBsD2WhpTuQqzZGUK1pfkUyH4q3Om9DdBQOpoaaO4rqQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>>> .
>>>>>>>>>>
>>>>>>>>> -- 
>>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>>> Groups "sympy" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>>> send an email to sympy+un...@googlegroups.com.
>>>>>>>>> To view this discussion on the web visit 
>>>>>>>>> https://groups.google.com/d/msgid/sympy/CA%2B1XYLNiQNVa_hg25e-_f8xs%2B2w88p7JC4ntneBrqO4YFajTgA%40mail.gmail.com
>>>>>>>>>  
>>>>>>>>> <https://groups.google.com/d/msgid/sympy/CA%2B1XYLNiQNVa_hg25e-_f8xs%2B2w88p7JC4ntneBrqO4YFajTgA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>> .
>>>>>>>>>
>>>>>>>> -- 
>>>>>>>> Best regards,
>>>>>>>>
>>>>>>>> Peter Stahlecker
>>>>>>>>
>>>>>>>> -- 
>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>> Groups "sympy" group.
>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>> send an email to sympy+un...@googlegroups.com.
>>>>>>>>
>>>>>>> To view this discussion on the web visit 
>>>>>>>> https://groups.google.com/d/msgid/sympy/CABKqA0YedBPPLH73J6ScxkgNWN9_NCR-YvOcd7vpGX4SsGZj0g%40mail.gmail.com
>>>>>>>>  
>>>>>>>> <https://groups.google.com/d/msgid/sympy/CABKqA0YedBPPLH73J6ScxkgNWN9_NCR-YvOcd7vpGX4SsGZj0g%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>> .
>>>>>>>>
>>>>>>> -- 
>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>> Groups "sympy" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>> send an email to sympy+un...@googlegroups.com.
>>>>>>> To view this discussion on the web visit 
>>>>>>> https://groups.google.com/d/msgid/sympy/CA%2B1XYLOkAu3fHK8Fm1eRoO8CQxkN70mnO%3DM7iNqeRg3bt44yZQ%40mail.gmail.com
>>>>>>>  
>>>>>>> <https://groups.google.com/d/msgid/sympy/CA%2B1XYLOkAu3fHK8Fm1eRoO8CQxkN70mnO%3DM7iNqeRg3bt44yZQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>>
>>>>>> -- 
>>>>>> Best regards,
>>>>>>
>>>>>> Peter Stahlecker
>>>>>>
>>>>>> -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "sympy" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>> send an email to sympy+un...@googlegroups.com.
>>>>>>
>>>>> To view this discussion on the web visit 
>>>>>> https://groups.google.com/d/msgid/sympy/CABKqA0aeQ%3D47NmCUei%3DvtXwFyjs4dw%3DfZ%3DjQGqpJvsk68BRYHA%40mail.gmail.com
>>>>>>  
>>>>>> <https://groups.google.com/d/msgid/sympy/CABKqA0aeQ%3D47NmCUei%3DvtXwFyjs4dw%3DfZ%3DjQGqpJvsk68BRYHA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>> -- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "sympy" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to sympy+un...@googlegroups.com.
>>>>> To view this discussion on the web visit 
>>>>> https://groups.google.com/d/msgid/sympy/CA%2B1XYLMg7bq4X3iedc0u_9nwiKHXrFd8GV1%3DdUt9n255dcwJxw%40mail.gmail.com
>>>>>  
>>>>> <https://groups.google.com/d/msgid/sympy/CA%2B1XYLMg7bq4X3iedc0u_9nwiKHXrFd8GV1%3DdUt9n255dcwJxw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>> -- 
>>>> Best regards,
>>>>
>>>> Peter Stahlecker
>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "sympy" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to sympy+un...@googlegroups.com.
>>>>
>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/sympy/CABKqA0a6gewUiwcUHfk%3DR2fQVkwGgkefwYN0ziJoAesjKaabRg%40mail.gmail.com
>>>>  
>>>> <https://groups.google.com/d/msgid/sympy/CABKqA0a6gewUiwcUHfk%3DR2fQVkwGgkefwYN0ziJoAesjKaabRg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "sympy" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to sympy+un...@googlegroups.com.
>>
> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/sympy/5d28146e-d335-4eb9-9d88-6d77b31c18fcn%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/sympy/5d28146e-d335-4eb9-9d88-6d77b31c18fcn%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/0df4cadb-4fcb-4502-9017-2fdfea527f17n%40googlegroups.com.

Reply via email to