Solving Equations Symbolically And Using LaTeX In Python!

Поделиться
HTML-код
  • Опубликовано: 29 сен 2024
  • There are some nice ways to pretty up your codes in python. I use Jupyter Notebook along with libraries like sympy to output equations from my codes in LaTeX format. Keeping things in variable form in addition to passing numerical values to functions is a nice way to keep tabs on what your code is doing.

Комментарии • 56

  • @bernsbuenaobra473
    @bernsbuenaobra473 5 лет назад +36

    Finally real how to's LaTeX into Anaconda nice to use in explaining algorithms in line and then implementing them in Phyton. Thank you very much Andrew Dotson

  • @alaasleem2149
    @alaasleem2149 3 года назад

    Please i want to help with single degree linear eq how to solve(solce(eq, x) ) it with sympy.. I tried but it takes laege time

  • @danielsears1522
    @danielsears1522 5 лет назад +13

    Good video, but you don't need to "declare" your function with "func = sp.Function('func')". "func = sp.sin(x)" is sufficient.
    For example,
    import sympy as sp
    x = sp.symbols('x', real=True)
    func = sp.Function('func')
    print(type(func))
    func = sp.sin(x)
    print(type(func))
    func = "stuff"
    print(type(func))
    sin
    "func = sp.Function('func')" creates a variable called func referring to an object of type UndefinedFunction. "func = sp.sin(x)" overwrites this variable reference and creates an object of type "sin". Finally, func = "stuff" overwrites this reference again and creates a string.

  • @kisho2679
    @kisho2679 8 месяцев назад +1

    would be helpful if jupyter notebook could live render LaTex so that you instantaneously could see what you are typing (and not wait to finish the markdown scripting before seeing the mathematical expression)

  • @sciencestararvinsinghk
    @sciencestararvinsinghk 6 лет назад +5

    If you're doing physics, try to the vector module in dumpy. Also mpmath is good for changing how precise your values are

  • @_Nibi
    @_Nibi 6 лет назад +5

    I used to do sympy, and I don't see the need to define a function f(x). I used to do it in spyder, and I would just define my symbols, then say f = some equation, then do sp.integrate(f, ('variable I'm integrating', 'lower bound', 'upper bound').eval()

    • @_Nibi
      @_Nibi 6 лет назад +1

      As you can see in your code, you defined it but didn’t even use it?

  • @tehyonglip9203
    @tehyonglip9203 3 года назад +4

    if you're using np.power(a,b) just replace it to sp.Pow(a,b). Unfortunately, sp.power(a,b) will not work, the function is slightly different.

  • @KillGui007
    @KillGui007 6 лет назад +6

    If you kill the kernel you will not have this problem with integration to k...

  • @sddbakirova1838
    @sddbakirova1838 5 лет назад +10

    do you know, guys, how to display equations with latex on tkinter??? HELLLP!!

    • @edwinarleyhenaovergara6009
      @edwinarleyhenaovergara6009 4 года назад +1

      i am looking for the same thing;do you know something about this now?

    • @hugosanchezchinesta9989
      @hugosanchezchinesta9989 4 года назад +1

      Same!
      Did yoy guys find a solution or something??

    • @adamfattal468
      @adamfattal468 4 года назад

      It’s been a year since you asked this question so you’re probably a tkinter master now. I have a project I’m working on and could use a tkinter expert. If you’re interested, you can shoot me an email at programmer3.7@outlook.com

  • @umaoio312
    @umaoio312 6 лет назад +7

    I started understanding a little about how python coding works but you lost me when you started talking in LaTeX xD
    I'll have to take computer science and learn to code at some point, just a matter of time now
    Maybe I can add this to my list of summer things 👍🏾

    • @umaoio312
      @umaoio312 5 лет назад +4

      I finally started learning to code in python: 7 months later 👍🏾

    • @dylutante
      @dylutante 5 лет назад +1

      @@umaoio312 You might like to take a look at scipy lectures, here: www.scipy-lectures.org/ . Those helped me a lot. Section for bare-bones beginners isn't much, but the overview of numpy, scipy and plotting modules helped me so much it's not even funny.

  • @basalduat
    @basalduat 5 лет назад +31

    Andrew, you are doing a very good job here. HOWEVER! Your "talking head" is TOO BIG. Reduce it or get rid of it. Your "talking head" is distracting. Also your text is TOO small. Make the text as large as possible. Most of us have poor eyesight and view your good work on cheap laptops. Good luck to you. Please keep sharing your excellent skills with Jupyter.

  • @DrIlyas-sq7pz
    @DrIlyas-sq7pz 5 лет назад +3

    Thank you sir. We use markdown to write an equation by latex mode. But is there some way to do other mathematical stuff in python like evaluation etc using latex mode ? I faced a big problem writing subscripts when there are many, even with split_super_sub module. This problem can be circumvented by using latex kind of command.

  • @drover7476
    @drover7476 3 года назад +8

    You Andrew, are a top shagger. My physics grades this year thank you in advance

  • @KillGui007
    @KillGui007 6 лет назад +5

    Will simpy not lower your computation speed? I would expect this to be the case but have not used it enough to be sure

  • @shivajishinde1496
    @shivajishinde1496 5 лет назад +3

    This is an excellent job!! I tried applying $$ z=\dfrac{2x}{3y} $$ but it did not work and giving error "invalid syntax". Can you please help me in this?

    • @trewq398
      @trewq398 5 лет назад

      i have the same problem with spyder. Now i have to find out how to do it there....

  • @StarbaseX-co4mv
    @StarbaseX-co4mv 2 года назад +1

    Why don’t you try VSCode. It has built in support for Jupyter, can debug step in/over, show variables etc

  • @faleru
    @faleru Год назад

    How is print used like a statement instead as a function? Is this Python2?

  • @gabrielavendano4821
    @gabrielavendano4821 6 лет назад +8

    Did you learn to code in uni or did you know how to before?

  • @kisho2679
    @kisho2679 8 месяцев назад

    what are Anaconda alternatives?

  • @crosisbh1451
    @crosisbh1451 6 лет назад +1

    could you try some vpython?

  • @abdelhamidalbaid5276
    @abdelhamidalbaid5276 Год назад

    Thank you for the Vedio. I was wondering if we can solve an equation written in Latex code without going back to python code. For example is it possible for python in Jupyter notebook to identify x^2 same as x**2

  • @wesleyblack8302
    @wesleyblack8302 3 года назад

    Can you use python to display the latex format on Android
    I know I've seen apps like Wolfram alpha and symbolab and have a way to display it on apps

  • @sayanjitb
    @sayanjitb 3 года назад

    Can please someone say what is the RawNBconvert option there in jupyter notebook?

  • @paranoidcomet
    @paranoidcomet 3 года назад

    Thanks! This really helped a lot. The output kinda looks weird in Spyder but it's still comprehensible.

  • @mther123
    @mther123 5 лет назад +1

    you are great

  • @duvanm2483
    @duvanm2483 6 лет назад +1

    How do you install Latex in python?

    • @michelleliew7341
      @michelleliew7341 4 года назад

      You may install Pylatex for creating.tex file.

  • @SurajBorate-bx6hv
    @SurajBorate-bx6hv 3 года назад

    Cool but how to do the other way around long latex equations to python code

  • @thomasblackwell9507
    @thomasblackwell9507 3 года назад

    Great video! Very useful! Please continue with this line of videos!

  • @fizixx
    @fizixx 4 года назад

    In order for me to get this to work (to the point up to 3:45) I needed to include: "from IPython.core.display import display"

  • @davidsweeney111
    @davidsweeney111 6 лет назад

    This is what we want! Big thumbs up! Great stuff Andy!

  • @virtualpeyman
    @virtualpeyman 4 года назад

    Can you also solve DAE systems with SymPy?

  • @mennowitteveen3313
    @mennowitteveen3313 4 года назад

    Could you upload the notebook perhaps?

  • @GLPentAxel
    @GLPentAxel 6 лет назад

    Have you done any Matlab?

  • @David-bo7zj
    @David-bo7zj 4 года назад

    esc + m + m to make a markdown cell

  • @magnesiumdrip
    @magnesiumdrip 6 лет назад +3

    can you do a video on resumes?

    • @umaoio312
      @umaoio312 6 лет назад +1

      There are actually a lot of videos you can watch for resume help, (quite a few that I've seen recently myself) but if it's really specific to a certain field, especially if that field is physics or math, I think asking Andrew is your best bet

  • @djmonky4994
    @djmonky4994 6 лет назад +1

    Why's this man so perfect

    • @umaoio312
      @umaoio312 6 лет назад +1

      Perfection is unrealistic
      But he's nice

  • @brianholloway7468
    @brianholloway7468 4 года назад +3

    Thank you. I really enjoy your videos, however every time I see Python I say to myself "wow Matlab is really awesome!". It seems more intuitive. pi is just pi, no shorthand abbreviations needed. exponents ^ look like normal exponents vs **. I know Python is free, I just can't bring myself to get thru the py veil.

    • @AbarajithanGnaneswaran
      @AbarajithanGnaneswaran 4 года назад +3

      For me, python is a lot more intuitive than Matlab.
      If u hate the abbreviations like np, sp and want it matlab style, u can simply say "from numpy import * ". Then u can directly say pi, exp, sin...etc. But those abbreviations are a feature, not a bug. They are namespaces used to seperate different packages used for different purposes. It's super weird to have everything in one namespace, like matlab (or from numpy import *)
      Matlab, i need to keep the docs open and read them for 15 mins before applying some new function. There's zero consistency. No objects, everything in same namespace, stateful programs, god I hate it...
      I think it was built in a time where no other way was there to do it. And scientific people hated learning programming properly. So, matlab just gave them a bunch of functions they can use. Say they made a function for a 2d vector. Now they want the same thing for a 3d vector. So they slapped *3d behind the functions name and created a new function.
      Doing the same with numpy is a bliss. You guess like "this might work" and type a new syntax (like a[a[...,5]>5] ) and it works. It's so intuitive. Numpy extends python's design philosophy. I'm in love with that API.
      We were given an assignment on signal estimation, not that hard. A transmitter sends some signals (a bit vector) to the receiver. That gets corrupted by gaussian noise. We need to create a bunch of estimators and guess what was sent. It's all on matlab. Need to repeat the experiment changing vector size (N), signal vocabulary....etc. like 4,5 parameters. Friends ended up doing it with a nested for loop 5 steps deep in matlab. For every parameter, for every other parameter. Because matlab natively supports only 2d arrays. And most functions work only on 2d arrays.
      I decided to do this in numpy. In numpy, i created a 6 dimensional tensor (6d array), with each parameter on each dimension. I added noise and stuff to different dimensions using broadcasting, crunched certain dimensions and like 20 lines later i have a 2D array that I can plot using matplotlib to get the performance of estimator changing with vector size and all. It was a breeze. And it's fast even when u increase repetitions of experiment to a million or something. The whole thing is readable as well... It's elegant.

  • @sciencestararvinsinghk
    @sciencestararvinsinghk 6 лет назад +1

    So you took my advice and used sympy