矩阵函数绘图
mathematica吧
全部回复
仅看楼主
level 1
帝之殇往 楼主
老是被系统删帖,发到一楼了
2023年10月28日 12点10分 1
level 1
帝之殇往 楼主
我想要对这样的一个矩阵函数画图,但不知道如何处理这里的变量x向量。我觉得这里的变量使用向量方式表示应当更好一些,但没有找到合适的方法;使用下面这种方法解决后,绘图却无法得到结果。[图片]我的代码如下:M={{1,3},{5,2}};Plot3D[Sum[M[[i,j]]x[i]x[j],{i,1,2},{j,1,2}],{x[i],0,4},{x[j],0,4}]
2023年10月28日 12点10分 2
level 1
帝之殇往 楼主
这是我想要求的公式图片
2023年10月28日 12点10分 3
level 8
不是很明白你的意思,也不懂矩阵函数,从你的代码中大概猜了一下,不知道你是不是这个意思:
M = {{1, 3}, {5, 2}};
(*x的所有取值*)
xSpace = Sequence @璐村惂鐢ㄦ埛_053SRMK馃惥Table[{i, j}, {i, 0, 4, 0.1}, {j, 0, 4, 0.1}];
val =
#1 . M . #
1 & /@ xSpace;
ListPlot3D@MapThread[Append, {xSpace, val}]
2023年10月28日 15点10分 4
抱歉,是我表述不清楚,我的意思是:想要求一个已知的M方阵左乘未知行向量x,右乘x向量的转置。之后再根据定义的x向量中各元素的取值范围绘图。 我理解您的程序的意思是先定义了一个取值间隔在0.1的矩阵xspace,之后使用了Sequence将矩阵变成行向量再与M矩阵相乘,这样绘制出了3D点集图。
2023年10月29日 02点10分
@帝之殇往 所以我那样画对吗[微微一笑]
2023年10月29日 02点10分
@qflwq 对的对的,您的方法我觉得是一个很巧妙的思路。
2023年10月29日 02点10分
@帝之殇往 好的[哈哈]帮到你就好
2023年10月29日 02点10分
吧务
level 15
……你自己把自己绕进去了,按你2楼那个思路,应该是:
M = {{1, 3}, {5, 2}}; Plot3D[
Sum[M[[i, j]] x[i] x[j], {i, 1, 2}, {j, 1, 2}], {x[1], 0, 4}, {x[2], 0, 4}]
Plot3D里加个Evaluate会更好。
然后嘛,点乘也是可以的:
M = {{1, 3}, {5, 2}};
Plot3D[{x, y} . M . {x, y} // Evaluate, {x, 0, 4}, {y, 0, 4}]
2023年11月04日 05点11分 5
对哦,我一直想着x[i],x[j],但其实变量部分只是简单的x[1],x[2],我那个里面变量其实是未定义取值范围的。[泪] 感谢您!
2023年11月08日 09点11分
1