MaplePrimes Questions

It was found on the social networks of the WM group. Written in Python. Perhaps someone would like to adopt it.
 

Deal All,

I have a system of linear differential equations with unknown functions T[1](t) to T[n](t). In the attached example, I considered the value of n equal to 10, but depending on the problem, the value of n may be higher. Maple is not able to solve this problem analytically with the ‘dsolve’. 

Does anyone have an idea to analytically solve for such a set of linear differential equations?

Best wishes

Set_of_Linear_DEs.mw

See attached worksheet in Maple 2023.

This example is taken from the Maple help page. I want to 'zoom in' on a plot3d object. The only way I have found was from responses [1] on the maple primes forum. It uses InlinePlot and the scale option to perform the 'zoom in'. Since InlinePlot generates the plot in terms of XML there is no graphic out, only a text based output. In order to reconstitute the InlinePlot as a plot object I can view visually I need to use some additional commands from the DocumentTool package. This is all great but the output, which in our case is P3, is not a plot object and therefore cannot be exported as a png. Is there a way to convert the InlinePlot with the scaling applied back to a typical plot object so I can export it as a .png, using Export("output_plot.png",P3,base=worksheetdir)?

can_I_convert_InlinePlot(P3)_back_to_a_regular_plot_object_so_I_can_export_it_as_a_png.mw

When I try to contract the tensor with connection, maple encounters such promble:

Error, (in DifferentialGeometry:-Tensor:-ContractIndices) expected 2nd argument to be a tensor. Received: _DG([["connection", O, [["con_bas", "cov_bas", "cov_bas"], []]], [`...`]])

The expression is Cacd Hab

I try to solve triple integraton in Maple with this code.

r := a + (b - a)*z/h;
x1 := sqrt(r^2 - y^2);
V := int(int(int(1, x = -x1 .. x1), y = -r .. r), z = 0 .. h);

but it leaves the last integral dz in the answer and warns: unable to determine if a*h/(-b+a) is between 0 and h; try to use assumptions or use the AllSolutions option
What is the problem?
and i need to get V = Pi*h(a^2 + ab +b^2)/3

Regards

Why does Maple 2022 still have only a history of ten files in the Recents ?

It makes it very difficult to search for files you opened but only realised later you need, but then it is long out of the silly 10 history list.

Isnt there a way to make a perpetual list so that all files opened are saved chronologiacally against date, or... at least be able to increase the silly 10 recent files to something like 30

Thanks

This is a follow on from and earlier question on tabulation. Some procdures returs up tp eight values. So using a Table make it easier to see what is what. Sometimes the equations returned are very long. Is there a way to truncate what is display in the table using something along the lines of term elision? Say the 1st 300 chatacters for example?  

Edit: Corrected an error in the worksheet.

restart

QQFProj := proc(q12::algebraic, q23::algebraic,
                q34::algebraic, q14::algebraic,
                  prnt::boolean:=true) #{columns:=[QQFproj,Q13proj,Q24proj]}
  description "Projective quadruple quad formula and intermediate 13 and 24 quads. Useful for cyclic quadrilaterals";
  local qqf,q13,q24, sub1,sub2,sub3, R,values,DF,lens;
  uses   DocumentTools;
  sub1:= (q12 + q23 + q34 + q14)^2 - 2*(q12^2 + q23^2 + q34^2 + q14^2) ;
  sub2:=-4*(q12*q23*q34+q12*q23*q14+q12*q34*q14+q23*q34*q14)+8*q12*q23*q34*q14;
  sub3:=64*q12*q23*q34*q14*(1-q12)*(1-q23)*(1-q34)*(1-q14);
  qqf:=((sub1+sub2)^2=sub3);
  q13:=((q12-q23)^2-(q34-q14)^2)/(2*(q12+q23-q34-q14-2*q12*q23+2*q34*q14));#check this
  q24:=((q23-q34)^2-(q12-q14)^2)/(2*(q23+q34-q12-q14-2*q23*q34+2*q12*q14));#check this
  if prnt then
  
   values:=<qqf,q13,q24>;
   DF:=DataFrame(<values>, columns=[`"Values Equations"`],rows=[`#1  QQF`,`#2  Q13`,`#3  Q24`]);
   lens := [4 +8* max(op(length~(RowLabels(DF)))),4+ min(max( 10*(length~(values))),1000)];#op(length~(ColumnLabels(DF)0)
   Tabulate(DF,width=add(lens),widthmode = pixels,weights = lens);
  return qqf,q13,q24
  end if;
  return qqf,q13,q24
