mathematica 发表于 2011-2-26 21:52:40

真不知道这个符号解能干什么!

mathematica 发表于 2011-2-26 22:01:25

(*清除所有变量*)
Clear["Global`*"];
(*求解方程,并得到10位有效数字*)
eq1=NSolve[{x^2+c^2==4^2,y^2+c^2==5^2,
            2/x==b/c,2/y==a/c,
            a+b==c},{a,b,c,x,y},10]
(*只保留数据,去掉变量符号*)
eq2={a,b,c,x,y}/.eq1
(*提取结果都是实数的结果*)
eq3=Cases
(*提取都大于零的结果*)
eq4=Select]>0&&#[]>0&&#[]>0&&#[]>0&&#[]>0&&#[]>0)&]

wayne 发表于 2011-2-26 23:17:30

4# mathematica a=List@ToRules@Reduce[{x^2 + y^3 == 1, x^4 + y^4 == 2}, {x, y}, Reals]N[{x, y} //. a, 40]

wayne 发表于 2011-2-26 23:20:52

8# mathematica aa=List@ToRules@Reduce[{x^2 + c^2 == 4^2, y^2 + c^2 == 5^2, 2/x == b/c, 2/y == a/c, a + b == c}, {a, b, c, x, y}, Reals]N[{a, b, c, x, y} //. aa, 20]

wayne 发表于 2011-2-26 23:21:47

如果是Mathematica 8的话,还简单些,直接用SolveNSolve[{x^2 + c^2 == 4^2, y^2 + c^2 == 5^2, 2/x == b/c, 2/y == a/c, a + b == c}, {a, b, c, x, y}, Reals, WorkingPrecision -> 60]

mathematica 发表于 2011-2-27 12:03:50

如果是Mathematica 8的话,还简单些,直接用SolveNSolve[{x^2 + c^2 == 4^2, y^2 + c^2 == 5^2, 2/x == b/c, 2/y == a/c, a + b == c}, {a, b, c, x, y}, Reals, WorkingPrecision -> 60]
wayne 发表于 2011-2-26 23:21 http://bbs.emath.ac.cn/images/common/back.gif

我觉得mathematica有不如maple的地方,maple这个功能早就有了,
mathematica到了8才有这个功能,当然maple在群论这方面似乎也
比mathematica好。

mathematica 发表于 2011-2-27 12:58:33

既然把我屏蔽了,我只好把我以前的代码重新发一下了:
(*清除所有变量*)
Clear["Global`*"];
(*求解方程,并得到10位有效数字*)
eq1=NSolve[{x^2+c^2==4^2,y^2+c^2==5^2,
            2/x==b/c,2/y==a/c,
            a+b==c},{a,b,c,x,y},10]
(*只保留数据,去掉变量符号*)
eq2={a,b,c,x,y}/.eq1
(*根根据虚部都等于零的结果*)
eq3=Select=={0,0,0,0,0}&]
(*提取结果都大于零的结果*)
eq4=Select]>0&&#[]>0&&#[]>0&&#[]>0&&#[]>0&&#[]>0)&]
页: 1 [2]
查看完整版本: 如何用mathematica得到方程组的实数根?