weights
reorg
etc
differentiable at boundaries
cleanup
mv
messing with sympy
sqp