end proc:

 q12:=1/2:q23:=9/10:q34:=25/26:q41:=9/130:#Cyclic quadrilateral
q12:=sqrt(17+a)/2:q23:=expand(r^2+t^2)^2/10:q34:=expand((a+b+c)^4/26):q41:=sqrt(17+b)/130:

Q:=QQFProj(q12,q23,q34,q41,true):

#Q[1]

#(Q[2])

#Q[3]

length(Q[1])

2669

(1)

length(Q[2])

1024

(2)

length(Q[3])

1024

(3)
 

 

Download 2024-05-14_Q_Data_Table_Limit_Equation_lentgh.mw

In my code, why  does InitState(5,5) return only one element of the vector while Coherent(5) returns 5 elements of the vector?

restart;

with(LinearAlgebra):

 

Coherent := proc({zeta:=1,phi:=Pi/2},n_max) local alpha,i,ICs:
 #alpha := sqrt(zeta)*exp(I*phi):
 ICs := Vector(n_max,i->evalc(evalf(exp(-zeta/2)/sqrt((i-1)!))*(sqrt(zeta)*exp(I*phi))^(i-1)),datatype=complex[8]);
end proc:

Projectile := proc({L:=1,sigma:=0.01,beta:=0.02,k0:=-5*Pi},n_max) local x0,g,c,v,ICs,j:
  x0 := evalf(beta*L);
  g := unapply(exp(-(x-x0)^2/2/sigma^2),x);
  c := evalf(int(g(x)^2,x=-L/2..L/2,numeric=true));
 
  v:=Vector(n_max,datatype=complex[8]);

  for j from 1 to n_max do:
     if (is(j,odd)) then  v[j]:= evalc[8](evalf(Int(cos(Pi*j*x/L)*g(x)*cos(k0*x),x=-L/2..L/2,method=_d01akc))+ I*evalf(Int(cos(Pi*j*x/L)*g(x)*sin(k0*x),x=-L/2..L/2,method=_d01akc)));
      else v[j]:= evalc[8](evalf(Int(sin(Pi*j*x/L)*g(x)*cos(k0*x),x=-L/2..L/2,method=_d01akc))+ I*evalf(Int(sin(Pi*j*x/L)*g(x)*sin(k0*x),x=-L/2..L/2,method=_d01akc)));
     end if:
  end do:

 ICs :=evalf[8](sqrt(2/L*c))*v;
end proc:

InitState := proc({zeta:=1,phi:=Pi/2,L:=1,sigma:=0.01,beta:=0.02,k0:=-5*Pi},d1,d2) local Z0:
z1 := Coherent(zeta,phi,d1);
#Z0:= MatrixMatrixMultiply(Coherent(zeta,phi,d1),Transpose(Projectile(L,sigma,beta,k0,d2))):
end proc:

Warning, (in InitState) `z1` is implicitly declared local

 

InitState(5,5); Coherent(5);

Vector(1, {(1) = .6065306597+0.*I})

 

Vector[column](%id = 36893490076814315516)

(1)
 

 

Download test3.mw

Can I export a Table as an image like .png, where Table is defined (with DocumentTools)? See Maple worksheet for example.

Why would anyone want to do this? It all started because I wanted to include a color bar(with a specific color range) in my 3dplot. There is no native way to do this with plot3d so I searched Maple Primes for alternative strategies. One strategy is to generate the 3d plot and the color bar(with plot3d) seperately, then combine the plots in a table so they sit side by side, using with(DocumentTools). I have been almost successful with this strategy. There remain two outstanding problems. 1. I can't re-size the table cells since there are no such options with(DocumentTools). The color bar should have a smaller cell because the figure itself is tall and thin. 2. I need to export this combined object as an image(.png) but its a table with plot objects inside, and not itself a plot object and therefore one can't simply export it as a .png like one would a typical plot object. Is there a way to export this table as a png? I am beginning to think that my idea of combining  plots with document tools and attempting the export the resulting table is not feasible. How does a normal person add a custom-color-range color bar to their plot? I'm not trying to move the earth here but it certainly feels like it.

