np.diff()#עושה חיסור של איבר קודם ואיבר עכשיו np.heaviside(y,0)#מינוס הופך לאפס ,פלוס הופך לאחד ואפס זה מה שאני בוחרת np.arange() np.array([])#יוצרת מערך
import matplotlib.pyplot as plt import numpy as np b=np.zeros([51]) b[0]=1 b[1]=1 for j in range(2,50): b[j]=b[j-1]+b[j-2] for h in range(len(b)-1): if(b[h]%5==0): print(b[h])
#אלגוריתם שיטת הטרפז חישוב שטח
import matplotlib.pyplot as plt import numpy as np x=np.arange(0,1,0.001) y=x**2 myint=np.sum(((y[1:]+y[:-1])/2)*np.diff(x)) print(myint)
#דוגמה לשאלה
import matplotlib.pyplot as plt import numpy as np x=np.arange(3,5,0.001) y=(x-1)*(x-3)*(x-5)*(x-7) myint=np.sum(((y[1:]+y[:-1])/2)*np.diff(x)) print(myint)
import matplotlib.pyplot as plt import numpy as np x=np.arange(2,8,0.001) y=x*(x**2-1)*(np.sin(x)-0.5)*(6*x-2) x2=np.arange(7,8,0.001) y2=x2*(x2**2-1)*(np.sin(x2)-0.5)*(6*x2-2) myint=np.sum(((y2[1:]+y2[:-1])/2)*np.diff(x2)) print(myint) plt.plot(x,y)
import matplotlib.pyplot as plt import numpy as np x=np.arange(2,3,0.001) y=(x**3-1)*(np.sin(x)**2-1)*(4*x-4)-np.sin(x)+1 x2=np.arange(2,4,0.001) y2=(x2**3-1)*(np.sin(x2)**2-1)*(4*x2-4)-np.sin(x2)+1 myint=np.sum(((y2[1:]+y2[:-1])/2)*np.diff(x2)) print(myint) plt.plot(x,y)
import matplotlib.pyplot as plt import numpy as np print(np.diff(np.diff([1,1,1,2,2,2])))
#/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #נגזרת
import matplotlib.pyplot as plt import numpy as np x=np.arange(0,2,0.001) y=x**3-9*x**2-23*x-15 y1=np.diff(y)/np.diff(x) plt.plot(x,y) plt.plot(x[1:],y1)
#/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #שורשים ונקודות קיצון
import matplotlib.pyplot as plt import numpy as np x=np.arange(0,3,0.01) y=x**3-4.5*x**2+5.75*x-1.875 z1=np.heaviside(y,0) z2=np.abs(np.diff(z1))#אפשר גם בלי זה פשוט הופך את המינוס לפלוס vec=np.argwhere(z2==1) print(x[vec]) plt.plot(x,y) plt.plot(x[1:],z2)
import matplotlib.pyplot as plt import numpy as np x=np.arange(0.5,2.2,0.01) y=x**3-4.5*x**2+6.5*x-3 yroots=np.diff(np.heaviside(y,0)) roots=np.argwhere(yroots!=0) plt.plot(x,y) plt.plot(x[roots],y[roots],'go') print(x[roots])
#מציאת נקודות קיצון
x=[-1,0,-1,-1] for j in range(2000): x=np.heaviside(np.heaviside(x,-1),-1) print(x)
import matplotlib.pyplot as plt import numpy as np def find_roots(x,y): z=np.diff(np.heaviside(y,0)) return np.argwhere(z!=0) x=np.arange(0,6,0.01) y=x**5-25*x**4+230*x**3-950*x**2+1689*x-945 y1=np.diff(y)/np.diff(x) vec2=find_roots(x[1:],y1) plt.plot(x,y) plt.plot(x[vec2],y[vec2],'go')
#מציאת נק קיצון ושורשים
import matplotlib.pyplot as plt import numpy as np def find_roots(x,y): z=np.diff(np.heaviside(y,0)) return np.argwhere(z!=0) x=np.arange(0.5,2.2,0.01) y=x**3-4.5*x**2+6.5*x-3 yroots=np.diff(np.heaviside(y,0)) roots=np.argwhere(yroots!=0) y1=np.diff(y)/np.diff(x) vec2=find_roots(x[1:],y1) plt.plot(x,y) plt.plot(x[roots],y[roots],'go') plt.plot(x[vec2],y[vec2],'ro')
import matplotlib.pyplot as plt import numpy as np x=np.arange(-3,3,0.01) y=x*(x+1)*(x+2)*(x-1)*(x-2) yroots=np.diff(np.heaviside(y,0)) roots=np.argwhere(yroots!=0) plt.plot(x[roots],y[roots],'go') plt.plot(x,y) print(x[roots])
import matplotlib.pyplot as plt import numpy as np def find_roots(x,y): z=np.diff(np.heaviside(y,0)) return np.argwhere(z!=0) x=np.arange(-3,3,0.01) y=x*(x+1)*(x+2)*(x-1)*(x-2) y1=np.diff(y)/np.diff(x) vec2=find_roots(x[1:],y1) plt.plot(x,y) plt.plot(x[vec2],y[vec2],'go')
import matplotlib.pyplot as plt import numpy as np def find_roots(x,y): z=np.diff(np.heaviside(y,0)) return np.argwhere(z!=0) x=np.arange(-3,3,0.01) y=x*(x+1)*(x+2)*(x-1)*(x-2) g=np.diff(y)/np.diff(x) #g1=np.diff(g)/np.diff(x) yroots=np.diff(np.heaviside(g,0)) roots=np.argwhere(yroots!=0) plt.plot(x[roots],g[roots],'go') plt.plot(x[1:],g) #print(x[roots])
import matplotlib.pyplot as plt import numpy as np def find_roots(x,y): z=np.diff(np.heaviside(y,0)) return np.argwhere(z!=0) x=np.arange(-3,3,0.01) y=x*(x+1)*(x+2)*(x-1)*(x-2) y1=np.diff(y)/np.diff(x) x2=x[1:] g=np.diff(y1)/np.diff(x2) vec2=find_roots(x2[1:],g) plt.plot(x[1:],y1) plt.plot(x[vec2],y1[vec2],'go')
import matplotlib.pyplot as plt import numpy as np def find_roots(x,y1): z=np.diff(np.heaviside(y1,0)) return np.argwhere(z!=0) x=np.arange(-3,3,0.01) y=x*(x+1)*(x+2)*(x-1)*(x-2) y1=np.diff(y)/np.diff(x) #y11=np.diff(y1)/np.diff(x) vec2=find_roots(x[1:],y1) plt.plot(x[1:],y1) plt.plot(x[vec2],y1[vec2],'ro')
print(np.diff(np.heaviside([1,1,1,2,2,2,1,1,1],0)))
import matplotlib.pyplot as plt import numpy as np x=np.arange(-3,3,0.01) y=x*(x+1)*(x+2)*(x-1)*(x-2) yroots=np.diff(np.heaviside(y,0)) roots=np.argwhere(yroots!=0) plt.plot(x[roots],y[roots],'go') plt.plot(x,y) print(x[roots])
import matplotlib.pyplot as plt import numpy as np def mse(x): b=np.sum(x**2) c=b/len(x) print(c) mse(np.array([1,2,3,4,5]))
import matplotlib.pyplot as plt import numpy as np x=np.arange(2,3,0.001) y=(x**3-1)*(np.sin(x)**2-1)*(4*x-4)-np.sin(x)+1 x2=np.arange(2,4,0.001) y2=(x2**3-1)*(np.sin(x2)**2-1)*(4*x2-4)-np.sin(x2)+1 myint=np.abs(np.sum(((y2[1:]+y2[:-1])/2)*np.diff(x2))) print(myint) plt.plot(x,y)
import matplotlib.pyplot as plt import numpy as np x=np.array([1,2,3]) y=x[1:]*x[:-1]-x[0] print(y)
import matplotlib.pyplot as plt import numpy as np def mse(x): b=np.sum(x**2) c=b/len(x) print(c) y1=np.array([1,2,3]) y2=np.array([3,4,5]) t=y1-y2 mse(t)
#/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #טור טיילור
import matplotlib.pyplot as plt import numpy as np der=np.array([np.cos(0),-np.sin(0),-np.cos(0),np.sin(0)]) x= np.arange(0,0.1,0.01) y=x*0 for n in range(20): y=y+der[n%4]*(x**n)/np.math.factorial(n) plt.plot(x,y)
import matplotlib.pyplot as plt import numpy as np der=np.array([np.sin(0),2*np.cos(0),-4*np.sin(0),-8*np.cos(0)]) x= np.arange(0.0001,12.56,0.01) y=x*0 plt.figure(figsize=(15,15)) for n in range(20): y=y+der[n%4]*(2*x**n)/np.math.factorial(n) plt.subplot(5,4,n+1) plt.plot(x,y)
#/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #משוואות דיפרנציליות
import matplotlib.pyplot as plt#y1=0.6y-1 import numpy as np h=5/100 x=np.linspace(0,5,100) y=x*0 y[0]=-6 for j in range (len(x)-1): y[j+1]=h*(0.6*y[j]-1)+y[j] plt.plot(x,y,'r')
import matplotlib.pyplot as plt#y1=0.6y-1 import numpy as np h=0.0001 x=np.arange(2,5,h) y=x*0 y[2]=2 y1=np.diff(y)/np.diff(x) for j in range (len(x)-1): y[j+1]=2*h*y[j]+y[j] plt.plot(x,y,'r') plt.plot(x[1:],y1,'r')
import matplotlib.pyplot as plt#y1=0.6y-1 import numpy as np h=2/100 x=np.linspace(0,2,100) y=x*0 y[0]= 1 for j in range (len(x)-1): y[j+1]=h*(y[j]+np.cos(y[j]))+y[j] plt.plot(x,y,'r')
#/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #/////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #////////////////////////////////////////////////////////////////////////////////////////////////////////////// #וקטורים
#כפל מספר קדימה ועכשווי import numpy as np y=np.array([1,2,3,4,5]) b=y[1:]*y[:-1] print(b)
#כפל שלוש מספרים קדימה ועכשווי import numpy as np y