函数的复合(Composition)
定义:设函数y=f(u)和u=g(x)u=g(x),则函数y=f[g(x)]称为由y=f(u)和u=g(x)复合而成的复合函数,其中函数y=f(u)常常称为外函数,函数u=g(x)常常称为内函数,其中内函数的值域必须是外函数的定义域的子集。
复合函数的拆分:
求复合函数的定义域
已知函数f(x)的定义域是[-1,1],求函数f(2x+1)的定义域:
解决此类问题需要牢牢抓住两点:
其一接受对应法则f作用的x和2x+1是处于对等位置的;
其二不论是给定函数的定义域还是求解函数的定义域,都是针对单独的自变量x而言的。
综上所述,已知-1<=1<=1,故-1<=2x+1<=1,
解得函数f(2x+1)的定义域是x属于[-1,0]。
在Python中对复合函数进行复合
from math import *
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
fig = plt.figure(dpi=300)
fig.add_axes()
ax = fig.add_subplot(111)
def f(x):return x+1
def g(x):return x**2
def h(x):return f(g(x))
x = np.array(range(-10,10))
#我们使用Python的list comprehension来计算y
y = np.array([h(i) for i in x])
ax.plot(x,y,color='lightblue',linewidth=3)
ax.set_xlim(-10,10)
plt.title("Composition function")
plt.show()
逆函数(Inverse Function):
函数与其反函数的函数图一定是关于直线y=x对称的:
高阶函数(Higher Order Functions):
把函数作为参数传入,这样的函数称为高阶函数。
def high_order(a,b,fun):
return fun(a) - fun(b)
a = high_order(-8,1,abs)
print(a)
以高阶函数的观点看去,函数的复合便是将两个函数作为输入给复合函数,然后由其产生一个新的函数作为输出。
def f(x):return x+1
def g(x):return x**2
def composite(f,g):return lambda x:f(g(x))
h3 = composite(f,g)
x = 4
print(h3(x))Python真香:用Python学微积分---函数zhuanlan.zhihu.com