with_document_tools_how_to_i_resize_the_cells_and_export_the_table_as_png.mw

 I can't achieve this using StringTools:-RegSplit. The StringTools,Regular_Expressions documentation doesn't seem to address these functionalities.

My goal is to split the string at the occurences of "." that are somewhere between "]" and "["* yet not enclosed between the two digits, and to ignore all other occurences of "."

I want to get the unknown function whose Taylor expansion I have. For example, giving x - 1/6*x^3 + 1/120*x^5 - 1/5040*x^7 + 1/362880*x^9 will return sin(x). The following algorithm can be implemented for this simple function:

with(inttrans):

with(numapprox):

convert(taylor(sin(x),x, 10),polynom);

laplace(%, x, s1);

eval(%, s1=1/s2);

pade(%, s2, [3,3]);

eval(%, s2=1/s1);

invlaplace(%, s1, x);

But this approach does not lead to the correct solution for slightly more complex functions. For example, if I have the Taylor expansion of the function sin(x^2), I cannot reach the function sin(x^2) with the above algorithm. Note that before extracting the sin(x^2) function, this function is unknown to us and we only have its Taylor expansion:

with(inttrans):

with(numapprox):

convert(taylor(sin(x^2),x, 15),polynom);

laplace(%, x, s1);

eval(%, s1=1/s2);

pade(%, s2, [3,3]);

eval(%, s2=1/s1);

invlaplace(%, s1, x);

Also, the Taylor expansion of the simple function exp(-x^2) with the above algorithm is returned as a trigonometric function:

with(inttrans):

with(numapprox):

convert(taylor(exp(-x^2),x, 10),polynom);

laplace(%, x, s1);

eval(%, s1=1/s2);

pade(%, s2, [3,3]);

eval(%, s2=1/s1);

invlaplace(%, s1, x);

The importance of solving this problem becomes clear when we want to solve the differential equation or the set of differential equations by applying the ‘series’ option. If the variable t expresses time, it can never be obtained with a polynomial function u(t) in sufficiently large times. For example, the exact solution of the following differential equation is u(t)=exp(-a*t^2):

Order:=12;

ode:=t*diff(u(t),t,t)+8*diff(u(t),t)+18*a*t*u(t)=-4*a*t*u(t)*ln(u(t));

ic1:=u(0)=1;

ic2:=D(u)(0)=0;

dsolve({ode, ic1,ic2}, u(t), series);

Does anyone have an idea to extract the unknown function from its taylor expansion?

Best wishes


Don't see here the FunctionAdvisor , what is included for every choosen function.

 

How to obtain a clear plot of Zeta function
- via a total plot ?
- via partial plots ?
- further take circle in complex domain : complex plane ( riemann surface) , to be continued..

 

ComplexSurface := proc(complex_function, x_range, y_range, view_opt, orient_opt, grid_opt)
    local f, plot, combined_plot;
    
    # Define the complex function f(z)
    f := unapply(complex_function, z);
    
    # Call the FunctionAdvisor to provide plot recommendations
    FunctionAdvisor(f(z), z = x + I*y, 'view' = view_opt, 'orientation' = orient_opt, 'grid' = grid_opt);
    
    # Plot the complex surface
    plot := plot3d([evalc(Re(f(x + I*y))), evalc(Im(f(x + I*y)))], x = x_range, y = y_range, view = view_opt, orientation = orient_opt, grid = grid_opt, style = surface, title = sprintf("Plot of %a", complex_function));
    
    # Print the combined plot
    combined_plot := plot;
    #printf("Plot of the complex surface:\n");
    print(combined_plot);
    
    # Display additional messages
    printf("Procedure input:\n");
    printf("ComplexSurface(complex_function, x_range, y_range, view_opt, orient_opt, grid_opt)\n");
    printf("complex_function: The complex function to be plotted\n");
    printf("x_range: Range of the real axis\n");
    printf("y_range: Range of the imaginary axis\n");
    printf("view_opt: List of the form [x_min..x_max, y_min..y_max, z_min..z_max], determines the visible region\n");
    printf("orient_opt: List of the form [angle_x, angle_y], determines the viewing angle\n");
    printf("grid_opt: List of the form [x_grid, y_grid], determines the grid resolution\n");
    printf("\n");
    printf("Example usage:\n");
    printf("ComplexSurface(Zeta(z), -50..5, -5..5, [-50..50, -5..5, 0..15], [120, 60], [50, 50]);\n");
    printf("\n");
    printf("Where Zeta(z) is the complex function to be plotted, and the ranges, view options, orientation options, and grid options are specified accordingly.\n");
end proc:
 

 

ComplexSurface(Zeta(z), -50..50, -5..5, [-50..50, -5..5, 0..15], [120, 60], [50, 50]);

 

Procedure input:
ComplexSurface(complex_function, x_range, y_range, view_opt, orient_opt, grid_opt)
complex_function: The complex function to be plotted
x_range: Range of the real axis
y_range: Range of the imaginary axis
view_opt: List of the form [x_min..x_max, y_min..y_max, z_min..z_max], determines the visible region
orient_opt: List of the form [angle_x, angle_y], determines the viewing angle
grid_opt: List of the form [x_grid, y_grid], determines the grid resolution

Example usage:
ComplexSurface(Zeta(z), -50..5, -5..5, [-50..50, -5..5, 0..15], [120, 60], [50, 50]);

Where Zeta(z) is the complex function to be plotted, and the ranges, view options, orientation options, and grid options are specified accordingly.

 

 

ComplexSurface(ln(z), -50..50, -5..5, [-50..50, -5..5, 0..15], [120, 60], [50, 50]);

 

Procedure input:
ComplexSurface(complex_function, x_range, y_range, view_opt, orient_opt, grid_opt)
complex_function: The complex function to be plotted
x_range: Range of the real axis
y_range: Range of the imaginary axis
view_opt: List of the form [x_min..x_max, y_min..y_max, z_min..z_max], determines the visible region
orient_opt: List of the form [angle_x, angle_y], determines the viewing angle
grid_opt: List of the form [x_grid, y_grid], determines the grid resolution

Example usage:
ComplexSurface(Zeta(z), -50..5, -5..5, [-50..50, -5..5, 0..15], [120, 60], [50, 50]);

Where Zeta(z) is the complex function to be plotted, and the ranges, view options, orientation options, and grid options are specified accordingly.

 

 


 

Download complex_oppervlak_zeta_functie_maple_primes.mw

This is new:

Maple 2024 frozen on opening recent files

Maple 2023 frozen on opening

Maple 2022 frozen on opening start page

Maple 2021 blinking

Maple 2020 opening start page

The above system state is constant for about 30 min. Maple sessions without start page are working. I can enter code but file opeing and saving does not work. The fact that Maple 2020 is also not working makes it unlikely that the Java environement is part of the problem.

I have several times restarted the system. The rest of the system is working.

Something happened to the system and I have no clue what is was and what I can do about it.

Any ideas or suggestions what I could try? Windows 10.

Not sure what  I did, but now  the typsetting rule assistant pops up every time I executre my document (twice!).  Searching the internet, I found that I should be able to turn it off by "expanding the blocks" (?) and then finding the call to this assistant.  Problem is, I can't find this "Expand block"  -- it is not under View it they claim it is in various posts.  Also, if I step through the worksheet, I can't find it ; it only pops up when I execute the entire worksheet.  I attached it here for someone to guide me on how to find where/why this is happening.

 

Thanks!coupled_network.mw
 

restart

with(Syrup)

interface('displayprecision' = 4)

SyrupDefaults:-infolevel := 1; SyrupDefaults:-subscript_params := true

 

 

Circuit Netlist

 

ckt1

Definitions

 

Cp := 1/(`&omega;0p`^2*Lp)

1/(`&omega;0p`^2*Lp)

(1.2.1)

Cs := 1/(`&omega;0s`^2*Ls)

1/(`&omega;0s`^2*Ls)

(1.2.2)

M := k*sqrt(Ls*Lp)

k*(Ls*Lp)^(1/2)

(1.2.3)

