分段函数
分段函数(piecewise-defined function)把定义域分成若干部分,在不同部分使用不同的计算规则。它仍然是一个函数:每个允许的输入必须对应唯一输出。公式写成几行,是为了说明何时选哪条规则,而不是让人把所有行都代入后相加。
水龙头调小以后,水箱原有的水去哪了
沿用斜率与平均变化率的水箱:开始有6升水,前三分钟以4升/分注入,然后调为2升/分,再过四分钟关闭。假设水箱足够大、没有漏水和蒸发,停水后水量保持不变。用 表示从开始经过的分钟数, 表示升数。所有数值都是这个合成工序的设定。
前三分钟增加 升,所以切换时已有 升。后四分钟再增加 升,因此关闭时有26升。三个阶段的时间范围与起始水量如下:
| 阶段 | 从开始计时的范围 | 该阶段开始时的水量 | 计算方式 |
|---|---|---|---|
| 第一段 | 6升 | 6加上4乘经过分钟数 | |
| 第二段 | 18升 | 18加上2乘切换后经过的分钟数 | |
| 第三段 | 26升 | 水量保持26升 |
看第二行:第5分钟并不是调小后经过5分钟,而是经过 分钟。于是水量为 升。减去3是在重置这一段的计时起点,原有18升则负责接上前一段的累计量。
把文字规则写成一个函数
由每一段的起始量加上本段新增量,得到 大括号把三种情况合成一个函数。右边的条件先决定使用哪一行,左边的式子再负责计算。OpenStax《College Algebra 2e》§3.2
例如 ;;。在第5分钟,只用第二行,不把第一行算出的26与第二行的22再相加。第一阶段的12升已经包含在18升中,再加一次会重复计数。
第二行也可以展开为 ,数值完全相同。但 更容易看出“切换时已有多少”和“之后新增多少”。反之,若误写为 ,在第3分钟附近将给出约12升,与前一段的18升相差6升;调小水龙头本身没有排水,不能导致这些水凭空消失。
从图中 出发,向右两分钟、向上四升,就到 。第7分钟以后的水平线表示水仍在箱内,只是新增量为零。在这个模型中,注水规则可以突然改变,水量却没有跳跃。
每个端点到底属于哪一行
函数的定义域是三个范围的并集,即 。本式把 放在第一行、 放在第二行,任何非负输入都恰好落入一行,既没有遗漏也没有冲突。
怎样核查端点?第3分钟由第一行得到 ;若将第二行的表达式延伸代入3,也得到18。第7分钟由第二行得到 ,与第三行常数26相等。因此也可以把3改分配给第二行、把7改分配给第三行,而不改变本函数的取值。
这种自由来自两边表达式在边界的值恰好相同,并不适用于所有分段函数。如果某个输入同时满足两行条件,而两行算出不同的输出,就没有定义出单值函数;如果某个预期输入不满足任何一行,则还欠缺该点的定义。函数的基本要求是唯一输出,不是必须只有一条代数式。OpenStax,§3.1
分段形式也不自动意味着“不连续”。水量的各段在3、7处接合,函数连续但图像有折角; 可写成 时取 、 时取 ,在零处也接合。反过来,一条收费规则可能在分界点直接跳到新的金额,下一节就是这种情况。
平均速率要按各段持续时间计算
从第2分钟到第5分钟跨过了切换点。第2至第3分钟以4升/分注水1分钟,第3至第5分钟以2升/分注水2分钟,总增量是 总时间3分钟,所以平均变化率为 升/分。也可以直接用函数端点核对:。
若简单算 ,就把两种速率假定为各持续相同时间;这里持续时间1与2不同,所以需要加权。整个0至7分钟的平均增量则是 升/分。分段公式保留每个阶段的机制,而一个全程平均数只保留总增量与总时间。
带跳跃的规则,空心点就不能随意挪动
考虑一个独立的合成收费变式:寄出一件包裹,重量 以千克计,规定 收8元, 收14元;超过5千克不在此服务范围内。这是整档收费,不按超出重量线性计价。费用函数为
因此 、、。图中 是空心点,表示第二条水平段在该位置不取值; 的实心点才是重量恰好2千克的费用。若用一条竖线把它们连起来,会错误地给重量2千克配上8至14元之间的许多费用。
把规则改为“重量小于2千克收8元,达到2千克就收14元”,只有一个输入的端点归属改变,但 就必须变成14。两种定义在其他允许输入上一致,边界值却不同,空心与实心不是装饰。重量零也未被原来的“寄出一件包裹”规则覆盖;若想规定不寄件费用为零,应明确补上一行 。
改动切换时刻,再接一次累计量
问题。水箱仍从6升开始,以4升/分注水;这次第2分钟就调为2升/分,到第5分钟关闭。写出水量函数,求第4分钟和第6分钟的水量。
解答。先算两个连接点。第2分钟水量为 升;随后注水3分钟,关闭时为 升。于是 第4分钟处在第二段,所以 升;第6分钟已经停水, 升。再把2与5分别代回相邻表达式,两个连接点都吻合。改变切换时刻不仅改变右侧条件,还会改变下一段的起始累计量。
分段关系可以把固定比例、直线、二次式等不同规则放在各自适用范围。建立这样的模型时,先说明哪些条件发生改变,再写每段表达式,最后用端点与一个段内值检查它们确实描述同一个对象。
参考资料
- Jay Abramson 等,College Algebra 2e,§3.2 Domain and Range:分段定义、各段定义域及图像端点。
- 同书 §3.1 Functions and Function Notation:函数的唯一输出要求与图像判别。
- 同书 §3.3 Rates of Change and Behavior of Graphs:跨区间的平均变化率。