一:第一章:
基本初等函数:
1 import numpy as np 2 import pandas as pd 3 import matplotlib.pyplot as plt 4 5 import warnings 6 warnings.filterwarnings('ignore') #不发出警告 7 8 #映射与函数 9 #幂函数 10 if 0: 11 x = np.linspace(-np.pi,2*np.pi,num = 50) 12 y = x**2 13 14 plt.scatter(x,y,marker='.') 15 plt.plot(x,y) 16 17 #辅助线 18 plt.axvline(0,color ='cyan',linestyle = '--',alpha = 0.8) 19 plt.axhline(0,color='cyan',linestyle='--',alpha = 0.8) 20 21 22 plt.show() 23 pass 24 #指数函数 25 if 0: 26 x = np.linspace(-np.pi,2*np.pi,num = 50) 27 y = 2**x #指数函数 28 29 plt.scatter(x,y,marker='.') 30 plt.plot(x,y) 31 32 plt.axhline(0,color='cyan',linestyle='--',alpha = 0.8) 33 plt.axvline(0,color='cyan',linestyle='--',alpha = 0.8) 34 35 plt.show() 36 pass 37 38 #对数函数 39 if 0: 40 x = np.linspace(-np.pi,2*np.pi,num= 50) 41 y = np.log2(x) 42 43 plt.scatter(x,y,marker = '.') 44 plt.plot(x,y) 45 46 plt.axhline(0,color='cyan',linestyle = '--',alpha = 0.8) 47 plt.axvline(0,color='cyan',linestyle = '--',alpha = 0.8) 48 49 plt.show() 50 51 52 53 pass 54 55 #三角函数 56 if 0: 57 x = np.linspace(-np.pi,2*np.pi,num=50) 58 y = np.sin(x) 59 60 plt.scatter(x,y,marker ='.') 61 plt.plot(x,y) 62 63 plt.axhline(0,color = 'cyan',linestyle ='--',alpha = 0.8) 64 plt.axvline(0,color='cyan',linestyle = '--',alpha = 0.8) 65 66 plt.show() 67 68 pass 69 70 #反三角函数 71 if 0: 72 #f = arcsin(x) 73 x = np.linspace(-np.pi,2*np.pi,num = 100) 74 y = np.arccos(x) 75 76 plt.scatter(x,y,marker = '.') 77 plt.plot(x,y) 78 79 plt.axhline(0,color='cyan',linestyle='--',alpha = 0.8) 80 plt.axvline(0,color='cyan',linestyle='--',alpha = 0.8) 81 82 plt.show() 83 pass
数列 和函数的极限:
1 import numpy as np 2 import pandas as pd 3 import matplotlib.pyplot as plt 4 5 # import warnings 6 # warnings.filterwarnings('ignore') #不发出警告 7 8 #数列 x/(x+1) 的极限 9 if 0: 10 x = np.arange(50) 11 y = x/(x+1) 12 13 plt.scatter(x,y,marker = '.') 14 plt.plot(x,y) 15 16 plt.axvline(0,color='cyan',linestyle='--',alpha = 0.8) 17 plt.axhline(0,color='cyan',linestyle='--',alpha = 0.8) 18 19 plt.show() 20 21 pass 22 23 #函数的极限 24 if 0: 25 x = np.linspace(-2,2,num=100) 26 y = x**2 -1 27 28 plt.scatter(x,y,marker = '.') 29 plt.plot(x,y) 30 31 plt.axvline(0,color='cyan',linestyle='--') 32 plt.axhline(0,color='cyan',linestyle='--') 33 34 #极限值 35 plt.axhline(-1,color='red',linestyle = '--') 36 plt.show() 37 pass 38 39 40 #练习 :极限 41 #函数的极限 42 if 1: 43 x = np.arange(1,50) 44 y = (2*x+1)/x 45 46 plt.scatter(x,y,marker = '.') 47 plt.plot(x,y) 48 49 # plt.axhline(2) #默认颜色是类似于 cyan 50 plt.axhline(2,color='red') #默认是直线 51 52 53 plt.show() 54 pass
二:第二章:
导数与微分:
1 import numpy as np 2 import pandas as pd 3 import matplotlib.pyplot as plt 4 5 #导数 6 if 0: 7 def f(x): 8 return x**2 9 10 plt.figure(figsize = (12,6)) 11 n = np.linspace(-10,10,num=50) 12 13 plt.plot(n,f(n)) 14 plt.xlim(-10,10) 15 # plt.ylim(-10,100) #设置axes 的limits 16 17 #画出两点一线 18 plt.plot([2,5],[4,25],color='r') 19 20 x_m = 2 21 for i in range(1,5): 22 plt.plot([x_m,x_m+i],[f(x_m),f(x_m+i)],color='r') 23 24 25 26 27 28 29 30 plt.show() 31 32 pass 33 34 #求函数在一点处的导数 35 if 0: 36 def f(x): 37 return x ** 2 38 def ds(x,d): 39 ''' 40 41 :param x: 选取一点 42 :param d: 向右偏离x 的距离 43 :return: 斜率 44 ''' 45 y1 = f(x) 46 y2 = f(x+d) 47 return (y2-y1)/d 48 49 for i in np.linspace(1,0,num=1000,endpoint=False): #endpoint 可以控制是否要右端点 50 ret = ds(2,i) #求 在 f(x)=x^2 当x = 10 时的导数 51 print("当2 偏{:.3f} 个单位的时候,直线的斜率是{:.3f}".format(i,ret) ) 52 pass 53 #图示 54 if 0: 55 def f(x): 56 return x**2 57 n = np.linspace(-10,10,num = 50) 58 plt.plot(n,f(n)) 59 60 plt.scatter(2,4) 61 plt.plot(n,4*n-4) 62 63 plt.show() 64 65 pass 66 67 68 # 69 if 0: 70 def f_(x): 71 return 1 - 10 * x + 6 * x ** 2 - (1 + x ** 2) / (2 * x ** 2) + 3 * np.cos(x) * x + 3 * np.sin(x) 72 73 def f(x): 74 return 2*x**3 -5*x**2 + 3*x*np.sin(x) + (x**2 +1)/(2*x) -7 75 76 x = np.linspace(10,0,num=100,endpoint=False) 77 plt.figure(figsize=(12,6)) 78 plt.plot(x,f(x)) 79 80 m= n = 6 81 plt.scatter(m,f(m)) 82 83 plt.plot(x,f_(x)) 84 plt.show() 85 pass
泰勒公式:
导数与微分的应用:
单调性和凸凹性
单调性判断:f'(x) >0 增 反之减
凸凹形 :f''(x) >0 凹 反之 凸
方程的近似解
切线法: