3713 Reputation

17 Badges

5 years, 353 days

MaplePrimes Activity

These are replies submitted by mmcdara


Thank you vv.
I think I'd tried _CubeCuhre but with an higher value of epsilon (whose real role remains mysterious for me).

Pd: of course I forgagot to divide by (2*Pi)^3


Thanks for the checking with Maple 2018.
I will consider that the "bug" is fixed.


"Anyway, the probability that someone knows the ode of the catenary but not its formula is low"
particularly true if your mother tongue is French

In French the term caténaire (catenary) is only used to speak of a "the set of support cables and conductor wires intended to supply electrical transport means with current collected by an overhead device" (for instance to supply power to an electric train or tram).

In French the catenary curve is termed chaînette wich litterally means "little chain", for instance the chain of a pendant (to refer to a wire with null transverse stiffness).

The latin term catena means chain (En) or chaîne (Fr) and  catenaria ("the curve relative to a chain") seems to have been introduced by Huygens. Thus French uses the translation of the word catena to denote the catenary curve while English uses an anglicization of the Leibnitz' term catenaria (catenary curve is logically a pleonasm given the meaning of catenaria).

French also has the term canténoïde (catenoid) to refer to the revolution surface which represents the equilibrium shape of a soap bubble between two circles.


Knowing the solution (Y(x) and L(x)) always makes it easier to find it!


Indeed, I thought I had done enough tests to check my procedure but the list is obviously not exhaustive.
The problem of translating a number into an engineering notation seems pretty simple but It's a bit of a headache.
Did you plan to deliver your own procedure?


Much more clever than the naive screening I had thought of
Also I didn't know about the issqr and isqrt functions.
Thanks, I vote up

Are you sure you didn't forget some multiplication symbol (seems to be a quite common mistake in 2D input mode)

                         /        1         \    
               (x - 600) |62500 + - y - 60 x| - y
                         \        5         /    

                 /        1         \          
                x|62500 + - y - 60 x| - 600 - y
                 \        5         /          


# with a mutiplication symbol after (x-600)




# without the mutiplication symbol after (x-600)




# other mutiplication symbols discarded




# no mutiplication symbol




# in case you doubt of what you have writte (or of what Maple understands)
# a good reflex is to use the lprint comman










II think that its possible to write the problem in an even simpler way.
First step

ode__theta__1 := diff(theta__1(y),y,y) = 0;
ode__theta__2 := diff(theta__2(y),y,y) = 0;

# replace ode__theta__1  and ode__theta__2 by a single ode

ode__theta := diff(theta(y),y,y) = 0:

# and use the bcs

bcs__theta := theta(-1)=1, theta(+1)=0:

# solve

dsolve({ode__theta, bcs__theta});  # obvious solution

                                   1     1
                      theta(y) = - - y + -
                                   2     2

 # Note that the continuity equations at y=0 are automatically satisfied

Second step
Suppose the two odes in u__1 and u__2 (which are basically of the same form) describe some phenomenon in a non homogenous material made of two layers [-1, 0] and [0, 1].
If it is so one could think to write, not 2 odes , but a single one (unknown u(y)) with bcs u(-1)=0 and u(+1)=0.
In such a case the continuity relations through "interface" y=0 

u__1(0) = u__2(0):
D(u__1)(0) + 1/2*N(0) = 1/2*D(u__2)(0):

could be implicit.
If we rewrite the odes in u__1 and u__2 in "conservation form" we observe that the second equality above is nothing else but the expression of the conservation of the "flux" through interface y=0, while the first equality expresses that u is continuous at y=0.

# Rewrite ode__u__1 and ode__2 this way

-1 <= y and y <= 0, Diff(Diff(u__1(y), y)+N(y)/2, y) = -theta(y)/2,
0 <= y and y <= +1, Diff(Diff(u__2(y), y), y) = -theta(y)

