Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

Hello, can somebody give some suggestions to speed up this summations? I am summing up to 10 and it take ages (about 10min).

Digits := 10;
n1 := 122;
x := 54;
n2 := 65;
y := 14;
alpha1 := 1.1;
beta1 := 1.1;
alpha2 := 1.1;
beta2 := 1.1;

Sigma2 := (j, l, psi0) -> Sum(Sum(Sum(psi0^(-y - alpha2 - l - alpha2*h - v)*pochhammer(beta2 - 1, h)*pochhammer(beta1 - 1, u)*pochhammer(y + alpha2 + l + alpha2*h, v)*2^(-y - alpha2 - l - alpha2*h - x - alpha1 - j - alpha1*u - v)*(psi0 - 1)^v/(h!*(y + alpha2 + l + alpha2*h)*u!*v!*(y + alpha2 + l + alpha2*h + x + alpha1 + j + alpha1*u + v)), u = 0 .. upto), h = 0 .. upto), v = 0 .. upto);

F2 := psi0 -> Sum(binomial(n1 - x, j)*Sum(binomial(n2 - y, l)*(-1)^(j + l)*Sigma2(j, l, psi0), l = 0 .. n2 - y), j = 0 .. n1 - x);

upto:=10;

F2(5.620);

Thanks in advance.

Found this old procedure code and revived it
Trying to include an Exploreplot as well
a0,a1,a2,b1,b2 are coeifficents in a ode to construct 
How about odetype when constructing a ode is this correct in code?


 

restart;

Odegenerator := proc(V, x, y, df, const_values)
    local input_args, xi, F, result, a0, a1, a2, b0, b1, sol, Fsol, rows, numrows, eq, count, odeplot_cmd, ode_type, row_number, values;
    uses plots, PDEtools;
       if nargs = 1 and V = "help" then
        printf("Use this procedure as follows:\n");
        printf("Define an ODE template:\n");
        printf("Odegenerator(V, x, y, df, const_values)\n");
        printf("V: A set of values for iteration over constants (if df > 0)\n");
        printf("x: The independent variable\n");
        printf("y: The function\n");
        printf("df: The row number in the DataFrame or 0 for manual input\n");
        printf("const_values: A list of values for the constants (used if df = 0)\n");
        return;
    end if;

    if nargs < 4 or nargs > 5 then
        error "Incorrect number of arguments. Expected: V, x, y, df, [const_values (optional)]";
    end if;

    # Determine the ODE type using odeadvisor for the global eq_template
    ode_type := odeadvisor(eq_template);

    # Display the ODE and its type
    print(eq_template, ode_type);

    rows := [];
    count := 0;
    ###################### BOF manuele invoer ###################
    if df = 0 then
    # If df = 0, use const_values for substitution
    if nargs < 5 or not type(const_values, list) then
        error "When df = 0, a list of constant values must be provided as the fifth argument.";
    end if;

    # Assign constant values
    if nops(const_values) <> 5 then
        error "The list of constant values must contain exactly 5 elements.";
    end if;

    # Find the corresponding row number by unique identification
    count := 1;
    for a0 in V do
        for a1 in V do
            for a2 in V do
                for b0 in V do
                    for b1 in V do
                        if [a0, a1, a2, b0, b1] = const_values then
                            row_number := sprintf("%d", count);  # Convert to string
                        end if;
                        count := count + 1;
                    end do;
                end do;
            end do;
        end do;
    end do;

    if not assigned(row_number) then
        row_number := "Unique (outside iterative rows)";  # Mark as unique
    end if;

    # Substitute the given values
    eq := subs({'a__0' = const_values[1], 'a__1' = const_values[2], 'a__2' = const_values[3], 'b__0' = const_values[4], 'b__1' = const_values[5]}, eq_template);

    # Solve the equation
    sol := dsolve(eq, y(x));
    if type(sol, `=`) then
        Fsol := rhs(sol);
    else
        Fsol := "No explicit solution";
    end if;

    # Display the solution and its row number
    odeplot_cmd := DEtools[DEplot](eq, y(x), x = 0 .. 2, y = -10 .. 10, [[y(0) = 1]]);
    print(plots:-display(odeplot_cmd, size = [550, 550]));

    printf("The found function is:\n");
    print(Fsol);
    printf("The corresponding row number is: %s\n", row_number);

    # -- Start of Additional Functionality --
    # Optionally display the simplified ODE
    printf("The simplified ODE using the given coefficients is:\n");
    print(eq, ode_type);
    # -- End of Additional Functionality --

    return Fsol;
     ################# EOF manuele berekening ##################
     ############## BOF iterative berekening##############
    else
        # Iterative approach for DataFrame generation
        for a0 in V do
            for a1 in V do
                for a2 in V do
                    for b0 in V do
                        for b1 in V do
                            xi := x;
                            F := y;

                            # Substitute constant values into the ODE
                            eq := subs({'a__0' = a0, 'a__1' = a1, 'a__2' = a2, 'b__0' = b0, 'b__1' = b1}, eq_template);

                            sol := dsolve(eq, F(xi));
                            if type(sol, `=`) then
                                Fsol := rhs(sol);
                            else
                                Fsol := "No explicit solution";
                            end if;

                            rows := [op(rows), [a0, a1, a2, b0, b1, Fsol]];
                        end do;
                    end do;
                end do;
            end do;
        end do;

        numrows := nops(rows);
        result := DataFrame(Matrix(numrows, 6, rows), columns = ['a__0', 'a__1', 'a__2', 'b__0', 'b__1', y(x)]);

        interface(rtablesize = numrows + 10);

        if df > 0 and df <= numrows then
            a0 := result[df, 'a__0'];
            a1 := result[df, 'a__1'];
            a2 := result[df, 'a__2'];
            b0 := result[df, 'b__0'];
            b1 := result[df, 'b__1'];

            eq := subs({'a__0' = a0, 'a__1' = a1, 'a__2' = a2, 'b__0' = b0, 'b__1' = b1}, eq_template);

            # Display the additional parameters
            print(eq, ode_type, [df], [a0, a1, a2, b0, b1]);

            # Retrieve the solution
            Fsol := result[df, y(x)];

            # Display the solution in DEplot
            odeplot_cmd := DEtools[DEplot](eq, y(x), x = 0 .. 2, y = -10 .. 10, [[y(0) = 1]]);
            print(plots:-display(odeplot_cmd, size = [550, 550]));

            printf("The found function for row number %d is:\n", df);
            print(Fsol);

        else
            printf("The specified row (%d) is out of bounds for the DataFrame.\n", df);
        end if;

        return result;
     ########## EOF iteratief bwrekening ########################
    end if;

end proc:


# Test cases
V := {0, 1};
eq_template := diff(y(t), t) = 'a__0'*sin(t) + 'a__1'*y(t) + 'a__2'*y(t)^2 + 'b__0'*exp(-t);



 

{0, 1}

 

diff(y(t), t) = a__0*sin(t)+a__1*y(t)+a__2*y(t)^2+b__0*exp(-t)

(1)

 

 

# Iterative test
result := Odegenerator(V, t, y, 25);

diff(y(t), t) = a__0*sin(t)+a__1*y(t)+a__2*y(t)^2+b__0*exp(-t), odeadvisor(diff(y(t), t) = a__0*sin(t)+a__1*y(t)+a__2*y(t)^2+b__0*exp(-t))

 

diff(y(t), t) = sin(t)+y(t), odeadvisor(diff(y(t), t) = a__0*sin(t)+a__1*y(t)+a__2*y(t)^2+b__0*exp(-t)), [25], [1, 1, 0, 0, 0]

 

 

The found function for row number 25 is:

 

-(1/2)*cos(t)-(1/2)*sin(t)+c__1*exp(t)

 

module DataFrame () description "two-dimensional rich data container"; local columns, rows, data, binder; option object(BaseDataObject); end module

(2)

 

# Manual input test
Odegenerator(V, t, y, 0, [1, 1, 0, 0, 0]); #0 after y is rownumber = 0 and [1, 1, 0, 0, 0] are coeifficents

diff(y(t), t) = a__0*sin(t)+a__1*y(t)+a__2*y(t)^2+b__0*exp(-t), odeadvisor(diff(y(t), t) = a__0*sin(t)+a__1*y(t)+a__2*y(t)^2+b__0*exp(-t))

 

 

The found function is:

 

-(1/2)*cos(t)-(1/2)*sin(t)+c__1*exp(t)

 

The corresponding row number is: 25
The simplified ODE using the given coefficients is:

 

diff(y(t), t) = sin(t)+y(t), odeadvisor(diff(y(t), t) = a__0*sin(t)+a__1*y(t)+a__2*y(t)^2+b__0*exp(-t))

 

-(1/2)*cos(t)-(1/2)*sin(t)+c__1*exp(t)

(3)
 

 

 


Download ODEGENERATORFUNCTIE_opgepakt-uitgebreid_naar_MprimesDEF_14-1-2025.mw

How do I generate a plot within a plot as shown in my example below? The fundemental issue is plot structures like Histogram() etc are not images and so combining them in the way I imagine is non-trivial. I couldn't find a standard way to do this in the help section.

Plot_within_a_plot.mw

restart

NULL``

with(plots)

NULL

Consider the two plots p1 and p2.

NULL

p1 := plot(sin(x), size = [300, 300])

 

p2 := plot(sin(x), view = [0 .. Pi, .5 .. 1], size = [300, 300], axes = boxed)

 

NULL

How do I generate a plot within a plot as shown below, if I calculated the plots ahead of time? Is there a standard way to do this?

NULL

NULL

NULL

Download Plot_within_a_plot.mw

Is there an easy way to get the midpoint and distance in maple?

Thanks in advance.

Distance and Midpoint

 

 

Table 1: Key Skills

NULLdmf1 := [-3, 1]

[-3, 1]

(1)

dmf2 := [3, 2]

[3, 2]

(2)

dmf3 := [-2, -3]

[-2, -3]

(3)

dmf4 := [3, -2]

[3, -2]

(4)

dmf := [dmf1, dmf2, dmf3, dmf4]

[[-3, 1], [3, 2], [-2, -3], [3, -2]]

(5)

plot(dmf)

 

NULL

dme1a1 := [1, 3]

[1, 3]``

(6)

