Question: How isolate linear and non linear which contain conjugate part in equation?

is easy to determine the linear and non linear part but how we can do it by command specially when contain conjugate part of function even i try to use another function instead of conjugate but stil i didn't got  the result?

restart

with(inttrans)

with(PDEtools)

with(DEtools)

with(DifferentialAlgebra)

"with(Student[ODEs][Solve]): "

with(IntegrationTools)

with(inttrans)

with(PDEtools)

with(Physics)

with(PolynomialTools)

with(RootFinding)

with(SolveTools)

with(LinearAlgebra)

with(sumtools)

declare(u(x, t))*conjugate(u(x, t))*declare(v(x, t))

u(x, t)*`will now be displayed as`*u

 

v(x, t)*`will now be displayed as`*v

 

conjugate(u(x, t))

(1)

pde := u(x, t)+I*(diff(u(x, t), `$`(x, 2)))+2*(diff(u(x, t)*conjugate(u(x, t)), x))*u(x, t)+u(x, t)^2*conjugate(u(x, t))^2*u(x, t) = 0

u(x, t)+I*(diff(diff(u(x, t), x), x))+2*((diff(u(x, t), x))*conjugate(u(x, t))+u(x, t)*(diff(conjugate(u(x, t)), x)))*u(x, t)+u(x, t)^3*conjugate(u(x, t))^2 = 0

(2)

pde_linear, pde_nonlinear := selectremove(proc (term) options operator, arrow; not has((eval(term, u(x, t) = T*u(x, t)))/T, T) end proc, expand(pde))

() = 0, u(x, t)+I*(diff(diff(u(x, t), x), x))+2*u(x, t)*(diff(u(x, t), x))*conjugate(u(x, t))+2*u(x, t)^2*(diff(conjugate(u(x, t)), x))+u(x, t)^3*conjugate(u(x, t))^2 = ()

(3)

u_occurrences := map(proc (i) options operator, arrow; numelems(select(has, [op([op(i)])], u)) end proc, oppde); linear_op_indices := ListTools:-SearchAll(1, u_occurrences); pde_linear := add(oppde[[linear_op_indices]]); pde_nonlinear := expand(simplify(expand(pde)-pde_linear))

Error, invalid input: ListTools:-SearchAll expects its 2nd argument, L, to be of type {list, rtable}, but received 0

 

[linear_op_indices]

 

Error, (in simpl/relopsum) invalid terms in sum: u(x,t)+I*diff(diff(u(x,t),x),x)+2*u(x,t)*diff(u(x,t),x)*conjugate(u(x,t))+2*u(x,t)^2*diff(conjugate(u(x,t)),x)+u(x,t)^3*conjugate(u(x,t))^2 = 0

 
 

NULL

Download solving.mw

Please Wait...