acer

32385 Reputation

29 Badges

19 years, 334 days
Ontario, Canada

Social Networks and Content at Maplesoft.com

MaplePrimes Activity


These are replies submitted by acer

It seems my guess was right. fsolve is trying to nail down the 10th digit accurately (for default Digits=10 as the environment). So unless it can compute the expression (involving a numeric integral) at least that accurately then it may get into some trouble. And it may also hit a known issue where evalf/int goes "away" while trying to find discontinuities of the integrand in expression form and when no quadrature method is forced. Using the integrand in operator form is going to confuse fsolve which has overzealous checks for mixed operator/expression cases, so that  leaves forcing the quadrature method.

conclusion: tighten the accuracy of the numeric integral, so fsolve has a chance to meeting its own (somewhat inflexible) accuracy requirement, and force the quadrature method to make it faster.

restart:

F := Int(sqrt((2.138+0.3e-2*exp((4.2^2-z^2)/d^2))^2-2.141^2), z=0 .. 4.2,
         digits=15, epsilon=1e-12, method=_d01ajc) = .5:

fsolve(F,d=2..6);

                          3.957142936

If you obtained that Int() call as the result of something else then you might have to do some `op` work to shoehorn in those extra options.

acer

It seems my guess was right. fsolve is trying to nail down the 10th digit accurately (for default Digits=10 as the environment). So unless it can compute the expression (involving a numeric integral) at least that accurately then it may get into some trouble. And it may also hit a known issue where evalf/int goes "away" while trying to find discontinuities of the integrand in expression form and when no quadrature method is forced. Using the integrand in operator form is going to confuse fsolve which has overzealous checks for mixed operator/expression cases, so that  leaves forcing the quadrature method.

conclusion: tighten the accuracy of the numeric integral, so fsolve has a chance to meeting its own (somewhat inflexible) accuracy requirement, and force the quadrature method to make it faster.

restart:

F := Int(sqrt((2.138+0.3e-2*exp((4.2^2-z^2)/d^2))^2-2.141^2), z=0 .. 4.2,
         digits=15, epsilon=1e-12, method=_d01ajc) = .5:

fsolve(F,d=2..6);

                          3.957142936

If you obtained that Int() call as the result of something else then you might have to do some `op` work to shoehorn in those extra options.

acer

Are you given E? Is it symmetric?

Could you attach all the data to a Comment on this Question?

acer

I would like to extend a welcome to Carl

There is a great deal worth reading in his responses and posts on the USENET groups comp.soft-sys.math.maple and sci.math.symbolic [1, 2], back before Mapleprimes existed.

acer

I would like to extend a welcome to Carl

There is a great deal worth reading in his responses and posts on the USENET groups comp.soft-sys.math.maple and sci.math.symbolic [1, 2], back before Mapleprimes existed.

acer

Using ':-epsilon'=1e-5 I got the following plot,

acer

Using ':-epsilon'=1e-5 I got the following plot,

acer

@Markiyan Hirnyk Indeed, once a 2D Math input containing atomic identifiers has been converted to 1D then using the context-menu to convert it back to 2D input doesn't get a nicely typeset piece of input. The same seems to go for entering the TypeMK explicitly while in 2D input mode. It seems that atomic identifiers cannot be successfully round-trip converted typeset 2D->1D->typset 2D using the context menus.

On a wild guess, I also tried it for input `#msup(mi("a"),mn("2"),msemantics="atomic")` but again no luck.

But I was not talking about that. I was referring only to the case of right-clicking on a 2D typeset bit of 2D Math input which had previously been toggled as atomic identifier. What you gave was a bit of TypeMK which was not typeset. I suppose one may sensibly distinguish between input which is typeset 2D Math and input which is TypeMK code notation that can represent it.

@Markiyan Hirnyk Indeed, once a 2D Math input containing atomic identifiers has been converted to 1D then using the context-menu to convert it back to 2D input doesn't get a nicely typeset piece of input. The same seems to go for entering the TypeMK explicitly while in 2D input mode. It seems that atomic identifiers cannot be successfully round-trip converted typeset 2D->1D->typset 2D using the context menus.

On a wild guess, I also tried it for input `#msup(mi("a"),mn("2"),msemantics="atomic")` but again no luck.

But I was not talking about that. I was referring only to the case of right-clicking on a 2D typeset bit of 2D Math input which had previously been toggled as atomic identifier. What you gave was a bit of TypeMK which was not typeset. I suppose one may sensibly distinguish between input which is typeset 2D Math and input which is TypeMK code notation that can represent it.

@Markiyan Hirnyk Sorry, that was careless of me; I didn't read the question at all carefully.

@Markiyan Hirnyk Sorry, that was careless of me; I didn't read the question at all carefully.

Isn't the "Atomic Identifier" a checkbox in the right-click context-menu? Cannot you select, right-click, and toggle it off in the same way that you can toggle it on?

(This worked for me, toggling a^2 as LHS of an assignment (2D Math input) to and from atomic identifier, on both Maple 16.01 and Maple 13.01.)

acer

Isn't the "Atomic Identifier" a checkbox in the right-click context-menu? Cannot you select, right-click, and toggle it off in the same way that you can toggle it on?

(This worked for me, toggling a^2 as LHS of an assignment (2D Math input) to and from atomic identifier, on both Maple 16.01 and Maple 13.01.)

acer

Where does the .mla library reside, relative to script1? And relative to script2?

Does script1 call Maple, or does Maple read script1? (What language is script1 in?)

There's a greal deal that is unclear in your question.

acer

This might be due to the ordering of the coefficients (in a set, say).

restart:
expr:=a*Zeta^2 + p*Zeta^5:
patmatch(expr, conditional(Zeta^n::posint*y::anything+z::anything,
         n >= 3), 's');s;s:='s':

                             false
                               s

restart:
expr:=p*Zeta^2 + a*Zeta^5:
patmatch(expr, conditional(Zeta^n::posint*y::anything+z::anything,
         n >= 3), 's');s;s:='s':

                              true
                  [                        2]
                  [n = 5, y = a, z = p Zeta ]

restart:
escloc:=proc() local a; a; end proc():
expr:=escloc*Zeta^2 + a*Zeta^5:
{escloc*Zeta^2, a*Zeta^5};
patmatch(expr, conditional(Zeta^n::posint*y::anything+z::anything,
         n >= 3), 's');s;s:='s':

                       /      5        2\ 
                      { a Zeta , a Zeta  }
                       \                / 
                              true
                  [                        2]
                  [n = 5, y = a, z = a Zeta ]

restart:
escloc:=proc() local a; a; end proc():
expr:=a*Zeta^2 + escloc*Zeta^5:
{a*Zeta^2, escloc*Zeta^5};
patmatch(expr, conditional(Zeta^n::posint*y::anything+z::anything,
         n >= 3), 's');s;s:='s':

                       /      2        5\ 
                      { a Zeta , a Zeta  }
                       \                / 
                             false
                               s

acer

First 387 388 389 390 391 392 393 Last Page 389 of 592