dme1a2 := [5, 6]

[5, 6]

(7)

dme1a3 := [5, 3]

[5, 3]

(8)

dme1 := [dme1a1, dme1a2, dme1a3]

[[1, 3], [5, 6], [5, 3]]

(9)

plot(dme1)

 

NULL

``

NULL

NULL

NULL

NULL

NULL

NULL

NULL

Download 2.1-Distance_and_Midpoint.mw

Hello everyone, I am facing problem to solve a system of partial differential equations of f, g & q in three variables x,y,t. I have attached the maple file and also a page that i am exploring, in attcahed page I need to find results given in (7) and (8). Maple file is also attached below, please help me to solve this system of PDEs for required results given in (7) and (8). Thanks
 


 

Download PDEs_system_solution.mw

restart

with(PDEtools):

alias(u = u(x, y, t), f = f(x, y, t), g = g(x, y, t), q = q(x, y, t))

u, f, g, q

(1)

eq1 := 24*g*(diff(q, y))*(diff(q, x))^3-12*(diff(q, y))*(diff(q, x))^2*g^2 = 0

24*g*(diff(q, y))*(diff(q, x))^3-12*(diff(q, y))*(diff(q, x))^2*g^2 = 0

(2)

eq2 := 60*g*sigma*(diff(q, y))*(diff(q, x))^3-30*sigma*(diff(q, y))*(diff(q, x))^2*g^2+18*(diff(g, x))*(diff(q, y))*(diff(q, x))^2-15*(diff(q, y))*(diff(q, x))*(diff(g, x))*g+18*g*(diff(q, y))*(diff(q, x))*(diff(q, x, x))-3*(diff(q, y))*g^2*(diff(q, x, x))+6*(diff(g, y))*(diff(q, x))^3+18*g*(diff(q, x))^2*(diff(q, y, x))-9*(diff(g, y))*g*(diff(q, x))^2-3*g^2*(diff(q, x))*(diff(q, y, x)) = 0

60*g*sigma*(diff(q, y))*(diff(q, x))^3-30*sigma*(diff(q, y))*(diff(q, x))^2*g^2+18*(diff(g, x))*(diff(q, y))*(diff(q, x))^2-15*(diff(q, y))*(diff(q, x))*(diff(g, x))*g+18*g*(diff(q, y))*(diff(q, x))*(diff(diff(q, x), x))-3*(diff(q, y))*g^2*(diff(diff(q, x), x))+6*(diff(g, y))*(diff(q, x))^3+18*g*(diff(q, x))^2*(diff(diff(q, x), y))-9*(diff(g, y))*g*(diff(q, x))^2-3*g^2*(diff(q, x))*(diff(diff(q, x), y)) = 0

(3)

eq3 := 36*g*sigma*(diff(q, y))*(diff(q, x))*(diff(q, x, x))-27*sigma*(diff(q, y))*(diff(q, x))*(diff(g, x))*g-3*(diff(q, y))*(diff(g, x))^2+6*(diff(g, y, x))*(diff(q, x))^2-9*(diff(g, y))*(diff(g, x))*(diff(q, x))+2*g*(diff(q, y))*(diff(q, t))+2*g*(diff(q, y))*(diff(q, x, x, x))-6*(diff(f, y))*(diff(q, x))^2*g+12*(diff(g, y))*sigma*(diff(q, x))^3+6*(diff(g, x))*(diff(q, y))*(diff(q, x, x))-3*(diff(q, y, x))*(diff(g, x))*g-3*(diff(q, y))*(diff(g, x, x))*g+6*(diff(q, y))*(diff(g, x, x))*(diff(q, x))-3*(diff(q, x, x))*(diff(g, y))*g-3*g*(diff(q, x))*(diff(g, y, x))+12*(diff(q, x))*(diff(g, x))*(diff(q, y, x))+6*g*(diff(q, y, x))*(diff(q, x, x))+6*(diff(q, x))*g*(diff(q, y, x, x))+6*(diff(g, y))*(diff(q, x))*(diff(q, x, x))-6*sigma*(diff(q, x))*(diff(q, y, x))*g^2+50*g*sigma^2*(diff(q, y))*(diff(q, x))^3-24*sigma^2*(diff(q, y))*(diff(q, x))^2*g^2+36*(diff(g, x))*sigma*(diff(q, y))*(diff(q, x))^2-15*(diff(q, x))^2*sigma*(diff(g, y))*g-6*(diff(f, x))*(diff(q, y))*(diff(q, x))*g-6*sigma*(diff(q, y))*(diff(q, x, x))*g^2+36*g*sigma*(diff(q, x))^2*(diff(q, y, x)) = 0

50*g*sigma^2*(diff(q, y))*(diff(q, x))^3-24*sigma^2*(diff(q, y))*(diff(q, x))^2*g^2+36*(diff(g, x))*sigma*(diff(q, y))*(diff(q, x))^2-15*(diff(q, x))^2*sigma*(diff(g, y))*g-6*(diff(f, x))*(diff(q, y))*(diff(q, x))*g-6*sigma*(diff(q, x))*(diff(diff(q, x), y))*g^2-6*sigma*(diff(q, y))*(diff(diff(q, x), x))*g^2+36*g*sigma*(diff(q, x))^2*(diff(diff(q, x), y))-3*(diff(q, y))*(diff(g, x))^2+6*(diff(diff(g, x), y))*(diff(q, x))^2+6*(diff(g, y))*(diff(q, x))*(diff(diff(q, x), x))+6*(diff(g, x))*(diff(q, y))*(diff(diff(q, x), x))-3*(diff(diff(q, x), y))*(diff(g, x))*g-3*(diff(q, y))*(diff(diff(g, x), x))*g+6*(diff(q, y))*(diff(diff(g, x), x))*(diff(q, x))-3*(diff(diff(q, x), x))*(diff(g, y))*g-3*g*(diff(q, x))*(diff(diff(g, x), y))+12*(diff(q, x))*(diff(g, x))*(diff(diff(q, x), y))+6*g*(diff(diff(q, x), y))*(diff(diff(q, x), x))+6*(diff(q, x))*g*(diff(diff(diff(q, x), x), y))+2*g*(diff(q, y))*(diff(diff(diff(q, x), x), x))+2*g*(diff(q, y))*(diff(q, t))+12*(diff(g, y))*sigma*(diff(q, x))^3-9*(diff(g, y))*(diff(g, x))*(diff(q, x))-6*(diff(f, y))*(diff(q, x))^2*g-27*sigma*(diff(q, y))*(diff(q, x))*(diff(g, x))*g+36*g*sigma*(diff(q, y))*(diff(q, x))*(diff(diff(q, x), x)) = 0

(4)

eq4 := -3*g*(diff(f, y))*(diff(q, x, x))-3*(diff(q, y))*g*(diff(f, x, x))-3*g*(diff(q, x))*(diff(f, y, x))-3*g*(diff(q, y, x))*(diff(f, x))+15*g*sigma^3*(diff(q, y))*(diff(q, x))^3-6*sigma^3*(diff(q, y))*(diff(q, x))^2*g^2+21*(diff(g, x))*sigma^2*(diff(q, y))*(diff(q, x))^2-6*(diff(q, x))^2*sigma^2*(diff(g, y))*g-9*(diff(f, y))*(diff(q, x))^2*sigma*g+3*g*sigma*(diff(q, y))*(diff(q, t))-9*sigma*(diff(q, x))*(diff(g, x))*(diff(g, y))+9*(diff(g, y, x))*sigma*(diff(q, x))^2+7*(diff(g, y))*sigma^2*(diff(q, x))^3-3*sigma*(diff(q, y))*(diff(g, x))^2-6*(diff(g, x))*(diff(q, x))*(diff(f, y))-3*(diff(q, y))*(diff(g, x))*(diff(f, x))-3*(diff(g, y))*(diff(q, x))*(diff(f, x))-3*(diff(g, y, x))*(diff(g, x))-3*(diff(g, x, x))*(diff(g, y))+g*(diff(q, y, t))+9*g*sigma*(diff(q, y, x))*(diff(q, x, x))-3*sigma*(diff(q, x, x))*(diff(g, y))*g+9*sigma*(diff(q, x))*g*(diff(q, y, x, x))-3*sigma*(diff(q, y, x))*(diff(g, x))*g-3*sigma*(diff(q, x))*(diff(g, y, x))*g+9*(diff(g, y))*sigma*(diff(q, x))*(diff(q, x, x))+9*(diff(g, x))*sigma*(diff(q, y))*(diff(q, x, x))+3*g*sigma*(diff(q, y))*(diff(q, x, x, x))+18*sigma*(diff(q, x))*(diff(g, x))*(diff(q, y, x))+21*g*sigma^2*(diff(q, x))^2*(diff(q, y, x))-3*sigma^2*(diff(q, x))*(diff(q, y, x))*g^2+9*sigma*(diff(q, y))*(diff(g, x, x))*(diff(q, x))-3*sigma*(diff(q, y))*(diff(g, x, x))*g-3*sigma^2*(diff(q, y))*(diff(q, x, x))*g^2+21*g*sigma^2*(diff(q, y))*(diff(q, x))*(diff(q, x, x))-9*(diff(f, x))*(diff(q, y))*(diff(q, x))*sigma*g-12*sigma^2*(diff(q, y))*(diff(q, x))*(diff(g, x))*g+(diff(q, y))*(diff(g, t))+(diff(g, y))*(diff(q, t))+3*(diff(g, x, x))*(diff(q, y, x))+(diff(q, y))*(diff(g, x, x, x))+3*(diff(q, x))*(diff(g, y, x, x))+(diff(q, y, x, x, x))*g+3*(diff(g, x))*(diff(q, y, x, x))+(diff(g, y))*(diff(q, x, x, x))+3*(diff(g, y, x))*(diff(q, x, x)) = 0

