matlab求极值点结果过于复杂,请问可否整理结果为多项式相乘形式

求pi1对u的极值解

clear all;
clc;
syms a b  ct cs  w u 
p1 = (a*(1-w*u)+b*cs*(1+w*(1-u))-b*ct*(1-w*u))/(2*b*(1-w*u)*(1+w*(1-u)));
p2 = (a+b*(p1+ct+p1*w*(1-u)))/(2*b);
p = (b*p2+a)/2*b;
q = a-b*p;
pi1 = q*(p1-cs-p1*w*u);
pi2 = q*(p2-p1-ct-p1*w*(1-u));
pi3 = q*(p-p2);
f = diff(pi1,'u',1);
v = solve(f == 0,u);
simple_v = simplify(v);
pretty(simple_v)

运行结果

img

请问为什么输出的是两个相等的数,如何将这个结果整理的更简洁,因为要放到论文里