Wolfram mathematica 在使用Mathematica求解整数方程时,如何将所有系数设置为正?
给定一个向量a=[a_1,a_2,a_3,…,a_n],其中a_i现在是整数 解方程Wolfram mathematica 在使用Mathematica求解整数方程时,如何将所有系数设置为正?,wolfram-mathematica,integer,equation,Wolfram Mathematica,Integer,Equation,给定一个向量a=[a_1,a_2,a_3,…,a_n],其中a_i现在是整数 解方程 ∑a_i x_i=0,x_i>=0,x_i为整数 使用Mathematica,我们可以编写如下代码 Solve[A.表[x[i],{i,n}]=0&&Table[x[i]>0,{i,n}],整数] 但是上面的条件Table[x[i]>0没有正确编码。它应该是x[1]>0&&x[2]>0&&x[3]>0&&x[n]>0。有没有简单的方法来编写这样的代码?你不想用解,因为Reduce可以处理不等式。至于把Table
∑a_i x_i=0
,x_i>=0,x_i为整数
使用Mathematica,我们可以编写如下代码
Solve[A.表[x[i],{i,n}]=0&&Table[x[i]>0,{i,n}],整数]
但是上面的条件Table[x[i]>0
没有正确编码。它应该是x[1]>0&&x[2]>0&&x[3]>0&&x[n]>0
。有没有简单的方法来编写这样的代码?你不想用解
,因为Reduce
可以处理不等式。至于把Table[x[i]>0,{i,n}
转换成x[1]>0&&…&&x[n]>0
这很简单:
And @@ Table[x[i] > 0, {i, n}]
它使用(@
)的缩写形式
进入
或者,更直观地说
x[1] > 0 && ... && x[n] > 0
你需要使用notSolve
,因为Reduce
可以处理不等式。至于将表[x[i]>0,{i,n}]
转换为x[1]>0&&…&&x[n]>0
,这很简单:
And @@ Table[x[i] > 0, {i, n}]
它使用(@
)的缩写形式
进入
或者,更直观地说
x[1] > 0 && ... && x[n] > 0