7*(diff(g, y))*sigma^2*(diff(q, x))^3-3*sigma*(diff(q, y))*(diff(g, x))^2-6*(diff(g, x))*(diff(q, x))*(diff(f, y))-3*(diff(q, y))*(diff(g, x))*(diff(f, x))-3*(diff(g, y))*(diff(q, x))*(diff(f, x))-3*(diff(q, y))*g*(diff(diff(f, x), x))-3*g*(diff(q, x))*(diff(diff(f, x), y))-3*g*(diff(f, y))*(diff(diff(q, x), x))-3*g*(diff(diff(q, x), y))*(diff(f, x))+9*(diff(diff(g, x), y))*sigma*(diff(q, x))^2+15*g*sigma^3*(diff(q, y))*(diff(q, x))^3-6*sigma^3*(diff(q, y))*(diff(q, x))^2*g^2+21*(diff(g, x))*sigma^2*(diff(q, y))*(diff(q, x))^2-6*(diff(q, x))^2*sigma^2*(diff(g, y))*g-9*(diff(f, y))*(diff(q, x))^2*sigma*g+3*g*sigma*(diff(q, y))*(diff(q, t))-9*sigma*(diff(q, x))*(diff(g, x))*(diff(g, y))+9*g*sigma*(diff(diff(q, x), y))*(diff(diff(q, x), x))-3*sigma*(diff(diff(q, x), x))*(diff(g, y))*g+9*sigma*(diff(q, x))*g*(diff(diff(diff(q, x), x), y))-3*sigma*(diff(diff(q, x), y))*(diff(g, x))*g-3*sigma*(diff(q, x))*(diff(diff(g, x), y))*g+9*(diff(g, y))*sigma*(diff(q, x))*(diff(diff(q, x), x))+9*(diff(g, x))*sigma*(diff(q, y))*(diff(diff(q, x), x))+3*g*sigma*(diff(q, y))*(diff(diff(diff(q, x), x), x))+18*sigma*(diff(q, x))*(diff(g, x))*(diff(diff(q, x), y))+21*g*sigma^2*(diff(q, x))^2*(diff(diff(q, x), y))-3*sigma^2*(diff(q, x))*(diff(diff(q, x), y))*g^2+9*sigma*(diff(q, y))*(diff(diff(g, x), x))*(diff(q, x))-3*sigma*(diff(q, y))*(diff(diff(g, x), x))*g-3*sigma^2*(diff(q, y))*(diff(diff(q, x), x))*g^2-9*(diff(f, x))*(diff(q, y))*(diff(q, x))*sigma*g-12*sigma^2*(diff(q, y))*(diff(q, x))*(diff(g, x))*g+21*g*sigma^2*(diff(q, y))*(diff(q, x))*(diff(diff(q, x), x))+(diff(q, y))*(diff(g, t))+(diff(g, y))*(diff(q, t))-3*(diff(diff(g, x), y))*(diff(g, x))-3*(diff(diff(g, x), x))*(diff(g, y))+g*(diff(diff(q, t), y))+3*(diff(diff(g, x), x))*(diff(diff(q, x), y))+(diff(q, y))*(diff(diff(diff(g, x), x), x))+3*(diff(q, x))*(diff(diff(diff(g, x), x), y))+(diff(diff(diff(diff(q, x), x), x), y))*g+3*(diff(g, x))*(diff(diff(diff(q, x), x), y))+(diff(g, y))*(diff(diff(diff(q, x), x), x))+3*(diff(diff(g, x), y))*(diff(diff(q, x), x)) = 0

(5)

eq5 := (diff(g, y))*sigma*(diff(q, t))+(diff(g, t))*sigma*(diff(q, y))+(diff(g, y))*sigma^3*(diff(q, x))^3+3*(diff(g, x))*sigma^3*(diff(q, y))*(diff(q, x))^2+g*sigma^2*(diff(q, y))*(diff(q, t))+g*sigma^4*(diff(q, y))*(diff(q, x))^3-3*(diff(f, x))*sigma*(diff(q, y))*(diff(g, x))-3*(diff(f, x))*sigma*(diff(q, x))*(diff(g, y))-6*(diff(f, y))*sigma*(diff(q, x))*(diff(g, x))+3*g*sigma^3*(diff(q, x))^2*(diff(q, y, x))+g*sigma^2*(diff(q, y))*(diff(q, x, x, x))-3*(diff(f, x))*sigma*(diff(q, y, x))*g-3*(diff(f, y))*sigma*(diff(q, x, x))*g-3*g*sigma*(diff(q, y))*(diff(f, x, x))-3*sigma*(diff(q, x))*g*(diff(f, y, x))+3*(diff(g, x, x))*sigma^2*(diff(q, y))*(diff(q, x))+6*(diff(g, x))*sigma^2*(diff(q, x))*(diff(q, y, x))+diff(g, y, t)-3*(diff(f, x))*(diff(q, y))*(diff(q, x))*sigma^2*g+3*g*sigma^3*(diff(q, y))*(diff(q, x))*(diff(q, x, x))+3*g*sigma^2*(diff(q, x))*(diff(q, y, x, x))-3*(diff(f, y))*(diff(q, x))^2*sigma^2*g+3*(diff(g, y))*sigma^2*(diff(q, x))*(diff(q, x, x))+3*g*sigma^2*(diff(q, y, x))*(diff(q, x, x))+3*(diff(g, x))*sigma^2*(diff(q, y))*(diff(q, x, x))-3*(diff(g, y))*(diff(f, x, x))-3*(diff(f, y))*(diff(g, x, x))-3*(diff(g, x))*(diff(f, y, x))-3*(diff(f, x))*(diff(g, y, x))+diff(g, y, x, x, x)+3*(diff(g, y, x))*sigma^2*(diff(q, x))^2+3*(diff(g, x, x))*sigma*(diff(q, y, x))+3*(diff(g, y, x, x))*sigma*(diff(q, x))+(diff(g, x, x, x))*sigma*(diff(q, y))+g*sigma*(diff(q, y, t))+3*(diff(g, x))*sigma*(diff(q, y, x, x))+3*(diff(g, y, x))*sigma*(diff(q, x, x))+g*sigma*(diff(q, y, x, x, x))+(diff(g, y))*sigma*(diff(q, x, x, x)) = 0

(diff(g, t))*sigma*(diff(q, y))+(diff(g, y))*sigma^3*(diff(q, x))^3+(diff(g, y))*sigma*(diff(q, t))+3*(diff(diff(g, x), y))*sigma^2*(diff(q, x))^2+3*(diff(diff(g, x), x))*sigma*(diff(diff(q, x), y))+3*(diff(diff(diff(g, x), x), y))*sigma*(diff(q, x))+(diff(diff(diff(g, x), x), x))*sigma*(diff(q, y))+g*sigma*(diff(diff(q, t), y))+3*(diff(g, x))*sigma*(diff(diff(diff(q, x), x), y))+3*(diff(diff(g, x), y))*sigma*(diff(diff(q, x), x))+g*sigma*(diff(diff(diff(diff(q, x), x), x), y))+(diff(g, y))*sigma*(diff(diff(diff(q, x), x), x))-3*(diff(f, x))*(diff(q, y))*(diff(q, x))*sigma^2*g+3*g*sigma^3*(diff(q, y))*(diff(q, x))*(diff(diff(q, x), x))-3*(diff(f, y))*(diff(q, x))^2*sigma^2*g+6*(diff(g, x))*sigma^2*(diff(q, x))*(diff(diff(q, x), y))+3*g*sigma^2*(diff(q, x))*(diff(diff(diff(q, x), x), y))+3*(diff(g, y))*sigma^2*(diff(q, x))*(diff(diff(q, x), x))+3*g*sigma^2*(diff(diff(q, x), y))*(diff(diff(q, x), x))+3*(diff(g, x))*sigma^2*(diff(q, y))*(diff(diff(q, x), x))+3*g*sigma^3*(diff(q, x))^2*(diff(diff(q, x), y))+g*sigma^2*(diff(q, y))*(diff(diff(diff(q, x), x), x))-3*(diff(f, x))*sigma*(diff(diff(q, x), y))*g-3*(diff(f, y))*sigma*(diff(diff(q, x), x))*g-3*g*sigma*(diff(q, y))*(diff(diff(f, x), x))-3*sigma*(diff(q, x))*g*(diff(diff(f, x), y))+3*(diff(diff(g, x), x))*sigma^2*(diff(q, y))*(diff(q, x))+3*(diff(g, x))*sigma^3*(diff(q, y))*(diff(q, x))^2+g*sigma^2*(diff(q, y))*(diff(q, t))+g*sigma^4*(diff(q, y))*(diff(q, x))^3-3*(diff(f, x))*sigma*(diff(q, y))*(diff(g, x))-3*(diff(f, x))*sigma*(diff(q, x))*(diff(g, y))-6*(diff(f, y))*sigma*(diff(q, x))*(diff(g, x))+diff(diff(g, t), y)+diff(diff(diff(diff(g, x), x), x), y)-3*(diff(g, y))*(diff(diff(f, x), x))-3*(diff(f, y))*(diff(diff(g, x), x))-3*(diff(g, x))*(diff(diff(f, x), y))-3*(diff(f, x))*(diff(diff(g, x), y)) = 0

(6)

eq6 := -3*(diff(f, x))*(diff(f, y, x))-3*(diff(f, y))*(diff(f, x, x))+diff(f, y, x, x, x)+diff(f, y, t) = 0

-3*(diff(f, x))*(diff(diff(f, x), y))-3*(diff(f, y))*(diff(diff(f, x), x))+diff(diff(diff(diff(f, x), x), x), y)+diff(diff(f, t), y) = 0

(7)

pdsolve({eq1, eq2, eq3, eq4, eq5, eq6}, {f, g, q})

``

Download PDEs_system_solution.mw

Can maple simplify a Combined Inequality? At best it outputs imho a more complicated solution.

Thanks in Advance.

sl10 := -1 <= (3-5*x)*(1/2) and (3-5*x)*(1/2) <= 9

0 <= 5/2-(5/2)*x and -(5/2)*x <= 15/2

(1)

The output should be:

 

-3 <= x and x <= 1


Download Combined_Inequality.mw

Keywords: Intermediate axis theorem, Tennis racket theorem, Dzhanibekov effect, Coriolis force, Euler equations

In 1988 I witnesses the instability of the rotation about the intermediate axis of a foam brick.

Since then I have been fascinated by this effect. It was one of the many experiments which enriched a lecture series on kinetics and on that day Euler equations were on the agenda. Colored surfaces of the brick made it possible to observe the effect without micro gravity and slow-motion equipment.

