You've made a typo in your first system of equations. You wrote: eq2 = Eq(3*x-1,-2) It should be: eq2 = Eq(3*x - y, -2) The first system yields x = -1/3 (3x = -1 => x = -1/3) and thus y = 11/3 The second system yields x = 2 and y = 8. Hope that helps!
Andrew you just made my day . I was on rank 7 in code chef contest and used this method to solve the equation of degree 4 and got the 4th rank. Love you bro ❤
0:00 "What's going on, smart people!" - There. That's where you lost me. 😀 Just kidding. Nice video. I didn't know about the latex trick. Thank you for sharing.
Nice video. Since this video is over a year old, you may have figured this out by now. Using control-Enter is the same as having to move your mouse to click on run.Use that for about 10 minutes and it will become instinct. The little bit of time saved can add up over a long coding session.
Have you tried the "Successive Over-Relaxation" method? It's an iterative method with a convergence parameter, it solves large matrices MUCH faster than Gauss-Jordan does. When you get to doing Finite Difference Methods with grids in the millions, that performance matters!
thx for video i need to solve problem it look easy but it isn't i wanna use sympy or numpy honestly it dosn't matter any thing that solves it my equation has one variable but one is one side and the other is on other side and it wont come to other side easily cause it buried under 4 or 5 heavy Denominator so is there a way i can solve this ? if u know how plz help me ps: i will bookmark this page to look for your answers
Dear Andrew Dotson, Thank you for your video. Most helpful. I was wondering if, perhaps, you could post some tips/techniques for evaluating the stability of ODE using Python. Recently, there has been great development in that field using Python. One example is the LMFIT Python's library, which is most straitfoward for modelling linear and non-linear syatems. Nevertheless, we still lack a proper method for evaluating stability in an ODE system.
It's easy to figure out most of the time. The equilibrium points are wherever the vector *y'* = *0* which for ODEs quadratic in *y* can be solved similarly to the method shown here. Then for stability if I remember correctly you linearise the system around the equilibrium points to obtain an equation *y'* = *Ay* And then you find det *A* , Tr *A* and follow this diagram: en.m.wikipedia.org/wiki/Stability_theory#/media/File%3AStability_Diagram.png
Thanks for the video. I was looking for an easy way to find the initial guess for a poly nomial in order to solve the equation by fsolve from scipy.optimize and importing numpy!
Do You know the trick to add space between variables in latex if I use it? Example "a, b = sp.symbols('a b'); a*b; will give "ab". So I prefer "a b". I have a solution : "a, b = sp.symbols('a~ b~'); but do You know something better ?
weigeng peng I would say learn the basics of cpp, and than you can move on quickly. If you don't know much about programming, python is like black magic, I don't think one could understand what's going on behind the scenes. However, in cpp you can see all the steps.
I agree with Zoltan. C++ taught me what exactly was going on behind the scenes, and python taught me that maybe I don't need to specify every little semi colon to know what I'm doing.
cpp - you will learn a lot about computers, and how they work under the hood. However, you will also discover that even simple things take a long time to code, and the learning curve will be quite steep. Python is a beginner friendly language, which allows you to focus on the logic of your program, and does many things in the background that you don't need to worry about, which makes code development fast, much faster than C. If you have no programming experience, I would recommend Python first, and then - if you still need to dive deeper - you could always learn cpp. C libraries can be imported into Python as modules, so it is possible to 'combine' both languages - Python for high-level abstraction and cpp for code execution speed. It's not uncommon these days to write a prototype of a programme in Python, test the logic, see how it works, debug, and then rewrite the final version in cpp. Anyway, if you think seriously about studying physics, make sure you learn maths first - this is the ultimate foundation of physics and IT!
if you have Anaconda installed there is nothing you need to do. Both Numpy and Sympy (and many oyher packages) are already preinstalled. Just open your jupyter notebook and import them as in this tutorial.
I'll keep that in mind next time. I wasn't thinking about someone not using fullscreen when I made the video, but of course people wouldn't be using full screen.
Thanks for the reply, Andrew. Actually, I watch your videos on my phone and thus even when I go full screen, I have to look closely. I thought that there may be other people like me who have small sized mobile devices. So, I thought to mention that once.
Hey someone know how to put initial conditions to calculate 𝐶1 and 𝐶2, and how to plot results, from sympy.interactive import printing printing.init_printing(use_latex=True) from sympy import * import sympy as sp x = sp.symbols('x') f = sp.Function('f')(x) diffeq = Eq(f.diff(x,x) -5*f,x) # initial condition f0 = 5 # time points x = np.linspace(0,20) display(diffeq) dsolve(diffeq,f)
Hm... Can we really say that SymPy and NumPy are equivalent when it comes to solving equations? One is based on symbolic algebra and the other one does calculations on raw numbers. Simple equations, where we already know the solution algorithm, can be solved with NumPy. Non-linear systems, where no variable or constant matrices may be easily defined, rely on SymPy. Also, SymPy non-linear solvers (numeric methods) are much more refined than NumPy. I would suggest using NumPy for complex math and array operations (also consider that NumPy is compatible with Numba - and may run with machine code speed), and relying on SymPy to solve equations where necessary.
Shut up, Ryan Reynolds. I can't focus on the math. (EDIT: Ah, well, I should have known I wasn't going to be the only person to say that. Still, though. You could pass as his more serious cousin, Bryan Reynolds.)
Hello Andrew Dotson!😇 I've been struggling with running codes in python? After I watched your video, maybe you can help me to complete my homework which is all about Systems of Nonlinear Equation? I wish you would notice me. 😊 Godbless you and your youtube channel. More power to you.😇💯
x=3 y=-1 g=Matrix([[x],[y]]) for i in range(len(g)): for k in range(0,3): d=g[[x],[y]] - j_inv[[x],[y]]*F[[x],[y]] g[[x],[y]]=d[[x],[y]] print(d) ################################### Hello there, i need to fill the equation in the for loop with the ( [x and y values] of the matrix g at each iteration) at the second loop iteration the value of the equation of d(which should became a matrix after the first loop result) needed to replace the values(3,-1) of g. Finally, i need to do this process 3 times and print a schedule of x and y values at each iteration how do i do it
useless, looking for trigonometric system of equations, not a simple linear one which can be found all over the internet. Really no need for a dragged out 15 minute video on it
If you already know how to solve the linear systems, then you wouldn't look up the video in the first place. To others it's not dragged out, it's thorough. Sorry it wasn't what you were looking for.
@@AndrewDotsonvideos I didnt look up how to solve linear equations, I searched for trigonometric ones and your video came up first as your title is called "Systems of Equations" which can mean both linear and complex ones, I had no Idea until I watched it you was just using generic 'linear' examples. Im needing to solve for x and y in the equations, tan(x) - y = 0 cos(x) - 3sin(y) = 0 Also youre videos aren't useless, ive watched many in the past, that was just spur of the moment frustration as i've been trying to crack this question for serveral hours now and no luck. Not sure if im missing something or what.
Hey someone know how to put initial conditions to calculate 𝐶1 and 𝐶2, and how to plot results, from sympy.interactive import printing printing.init_printing(use_latex=True) from sympy import * import sympy as sp x = sp.symbols('x') f = sp.Function('f')(x) diffeq = Eq(f.diff(x,x) -5*f,x) # initial condition f0 = 5 # time points x = np.linspace(0,20) display(diffeq) dsolve(diffeq,f)
With gratitude, I thank you for making this video. You are a trailblazer. Following you is a blessing.
You've made a typo in your first system of equations.
You wrote: eq2 = Eq(3*x-1,-2)
It should be: eq2 = Eq(3*x - y, -2)
The first system yields x = -1/3 (3x = -1 => x = -1/3) and thus y = 11/3
The second system yields x = 2 and y = 8.
Hope that helps!
Andrew you just made my day . I was on rank 7 in code chef contest and used this method to solve the equation of degree 4 and got the 4th rank. Love you bro ❤
0:00 "What's going on, smart people!" - There. That's where you lost me. 😀 Just kidding. Nice video. I didn't know about the latex trick. Thank you for sharing.
Really helpful. BTW, I like your hair style~!!LOL
Great tutorial! Your channel is easily becoming my favorite! :D
This is an excellent video. It helped me a ton!!! Thank you.
Nice video. Since this video is over a year old, you may have figured this out by now. Using control-Enter is the same as having to move your mouse to click on run.Use that for about 10 minutes and it will become instinct. The little bit of time saved can add up over a long coding session.
Thanks so much! This has been a great help!
My uni also uses python for physics programming so thanks again and do more python videos, please :)
Woah, I didn't know you used to make these videos too. Awesome make more, Thanks.
You look like Ryan Reynolds. Very informative vid.
I refuse to pronouce Numpy anything but Noom-pee. If I can't say Noom-pee, I don't wanna play.
num as in number, py as in python
Have you tried the "Successive Over-Relaxation" method? It's an iterative method with a convergence parameter, it solves large matrices MUCH faster than Gauss-Jordan does. When you get to doing Finite Difference Methods with grids in the millions, that performance matters!
I've heard of it but never used it! I'll have to think of some ways to try it out!
Great stuff, i''m just wondering why you didnt use numpy.array when solving the equ with numby?
Great video!! I definitely enjoyed it and learned a couple of things!!
Hey can you integrate (3x^2 + 1) using this library to get output as x^3 + x?
If so, can you explain the procedure for this? Needed help for this asap
Nice!
I love it!!
how can I assign the values to the variables?
Yup!! Cheers!
Would help if you had the code written out so we don't have to re-invent the wheel and type it all out?
Can we do Gaussian Elimination with Sympy and/or Numpy?
what is the error in attribution for printing.int_printing(use_latex=True)
thx for video
i need to solve problem it look easy but it isn't
i wanna use sympy or numpy honestly it dosn't matter any thing that solves it
my equation has one variable but one is one side and the other is on other side and it wont come to other side easily cause it buried under 4 or 5 heavy Denominator
so is there a way i can solve this ?
if u know how plz help me
ps: i will bookmark this page to look for your answers
Can we solve set of ODE numerically using python if we have supporting data in an Excel sheet, then would you please teach!!
Dear Andrew Dotson,
Thank you for your video. Most helpful.
I was wondering if, perhaps, you could post some tips/techniques for evaluating the stability of ODE using Python.
Recently, there has been great development in that field using Python. One example is the LMFIT Python's library, which is most straitfoward for modelling linear and non-linear syatems. Nevertheless, we still lack a proper method for evaluating stability in an ODE system.
It's easy to figure out most of the time. The equilibrium points are wherever the vector *y'* = *0* which for ODEs quadratic in *y* can be solved similarly to the method shown here. Then for stability if I remember correctly you linearise the system around the equilibrium points to obtain an equation
*y'* = *Ay*
And then you find det *A* , Tr *A* and follow this diagram:
en.m.wikipedia.org/wiki/Stability_theory#/media/File%3AStability_Diagram.png
What are the main advantages and disadvantages of using either sympy or numpy?
Great video btw!
I did a Java program that solves matrices using Gauss-Jordan, can't wait to learn python, muh friendlier language for math.
he said whats up smart people... that immediately told me this wasnt the place for me lmao
Thanks for the video. I was looking for an easy way to find the initial guess for a poly nomial in order to solve the equation by fsolve from scipy.optimize and importing numpy!
Is it possible to solve this with a step by step solution? Like Wolfram Alpha does?
Thank You! that was so helpful
Do You know the trick to add space between variables in latex if I use it? Example "a, b = sp.symbols('a b'); a*b; will give "ab". So I prefer "a b". I have a solution : "a, b = sp.symbols('a~ b~'); but do You know something better ?
Great video!!!! Thank you!
what do you think i should learn first cpp or py if i want to study physics in the future? and why? thank you love your videos!
weigeng peng I would say learn the basics of cpp, and than you can move on quickly. If you don't know much about programming, python is like black magic, I don't think one could understand what's going on behind the scenes. However, in cpp you can see all the steps.
I agree with Zoltan. C++ taught me what exactly was going on behind the scenes, and python taught me that maybe I don't need to specify every little semi colon to know what I'm doing.
cpp - you will learn a lot about computers, and how they work under the hood. However, you will also discover that even simple things take a long time to code, and the learning curve will be quite steep. Python is a beginner friendly language, which allows you to focus on the logic of your program, and does many things in the background that you don't need to worry about, which makes code development fast, much faster than C. If you have no programming experience, I would recommend Python first, and then - if you still need to dive deeper - you could always learn cpp. C libraries can be imported into Python as modules, so it is possible to 'combine' both languages - Python for high-level abstraction and cpp for code execution speed. It's not uncommon these days to write a prototype of a programme in Python, test the logic, see how it works, debug, and then rewrite the final version in cpp. Anyway, if you think seriously about studying physics, make sure you learn maths first - this is the ultimate foundation of physics and IT!
Awesome bro
This is so helpful. Thanks.
How would you code this if you wanted to do everything from scratch?
Depends u can use pprint but that doesn't show ur equation in latex. Reason sympy package is use is to show ur equations readable as latex.
Do you know of any good tutorials on how to get Sympy and Numpy into Jupyter Notebooks?
if you have Anaconda installed there is nothing you need to do. Both Numpy and Sympy (and many oyher packages) are already preinstalled. Just open your jupyter notebook and import them as in this tutorial.
print Statement must be surrounded in(" parenthesis") for upto date working!!
Thank you!
Why not just:
display(sp.Matrix([[2,-1,-4],[3,-1,-2]]).rref())
What’s does sp.function() I removed it and it still worked 😅
Have you ever tried Matlab or Scilab or Octave?
Yeah I've used matlab. I prefer python. Never tried the others
Sage and Python are pretty sweet. Matlab and Mathematica def. have uses though.
Sure it all comes down to personal preference and the situation in the end. I use matlab, python and javascript for different things
Can you please tell me how I can solve something like this:
A = 12911
eq1 = Eq(A+y-x, 12912)
eq2 = Eq(eq1+y1-x1, 12333 )
blue looks really good on you
When I import sympy it gives error ..That no moduled named sympy....Why??
go to CMD type
pip install sympy
Good video
Can you make the font size a little bigger?
I'll keep that in mind next time. I wasn't thinking about someone not using fullscreen when I made the video, but of course people wouldn't be using full screen.
Thanks for the reply, Andrew. Actually, I watch your videos on my phone and thus even when I go full screen, I have to look closely. I thought that there may be other people like me who have small sized mobile devices. So, I thought to mention that once.
cool done watch until end.
Saw your hair all messy, instantly knew the person of the video is smart. Thanks bro. lol jk
Hey someone know how to put initial conditions to calculate 𝐶1 and 𝐶2, and how to plot results,
from sympy.interactive import printing
printing.init_printing(use_latex=True)
from sympy import *
import sympy as sp
x = sp.symbols('x')
f = sp.Function('f')(x)
diffeq = Eq(f.diff(x,x) -5*f,x)
# initial condition
f0 = 5
# time points
x = np.linspace(0,20)
display(diffeq)
dsolve(diffeq,f)
Hm... Can we really say that SymPy and NumPy are equivalent when it comes to solving equations? One is based on symbolic algebra and the other one does calculations on raw numbers. Simple equations, where we already know the solution algorithm, can be solved with NumPy. Non-linear systems, where no variable or constant matrices may be easily defined, rely on SymPy. Also, SymPy non-linear solvers (numeric methods) are much more refined than NumPy. I would suggest using NumPy for complex math and array operations (also consider that NumPy is compatible with Numba - and may run with machine code speed), and relying on SymPy to solve equations where necessary.
Shut up, Ryan Reynolds. I can't focus on the math.
(EDIT: Ah, well, I should have known I wasn't going to be the only person to say that. Still, though. You could pass as his more serious cousin, Bryan Reynolds.)
The second row be :
[3 . 0 . -1]
Hello Andrew Dotson!😇 I've been struggling with running codes in python? After I watched your video, maybe you can help me to complete my homework which is all about Systems of Nonlinear Equation? I wish you would notice me. 😊 Godbless you and your youtube channel. More power to you.😇💯
What's your python version and what's the error? Do you have the libraries (sympy and numpy) installed?
Love from *_Pakistan_* !
I want to see how you do it with sympy
thank in advance
x=3
y=-1
g=Matrix([[x],[y]])
for i in range(len(g)):
for k in range(0,3):
d=g[[x],[y]] - j_inv[[x],[y]]*F[[x],[y]]
g[[x],[y]]=d[[x],[y]]
print(d)
###################################
Hello there, i need to fill the equation in the for loop with the ( [x and y values] of the matrix g at each iteration) at the second loop iteration the value of the equation of d(which should became a matrix after the first loop result) needed to replace the values(3,-1) of g.
Finally, i need to do this process 3 times and print a schedule of x and y values at each iteration how do i do it
hi good stuff
can you please take for example lorentz or duffing nonliner system
thanks
SymPy nsolve will bulldozer through non-linear systems using the Newton-Raphson method (as long as you provide realistic starting points...)
what if this does not have any solution
You get an empty list.
I didn't know Ryan Reynolds knew Sympy
this dude has like one dislike per 5 videos
Oh don't worry it will come
Great learn it from a super Saiyajin!
great vid. looks slow after you run it though ngl
thanks
the sp.Function lines are unnecessary
please share your code here!
I got wrong result
Graph it out bro.
I see why there are so many females in the comment section
guy you are genius, but your face does not convey any sort of code to us, plz reduce your face and increase the code detail, have a good day sir
useless, looking for trigonometric system of equations, not a simple linear one which can be found all over the internet. Really no need for a dragged out 15 minute video on it
If you already know how to solve the linear systems, then you wouldn't look up the video in the first place. To others it's not dragged out, it's thorough. Sorry it wasn't what you were looking for.
@@AndrewDotsonvideos I didnt look up how to solve linear equations, I searched for trigonometric ones and your video came up first as your title is called "Systems of Equations" which can mean both linear and complex ones, I had no Idea until I watched it you was just using generic 'linear' examples. Im needing to solve for x and y in the equations,
tan(x) - y = 0
cos(x) - 3sin(y) = 0
Also youre videos aren't useless, ive watched many in the past, that was just spur of the moment frustration as i've been trying to crack this question for serveral hours now and no luck. Not sure if im missing something or what.
blue looks really good on you
Hey someone know how to put initial conditions to calculate 𝐶1 and 𝐶2, and how to plot results,
from sympy.interactive import printing
printing.init_printing(use_latex=True)
from sympy import *
import sympy as sp
x = sp.symbols('x')
f = sp.Function('f')(x)
diffeq = Eq(f.diff(x,x) -5*f,x)
# initial condition
f0 = 5
# time points
x = np.linspace(0,20)
display(diffeq)
dsolve(diffeq,f)