assumptions := `and`(`and`(`and`(`and`(`and`(`and`(`&omega;0p` > 0, `&omega;0s` > 0), Lp > 0), Ls > 0), k > 0), Rp > 0), Rs > 0), omega > 0NULL

0 < `&omega;0p` and 0 < `&omega;0s` and 0 < Lp and 0 < Ls and 0 < k and 0 < Rp and 0 < Rs, 0 < omega

(1.2.4)

NULL

 

Simplifications

 

`&omega;0p` := `&omega;0p`

`&omega;0p`

(1.3.1)

`&omega;0s` := `&omega;0s`

`&omega;0s`

(1.3.2)

Rs := Rs

Rs

(1.3.3)

Rp := Rp

Rp

(1.3.4)

Lp := Lp

Lp

(1.3.5)

Ls := Ls

Ls

(1.3.6)

Not On Resonance

 

 

w := omega

omega

(1.3.1.1)

 

Solve System

 

sol, rest := `assuming`([Solve("ec:ckt1", analysis = ac, 'returnall')], [assumptions])

NULL

Solution

 

 

s := I*w

I*omega

(1.5.1)

vin := eval(v[N03], sol)

vin

(1.5.2)

Secondary Current

I2sol := `assuming`([simplify(eval(i[L2], rest))], [assumptions])

omega^3*k*Ls^(1/2)*Lp^(1/2)*vin/(Lp*Ls*(k-1)*(k+1)*omega^4+I*(Lp*Rs+Ls*Rp)*omega^3+(Ls*(`&omega;0p`^2+`&omega;0s`^2)*Lp+Rp*Rs)*omega^2+I*(-Lp*Rs*`&omega;0p`^2-Ls*Rp*`&omega;0s`^2)*omega-Ls*Lp*`&omega;0p`^2*`&omega;0s`^2)

(1.5.3)

NULL

sol1 := solve(I2sol = I2, k)[1]

(1/2)*(Lp^(1/2)*Ls^(1/2)*vin*omega+(4*I2^2*Lp^2*Ls^2*omega^4-4*I2^2*Lp^2*Ls^2*omega^2*`&omega;0p`^2-4*I2^2*Lp^2*Ls^2*omega^2*`&omega;0s`^2+4*I2^2*Lp^2*Ls^2*`&omega;0p`^2*`&omega;0s`^2-(4*I)*I2^2*Lp^2*Ls*Rs*omega^3+(4*I)*I2^2*Lp^2*Ls*Rs*omega*`&omega;0p`^2-(4*I)*I2^2*Lp*Ls^2*Rp*omega^3+(4*I)*I2^2*Lp*Ls^2*Rp*omega*`&omega;0s`^2-4*I2^2*Lp*Ls*Rp*Rs*omega^2+Lp*Ls*vin^2*omega^2)^(1/2))/(I2*Lp*Ls*omega^2)

(1.5.4)

Coupling

kcoup := `assuming`([simplify(sol1)], [assumptions])

(1/2)*(vin*omega+(-4*(omega+`&omega;0p`)*I2^2*(omega-`&omega;0p`)*((-omega^2+`&omega;0s`^2)*Ls+I*Rs*omega)*Lp-4*(I*(omega+`&omega;0s`)*Rp*I2^2*(omega-`&omega;0s`)*Ls+omega*(I2^2*Rp*Rs-(1/4)*vin^2))*omega)^(1/2))/(Ls^(1/2)*Lp^(1/2)*I2*omega^2)

(1.5.5)

 

Zmutual

Zmutual := `assuming`([expand(abs(vin/I2sol))], [assumptions])

