python 解積分方程


引用:https://www.aliyun.com/jiaocheng/527786.html

sympy求解極限、積分、微分、二元一次方程:http://www.gzhshoulu.wang/article/3761158

https://docs.scipy.org/doc/scipy/reference/tutorial/integrate.html

解方程組  2*x-y=3,3*x+y=7

from sympy import *
x=Symbol('x') 
y=Symbol('y') 
print solve([2*x-y-3,3*x+y-7],[x,y])
# result is: {x: 2, y: 1}

求積分  ((n+3)/(n+2))**n,limit n->oo

from sympy import *
n=Symbol('n') 
s=((n+3)/(n+2))**n 
print limit(s,n,oo)
# result is: E

  

from sympy import *
t=Symbol('t') 
x=Symbol('x') 
m=integrate(sin(t)/(pi-t),(t,0,x)) 
n=integrate(m,(x,0,pi)) 
print m
# result is: Si(x - pi) + Si(pi)
print n
# result is: 2

sympy求導1

import numpy as np
from sympy.abc import x

f = lambda x: x**3-2*x-6
# 我們設定參數h的默認值,如果調用函數時沒有指明參數h的值,便會使用默認值
def derivative(f,h=0.00001):
    return lambda x: float(f(x+h)-f(x))/h
fprime = derivative(f)
print fprime(6)
# result is:106.000179994

sympy求導2

from sympy.abc import x

f = x**3-2*x-6
print f.diff()
# result is :3*x**2 - 2
print f.diff().evalf(subs={x:6})
# result is : 106.0000000000

sympy解方程

import sympy
from sympy.abc import x
f = x**2-2*x-4
print sympy.solve(f,x)
# result is:[1 + sqrt(5), -sqrt(5) + 1]

解方程 f''(x) - 2f'(x) + f(x) = sin(x) 

from sympy import *
init_printing()
# 給定符號
x = Symbol('x')
f, g = symbols('f g', cls=Function)
#solve f''(x) - 2f'(x) + f(x) = sin(x) 
diffeq = Eq(f(x).diff(x, x) - 2*f(x).diff(x) + f(x), sin(x))
#use dsolve,return Eq,hint control accuracy
print(dsolve(diffeq, f(x),))
#結果:Eq(f(x), (C1 + C2*x)*exp(x) + cos(x)/2)

 ... 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM