Files
eth-summaries/semester3/numcs/parts/06_python/03_sympy-ex.py
2026-01-19 21:01:29 +01:00

23 lines
1.2 KiB
Python

import sympy as sp
a, b = (0, 1)
x, y = sp.symbols("x, y") # Create sympy symbols
f = x**2 + 3 * x - 2 # Create your function
# In the below, for 1D differentiation, we can omit the symbol and just use sp.diff(f)
df = sp.diff(f, x) # Add more arguments for derivatives in other variables
F = sp.integrate(f, x) # Integrates the function analytically in x
F = sp.integrate(f, (x, a, b)) # Indefinite integral in x in interval [a, b]
lambda_f = sp.lambdify(x, F) # Creates a lambda function of F in variable x
lambda_f = sp.lambdify([x, y], F) # Creates a lambda function of F in variables x and y
roots = sp.roots(f) # Computes the roots of function f analytically
sp.hermite_poly(5) # Creates hermite poly of degree 5
sp.chebyshevt_poly(5) # Creates chebychev T (first kind) poly of degree 5
sp.chebyshevu_poly(5) # Creates chebychev U (second kind) poly of degree 5
system = [f + y, x**3 + 2 * y, 3 * y - 2 * x] # A system of equations
sp.solve(system) # Solves a system of equations algebraically
sp.nsolve(
system, [x, y], (0, 1)
) # Input the system, the variables to solve in and interval
# To print nicely rendered math expressions, you can use
sp.init_printing()