You can replace any function with any other using `subs`, so just replace them with a function that has the name you want (and you can make up the name and even include punctuation):
[image: Snag_5ac96126.png] Note that in the last case *SymPy* will not be able to evaluate the expression but if you pass the string version to a function that knows how to interpret `np.exp` as numpy's version of `exp` then it will evaluate. /c On Thursday, September 1, 2022 at 9:54:27 PM UTC-5 z.kari...@gmail.com wrote: > Jonothon, > thank you for answering > Chris, > Thanks, your point sounds cool. But if I make the object in a symbolic way > and then change them to string, there are some sympy.exp and sympy.log that > make problems. What is your suggestion on this problem? > Regards > > > Zohreh Karimzadeh > Skype Name 49a52224a8b6b38b > Twitter Account @zohrehkarimzad1 > +989102116325 <+98%20910%20211%206325> > > ((((((((((((((((Value Water))))))))))))))) > > On Fri, Sep 2, 2022 at 1:55 AM Chris Smith <smi...@gmail.com> wrote: > >> This is somewhat painful to read because none of the code snippets are >> formatted as Python code. If possible, please post working code snippets. >> >> As to using string or SymPy (and then converting to string): I prefer the >> latter because you get automatic syntax checking and a good visual of the >> object you are building. So I would do something like: >> >> anion = {'Cl': 1} >> cation = {'Na': 1, 'Mg': 2} >> >> def ionic(*ions): >> I = 0 >> for itype in ions: >> for k1 in itype: >> I += 0.5 * (Symbol('X{0}'.format(str(k1))) * (itype[k1] ** 2)) >> return I >> >> str(ionic(anion, cation)) -> '0.5*XCl + 2.0*XMg + 0.5*XNa' >> >> /c >> On Thursday, September 1, 2022 at 8:54:41 AM UTC-5 gu...@uwosh.edu wrote: >> >>> You are mixing numerical and string expressions. You must make >>> everything a string expression. >>> Example >>> Ionic = 0 >>> Ionic += 0.5 * (('X'+str(k1)) * (ionic_dic[k1] ** 2)) >>> Should be >>> Ionic = "" >>> Ionic += "+0.5 * ((X"+str(k1)+") * ("+str(ionic_dic[k1])+'"** 2))" >>> On Thursday, September 1, 2022 at 7:11:34 AM UTC-5 z.kari...@gmail.com >>> wrote: >>> >>>> Dear Jhonoton >>>> If my best choice is the first then I have will have difficulty to pass >>>> some stuff in my string, as an example: >>>> >>>> cation = {'Na': 1,'Cl':2} >>>> anion = {'Cl': 1} >>>> >>>> >>>> ionic_dic = dict() >>>> for d in (cation, anion): >>>> ionic_dic.update(d) >>>> def ionicstr(): >>>> Ionic = 0 >>>> sqrt_I = 0 >>>> for k1 in ionic_dic: >>>> >>>> Ionic += 0.5 * (('X'+str(k1)) * (ionic_dic[k1] ** 2)) >>>> sqrt_I += (Ionic) ** 0.5 >>>> >>>> print(Ionic, sqrt_I) >>>> return Ionic, sqrt_I >>>> >>>> def term(): >>>> for i in cation: >>>> A ='X' + str(i) + str(ionicstr()[0]) >>>> print(A) >>>> return A >>>> term() >>>> >>>> Is there any way to pass computed ionicstr()[0] to string?? >>>> Zohreh Karimzadeh >>>> Skype Name 49a52224a8b6b38b >>>> Twitter Account @zohrehkarimzad1 >>>> +989102116325 <+98%20910%20211%206325> >>>> >>>> ((((((((((((((((Value Water))))))))))))))) >>>> >>>> >>>> On Thu, Sep 1, 2022 at 12:43 AM gu...@uwosh.edu <gu...@uwosh.edu> >>>> wrote: >>>> >>>>> Zohreh, >>>>> >>>>> I cannot tell you what is your best choice until you tell me what you >>>>> are doing after you build the expression. Is it 1 or 2, as I asked before? >>>>> >>>>> 1) You ultimately pass a string expression to lmfit or some other >>>>> fitting package that is parsed into a numpy expression for fitting or >>>>> something similar. >>>>> >>>>> 2)You are making your own model function that returns a number every >>>>> time it is called by some other package (fitting?). >>>>> >>>>> Please explain exactly how you wish to use the expression you are >>>>> developing and, if you are using it with another tool, which one? >>>>> >>>>> Regards, >>>>> Jonathan >>>>> On Friday, August 26, 2022 at 9:24:32 PM UTC-5 z.kari...@gmail.com >>>>> wrote: >>>>> >>>>>> Dear Jonathan >>>>>> Thank you for your reply. >>>>>> About using strings instead of sympy good idea, It is necessary to >>>>>> know that there are bunch of functions that are inserted in the main >>>>>> model as one of them : >>>>>> >>>>>> anion = {'Cl': 1} >>>>>> cation = {'Na': 1} >>>>>> ionic_dic = dict() >>>>>> for d in (cation, anion): >>>>>> ionic_dic.update(d) >>>>>> def ionicstr(): >>>>>> Ionic = 0 >>>>>> sqrt_I = 0 >>>>>> for k1 in ionic_dic: >>>>>> Ionic += 0.5 * (sp.symbols('X{0}'.format(str(k1))) * >>>>>> (ionic_dic[k1] ** 2)) >>>>>> sqrt_I += sp.sqrt(Ionic) >>>>>> print(Ionic, sqrt_I) >>>>>> return Ionic, sqrt_I >>>>>> AS can be seen while all of these kinds of functions must be >>>>>> evaluated >>>>>> or substituted in the main model. >>>>>> Is it still possible to use strings instead of sympy?? >>>>>> Regards, >>>>>> Zohreh >>>>>> >>>>>> On Fri, Aug 26, 2022 at 6:04 PM gu...@uwosh.edu <gu...@uwosh.edu> >>>>>> wrote: >>>>>> > >>>>>> > Zohreh, >>>>>> > >>>>>> > It is still unclear what you are actually doing. I can think of two >>>>>> possibilities (are either of them correct?): >>>>>> > >>>>>> > 1) You ultimately pass a string expression to lmfit or some other >>>>>> fitting package that is parsed into a numpy expression for fitting or >>>>>> something similar. So I am suggesting that you remove the intermediate >>>>>> step >>>>>> of creating a sympy expression to make things more efficient. You can >>>>>> generate the string expression dynamically in essentially the same way >>>>>> you >>>>>> are currently generating the sympy expression, but avoid having the >>>>>> intermediate step of using sympy to generate the expression and then >>>>>> using >>>>>> it to generate a string expression that is parsed again. >>>>>> > >>>>>> > 2) Alternatively, you may be making your own model function (I >>>>>> believe for lmfit). In that case you need to generate a function that >>>>>> does >>>>>> a calculation. I see no reason it has to have human readable names for >>>>>> the >>>>>> parameters in the actual calculation. However, you could connect them >>>>>> with >>>>>> human readable names through a dictionary or something like that. >>>>>> > >>>>>> > If you want a string, your code is almost there. As long as the >>>>>> elements of cation and anion are strings. Just replace things like >>>>>> sp.symbols('X{0}'.format(str(i))) with 'X_'+str(i). But maybe that is >>>>>> not >>>>>> what you are doing. >>>>>> > >>>>>> > Jonathan >>>>>> > >>>>>> > On Friday, August 26, 2022 at 5:03:00 AM UTC-5 z.kari...@gmail.com >>>>>> wrote: >>>>>> >> >>>>>> >> Jonathan has recommended to use string instead of sympy approche >>>>>> to >>>>>> >> derive your model and -parameters. >>>>>> >> But I stated that my model is driven dynamically. It means, as an >>>>>> >> example for one term in model I have: >>>>>> >> >>>>>> >> term_unca = 0 >>>>>> >> for k in anion: >>>>>> >> for j in cation: >>>>>> >> for i in neutral: >>>>>> >> term_unca += term_uncX - 2 * >>>>>> >> sp.symbols('X{0}'.format(str(i))) * sp.symbols(f'X{str(j)}') * \ >>>>>> >> sp.symbols(f'X{str(k)}') * ((cation[j] + >>>>>> >> anion[k]) ** 2 / (cation[j] * anion[k])) \ >>>>>> >> * sp.symbols(f'U{str(i)}{str(j)}{str(k)}') >>>>>> >> This way all the parameters should be created for each run of >>>>>> fitting. >>>>>> >> >>>>>> >> >>>>>> >> 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 >>>>>> >> Skype Name 49a52224a8b6b38b >>>>>> >> Twitter Account @zohrehkarimzad1 >>>>>> >> z.kari...@gmail.com >>>>>> >> +989102116325 <+98%20910%20211%206325> >>>>>> >> ((((((((((((((((Value Water))))))))))))))) >>>>>> >> >>>>>> >> >>>>>> >> On Fri, Aug 26, 2022 at 7:58 AM Peter Stahlecker >>>>>> >> <peter.st...@gmail.com> wrote: >>>>>> >> > >>>>>> >> > Dear Zohreh, >>>>>> >> > >>>>>> >> > I think, you should describe precisely what you want, rather >>>>>> than referring to previous correspondence. >>>>>> >> > Someone out there (likely not me) might have a solution to what >>>>>> you need - but cannot be bothered to read through you previous >>>>>> correspondence. >>>>>> >> > >>>>>> >> > 1. >>>>>> >> > Parameter names should be made in a dynamic way. >>>>>> >> > what exactly do you mean by this? >>>>>> >> > Better give an example of what you would like to do. >>>>>> >> > >>>>>> >> > 2. >>>>>> >> > how using for loop in string can be simultaneously handled. >>>>>> >> > I have no idea, what your question is - and I am afraid, not >>>>>> many people understand. >>>>>> >> > Better give an example of what you want to do. >>>>>> >> > >>>>>> >> > Peter >>>>>> >> > >>>>>> >> > On Fri 26. Aug 2022 at 04:42 Zohreh Karimzadeh < >>>>>> z.kari...@gmail.com> wrote: >>>>>> >> >> >>>>>> >> >> As can be seen in the former script, parameter names should be >>>>>> made in a dynamic way. >>>>>> >> >> I am wondering how using for loop in string can be >>>>>> simultaneously handled. >>>>>> >> >> Regards, >>>>>> >> >> 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 24, 2022 at 9:32 PM gu...@uwosh.edu < >>>>>> gu...@uwosh.edu> wrote: >>>>>> >> >>> >>>>>> >> >>> Zohreh, >>>>>> >> >>> >>>>>> >> >>> The code snippets you have provided do not suggest you are >>>>>> doing anything that requires sympy. So, I am confused. It looks like you >>>>>> need a function that generates a string of the summations in your >>>>>> expression, when passed species. I think there is a fixed number of >>>>>> parameters for each species. You are probably better off building the >>>>>> string for your expressions without involving sympy. I am thinking >>>>>> something like this to define part of your fit function: >>>>>> >> >>> >>>>>> >> >>> >>>>>> >> >>> def term(species_name): >>>>>> >> >>> >>>>>> return(species_name+'_param1*conc_'+species_name+'+'+species_name+'_param2*np.sqrt(conc_'+species_name+')') >>>>>> >>>>>> >>>>>> >> >>> Then >>>>>> >> >>> term('Cl') >>>>>> >> >>> returns >>>>>> >> >>> 'Cl_param1*conc_Cl+Cl_param2*np.sqrt(conc_Cl)' >>>>>> >> >>> >>>>>> >> >>> Then build your overall expression from these pieces. Then do >>>>>> a fit with initial guesses for all the parameters. >>>>>> >> >>> >>>>>> >> >>> That's how I would do it unless I am manipulating the >>>>>> expressions using sympy first. >>>>>> >> >>> >>>>>> >> >>> Jonathan >>>>>> >> >>> On Wednesday, August 24, 2022 at 11:11:58 AM UTC-5 >>>>>> z.kari...@gmail.com wrote: >>>>>> >> >>>> >>>>>> >> >>>> I should extract the required model for each system of >>>>>> chemicals and do a least squre for derived model and parameters to find >>>>>> the >>>>>> parameters for each chemical systems. >>>>>> >> >>>> >>>>>> >> >>>> >>>>>> >> >>>> Zohreh Karimzadeh >>>>>> >> >>>> >>>>>> >> >>>> Contact me on >>>>>> >> >>>> +989102116325 <+98%20910%20211%206325> >>>>>> >> >>>> and at >>>>>> >> >>>> z.kari...@gmail.com >>>>>> >> >>>> 🌧️🌍🌱 >>>>>> >> >>>> >>>>>> >> >>>> On Wed, 24 Aug 2022, 19:33 gu...@uwosh.edu, <gu...@uwosh.edu> >>>>>> wrote: >>>>>> >> >>>>> >>>>>> >> >>>>> Zohreh, >>>>>> >> >>>>> >>>>>> >> >>>>> I pulled the paper. I see no reason you need to use SymPy to >>>>>> do the numerical fitting. I would approach this by inputting the species >>>>>> in >>>>>> a dictionary or list and then use that to call functions that generate >>>>>> the >>>>>> computed value for each term/sum. Are you trying to keep track of the >>>>>> complete symbolic expression or do a numerical calculation? >>>>>> >> >>>>> >>>>>> >> >>>>> If you are using chemical symbols or reactions, are you >>>>>> taking advantage of ChemPy? >>>>>> >> >>>>> >>>>>> >> >>>>> Jonathan >>>>>> >> >>>>> On Tuesday, August 23, 2022 at 12:01:02 AM UTC-5 >>>>>> z.kari...@gmail.com wrote: >>>>>> >> >>>>>> >>>>>> >> >>>>>> As following, I should generate each parameters dynamically >>>>>> (for 20-30 terms): >>>>>> >> >>>>>> >>>>>> >> >>>>>> term_vnca = 0 >>>>>> >> >>>>>> for k in anion: >>>>>> >> >>>>>> for j in cation: >>>>>> >> >>>>>> for i in neutral: >>>>>> >> >>>>>> term_vnca += term_vncX - 4 * 3 * sp.symbols(f'X{str(k)}') * >>>>>> sp.symbols('X{0}'.format(str(i))) \ >>>>>> >> >>>>>> ** 2 * sp.symbols(f'V{str(i)}{str(j)}{str(k)}') >>>>>> >> >>>>>> lnfXs = term_wnca + term_unca + term_vnca + >>>>>> termx_w_solvent1 + termx_w_solvent2 >>>>>> >> >>>>>> >>>>>> >> >>>>>> 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 Tue, Aug 23, 2022 at 9:26 AM Zohreh Karimzadeh < >>>>>> z.kari...@gmail.com> wrote: >>>>>> >> >>>>>>> >>>>>> >> >>>>>>> Not these model and parameters, My model is very >>>>>> complicated wit large number of parameters: >>>>>> >> >>>>>>> >>>>>> >> >>>>>>> As a very simple example I raise this question. >>>>>> >> >>>>>>> Zohreh Karimzadeh >>>>>> >> >>>>>>> >>>>>> >> >>>>>>> Contact me on >>>>>> >> >>>>>>> +989102116325 <+98%20910%20211%206325> >>>>>> >> >>>>>>> and at >>>>>> >> >>>>>>> z.kari...@gmail.com >>>>>> >> >>>>>>> 🌧️🌍🌱 >>>>>> >> >>>>>>> >>>>>> >> >>>>>>> >>>>>> >> >>>>>>> On Tue, 23 Aug 2022, 05:16 Peter Stahlecker, < >>>>>> peter.st...@gmail.com> wrote: >>>>>> >> >>>>>>>> >>>>>> >> >>>>>>>> Dear Zohreh, >>>>>> >> >>>>>>>> >>>>>> >> >>>>>>>> Just for my understanding: >>>>>> >> >>>>>>>> 1. >>>>>> >> >>>>>>>> You params are alpha, betta ,gamma, eta (?) >>>>>> >> >>>>>>>> 2. >>>>>> >> >>>>>>>> What do you mean by generating them dynamically? >>>>>> >> >>>>>>>> >>>>>> >> >>>>>>>> Peter >>>>>> >> >>>>>>>> >>>>>> >> >>>>>>>> On Tue 23. Aug 2022 at 02:44 Zohreh Karimzadeh < >>>>>> z.kari...@gmail.com> wrote: >>>>>> >> >>>>>>>>> >>>>>> >> >>>>>>>>> Dear Oscar >>>>>> >> >>>>>>>>> BIG help ! >>>>>> >> >>>>>>>>> Here I seriously need to use sympy to generate my params >>>>>> dynamically. >>>>>> >> >>>>>>>>> All Bests >>>>>> >> >>>>>>>>> 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 Mon, Aug 22, 2022 at 7:42 PM Oscar Benjamin < >>>>>> oscar.j....@gmail.com> wrote: >>>>>> >> >>>>>>>>>> >>>>>> >> >>>>>>>>>> On Mon, 22 Aug 2022 at 15:36, Peter Stahlecker >>>>>> >> >>>>>>>>>> <peter.st...@gmail.com> wrote: >>>>>> >> >>>>>>>>>> > >>>>>> >> >>>>>>>>>> > Dear Oscar, >>>>>> >> >>>>>>>>>> > >>>>>> >> >>>>>>>>>> > Thanks for your hint about these parameters!. >>>>>> >> >>>>>>>>>> > Probably dumb question of mine: >>>>>> >> >>>>>>>>>> > Could one not define f_Vi_est directly as >>>>>> >> >>>>>>>>>> > >>>>>> >> >>>>>>>>>> > def_Vi_est(gamma, alfa, beta, eta, L, K, VA): >>>>>> >> >>>>>>>>>> > Vi_est = gamma - (1 / eta)….. >>>>>> >> >>>>>>>>>> > return np.sum(…..) >>>>>> >> >>>>>>>>>> > >>>>>> >> >>>>>>>>>> > without any ‚lambdification‘? >>>>>> >> >>>>>>>>>> >>>>>> >> >>>>>>>>>> Yes. In an earlier post the OP showed that they had >>>>>> working code like >>>>>> >> >>>>>>>>>> that but wanted to know how to do it using SymPy and >>>>>> lambdify. I >>>>>> >> >>>>>>>>>> presume there is a reason for wanting to use SymPy >>>>>> there (perhaps to >>>>>> >> >>>>>>>>>> accomplish something slightly different from the exact >>>>>> code shown). >>>>>> >> >>>>>>>>>> It's also possible that there isn't any actual reason >>>>>> to use SymPy for >>>>>> >> >>>>>>>>>> this at all though. >>>>>> >> >>>>>>>>>> >>>>>> >> >>>>>>>>>> -- >>>>>> >> >>>>>>>>>> Oscar >>>>>> >> >>>>>>>>>> >>>>>> >> >>>>>>>>>> -- >>>>>> >> >>>>>>>>>> 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/CAHVvXxQJUuZ4tVnECPyWE%3DLd03hhhUB5mqv1bjHcjSNf9WP22Q%40mail.gmail.com. >>>>>> >>>>>> >>>>>> >> >>>>>>>>> >>>>>> >> >>>>>>>>> -- >>>>>> >> >>>>>>>>> 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%2B1XYLOMV_i3VJXwwVN7JWnuJ9Wo6ZPhULmC1SOubAfFLt-DBQ%40mail.gmail.com. >>>>>> >>>>>> >>>>>> >> >>>>>>>> >>>>>> >> >>>>>>>> -- >>>>>> >> >>>>>>>> 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/CABKqA0YTOzyZkjhnQmKQKQh-Mrc_H_TcmD9FrXObaTadkfLpkQ%40mail.gmail.com. >>>>>> >>>>>> >>>>>> >> >>>>> >>>>>> >> >>>>> -- >>>>>> >> >>>>> 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/17d62c5c-11d8-4b1b-9a44-ae67c8021832n%40googlegroups.com. >>>>>> >>>>>> >>>>>> >> >>>>> >>>>>> >> >>>>> >>>>>> >> >>> -- >>>>>> >> >>> 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/837a3351-3aa3-4e1e-98d6-b34f3185d5b2n%40googlegroups.com. >>>>>> >>>>>> >>>>>> >> >> >>>>>> >> >> -- >>>>>> >> >> 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%2B1XYLMEq2OLN0npw8RHfghS7m6vgewkrpshqw8gBBU%2BfUAnoQ%40mail.gmail.com. >>>>>> >>>>>> >>>>>> >> > >>>>>> >> > -- >>>>>> >> > 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/CABKqA0b261cO3ixRjsp_YPU0Yk1ahRVgnEytcOkLrQUW-eHdwQ%40mail.gmail.com. >>>>>> >>>>>> >>>>>> > >>>>>> > -- >>>>>> > 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/ec94798a-fcdc-4df8-b80e-2642f5a60ec5n%40googlegroups.com. >>>>>> >>>>>> >>>>>> >>>>> -- >>>>> 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/54b70a36-3ee5-4d14-b30a-813b8fbf31fcn%40googlegroups.com >>>>> >>>>> <https://groups.google.com/d/msgid/sympy/54b70a36-3ee5-4d14-b30a-813b8fbf31fcn%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+un...@googlegroups.com. >> > To view this discussion on the web visit >> https://groups.google.com/d/msgid/sympy/6eae7b43-e685-4892-a943-8605ad04c2efn%40googlegroups.com >> >> <https://groups.google.com/d/msgid/sympy/6eae7b43-e685-4892-a943-8605ad04c2efn%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/a9bd0c6b-75f7-4711-9e02-19c06648c86dn%40googlegroups.com.