(Lp^2*Ls^2*k^4*omega^8-2*Lp^2*Ls^2*k^2*omega^8+2*Lp^2*Ls^2*k^2*omega^6*`&omega;0p`^2+2*Lp^2*Ls^2*k^2*omega^6*`&omega;0s`^2-2*Lp^2*Ls^2*k^2*omega^4*`&omega;0p`^2*`&omega;0s`^2+Lp^2*Ls^2*omega^8-2*Lp^2*Ls^2*omega^6*`&omega;0p`^2-2*Lp^2*Ls^2*omega^6*`&omega;0s`^2+Lp^2*Ls^2*omega^4*`&omega;0p`^4+4*Lp^2*Ls^2*omega^4*`&omega;0p`^2*`&omega;0s`^2+Lp^2*Ls^2*omega^4*`&omega;0s`^4-2*Lp^2*Ls^2*omega^2*`&omega;0p`^4*`&omega;0s`^2-2*Lp^2*Ls^2*omega^2*`&omega;0p`^2*`&omega;0s`^4+Lp^2*Ls^2*`&omega;0p`^4*`&omega;0s`^4+2*Lp*Ls*Rp*Rs*k^2*omega^6+Lp^2*Rs^2*omega^6-2*Lp^2*Rs^2*omega^4*`&omega;0p`^2+Lp^2*Rs^2*omega^2*`&omega;0p`^4+Ls^2*Rp^2*omega^6-2*Ls^2*Rp^2*omega^4*`&omega;0s`^2+Ls^2*Rp^2*omega^2*`&omega;0s`^4+Rp^2*Rs^2*omega^4)^(1/2)/(omega^3*k*Ls^(1/2)*Lp^(1/2))

(1.5.6)

plot([subs(L = 34*exp(1)-6*omega0 and 34*exp(1)-6*omega0 = 2*Pi*0.85e5, R = 0.1e-1, omega = 2*Pi*85000, Zmutual), subs(L = 0.34e-4, omega0 = 2*Pi*0.85e5, R = 0.1e-1, omega = 2*Pi*79000, Zmutual)], k = 0 .. 1, numpoints = 1000)

plot([subs(Lp = 34*exp(1)-6, Ls = 60*exp(1)-6, omega0 = 2*Pi*85000, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, omega = 2*Pi*85000, Zmutual), subs(Lp = 34*exp(1)-6, Ls = 60*exp(1)-6, omega0 = 2*Pi*85000, Rp = 0.1e-1, Rs = 0.1e-1, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, omega = 2*Pi*79000, Zmutual)], k = 0 .. 1, numpoints = 1000)

plot(subs(L = 0.34e-4, omega0 = 2*Pi*0.85e5, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, k = .25, Zmutual), omega = 0.79e5 .. 0.90e5, numpoints = 1000)

NULL

Primary Current

I1sol := `assuming`([simplify(eval(i[L1], rest))], [assumptions])

-I*omega*vin*(-Ls*omega^2+`&omega;0s`^2*Ls+I*Rs*omega)/(Lp*Ls*(k-1)*(k+1)*omega^4+I*(Lp*Rs+Ls*Rp)*omega^3+(Ls*(`&omega;0p`^2+`&omega;0s`^2)*Lp+Rp*Rs)*omega^2+I*(-Lp*Rs*`&omega;0p`^2-Ls*Rp*`&omega;0s`^2)*omega-Ls*Lp*`&omega;0p`^2*`&omega;0s`^2)

(1.5.7)

at resonance

I1sol_res := simplify(eval(I1sol, [omega = omega0, `&omega;0s` = omega0, `&omega;0p` = omega0]))

vin*Rs/(Lp*Ls*k^2*omega0^2+Rp*Rs)

(1.5.8)

NULL

Self Impedance

Zpself := simplify(vin/I1sol)

(I*Lp*(k+1)*Ls*(k-1)*omega^4+(-Lp*Rs-Ls*Rp)*omega^3+I*(Ls*(`&omega;0p`^2+`&omega;0s`^2)*Lp+Rp*Rs)*omega^2+(Lp*Rs*`&omega;0p`^2+Ls*Rp*`&omega;0s`^2)*omega-I*Lp*Ls*`&omega;0p`^2*`&omega;0s`^2)/(omega*(-Ls*omega^2+`&omega;0s`^2*Ls+I*Rs*omega))

(1.5.9)

NULL

at resonance

zpself_res := simplify(eval(Zpself, omega = omega0))

(I*Lp*(k+1)*Ls*(k-1)*omega0^4+(-Lp*Rs-Ls*Rp)*omega0^3+I*(Ls*(`&omega;0p`^2+`&omega;0s`^2)*Lp+Rp*Rs)*omega0^2+(Lp*Rs*`&omega;0p`^2+Ls*Rp*`&omega;0s`^2)*omega0-I*Lp*Ls*`&omega;0p`^2*`&omega;0s`^2)/(omega0*(-Ls*omega0^2+`&omega;0s`^2*Ls+I*Rs*omega0))

