前言
一年一度的高考落下了帷幕,和往年[1][2][3]一样,我们又能看到不少讨论如何“使用某某工具快速解决高考难题的”,例如[4](更加侧重对于教师的效果演示)和[5](侧重 Wolfram Alpha 的应用)。但仔细分析,并非全部的题解都能体现出 Wolfram 语言的优秀特性:贴近自然语言,库函数丰富。
高考数学的应用
试举一例,这是我的朋友吴宇迪在中科大自主招生考试[6]中的一道解析:
1. 若
,则 |z + 1| − |z − i| 的取值范围是:
FunctionRange[{Abs[z + 1] - Abs[z - I],
z + Conjugate[z] == 1},
z, y, Complexes
]
输出如下:
-1 < Re[y] <= Sqrt[2] && Im[y] == 0
也即,z ∈ (−1,√2] + 0i
可以看到,这一类题目的特点是,技巧性要求不高,主要着眼于对基础性质的考查能力,是最适合计算机解答的一类习题。
相比其它解题方法, Mathematica 的优势在这里得到了很好的体现:丰富的数学函数能够直接描绘许多基本的数学性质,例如FunctionRange
函数可计算给定表达式的值域。
(换行仅为提升竖屏观看体验,不影响实际运行效果)
上图中,配合函数中文名提示,我们可以非常容易的理解代码:
求函数 | z + 1 | -| z - i | 的值域,其中定义域的限制为
,自变量是 z ,因变量是 y ,并且这个函数是作用在复数域上的。
利用 Reduce
(化简),Solve
(解方程),FunctionRange
(值域),D/Dt
(求导),Minimize / Maximize
(最大点值/最小点值) 等函数,大部分求定义域、值域、导数、恒成立等问题都可以被轻松解决,尤其是题目难度相对不低的时候。
但还有不少种类题目并不容易解决,例如解析几何和圆锥曲线等。这些题目的解法要求更加深入的数学知识和更多的软件使用经验与技巧。
然而,对于课业压力普遍较大的高中生,满足这个要求的实在是凤毛麟角,Mathematica 于他们而言不过是个大号计算器,难以尽其材。
高等数学和其他高校课程
然而另一方面,这一次经历高考的高中生们,大多已经被一所心仪或不那么心仪的高校录取,在暑假过后就将收拾行装,打点行囊,开始他们的高校生活。
其中大多数是理工科学生,对他们来说这也意味着面临《高等数学》(以及《线性代数》《概率论》和其它大学数理课程)的学习任务。
就高考题而言,你不能拎着 Mathematica 上考场,但是到了高等数学:
设函数 f(x,y,z)=x^4-xy+z^3,则 gradf(1,1,1)=? 解:
Grad[x^4 - x y + z^3, {x, y, z}]
/. {x -> 1, y -> 1, z -> 1}
含义很显然:以 x, y, z 作为自变量求梯度,并且将结果带入 x=1, y=1, z=1 求值。
概率论,再举一例:
设随机向量的联合概率密度函数为f(x,y)=k(6-x-y),其中 0<x<2, 2<y<4,求:
1. k 的值;
2. P(X<1, Y<3)
3. x 与 y 各自的边缘概率密度?
4. x 与 y 是否互相独立?
解:
Integrate[k (6-x-y), {x,0,2}, {y,2,4}]==1
// Solve[#, k] &
k = k /. %
dist = ProbabilityDistribution[
1/k (6 - x - y), {x, 0, 2}, {y, 2, 4}]
CDF[dist, {x, y}] /. {x -> 1, y -> 3}
{X, Y}=MarginalDistribution[dist,#1]~PDF~#2&
@@@ {{1, x}, {2, y}}
X Y= Piecewise[{{1/k (6-x-y),0<x<2&&2<y<4}}]
对于上面的代码,解释如下[7][8]:
首先,对 f 积分,得到一个有关 k 的表达式;
由概率密度函数的特性,这个表达式应为1;
求解“表达式==1”,带入,这就是第一题的答案。
dist 是概率密度函数f所构建的概率分布;
计算其累积分布,然后带入 x=1,y=3。
这就是第二题的答案。
X,Y 分别是 dist 某个边缘分布的概率密度函数,
分别对应于第1个参数是x,第2个是y。
得到的就是 X,Y 各自的边缘概率密度函数,
此即第三题答案。
X Y 独立,即边缘密度之积等于全局。
判断结果即第四题答案。
综上所述,我们可以得出结论,高校的数理课程学习,由于科目本身的知识复杂程度上升,概念抽象程度提高,任何机器处理方式都不可能像过去使用计算器那样“速成”。
例如上面提到的 ProbilityDistribution
函数,倘若没有专门了解过,即使有着 Mathematica 便捷而高效的帮助文档(按 F1 即可打开,对着函数按可以看使用示例),弄明白如何解题也不得不意味着若干小时的挠头。
幸运的是,高校学生们与之前相比大多都具有更加宽松的时间分配,而每周集中的上课时间(一般 2-3 天)也意味着,大学生们能够有着更加合理的时间规划。这使得对软件的了解能够和学习的进度想匹配,最终使得他们得以洞若观火。
对于高中生来说,Mathematica 对于大学生将会意义着更多。作为一个在高中阶段接触这软件的大学生,我深有感触。
个人能力有限,虽有雄心壮志,但最后成文之后却觉不过尔尔,可惜短时间内也难以再做提升,姑妄言之,只好权作抛砖引玉。
参考链接与注解
Solve
函数得到的是“解(Rule)”,而不是方程的根(Root),因此需要带入才能得到 k
的答案 免费软件试用
创建 Wolfram ID 登录扫码下载试用版:
Wolfram Mathematica:
https://www.wolfram.com/mathematica/trial/
Wolfram System Modeler:
https://www.wolfram.com/system-modeler/trial/