This post is about reproducing an “intuitive” visualization of an explanation of the effect by Terry Tao from 2011 using 4 rigidly connected point masses. 8 years later the explanation was animated in a YouTube video (The Bizarre Behavior of Rotating Bodies) and considered to be the “best intuitive” explanation.

Motivated by the video, I wondered whether a similar animation with acting forces is possible with MapleSoft products and whether there might be a better intuitive explanation without the use of centrifugal forces. Initially I saw this more as a good test of MapleSim’s visualization capabilities. Finally, it took over 3 years and numerous attempts (mostly during vacation, kind of a substitute for drawing circles in the sand...) to come to a conclusion on the effect.

Intermediate_axis_theoreme_with_3_point_masses.msim


About the model:

Unlike the YouTube video, I decided to simulate 3 identical point masses because a 3-mass model fits better to a T-handle (overlayed in the animation above), video footage from space experiments and discussions in this forum (221298, 225760, 228066).

The movement of the model generates acceleration forces on each mass. The clip displays the corresponding opposing forces that act in the model (i.e. act on the massless T-structure). The blue mass, which is not perfectly centered on the axis of rotation at the start of the simulation perturbs the orbits of the red and the green masses. That was my initial intuitive attempt to explain the effect.

The 3 masses form an isosceles triangle. Here it is helpful to think of a rotating arrowhead where the shape determines stability of the rotation. The aspect ratio (the ratio of the height to the base length) of the triangle determines the stability of rotation about the mirror symmetry axis of the triangle (i.e. the symmetry axis of the T-structure). An obtuse triangle (“blunt”, aspect ratio < sqrt(3)/2) is unstable when rotating about an axis that is slightly inclined with respect to this axis of symmetry. The inclination can be in the plane of the triangle or out of plane. An acute (“pointy”) triangle only wobbles.

About the MapleSim model:

A supplementary rigid body component without mass and rotational inertia is used at the center of mass of the three masses to impose initial conditions. Rotating the triangle at the start of the simulation about the center of mass of the 3 masses prevents the triangle from drifting laterally away from its initial position. This effect of lateral drift is visible in video footage from space with the T-handle.

The rotational inertia of the other rigid body components is set to zero. Without rotational inertia it could be assumed that only Newtonian mechanics are used in the simulation (i.e. no Euler equations are integrated). This is however wrong. MapleSim generates automatically from a system with 3x6=18 coordinates a system with 3 Newtonian equations for translation and 3 Euler equations for rotation.

Forces and moments are measured with sensor components. Visualization is done with force and moment visualization components. These components are “abused” to display the following other physical quantities:

The angular momentum of the masses

The vectors of the angular velocity and the angular acceleration

Moments of the forces with respect to the center of mass

Moments of the forces with respect to the center of the base of the triangle

For a clean model, sensor components and mathematical components to calculate physical quantities are grouped in three subsystems (one per mass, indicated with a colored dot in the image below).

The model contains parameter sets for in plane and out of plane inclination of the axis of the T with respect to the initial axis of rotation (the x-axis).

Ein Bild, das Diagramm, Text, Screenshot, Plan enthält.

Automatisch generierte Beschreibung 

Visualization of physical components can be turned on by enabling the corresponding subsystems which are labeled accordingly (in the image above the display of the angular momentum is enabled). The subsystem “Verification” computes quantities that should either be conserved or should be equal to zero.  Calculation of quantities is done with MapleSim’s mathematical components (i.e. no embedded code or custom components are used).

 

Some observations

Kinetic energies are exchanged between the masses.  During a flip of the T (see animation above), the red and green masses “exchange” their energy. The blue mass mediates this exchange.  Depending on the initial conditions (in plane or out of plane), the energy of the red mass decreases first during the flip and the energy of the green mass increases (and vice versa, as seen below for the out of plane case which exhibits symmetric energy distributions).

Energy peaks are a good measure for the flip frequency. The frequency increases with the initial misalignment of the rotation axis to the symmetry axis of the T.

Ein Bild, das Text, Reihe, Diagramm, parallel enthält.

Automatisch generierte Beschreibung 

Tracing the blue perturbing mass reveals that the mass never gets closer to the (initial) rotation axis than its initial off-axis position.

Ein Bild, das Zeichnung, Kreis, Entwurf, Kunst enthält.

Automatisch generierte Beschreibung

The angular momenta of the masses vary, but the total angular momentum is, as expected, conserved. In the image below the angular momenta of the three masses are visualized to the left. The change of kinetic energy can be appreciated from the change in magnitude of the angular momenta.

The vector of the angular velocity (violet, at the origin) wobbles during the flip but does not flip direction. The vector of the angular acceleration (orange) rotates in the yz-plane

Forces act in the plane of the triangle. There is no component normal to the plane, as in the YouTube video, that could cause a flip. Thus, the displayed forces measured in the inertial reference frame do not provide an intuitive explanation why the flip occurs.

The same applies for the moments of the forces at the center of mass: They are perfectly balanced. There is no net component that could be attributed to an in-plane rotation.

 

Why are the animations different: Apparent vs. internal reactive forces.

The MapleSim animation shows internal reactive forces that illustrate the interplay of the moving masses which are bound to each other. They act in the model and obey actio = reactio, which means that the same vectors of opposite sign pull on the masses when the masses are isolated (they follow Newtons second law and equate to mass times the vector of acceleration; the last image in this post displays an isolated mass and the opposing force). 

On the contrary, the YouTube animation shows apparent forces (centrifugal forces) that appear when accelerations are described in a reference frame that moves (accelerates or rotates) with respect to the inertial reference frame. They look like external forces acting on the model, but they are not real. Since apparent forces are fictitious (not real), not everyone is satisfied with using them for an intuitive explanation.

 

Can the MapleSim animation be improved?

Calculation of apparent forces is possible but less straight forward for the simple reason that the Mathematical components library does not provide operators for coordinate transform and matrix multiplication. Those operators are normally not required for simulation purposes. (It would be interesting to see how calcualtion of apparent forces can be done in MapleSim. Verification of code implementation might not be as easy as in the inertial reference frame.)

What ultimately prevents a reproduction of the video is the observer/camera view that rotates with the model. This feature does not exist in the current version of MapleSim 2024. To reproduce the video, Maple has to be used. This would also make the implementation of the calculation of apparent forces much easier as compared to, for example, Modelica code implementation (at least for me).

 

Is the 3-mass model equally intuitive as a 4-mass model?

The initial idea was to have two orbiting masses that are perturbed by a third mass. The third mass flips like a pointer back and forth while the two masses still follow their orbit. This is in case of 3 identical masses only possible with a short-legged T as shown here:

Only a reduced mass would allow for a longer leg. Since the T has only one axis of symmetry, the two orbiting masses do not orbit in a plane. They perform a wobbling motion and shift laterally in position during a flip since the rotation is performed about the common center of mass. Only when 4 masses are used in a symmetrical cross configuration, two masses can orbit closer to a plane that contains the common center of mass while the two perturbing masses flip sides of the plane (the wobble is less pronounced but still visible by the enlarging blue trace in the animation below).

With a mass ratio of 1:100 in the animation below the two orbiting masses create kind of a centrifugal potential field in which the two perturbing masses swing like a pendulum. In this configuration the two perturbing masses can no longer be regarded as strongly disturbing, but rather as oscillating satellites. The sudden flip is created by the increasing accelerating field strength which increases with the distance from the axis of rotation. This lets a pendulum swing with a stronger than expected acceleration and is perhaps a new insight.

Both models represent the simplest possible implementation to generate the effect in terms of number of parameters. The 4-mass configuration has more objects but is simpler to understand because of the higher degree of symmetry.  Either identical masses at varying distances or identical distances at varying masses can be used in both models. No more reduction of parameters is possible to generate the effect. A two mass object cannot even wobble.

Out of plane initial inclination makes the acceptance of an explanation easier since the orbiting masses do not generate a momentum as in the case of an in plane inclination. For the latter case an intuitve explanation is more difficult and perhaps there is none.

Although the pendulum swing of the out of plane case might provide an intuitive explanation of the effect it is not fully satisfying. It does not explain why larger masses than the orbiting masses do not lead to a swing but smaller masses do. Another well-made video provides an explanation for that.

This newer video also gives an explanation why internal forces must act in the plane of the rotating object but does not display them in the animation. I guess this is because the introduction of real forces would have spoiled the intuitive explanation of the video. Isolating a mass and adding an internal force now as an external force leads to an equivalent system that reproduces the effect of the rotating object. If the same force is applied in the opposite direction on the isolated mass, the isolated mass moves along the same trajectory.

4_lumped_masses_and_one_single_force_driven_mass.msim

Isolating only one mass breakes the symmetry of the model. It also gives the false impression that the introduced perturbing force acts primarily on the opposite mass. A 3-mass model does not lead to such a false interpretation. By isolating the opposite mass and introducing a second perturbing force, the discussion shifts more to the analysis of the wobble and the rotational acceleration of the orbiting masses and less to the flip.

In summary, internal forces describe how the masses interact but their orientation is counterintuitively perpendicular to direction of the flip. On the other hand, centrifugal forces that we intuitively assume acting in a 4-mass model from the perspective of an observer from an inertial reference frame do not exist. This assumption provides an intuitive explanation which is physically wrong. In the same way an accelerating radial force field does not exist. Mathematically and physically correct is a description from a rotating observer which uses fictious forces.

For me both intuitive explanations of the videos are somehow useable, but both involve centrifugal forces (in one case explicitly and in the other wrongly assumed by an observer). This is not satisfying when the goal is not to use fictious forces.

Conclusion

MapleSim visualization components can be used for more than displaying forces and moments. They are very helpful to better understand physical phenomena.

A camera view observer on a rotating reference frame would have made observation of the direction of the internal forces much easier and might have given more insights. As of now, Maple is required to reproduce the animation in the video.

There is no better intuitive visualization/explanation with a model of 3 identical masses. A 4-mass configuration provides better insight but does not explain all.

In reality every freely rotating object with more than two point masses inevitably wobbles.

Here's a puzzle for geometry lovers. It has a very short manual solution, but it's not that easy to find. Of course, you can solve it in Maple using coordinates. You need to find the radius of these two identical circles.

