restart;read("Jets.s");Variablescoordinates([t,x], [u], 5);jet(u,t);jet(u,x^3*t);jet(u,x^4*t);jet(u,x^7);jet(u,x*t)-jet(u,t*x);u_xt-u_tx;seq(jet(u,x^i), i=1..5);Total and partial derivativesTotal derivatives: TDTD(f,x), TD(f,x^3*t);Total derivatives TD are true di\357\254\200erentiations and accept any algebraic expression as the \357\254\201rst argument. They are linear, and satisfy the Leibniz rule as well as the chain rule:TD(f + g, x); TD(f*g, x); TD(sin(f), x);Jets does not automatically evaluate total derivatives of functions, the evaluation of total derivatives can be forced:dependence(f(t,x,u,u_x));TD(f,x);evalTD(TD(f,x));Partial derivatives: pdpd(g,x*u_x^2);Partial derivatives of total derivativespd(TD(f,x),u_xx);pd(TD(f,x),u_x);pd(TD(f,x^2),u_xx);ConversionsTDLet us verify thata := 2*k*(sech((k)^(1/2)*(x + 4*k*t)))^2; is a solution of the KdV equationKdV := -u_t + u_xxx + 6*u*u_x;subs(u = a, KdV);dependence(k());subs(u = a, KdV);Problem: The procedure jet requires its \357\254\201rst argument to be a \357\254\201bre variable!Solution: The procedure convert(expression, TD )e\357\254\200ectively replaces u with a, jet(u,x) with TD(a,x), etc:convert(KdV, TD, u = a);simpl(%);simplify(%);pdE := evalTD(TD(f,x));F := convert(E, diff, u_x=u1, u_xx=u2);lprint(F);pdsolve(F);The additional arguments indicate a substitution to be applied to jet variables (recall that jet variables are unevaluated function calls while diff requires the indeterminates to be names).G := convert(E, diff);lprint(G);pdsolve(G);lprint(convert(E, diff));Diff(a,u_x,u_x,u_xx) - pd(a, u_x^2*u_xx);