piecewise(-1 <= y and y <= 0, Diff(Diff(`#msub(mi("u"),mi("1"))`(y), y)+(1/2)*N(y), y) = -(1/2)*theta(y), 0 <= y and y <= 1, Diff(`#msub(mi("u"),mi("2"))`(y), y, y) = -theta(y))



The two equalities at y=0 are thus implicitely verified if we set 

Diff(Diff(u(y), y)+Phi(y), y) =  S(y);

Phi(y) =  piecewise(
-1 <= y and y <= 0, N(y)/2,
0 <= y and y <= +1, 0

S(y) = piecewise(
-1 <= y and y <= 0, -theta(y)/2,
0 <= y and y <= +1, theta(y)

Diff(Diff(u(y), y)+Phi(y), y) = S(y)


Phi(y) = piecewise(-1 <= y and y <= 0, (1/2)*N(y), 0 <= y and y <= 1, 0)


S(y) = piecewise(-1 <= y and y <= 0, -(1/2)*theta(y), 0 <= y and y <= 1, theta(y))


# continuity of u at the "interface" y=0

'limit'(u(y), y=0, left) = 'limit'(u(y), y=0, right)

limit(u(y), y = 0, left) = limit(u(y), y = 0, right)


#continuity of the "flux" through the "interface" y=0

'limit'(Diff(u(y), y)+Phi(y), y=0, left) = 'limit'(Diff(u(y), y), y=0, right)

limit(Diff(u(y), y)+Phi(y), y = 0, left) = limit(Diff(u(y), y), y = 0, right)



Given theta is known from step 1, the system made of 3 odes (u__1, u__2 and N), 2 continuity equations and 4 boundary conditions then reduces to a system of 2 odes and 4 bcs.



Two mistakes:

  1. the plot of f(x-1) is not obtained with 
    f3:=transform( (x,y)->[x-1, y]):

    but with

    f3:=transform( (x,y)->[x+1, y]):
  2. the the plot of f(2*x) is not obtained with 

    f4:=transform( (x,y)->[2*x, y]):

    but with

    f4:=transform( (x,y)->[x/2, y]):



This is related to this question I posted recently 232797-How-To-Find-The-Maximum-Value-Of-This-Function
In order for someone to answer it, it was necessary for me to provide several elements that constitute a part of the m-file generated by the calculation code that I develop.
So its really about an attachment on a Mapleprimes posting.

@Joe Riel 

thanks Joel


Of course! Where was my head?

The funny thing (?) is that I first wrote

# The location of the extrema of f (g) verifies diff(f(x),x)=0
# (diff(g(x)=0);

solve~([diff(f(x), x) , diff(g(x), x)], x);
extr__x := %[1];

# equate these values 

extr__p := solve(%[1]=%[2], p);

and then I stupidly simplified this into what I wrote in my answer.

I won't edit my answer (mistake done and well done), the OP will use your correction.


Maybe your example is too simple to reveal potential differences.
Look at this one (could it be something like this that puzzles @abdulganiy?)


# Use contourplot(). Note that by setting contours=[0]
# the command should return (all) contours on which
# sin(x*y)=0
  plots:-contourplot( 1/sin(x*y),
                      x = -Pi..Pi,
                      y = -Pi..Pi,


# Use implicitplot() on the same expression. Note
# that since one is plotting an expression rather
# than an equation, Maple will *assume* that one
# wants to plot solution curves of the equation
# sin(x*y)=0 - which ought to be the same as the
# contourplot above
  plots:-implicitplot( 1/sin(x*y),
                       x = -Pi..Pi,
                       y = -Pi..Pi,
                       gridrefine=4  # or higher







I just answered the question "simplifying a specific trig equality" nothing more


In this case

assuming R::positive,z>R

is enough (at least with Maple 2015).
But I agree that Maple is not always able to deduce the assumptions it needs from those provided.

First 8 9 10 11 12 13 14 Last Page 10 of 86