SageMath中向量函数绘制求助:定义后无法绘制完整函数
如何绘制向量函数对应的参数曲线?
我没法搞清楚怎么绘制向量函数。我是这么定义函数的:
alpha = vector([sin(x), cos(x)])
我能单独绘制某个点对应的向量:
plot(alpha(x=1))
但没法绘制整个函数,执行以下代码会报错:
plot(alpha(x=x)) # 错误提示:unable to simplify to float approximation
如果写成下面这样,会把两个函数分开成两条独立的曲线画出来:
plot([sin(x), cos(x)])
解决方案
要绘制向量函数对应的参数曲线(本质是x=sin(t)、y=cos(t)形式的参数方程轨迹),你需要使用参数绘图专用的函数(以SageMath为例,对应parametric_plot),而不是默认的plot函数。具体写法如下:
t = var('t') alpha = vector([sin(t), cos(t)]) parametric_plot(alpha, (t, 0, 2*pi))
这样就能画出以t为参数的向量函数轨迹(示例中是单位圆)。原因是默认的plot函数只处理单变量标量函数y=f(x),而向量函数属于参数方程范畴,必须用参数绘图函数来解析向量的x、y分量,按参数变化的顺序连接成连续曲线。
内容的提问来源于stack exchange,提问作者the lonesome programmer
相关产品推荐
相关产品推荐

