feiyuzhen 发表于 2011-7-9 11:53:21

从列表中挑选具有共同属性的元素

现有一多项式的根组成的列表,如何挑出位于复平面第一象限的根?
查了下select命令,没搞明白类型的应用

maplelab 发表于 2011-7-9 13:59:57

应该是这样吧.

restart;
f:=add(x^i,i in [$0..10]);
sol:=:
Vector(sol);

f:=1+x+x^2+x^3+x^4+x^5+x^6+x^7+x^8+x^9+x^10

-0.95949297361-0.28173255684*I
-0.95949297361+0.28173255684*I
-0.65486073395-0.75574957435*I
-0.65486073395+0.75574957435*I
-0.14231483827-0.98982144188*I
-0.14231483827+0.98982144188*I
+0.41541501300-0.90963199535*I
+0.41541501300+0.90963199535*I
+0.84125353283-0.54064081746*I
+0.84125353283+0.54064081746*I

<select(x->Re(x)>=0 and Im(x)>=0,sol)>;

+0.41541501300+0.90963199535*I
+0.84125353283+0.54064081746*I

feiyuzhen 发表于 2011-7-9 16:32:07

多谢斑竹,
我试了另外一个,好像也可以
remove(has,[],indets([],negative))

maplelab 发表于 2011-7-9 18:05:30

这样更简单:remove(hastype,sol,negative);

feiyuzhen 发表于 2011-7-9 21:11:30

明白了,多谢
页: [1]
查看完整版本: 从列表中挑选具有共同属性的元素