I am using the tab key to complete commands. Often I have to add a module to the command. On my keyboard typing ":-" is slow (for me) and interrupts the flow. I was wondering whether there is not a undocumented key or shortcut to insert ":-".

(I tried a second time hitting tab but this did not do anything. Would this be a good way to speed up typing?)

I wanted to derive the q(w) term in the following expression to get ∂ f/∂q(w), but I got an error

every thing is correct but i dont know why my PDE is not be zero, i did by another way is satidy but i change whole equation by sabstitutiin then i did ode test is satisfy by putting case in equation and solution with condition but when i want to use pdetest  test in pde is not satisfy ?

restart

_local(gamma)

with(PDEtools)

NULL

undeclare(prime)

`There is no more prime differentiation variable; all derivatives will be displayed as indexed functions`

(1)

declare(Omega(x, t)); declare(U(xi)); declare(V(xi)); declare(Theta(x, t))

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

 

U(xi)*`will now be displayed as`*U

 

V(xi)*`will now be displayed as`*V

 

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

(2)

xi := -t*tau+x

-t*tau+x

(3)

NULL

NULL

lambda := -tau/c; epsilon := -tau/c; delta := (2*c^2-gamma*tau)/(gamma-2*tau)

-tau/c

 

-tau/c

 

(2*c^2-gamma*tau)/(gamma-2*tau)

(4)

NULL

case1 := [c = RootOf(-gamma^3*tau+2*_Z^2+2*gamma*tau-4*tau^2)/gamma, A[0] = 0, A[1] = RootOf(_Z^2*gamma+2*tau), B[1] = 0]

[c = RootOf(-gamma^3*tau+2*_Z^2+2*gamma*tau-4*tau^2)/gamma, A[0] = 0, A[1] = RootOf(_Z^2*gamma+2*tau), B[1] = 0]

(5)

K := Omega(x, t) = RootOf(_Z^2*gamma+2*tau)*tanh(xi)*exp(I*gamma*(delta*t+x))

Omega(x, t) = -RootOf(_Z^2*gamma+2*tau)*tanh(t*tau-x)*exp(I*gamma*((2*c^2-gamma*tau)*t/(gamma-2*tau)+x))

(6)

NULL

pde1 := I*(diff(Omega(x, t), `$`(t, 2))-c^2*(diff(Omega(x, t), `$`(x, 2))))+diff(U(-t*tau+x)^2*Omega(x, t), t)-lambda*c*(diff(U(-t*tau+x)^2*Omega(x, t), x))+(1/2)*(diff(Omega(x, t), `$`(x, 2), t))-(1/2)*epsilon*c*(diff(Omega(x, t), `$`(x, 3))) = 0

I*(diff(diff(Omega(x, t), t), t)-c^2*(diff(diff(Omega(x, t), x), x)))-2*U(-t*tau+x)*Omega(x, t)*(D(U))(-t*tau+x)*tau+U(-t*tau+x)^2*(diff(Omega(x, t), t))+tau*(2*U(-t*tau+x)*Omega(x, t)*(D(U))(-t*tau+x)+U(-t*tau+x)^2*(diff(Omega(x, t), x)))+(1/2)*(diff(diff(diff(Omega(x, t), t), x), x))+(1/2)*tau*(diff(diff(diff(Omega(x, t), x), x), x)) = 0

(7)

NULL

subs(case1, pde1)

I*(diff(diff(Omega(x, t), t), t)-RootOf(-gamma^3*tau+2*_Z^2+2*gamma*tau-4*tau^2)^2*(diff(diff(Omega(x, t), x), x))/gamma^2)-2*U(-t*tau+x)*Omega(x, t)*(D(U))(-t*tau+x)*tau+U(-t*tau+x)^2*(diff(Omega(x, t), t))+tau*(2*U(-t*tau+x)*Omega(x, t)*(D(U))(-t*tau+x)+U(-t*tau+x)^2*(diff(Omega(x, t), x)))+(1/2)*(diff(diff(diff(Omega(x, t), t), x), x))+(1/2)*tau*(diff(diff(diff(Omega(x, t), x), x), x)) = 0

(8)

T := simplify(I*(diff(diff(Omega(x, t), t), t)-RootOf(-gamma^3*tau+2*_Z^2+2*gamma*tau-4*tau^2)^2*(diff(diff(Omega(x, t), x), x))/gamma^2)-2*U(-t*tau+x)*Omega(x, t)*(D(U))(-t*tau+x)*tau+U(-t*tau+x)^2*(diff(Omega(x, t), t))+tau*(2*U(-t*tau+x)*Omega(x, t)*(D(U))(-t*tau+x)+U(-t*tau+x)^2*(diff(Omega(x, t), x)))+(1/2)*(diff(diff(diff(Omega(x, t), t), x), x))+(1/2)*tau*(diff(diff(diff(Omega(x, t), x), x), x)) = 0)

(1/2)*(2*gamma^2*(tau*(diff(Omega(x, t), x))+diff(Omega(x, t), t))*U(-t*tau+x)^2+(diff(diff(diff(Omega(x, t), t), x), x))*gamma^2+tau*(diff(diff(diff(Omega(x, t), x), x), x))*gamma^2-(4*I)*((1/4)*gamma^3+tau-(1/2)*gamma)*tau*(diff(diff(Omega(x, t), x), x))+(2*I)*(diff(diff(Omega(x, t), t), t))*gamma^2)/gamma^2 = 0

(9)

pdetest(K, T)

-(1/2)*2^(1/2)*(-tau/gamma)^(1/2)*(-32*gamma^4*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+16*gamma^5*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-8*gamma^6*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+32*gamma^5*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-32*gamma^4*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+16*gamma^4*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-96*gamma^3*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+192*gamma^2*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-128*tau^4*gamma*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+16*gamma^4*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-96*gamma^3*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+192*gamma^2*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-128*tau^4*gamma*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+16*gamma^5*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-8*gamma^6*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(4*I)*U(-t*tau+x)^2*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(4*I)*U(-t*tau+x)^2*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(8*I)*U(-t*tau+x)^2*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(12*I)*gamma^5*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(4*I)*U(-t*tau+x)^2*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(4*I)*U(-t*tau+x)^2*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(8*I)*U(-t*tau+x)^2*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(12*I)*gamma^5*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(4*I)*U(-t*tau+x)^2*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(4*I)*U(-t*tau+x)^2*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(8*I)*U(-t*tau+x)^2*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(12*I)*gamma^5*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(4*I)*U(-t*tau+x)^2*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(4*I)*U(-t*tau+x)^2*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(8*I)*U(-t*tau+x)^2*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(12*I)*gamma^5*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(32*I)*gamma^3*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(32*I)*gamma^3*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-64*gamma^4*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+64*gamma^3*tau^2*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+I*tau*gamma^7*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-64*gamma^4*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+64*gamma^3*tau^2*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+I*tau*gamma^7*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(192*I)*tau^3*gamma*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(8*I)*c^4*gamma^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(2*I)*c^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(4*I)*tau^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(8*I)*c^4*gamma^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(2*I)*c^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-I*tau*gamma^7*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(4*I)*tau^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(16*I)*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(6*I)*tau*gamma^5*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(20*I)*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(40*I)*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(48*I)*gamma^2*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(16*I)*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(6*I)*tau*gamma^5*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(20*I)*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(40*I)*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(48*I)*gamma^2*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(16*I)*gamma^3*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(96*I)*gamma^2*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(192*I)*tau^3*gamma*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(16*I)*gamma^3*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(96*I)*gamma^2*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-I*tau*gamma^7*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(4*I)*tau^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(8*I)*c^4*gamma^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(2*I)*c^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(4*I)*tau^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(8*I)*c^4*gamma^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(2*I)*tau*gamma^5*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(12*I)*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(24*I)*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(16*I)*gamma^2*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(2*I)*tau*gamma^5*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(12*I)*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(24*I)*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(16*I)*gamma^2*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(2*I)*c^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+32*gamma^5*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(128*I)*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(128*I)*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(8*I)*tau*c^2*U(-t*tau+x)^2*gamma^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(8*I)*tau*c^2*U(-t*tau+x)^2*gamma^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(8*I)*tau*c^2*U(-t*tau+x)^2*gamma^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(8*I)*tau*c^2*U(-t*tau+x)^2*gamma^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau)))/(gamma^2*(gamma-2*tau)^2*(exp(2*t*tau)+exp(2*x))^3)

(10)

simplify(-(1/2)*2^(1/2)*(-tau/gamma)^(1/2)*((8*I)*tau*c^2*U(-t*tau+x)^2*gamma^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(8*I)*tau*c^2*U(-t*tau+x)^2*gamma^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(8*I)*tau*c^2*U(-t*tau+x)^2*gamma^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(8*I)*tau*c^2*U(-t*tau+x)^2*gamma^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(128*I)*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+32*gamma^5*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+192*gamma^2*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-128*tau^4*gamma*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+16*gamma^5*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-8*gamma^6*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+32*gamma^5*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-32*gamma^4*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+16*gamma^4*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-96*gamma^3*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+192*gamma^2*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-128*tau^4*gamma*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+16*gamma^4*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-96*gamma^3*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(128*I)*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-32*gamma^4*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+16*gamma^5*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-8*gamma^6*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(32*I)*gamma^3*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(4*I)*U(-t*tau+x)^2*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(4*I)*U(-t*tau+x)^2*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(8*I)*U(-t*tau+x)^2*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(12*I)*gamma^5*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(4*I)*U(-t*tau+x)^2*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(8*I)*U(-t*tau+x)^2*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(12*I)*gamma^5*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(4*I)*U(-t*tau+x)^2*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(32*I)*gamma^3*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(4*I)*U(-t*tau+x)^2*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(8*I)*U(-t*tau+x)^2*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(12*I)*gamma^5*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(4*I)*U(-t*tau+x)^2*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(4*I)*U(-t*tau+x)^2*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(4*I)*U(-t*tau+x)^2*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(8*I)*U(-t*tau+x)^2*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(12*I)*gamma^5*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(8*I)*c^4*gamma^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(2*I)*c^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(4*I)*tau^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-I*tau*gamma^7*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(16*I)*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(20*I)*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(48*I)*gamma^2*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(6*I)*tau*gamma^5*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(40*I)*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-(16*I)*gamma^3*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(192*I)*tau^3*gamma*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))-(96*I)*gamma^2*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-I*tau*gamma^7*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(8*I)*c^4*gamma^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(2*I)*c^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(4*I)*tau^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(12*I)*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(16*I)*gamma^2*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))-(2*I)*tau*gamma^5*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-(24*I)*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))-64*gamma^4*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+64*gamma^3*tau^2*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))-64*gamma^4*c^2*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+64*gamma^3*tau^2*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(8*I)*c^4*gamma^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(2*I)*tau*gamma^5*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(24*I)*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(12*I)*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(16*I)*gamma^2*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(2*I)*c^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(48*I)*gamma^2*tau^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(96*I)*gamma^2*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(16*I)*gamma^3*tau*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(4*I)*tau^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*x*gamma-12*x*tau)/(gamma-2*tau))+(2*I)*c^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(4*I)*tau^2*gamma^6*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(6*I)*tau*gamma^5*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(40*I)*gamma^3*tau^3*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+(16*I)*gamma^4*c^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(20*I)*gamma^4*tau^2*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+I*tau*gamma^7*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+4*gamma*t*tau-8*t*tau^2+2*x*gamma-4*x*tau)/(gamma-2*tau))+I*tau*gamma^7*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+6*gamma*t*tau-12*t*tau^2)/(gamma-2*tau))+(192*I)*tau^3*gamma*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau))+(8*I)*c^4*gamma^4*exp(((2*I)*gamma*c^2*t-I*gamma^2*t*tau+I*x*gamma^2-(2*I)*gamma*x*tau+2*gamma*t*tau-4*t*tau^2+4*x*gamma-8*x*tau)/(gamma-2*tau)))/(gamma^2*(gamma-2*tau)^2*(exp(2*tau*t)+exp(2*x))^3))