(1.5.10)

 

Normalized

ZselfN := collect(simplify(`assuming`([expand(simplify(I2sol/I1sol))], [assumptions])), Ls)

I*omega^2*k*Ls^(1/2)*Lp^(1/2)/((-omega^2+`&omega;0s`^2)*Ls+I*Rs*omega)

(1.5.11)

 

Normalized Magnitude

`assuming`([MagZpselfN = simplify(eval(I2sol/I1sol, [`&omega;0p` = omega0, `&omega;0s` = omega0]))], [assumptions])

MagZpselfN = I*omega^2*k*Ls^(1/2)*Lp^(1/2)/(-Ls*omega^2+Ls*omega0^2+I*Rs*omega)

(1.5.12)

Plots

 

Zself as a function of Coupling Coefficient

plot(subs(L = 0.34e-4, omega0 = 2*Pi*0.85e5, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, omega = 2*Pi*85000, Zpself/Zmutual), k = 0 .. 1, numpoints = 1000)

plot(subs(Lp = 34*exp(1)-6, Ls = 60*exp(1)-6, omega0 = 2*Pi*0.85e5, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, omega = 2*Pi*85000, abs(Zpself/Zmutual)), k = 0 .. 1, numpoints = 1000)

 

Normalized - Off Resonance

plot(subs(L = 0.34e-4, omega0 = 2*Pi*0.85e5, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, omega = 2*Pi*79000, Zpself/Zmutual), k = 0 .. 1, numpoints = 1000)

plot(subs(Lp = 34*exp(1)-6, Ls = 60*exp(1)-6, omega0 = 2*Pi*0.85e5, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, omega = 2*Pi*79000, abs(Zpself/Zmutual)), k = 0 .. 1, numpoints = 1000)

 

Normalized, at a given coupling

plot(subs(L = 0.34e-4, omega0 = 2*Pi*0.85e5, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, k = .25, Zpself/Zmutual), omega = 0.79e5 .. 0.90e5, numpoints = 1000)

plot(subs(Lp = 34*exp(1)-6, Ls = 60*exp(1)-6, omega0 = 2*Pi*0.85e5, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, k = .25, abs(Zpself/Zmutual)), omega = 0.79e5 .. 0.90e5, numpoints = 1000)

 

Not Normalized, at a given coupling

plot(subs(Lp = 0.34e-4, Ls = 0.60e-4, omega0 = 2*Pi*0.85e5, Rp = 0.1e-1, Rs = 0.1e-1, R = 0.1e-1, k = .25, abs(Zpself)), omega = 0.79e5 .. 0.90e5, numpoints = 1000)

NULL

 

 

NULL

Solution2

   


 

Download coupled_network.mw

 

Hello Maple community

I am trying to solve a system of equations, which is a little complicated.

eq1 := w = sqrt(a^2 - (a - y)^2);
eq2 := v + cot(t + arcsin(w/a)) = 0;
eq3 := u = (sqrt(c^2 - (c - z)^2) - v*x - w)/x^2;
eq4 := x = y + z + e;
eq5 := v + cot(T + arcsin((u*x^2 + v*x + w)/c)) + 2*u*x = 0;
eq6 := f = Pi/30*(6*u^2*x^5 + 15*u*v*x^4 + (20*u*w + 10*v^2)*x^3 + 30*v*w*x^2 + 30*x*w^2) - Pi/3*(-z^3 + 3*z^2*c - y^3 + 3*y^2*a);
sols := solve({eq1, eq2, eq3, eq4, eq5, eq6}, {u, v, w, x, y, z});

I tried solving it, but it is running for more than two hours now. I know that the system is very complicated, and Maple will take long to solve this. But my question is

1. Is it reasonable to take this long for this system of equations?

2. Can I speed it up in any way by using additional cores of my system or something? Can someone please tell me how I can achieve this?

Looking forward to any inputs the Community may have.

First 94 95 96 97 98 99 100 Last Page 96 of 2415