I'm not getting any output at all. It shouldn't matter if I use PyCharm or Jupyter Notebook. The only thing that should matter is Python interpreter version, SymPy version, Numpy version and SciPy version.
On Monday, 30 June 2025 at 14:31:41 UTC+1 gu...@uwosh.edu wrote: > I use PyCharm for coding packages. I would not use it for this task. As > has been suggested before, I encourage you to install Jupyter > <https://jupyter.org/>, numpy, sympy and scipy. Then paste Peter’s code > into a cell and run it. You will get cleaner output and it will be easier > to keep track of what code has been run in a notebook. > > Dr. Jonathan Gutow > Halsey Science Room 412 > Chemistry Department > UW Oshkosh > web: https://cms.gutow.uwosh.edu/Gutow > e-mail: gu...@uwosh.edu > Ph: 920-424-1326 <(920)%20424-1326> > > On Jun 30, 2025, at 8:08 AM, Peter Stahlecker <peter.st...@gmail.com> > wrote: > > I do not the the answer to your problem, I do not know what ``PyCharm > Community Edition`` is. > I get this output with your numbers: > > ``` > time: 0.024225711822509766 message from root: The solution converged. error: > [-4.44089210e-16 2.22044605e-16] w: 0.4474948009099584, b: > -0.6156041430138662 > ``` > > stephen.j...@gmail.com schrieb am Montag, 30. Juni 2025 um 13:39:01 UTC+2: > >> I have tried executing your code in PyCharm Community Edition but i get >> no output in the console. Nothing is printed to the console window. >> >> >> On Sunday, 29 June 2025 at 15:28:42 UTC+1 peter.st...@gmail.com wrote: >> >>> m = 30 0..2 sec >>> m = 40 1.0 sec >>> m = 50 1.2 sec >>> m = 60 1.6 sec >>> m = 70 2.0 sec >>> >>> This is on my PC, which is a good, average PC >>> >>> >>> stephen.j...@gmail.com schrieb am Sonntag, 29. Juni 2025 um 16:08:15 >>> UTC+2: >>> >>> Thanks. >>> >>> Can you give me a figure for execution time, when m = 30 say? >>> >>> >>> >>> Sent from my iPhone. >>> >>> On 29 Jun 2025, at 13:59, Peter Stahlecker <peter.st...@gmail.com> >>> wrote: >>> >>> ``` >>> >>> # %% >>> import numpy as np >>> import sympy as sm >>> from scipy.optimize import root >>> >>> m = 3 >>> >>> w, b = sm.symbols('w, b') >>> x = [sm.symbols(f'x_{i}') for i in range(m)] >>> y = [sm.symbols(f'y_{i}') for i in range(m)] >>> >>> >>> def f(w, b, x, y): >>> """Stephen's function""" >>> m = len(x) >>> if m != len(y): >>> raise ValueError("x and y must have the same length") >>> >>> summe = sum([sm.sqrt((w**2 * x[i] - w * (y[i] - b))**2) / >>> sm.cos(sm.atan((2 * w**2 * b - w * x[i] + y[i] + b) >>> / >>> (w**2 * x[i] - w * (y[i] - b)))) >>> for i in range(m)]) >>> return summe / m >>> >>> dfdw = f(w, b, x, y).diff(w) >>> dfdb = f(w, b, x, y).diff(b) >>> >>> gleichung = sm.Matrix([[dfdw, dfdb]]) >>> gleichung_lam = sm.lambdify((w, b, *x, *y), gleichung, cse=True) >>> >>> # %% >>> # Set values >>> x = [1.25, 2.0, 2.4] >>> y = [1.75, 1.65, 2.85] >>> if len(x) != m or len(y) != m: >>> raise ValueError(f"x and y must have length {m}") >>> >>> >>> def func(xx, args): >>> w, b = xx[0], xx[1] >>> return gleichung_lam(w, b, *args).squeeze() >>> >>> # Initial guess >>> x0 = [1.043, -0.29] >>> args = [*x, *y] >>> # Iterate. This sometimes improves the result >>> for _ in range(3): >>> loesung = root(func, x0, args=args) >>> x0 = loesung.x >>> print("message from root:", loesung.message) >>> print('error:', loesung.fun ) >>> print(f"w: {loesung.x[0]}, b: {loesung.x[1]}") >>> ```` >>> >>> This seems to work. >>> I tried it for up to m = 75 >>> NOTE: I replaced abs(a) with sqrt(a**2) as this 'behaves' better >>> numerically. >>> >>> stephen.j...@gmail.com schrieb am Sonntag, 29. Juni 2025 um 14:21:11 >>> UTC+2: >>> >>> Let me post a reviewed version of the equations to solve: >>> >>> [image: Screenshot 2025-06-29 at 13.19.38.png] >>> >>> On Sunday, 29 June 2025 at 12:25:54 UTC+1 peter.st...@gmail.com wrote: >>> >>> Clear. >>> >>> But you only give *one* equation: df(w,b; x, y) /dwdb = 0 >>> >>> *Two* equations are needed to try and solve for w, b. >>> >>> >>> >>> *From:* sy...@googlegroups.com <sy...@googlegroups.com> *On Behalf Of >>> *Stephen >>> Learmonth >>> *Sent:* Sunday, June 29, 2025 1:20 PM >>> *To:* sympy <sy...@googlegroups.com> >>> *Subject:* Re: [sympy] How can I solve this complex math equation using >>> SymPy? >>> >>> >>> >>> x(i) can be 1.25, 2.0, 2.4 and y(i) can be 1.75, 1.65, 2.85 for i = 1 to >>> 3. >>> >>> initial guess for w is +1.043 and b = -0.29. >>> >>> >>> >>> On Sunday, 29 June 2025 at 11:33:14 UTC+1 peter.st...@gmail.com wrote: >>> >>> >>> >>> What woud be the range of x(i), y(i)? >>> >>> What could be good initial guesses for w, b? >>> >>> (Needed to solve numerically.) >>> >>> >>> >>> >>> >>> On Sun 29. Jun 2025 at 12:11, <stephen.j...@gmail.com> wrote: >>> >>> If you can solve for $m = 3$ to start with that would be great. >>> >>> >>> >>> >>> >>> Sent from my iPhone. >>> >>> >>> >>> On 29 Jun 2025, at 11:02, stephen.j...@gmail.com wrote: >>> >>> Yes, it is non-linear >>> >>> >>> >>> Closed-form or numerical. >>> >>> >>> >>> Thanks. >>> >>> >>> >>> Sent from my iPhone. >>> >>> >>> >>> On 29 Jun 2025, at 10:47, Peter Stahlecker <peter.st...@gmail.com> >>> wrote: >>> >>> >>> >>> At first glance this looks nonlinear in w and in b. >>> >>> Do you think there exists a closed form solution, or are you looking for >>> a numerical solution given the x(i), y(i)? >>> >>> >>> >>> >>> >>> On Sun 29. Jun 2025 at 11:33, Stephen Learmonth <stephen.j...@gmail.com> >>> wrote: >>> >>> >>> >>> <Screenshot 2025-06-29 at 10.31.04.png> >>> >>> >>> >>> -- >>> 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 visit >>> https://groups.google.com/d/msgid/sympy/7229acb9-c0c1-4ed4-89a4-ee1136ad673bn%40googlegroups.com >>> >>> <https://groups.google.com/d/msgid/sympy/7229acb9-c0c1-4ed4-89a4-ee1136ad673bn%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 visit >>> https://groups.google.com/d/msgid/sympy/CABKqA0YHe5GCWx8C6EiYA%3DuA1dCq1ij7dvrV%2Bfi22Pbe8L-W0A%40mail.gmail.com >>> >>> <https://groups.google.com/d/msgid/sympy/CABKqA0YHe5GCWx8C6EiYA%3DuA1dCq1ij7dvrV%2Bfi22Pbe8L-W0A%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 visit >>> https://groups.google.com/d/msgid/sympy/40199A34-88AE-45E4-8CFD-F71AD2E216D7%40gmail.com >>> >>> <https://groups.google.com/d/msgid/sympy/40199A34-88AE-45E4-8CFD-F71AD2E216D7%40gmail.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 visit >>> https://groups.google.com/d/msgid/sympy/dcb4fb0e-c4c2-4d27-81dd-19b35c89a7c9n%40googlegroups.com >>> >>> <https://groups.google.com/d/msgid/sympy/dcb4fb0e-c4c2-4d27-81dd-19b35c89a7c9n%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 visit >>> https://groups.google.com/d/msgid/sympy/ee36cabb-1a69-4984-bc51-3539cdcb030fn%40googlegroups.com >>> >>> <https://groups.google.com/d/msgid/sympy/ee36cabb-1a69-4984-bc51-3539cdcb030fn%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 visit > https://groups.google.com/d/msgid/sympy/b5ab4d4d-83da-4685-be51-56e7a592474dn%40googlegroups.com > > <https://groups.google.com/d/msgid/sympy/b5ab4d4d-83da-4685-be51-56e7a592474dn%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 visit https://groups.google.com/d/msgid/sympy/cacdd381-36a5-461e-a9cf-f3540a4b6bdfn%40googlegroups.com.