-(-tau/gamma)^(1/2)*((I*gamma^3*(-(1/2)*gamma+tau)*(c-tau)*(c+tau)*U(-t*tau+x)^2-((1/8)*I)*tau*gamma^7+(((1/4)*I)*c^2+((1/2)*I)*tau^2-tau)*gamma^6+(4*tau^2+(-((3/2)*I)*c^2-(3/4)*I)*tau+2*c^2)*gamma^5+(-4*tau^3+((5/2)*I)*tau^2+(-8*c^2+2)*tau+I*(c^2+2)*c^2)*gamma^4-4*(((5/4)*I)*tau^2+(-2*c^2+3)*tau+I*c^2-(1/2)*I)*tau*gamma^3+6*(I*tau^2-2*I+4*tau)*tau^2*gamma^2+((24*I)*tau^3-16*tau^4)*gamma-(16*I)*tau^4)*exp((I*(t*tau-x)*gamma^2+2*((I*x-t)*tau-I*c^2*t-2*x)*gamma+4*t*tau^2+8*x*tau)/(-gamma+2*tau))+(-I*gamma^3*(-(1/2)*gamma+tau)*(c-tau)*(c+tau)*U(-t*tau+x)^2+((1/8)*I)*tau*gamma^7+(-((1/4)*I)*c^2-((1/2)*I)*tau^2-tau)*gamma^6+(4*tau^2+(((3/2)*I)*c^2+(3/4)*I)*tau+2*c^2)*gamma^5+(-4*tau^3-((5/2)*I)*tau^2+(-8*c^2+2)*tau-I*(c^2+2)*c^2)*gamma^4+4*(((5/4)*I)*tau^2+tau*(2*c^2-3)+I*c^2-(1/2)*I)*tau*gamma^3-6*(I*tau^2-2*I-4*tau)*tau^2*gamma^2+(-(24*I)*tau^3-16*tau^4)*gamma+(16*I)*tau^4)*exp((I*(t*tau-x)*gamma^2+2*((I*x-2*t)*tau-I*c^2*t-x)*gamma+8*t*tau^2+4*x*tau)/(-gamma+2*tau))+I*gamma^2*(exp((I*(t*tau-x)*gamma^2+2*(-I*c^2*t+I*x*tau-3*x)*gamma+12*x*tau)/(-gamma+2*tau))-exp((I*(t*tau-x)*gamma^2+2*((I*x-3*t)*tau-I*c^2*t)*gamma+12*t*tau^2)/(-gamma+2*tau)))*(gamma*(-(1/2)*gamma+tau)*(c-tau)*(c+tau)*U(-t*tau+x)^2-(1/8)*tau*gamma^5+((1/4)*c^2+(1/2)*tau^2)*gamma^4+tau*(-(3/2)*c^2+1/4)*gamma^3+(c^4-(3/2)*tau^2)*gamma^2+3*tau^3*gamma-2*tau^4))*2^(1/2)/(gamma^2*(exp(2*t*tau)+exp(2*x))^3*(-(1/2)*gamma+tau)^2)

(11)
 

 

Download pdetest.mw

Is there something one can do to make Maple give same result each time? It seems all random.

Calling odetest sometimes gives internal error. 

            Error, (in trig/normal/sincosargs) too many levels of recursion

But it is random when and how it happens. Worksheet below shows that sometimes when adding infolevel[odetest]:=5; make the error go away. sometimes trying 2 or 3 times also makes the error go away.

This makes it impossible to reason about things, as sometimes I get different result using same exact code.

Is there something one can do to remove this internal error? Why it happens sometimes only?  Do I need to clear something before calling odetest to make sure same result is obtained each time?

interface(version);

`Standard Worksheet Interface, Maple 2024.2, Windows 10, October 29 2024 Build ID 1872373`

Physics:-Version();

`The "Physics Updates" version in the MapleCloud is 1841 and is the same as the version installed in this computer, created 2025, January 3, 8:59 hours Pacific Time.`

libname;

"C:\Users\Owner\maple\toolbox\2024\Physics Updates\lib", "C:\Program Files\Maple 2024\lib"

restart;

sol:=y(x) = 1/2*x*(-1-(1+I*3^(1/2))*((I*2^(1/2)-1+I)*(I*2^(1/2)+1+I)^2)^(2/3)-2*((I*
2^(1/2)-1+I)*(I*2^(1/2)+1+I)^2)^(1/3)-I*((I*2^(1/2)+I)^2-1)*3^(1/2)+(I*2^(1/2)+
I)^2)/((I*2^(1/2)-1+I)*(I*2^(1/2)+1+I)^2)^(1/3)/(I*2^(1/2)+I);
ode:=x^3+3*x*y(x)^2+(y(x)^3+3*x^2*y(x))*diff(y(x),x) = 0

y(x) = (1/2)*x*(-1-(1+I*3^(1/2))*((I*2^(1/2)+(-1+I))*(I*2^(1/2)+1+I)^2)^(2/3)-2*((I*2^(1/2)+(-1+I))*(I*2^(1/2)+1+I)^2)^(1/3)-I*((I*2^(1/2)+I)^2-1)*3^(1/2)+(I*2^(1/2)+I)^2)/(((I*2^(1/2)+(-1+I))*(I*2^(1/2)+1+I)^2)^(1/3)*(I*2^(1/2)+I))

x^3+3*x*y(x)^2+(y(x)^3+3*x^2*y(x))*(diff(y(x), x)) = 0

odetest(sol,ode,y(x));

Error, (in trig/normal/sincosargs) too many levels of recursion

odetest(sol,ode);

Error, (in trig/normal/sincosargs) too many levels of recursion

infolevel[odetest]:=5;

5

odetest(sol,ode);

odetest: Performing an implicit solution test

odetest: Performing an explicit (try hard) solution test

odetest: Performing an implicit solution (II) test

odetest: Performing another explicit (try soft) solution test

0

odetest(sol,ode,y(x));

odetest: Performing an implicit solution test

odetest: Performing an explicit (try hard) solution test

odetest: Performing an implicit solution (II) test

odetest: Performing another explicit (try soft) solution test

0

infolevel[odetest]:=0;

0

odetest(sol,ode,y(x));

0

restart;

sol:=y(x) = 1/2*x*(-1-(1+I*3^(1/2))*((I*2^(1/2)-1+I)*(I*2^(1/2)+1+I)^2)^(2/3)-2*((I*
2^(1/2)-1+I)*(I*2^(1/2)+1+I)^2)^(1/3)-I*((I*2^(1/2)+I)^2-1)*3^(1/2)+(I*2^(1/2)+
I)^2)/((I*2^(1/2)-1+I)*(I*2^(1/2)+1+I)^2)^(1/3)/(I*2^(1/2)+I);
ode:=x^3+3*x*y(x)^2+(y(x)^3+3*x^2*y(x))*diff(y(x),x) = 0

y(x) = (1/2)*x*(-1-(1+I*3^(1/2))*((I*2^(1/2)+(-1+I))*(I*2^(1/2)+1+I)^2)^(2/3)-2*((I*2^(1/2)+(-1+I))*(I*2^(1/2)+1+I)^2)^(1/3)-I*((I*2^(1/2)+I)^2-1)*3^(1/2)+(I*2^(1/2)+I)^2)/(((I*2^(1/2)+(-1+I))*(I*2^(1/2)+1+I)^2)^(1/3)*(I*2^(1/2)+I))

x^3+3*x*y(x)^2+(y(x)^3+3*x^2*y(x))*(diff(y(x), x)) = 0

odetest(sol,ode,y(x));

Error, (in trig/normal/sincosargs) too many levels of recursion

odetest(sol,ode,y(x));

Error, (in trig/normal/sincosargs) too many levels of recursion

odetest(sol,ode,y(x));

0

Download why_odetest_sometimes_fail_internal.mw

Add tracelast; after an error gives long output with this at end

