Dr. David Harrington

3491 Reputation

17 Badges

18 years, 97 days
University of Victoria
Professor or university staff
Victoria, British Columbia, Canada

Social Networks and Content at Maplesoft.com

Maple Application Center
I am a professor of chemistry at the University of Victoria, BC, Canada, where my research areas are electrochemistry and surface science. I have been a user of Maple since about 1990.

MaplePrimes Activity

These are replies submitted by dharr

@bstuan Note (A.B)^2 = A.B.A.B <> A.A.B.B

@Earl It's not clear to me why the loxodromic spiral would be the (2,3) case. There's only a single spiral, so it's more like (2,1), but that doesn't work out quantitatively. Here is separate code for the loxodromic case:


Loxodromic spiral. Ref: H.S.M. Coxeter, Loxodromic sequences of tangent spheres, Aequationes Mathematicae, 1 (1968) 104–121, doi:10.1007/BF01817563

a:=r*(1+x^2):b:=r*(1+x):c:=r*(x+x^2):   #sides of A0,A1,A2 triangle
cosA1:=(b^2+c^2-a^2)/2/b/c: #internal angle fom cosine rule


x = 2.890053638

beta = 128.1727077*degrees






Download LoxodromicCircles.mw

You can use dsolve for this. See the help page ?dsolve,ICs (BCs are done in the same way). Do you want an analytical or numerical solution? Suggest you try this, and if there is a problem, upload your worksheet with the green up-arrow, and someone will help you.

@PaulNewton In Maple, use 10^(-14); the () are required. To see more of the Matrix use interface(rtablesize=30). 

@Earl The white rectangle needs to be behind the circles, which usually happens when it is first in the display sequence. Somehow it ends up on top if circle is changed to disk. (Using a list doesn't help). The workaround is just to remove the rectangle. As for (2,3), I'll need to think about that some more...

@jetboo Just use [1,1]. You can have [1,1,1,2,2] etc. See the help page ?D

@samiyare I think changing BCs or ICs won't help; My understading is that each PDE has to have only one variable such as T(x,t). Obviously this is quite limiting. To solve this you may have to implement your own scheme, such as method of lines or differential quadrature.

See here for one example. 


@panke I thought you wanted to remove the assumption, but maybe you wanted to remove the tilde, which @Rouben Rostamian has told you how to do. I do not understand your point above.

@mmcdara V=~0 is not a solution because of 0/0, but perhaps it is a solution to the original problem before it was manipulated into this form. I agree there is something strange about the system; perhaps for other values of the OP's free parameters it has clearer solutions.

@mmcdara I dont understand your final comment, since your minima have mu__jk=mu__ki; they also have the lambdas with the same magnitude. You are right this is a tricky problem for fsolve (so needs careful checking increasing Digits and perhaps the fulldigits option), but minimizing only finds one of the solutions, and prseumably all solutions are sought.

If you put all the equations in numer/denom form with normal, then take the numerators, then all variables=zero is a solution:


gives zeroes. The numerators are all multivariate polynomials, though not sure if this helps.

@MaPal93 Here's how I would collect output of fsolve into a Matrix: fsolvecollect.mw

I think your premise that the different solutions of fsolve differ because of convergence issues is not correct; they are separate accurate solutions of the set of equations. To verify this, you could set Digits:=20; and see that almost all of the digits you currently get are accurate.

To put values back into alpha etc use eval: eval(alpha,{mu=2,s=3})

To vary the parameters means putting things into some sort of loop; a lot depends on how systematic you want to be.

@MaPal93 It seems very unlikely there is an analytical solution; solve already will try many algorithms.


  • what the ^+ does at the SMI step (4th line)
    It means transpose (%T is an alternative), so SMI is a row vector, as you wanted.
  • why in natlq2 and natlq3 steps SMI2 and SMI3 are not transposed (see your initial comment) before being multiplied by Y
    I think the above probably already answers that. The row vectors SMI2 and SMI3 multiply the column vector Y to give a scalar. (The usual dive row down column and add, which in this case amounts to a dot product.)

For fsolve, you get one root (at least in my earlier version of Maple). To find others you will need to help fsolve. If you are lucky, use the avoid option to avoid this one next time and then so on. Or you can give ranges within which you can find the root of interest, or you can give initial guesses (less reliable in my experience). Maple has optimizers if you need to go that route.)

See my answer here. But also maxsols=8 may work without these tricks.

@MaPal93 I don't understand; your newly updated document has no LinearSolve. I used worksheet mode originally because I am most familiar with it, but have done the updated one in document mode - see the added document to my answer above. Run the document, and remove the colons to see the answers. The answers are extremely long; I'm not sure they will be useful.

1 2 3 4 5 6 7 Last Page 2 of 32