...
#(\`trig/normal\`,8): sincosargs := [\`trig/normal/sincosargs\`(a)];
 \`trig/normal/sincosargs\` called with arguments: ((-2472*2^(1/2)+3496)*3^(1/2)-4288*2^(1/2)+6064)*(10+7*2^(1/2))^(1/2)+(6008*6^(1/2)-8496*3^(1/2)+10408*2^(1/2)-14720)*cos((1/24)*Pi)
 #(\`trig/normal/sincosargs\`,2): return op(map(procname,{op(x)}))
 \`trig/normal/sincosargs\` called with arguments: ((-2472*2^(1/2)+3496)*3^(1/2)-4288*2^(1/2)+6064)*(10+7*2^(1/2))^(1/2)
 #(\`trig/normal/sincosargs\`,2): return op(map(procname,{op(x)}))
 \`trig/normal/sincosargs\` called with arguments: (-2472*2^(1/2)+3496)*3^(1/2)-4288*2^(1/2)+6064
 #(\`trig/normal/sincosargs\`,2): return op(map(procname,{op(x)}))
 \`trig/normal/sincosargs\` called with arguments: (-2472*2^(1/2)+3496)*3^(1/2)
 #(\`trig/normal/sincosargs\`,2): return op(map(procname,{op(x)}))
 \`trig/normal/sincosargs\` called with arguments: -2472*2^(1/2)+3496
 #(\`trig/normal/sincosargs\`,2): return op(map(procname,{op(x)}))
 \`trig/normal/sincosargs\` called with arguments: -2472*2^(1/2)
 #(\`trig/normal/sincosargs\`,2): return op(map(procname,{op(x)}))

Not only is it random error, it also can not be cought using try/catch. So the whole program now stop and there is no way around it. If it was at least possible to trap the error, then it will not be a big deal. But when not even possible to trap Maple errors, then what is one to do? 


Update Jan 18, 2025

I did not want to make new post on this, even though the error is different, but it is similar issue to this post.

I found another example of this random failure of odetest using same input.  May be this will help Maplesoft find the cause. 

The internal error this time is Error, (in depends) too many levels of recursion

In this worksheet below. the same ode and 3 solutions were used. As you see, sometimes odetest do not generate internal error, and sometimes it does. All happen on 3rd call to odetest. 

So it is completely random why this happen. The first and 4ht tries generate no error, but the second and the third do. All were run after restart is called. So one would expect same output from each try,

restart;

interface(version);
Physics:-Version();

`Standard Worksheet Interface, Maple 2024.2, Windows 10, October 29 2024 Build ID 1872373`

`The "Physics Updates" version in the MapleCloud is 1841 and is the same as the version installed in this computer, created 2025, January 3, 8:59 hours Pacific Time.`

First Try

 

ode:=1+y(x)^2+(x-exp(-arctan(y(x))))*diff(y(x),x) = 0;
sol_1:=y(x) = -tan(LambertW(-x/exp(_C1))+_C1);
timelimit(30,odetest(sol_1,ode,y(x)));

sol_2:=x*exp(arctan(y(x)))-arctan(y(x)) = _C1;
timelimit(30,odetest(sol_2,ode,y(x)));

sol_3:=y(x) = tan(-LambertW(-x*exp(_C2))+_C2);
timelimit(30,odetest(sol_3,ode,y(x)));

1+y(x)^2+(x-exp(-arctan(y(x))))*(diff(y(x), x)) = 0

y(x) = -tan(LambertW(-x/exp(_C1))+_C1)

4*LambertW(-x*exp(-c__1))*exp(-I*arctanh(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)-1/(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1))+(2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/((exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)^2*x*(1+LambertW(-x*exp(-c__1))))+4*exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/((exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)^2*(1+LambertW(-x*exp(-c__1))))

x*exp(arctan(y(x)))-arctan(y(x)) = c__1

0

y(x) = tan(-LambertW(-x*exp(_C2))+_C2)

Error, (in depends) too many levels of recursion

 

 

 

 

Second Try

 

restart;

ode:=1+y(x)^2+(x-exp(-arctan(y(x))))*diff(y(x),x) = 0;
sol_1:=y(x) = -tan(LambertW(-x/exp(_C1))+_C1);
timelimit(30,odetest(sol_1,ode,y(x)));

sol_2:=x*exp(arctan(y(x)))-arctan(y(x)) = _C1;
timelimit(30,odetest(sol_2,ode,y(x)));

sol_3:=y(x) = tan(-LambertW(-x*exp(_C2))+_C2);
timelimit(30,odetest(sol_3,ode,y(x)));

1+y(x)^2+(x-exp(-arctan(y(x))))*(diff(y(x), x)) = 0

y(x) = -tan(LambertW(-x/exp(_C1))+_C1)

4*exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/((exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)^2*(1+LambertW(-x*exp(-c__1))))+4*LambertW(-x*exp(-c__1))*exp(-I*arctanh(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)-1/(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1))+(2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/((1+LambertW(-x*exp(-c__1)))*x*(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)^2)

x*exp(arctan(y(x)))-arctan(y(x)) = c__1

0

y(x) = tan(-LambertW(-x*exp(_C2))+_C2)

4*LambertW(-x*exp(c__2))*exp((2*I)*LambertW(-x*exp(c__2))+(2*I)*c__2+I*arctanh(-exp((2*I)*LambertW(-x*exp(c__2)))/(exp((2*I)*LambertW(-x*exp(c__2)))+exp((2*I)*c__2))+exp((2*I)*c__2)/(exp((2*I)*LambertW(-x*exp(c__2)))+exp((2*I)*c__2))))/((exp((2*I)*LambertW(-x*exp(c__2)))+exp((2*I)*c__2))^2*(1+LambertW(-x*exp(c__2)))*x)+4*exp((2*I)*c__2+(2*I)*LambertW(-x*exp(c__2)))/((exp((2*I)*LambertW(-x*exp(c__2)))+exp((2*I)*c__2))^2*(1+LambertW(-x*exp(c__2))))

 

 

 

Third  Try

 

restart;

ode:=1+y(x)^2+(x-exp(-arctan(y(x))))*diff(y(x),x) = 0;
sol_1:=y(x) = -tan(LambertW(-x/exp(_C1))+_C1);
timelimit(30,odetest(sol_1,ode,y(x)));

sol_2:=x*exp(arctan(y(x)))-arctan(y(x)) = _C1;
timelimit(30,odetest(sol_2,ode,y(x)));

sol_3:=y(x) = tan(-LambertW(-x*exp(_C2))+_C2);
timelimit(30,odetest(sol_3,ode,y(x)));

1+y(x)^2+(x-exp(-arctan(y(x))))*(diff(y(x), x)) = 0

y(x) = -tan(LambertW(-x/exp(_C1))+_C1)

4*LambertW(-x*exp(-c__1))*exp(-I*arctanh(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)-1/(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1))+(2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/((1+LambertW(-x*exp(-c__1)))*x*(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)^2)+4*exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/((exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)^2*(1+LambertW(-x*exp(-c__1))))

x*exp(arctan(y(x)))-arctan(y(x)) = c__1

0

y(x) = tan(-LambertW(-x*exp(_C2))+_C2)

Error, (in depends) too many levels of recursion

 

 

 

4th  Try

 

restart;

ode:=1+y(x)^2+(x-exp(-arctan(y(x))))*diff(y(x),x) = 0;
sol_1:=y(x) = -tan(LambertW(-x/exp(_C1))+_C1);
timelimit(30,odetest(sol_1,ode,y(x)));

sol_2:=x*exp(arctan(y(x)))-arctan(y(x)) = _C1;
timelimit(30,odetest(sol_2,ode,y(x)));

sol_3:=y(x) = tan(-LambertW(-x*exp(_C2))+_C2);
timelimit(30,odetest(sol_3,ode,y(x)));

1+y(x)^2+(x-exp(-arctan(y(x))))*(diff(y(x), x)) = 0

y(x) = -tan(LambertW(-x/exp(_C1))+_C1)

4*LambertW(-x*exp(-c__1))*exp(-I*arctanh(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)-1/(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1))+(2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/((1+LambertW(-x*exp(-c__1)))*x*(exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)^2)+4*exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)/((exp((2*I)*LambertW(-x*exp(-c__1))+(2*I)*c__1)+1)^2*(1+LambertW(-x*exp(-c__1))))

x*exp(arctan(y(x)))-arctan(y(x)) = c__1

0

y(x) = tan(-LambertW(-x*exp(_C2))+_C2)

4*exp((2*I)*c__2+(2*I)*LambertW(-x*exp(c__2)))/((exp((2*I)*LambertW(-x*exp(c__2)))+exp((2*I)*c__2))^2*(1+LambertW(-x*exp(c__2))))+4*LambertW(-x*exp(c__2))*exp((2*I)*LambertW(-x*exp(c__2))+(2*I)*c__2+I*arctanh(-exp((2*I)*LambertW(-x*exp(c__2)))/(exp((2*I)*LambertW(-x*exp(c__2)))+exp((2*I)*c__2))+exp((2*I)*c__2)/(exp((2*I)*LambertW(-x*exp(c__2)))+exp((2*I)*c__2))))/((exp((2*I)*LambertW(-x*exp(c__2)))+exp((2*I)*c__2))^2*(1+LambertW(-x*exp(c__2)))*x)

 

Download bug_odetest_jan_18_2025.mw

Hello

Following on from my earlier question:

https://www.mapleprimes.com/questions/239620-Round-Robin-With-Double-Bye

a colleague has produced (admittedly hurriedly) a sports schedule over 14 weeks for a 8-team double bye, and a 10-team over 15 weeks. 
Looking at it, and counting the possible combinations, neither seem optimal...

The 8 team has equal byes, the 10 uneven.

Edit. Ideally no team would have 2 byes in a row. 

Is there a solution in maple over these weeks? given the min duration would be 13 weeks and the max 15 weeks?
In the previous solution by mmcdara the 8 bye schedule each team has played 6 times after week 8, but since the roster is truncated to 14 or 15, there will be some weeks when no byes are required (all teams playing) to even things up.
Similarly, the 10 bye each team has played 8 times after week 10, but since the roster is truncated to 14 or 15, there will be some weeks when no byes are required.

Any help would be welcome!
double_bye.xls

Edit: I made some counting errors. It's 28 and 45 as Carl pointed out
double_bye_revised.xls

Hello,

I present the result of work on a new project in the field of classical mechanics. It is a grateful and interesting topic that gives a lot of satisfaction. I am attaching the Maple worksheet.

Best regards

Rolling_Disk_3D_on_x0y_plane.mw

Hey guys,

I have to solve a bunch of systems of polynomial equations und dome restrictions given by inequalitites. I have 8 variables, 8 equations and and 13 inequalitites. Since the simple solve or SemiAlgebraic command are not able to solve every system I tryd some other ways. Right now I try to bring the set of equations and ineqaulities in a better from or structure using RealTriangulize from the RegularChains library. Later on I want to take those results and use solve or SemiAlgebraic again, hoping, that Maple than finds the solutions and is not calculating for houres without a result. I already know, that you can have diffrent outputs for RealTriangularize (I know list, record, piecewise and zerodimensional, althought the last one is not really helpful). Since I want to go on wirking with the results I need to have them in a form, that I can read of the new equations and inequalities to put them into solve. Often that works totaly fine, but sometimes I get an output I dont understand. I understand what It means but I dont understand why Maple uses that type of output. If you have a look in the attached file you can see what I mean:

restart; with(RegularChains); eq_5334 := {y*(m*x-m-n+1)+(-x+1)*n-x = 0, (-p+t)*k+p*y-t = 0, (k-x-y)*t-k*p+y = 0, (-x-y+1)*t+(-k+y)*n+x*s = 0, (-x-y+1)*p+m*y^2+x-y = 0, (x^2-x)*m+y*(t-1)-n+1 = 0, -k*n+s*x = 0, m*x*y-p = 0, 0 < k, 0 < m, 0 < s, 0 < x, 0 < y, 0 < n+(t-1)*p, 0 < (m*y-1)*n+(1-p)*(m*x-m+1), 0 < (m*x-m-t+1)*p+m*y*(t-n), 1 < x+y, k < 1, m < 1, s < t, t < 1}; eq_5380 := {(-x-y+1)*p+m*x*y = 0, (-p+t)*k+p*y-t = 0, (k-x-y)*t-k*p+y = 0, (-x-y+1)*t+(-k+y)*n+x*s = 0, (m-1)*y^2+(-x+1)*y-p+x = 0, (x-1)*(m-1)*y-x^2-n+x = 0, m*x^2+(-m-n+1)*x+(-y+1)*n+t*y-1 = 0, -k*n+s*x = 0, 0 < k, 0 < m, 0 < s, 0 < x, 0 < y, 0 < n+(t-1)*p, 0 < (m*y-1)*n+(1-p)*(m*x-m+1), 0 < (m*x-m-t+1)*p+m*y*(t-n), 1 < x+y, k < 1, m < 1, s < t, t < 1}; eq_5382 := {(-x-y+1)*p+m*x*y = 0, y*(m*x-m-n+1)+(-x+1)*n-x = 0, (-p+t)*k+p*y-t = 0, (k-x-y)*t-k*p+y = 0, (-x-y+1)*t+(-k+y)*n+x*s = 0, (-x-y+1)*p+m*y^2+x-y = 0, m*x^2+(-m-n+1)*x+(-y+1)*n+t*y-1 = 0, -k*n+s*x = 0, 0 < k, 0 < m, 0 < s, 0 < x, 0 < y, 0 < n+(t-1)*p, 0 < (m*y-1)*n+(1-p)*(m*x-m+1), 0 < (m*x-m-t+1)*p+m*y*(t-n), 1 < x+y, k < 1, m < 1, s < t, t < 1}; sys := eq_5334; SuggestVariableOrder(sys); R := PolynomialRing(%); dec_5334 := RealTriangularize(sys, R, output = piecewise); sys := eq_5380; SuggestVariableOrder(sys); R := PolynomialRing(%); dec_5380 := RealTriangularize(sys, R, output = piecewise); sys := eq_5382; SuggestVariableOrder(sys); R := PolynomialRing(%); dec_5382 := RealTriangularize(sys, R, output = piecewise); sys := eq_5382; SuggestVariableOrder(sys); R := PolynomialRing(%); dec_5382_record := RealTriangularize(sys, R, output = record)

[AlgebraicGeometryTools, ChainTools, ConstructibleSetTools, Display, DisplayPolynomialRing, Equations, ExtendedRegularGcd, FastArithmeticTools, Inequations, Info, Initial, Intersect, Inverse, IsRegular, LazyRealTriangularize, MainDegree, MainVariable, MatrixCombine, MatrixTools, NormalForm, ParametricSystemTools, PolynomialRing, Rank, RealTriangularize, RegularGcd, RegularizeInitial, SamplePoints, SemiAlgebraicSetTools, Separant, SparsePseudoRemainder, SuggestVariableOrder, Tail, Triangularize]

 

[s, k, n, p, m, t, x, y]

 

R := polynomial_ring

 

dec_5334 := [[x*s+((-x^2+x)*m-t*y+y-1)*k = 0, (m*x*y-t)*k+(x+y)*t-y = 0, n+(-x^2+x)*m-t*y+y-1 = 0, -m*x*y+p = 0, (x^2*y+(y^2-y)*x-y^2)*m-x+y = 0, t*y^2-y^2+x = 0, (15*y^2+24*y+20)*x-6*y^2-13*y-10 = 0, y^3-y-2 = 0, 0 < k, 0 < m, 0 < s, 0 < x, 0 < y, 0 < 12891634966*y^2+19613071879*y+16947294542, 0 < 1256597*y^2+1911761*y+1651926, 0 < 6310892468*y^2+9601263717*y+8296275330, 0 < 1401*y^2+2130*y+1840, 0 < 1-k, 0 < 1-m, 0 < 72927541996846438*y^2+110950482461140595*y+95870270479707846, 0 < 1-t]]

 

[s, k, n, p, m, t, y, x]

 

R := polynomial_ring

 

dec_5380 := piecewise(`and`(`and`(`and`(0 < x^3-2*x^2+3*x-1, 0 < x^3+2*x^2+x-1), x^3+x^2+x < 1), 0 < 3*x-1), [[s*x+((1-x)*y*m+(x-1)*y+x^2-x)*k = 0, (m*y^2-y^2-t+(1-x)*y+x)*k+(y+x)*t-y = 0, n+(1-x)*y*m+(x-1)*y+x^2-x = 0, p-m*y^2+y^2+(x-1)*y-x = 0, m*y-x-y+1 = 0, t*y^2+(x-1)*y^2+(2*x^2-2*x)*y+x^3-2*x^2+x = 0, (3*x-1)*y^2+(3*x^2-3*x)*y+x^3-2*x^2+x = 0, 0 < k, 0 < m, 0 < s, 0 < y, 0 < -6*x^6-9*x^5*y+20*x^5+27*x^4*y-27*x^4-32*x^3*y+19*x^3+17*x^2*y-7*x^2-3*x*y+x, 0 < 3*x^6+3*x^5*y-14*x^5-10*x^4*y+26*x^4+11*x^3*y-24*x^3-3*x^2*y+11*x^2-2*x*y-2*x+y, 0 < 6*x^5+9*x^4*y-17*x^4-18*x^3*y+17*x^3+11*x^2*y-7*x^2-2*x*y+x, 0 < y+x-1, 0 < 1-k, 0 < -m+1, 0 < t-s, 0 < 1-t]], [])

 

[s, k, n, p, m, t, x, y]

 

R := polynomial_ring

 

dec_5382 := piecewise(`and`(`and`(y^3-2*y^2+y < 1, 0 < y-1), 23*y^3-37*y^2+13*y-3 <> 0), [[-k*n+s*x = 0, (p-t)*k+(y+x)*t-y = 0, (y+x-1)*n+(-x*y+y)*m+x-y = 0, (y+x-1)*p-m*y^2-x+y = 0, m*y-1 = 0, t*y^2+x^2+(y-1)*x-y^2 = 0, x^3+(3*y-2)*x^2+(2*y^2-3*y+1)*x-y^3+y^2 = 0, 0 < k, 0 < s, 0 < x, 0 < -2*x^2*y^2-2*x*y^3+2*y^4+x^2*y+3*x*y^2-3*y^3-x*y+y^2, 0 < x^2*y^2+2*x*y^3+y^4-x^2*y-4*x*y^2-3*y^3+2*x*y+3*y^2-y, 0 < -x^2*y-x*y^2+y^3+x*y-y^2, 0 < y+x-1, 0 < 1-k, 0 < t-s, 0 < 1-t]], 23*y^3-37*y^2+13*y-3 = 0, [[-k*n+s*x = 0, (p-t)*k+(y+x)*t-y = 0, (y+x-1)*n+(-x*y+y)*m+x-y = 0, (y+x-1)*p-m*y^2-x+y = 0, m*y-1 = 0, t*y^2+x^2+(y-1)*x-y^2 = 0, (2377326*y^2-1587000*y+302588)*x^2+(390793*y^2+497766*y+138115)*x-507805*y^2+152032*y-109047 = 0, 23*y^3-37*y^2+13*y-3 = 0, 0 < k, 0 < m, 0 < s, 0 < x, 0 < y, 0 < 700112222844255556263586865*x*y^2-260269572171898884295316974*x*y-93795749047261033657544191*y^2+73822886321394794237709987*x+34866975665513154551125606*y-9877974587657378842117575, 0 < -26166721441919*x*y^2+9412709182291*x*y+53422638514257*y^2-3387596446782*x-21180373503698*y+6484087812711, 0 < 21236600258115*x*y^2-8079468597142*x*y-3053799376681*y^2+2340822678357*x+1387037467490*y-370794765921, 0 < y+x-1, 0 < 1-k, 0 < -m+1, 0 < t-s, 0 < 1-t]], [])

 

[s, k, n, p, m, t, x, y]

 

R := polynomial_ring

 

`Non-fatal error while reading data from kernel.`

(1)

NULL

I would like to get results like in dec_5334. I can easily go on working with this kind of form. In dec_5380 you can see a diffrent output. I dont see the point of giving me this output. the second line i basically epmty. and in the first line the solution is broken into peaces. when a certain solution just works under some inequalitites, why dont they put those four inequalities inside of the list in front of it? Is there a workaround for the "normal" output? Or is there a way to read off the lines from this kind of structure, with the open { in front ?

The same problem appears in dec_5382. WHy dont give me a list with to lists of equations and inequalities to show me both solutions?
In the last example dec_5382_record you can see the output when you change the corresponding option in RealTrinagularize. But here I again have the problem that I dont know how to read of the equations and inequalities from the open curly bracket.

If anyone could help me, I would be very glad. Thank yu in advance.

Regards

Felix

Download Output_of_RegularChains.mw

First 42 43 44 45 46 47 48 Last Page 44 of 2217