sursumCorda

1174 Reputation

13 Badges

2 years, 76 days

MaplePrimes Activity


These are replies submitted by sursumCorda

@Carl Love Thanks for your explanation. Anyway, I hope that Maple can maintain a unified parameter structure.

@nm Thanks. I have fixed it.

@acer Maybe my previous problem Why does `applyrule` fail to apply rules? - MaplePrimes is relevant to this. @Christian Wolinski has provided a workaround using pattern-based applyrule, but I'd like to know how to translate the original (and in my view, easy-to-read) 

applyrule([s(x::anything)(y::anything)(z::anything) = x(z)(y(z)), 
                        k(x::anything)(y::anything) = x, 
                                     i(x::anything) = x], 
          [s(k(s(i)))(s(k(k))(i))(x)(y)), 
           s(s(s)(s))(s)(s(s))(k), 
           s(s(s))(s)(s)(s)(s(s)(k(k)))]); # This does not work. 

into the language of evalindets/subsindets.
Here, s(x::anything)(y::anything)(z::anything) can be translated to typefunc(anything,typefunc(anything,specfunc(anything,s))), and k(x::anything)(y::anything) can be translated to typefunc(anything, k(anything)); nevertheless, according to the documentation of evalindets/subsindets, the second parameter cannot be a list, so I can only input one rule at a time (while there exist three rules). How to make them accept three rules as the arguments at a time (just like what applyrule (as well as define) does)?

@acer Thanks. I believe that it should be converted into a new question. Maybe your valuable replies can be moved there.

@mmcdara Many thanks. The second way is much cleaner. (I don't want to break lines because the plot structure may have further uses.) Perhaps there should be a more convenient way to do so in future releases.

@mmcdara Thanks. I think that sometimes there can be an additional problem: Without breaking the line segments, what if I want the red line to be below the blue area and above the red area, and the blue line to be below the red area and above the blue area?

If you use evalf() then software floating point kicks in, my guess is that  Maple uses GNU MPFR 
…. 

@nm Though Maple does make use of the GNU MPFR library, according to the official website of this library, there seem to be certain subtle differences between them: Comparison of multiple-precision floating-point software. The computation in raw MPFR library is much faster than that in Maple; does Maple just partly use GNU MPFR? 
[moderator: this comparison is out-of-date by over fourteen years]

Edit. Sorry for this outdated citation, but I cannot find a newer one in its official website. (Note that the latest version I can find contains neither Maple nor Mma.)

It should be: 

eq2:=-17=eval(diff(sol,t),t=4);
expand(simplify(eq2));

Edit. Sorry for another typo; 'parametric' is unnecessary here.

Since 2018, one can also evaluate “Python:-Start():” and call Python's state-of-the-art SDP solvers purely in Maple; regrettably, the communication overhead is rather heavy (at least on my low-end PC). (However, as neither the "GlobalOptimization" add-on nor the "DirectSearch" toolbox deals with such optimization problems, the dependence upon MatLab/Python seems inevitable at present.)

Sorry for bumping this necro-post. There do exist several papers that appear to meet the OP's demand, but as the OP has said, I do not know where to download the code as well.

While one may execute “Matlab:-openlink():” and invoke MatLab's best-in-class SDP solvers purely in Maple, the most recent NAG optimization modelling suite does possess an SDP solver e04svf (namely, nagf_​opt_​handle_​solve_​pennon) “suitable for both small dense and large-scale sparse problems”.
The help page of "Optimization" claims: 

The Optimization package solvers rely on a built-in library of optimization routines provided by the Numerical Algorithms Group (NAG).

Then, will the Optimization module take advantage of NAG's industrial-strength routine e04svf in future releases (so that it is possible to get rid of the dependence on extra softwares when solving SDPs)? 

@vv Many thanks. Is this a typo?

f := seq(convert(SolveTools:-SemiAlgebraic({numer(eval(Sys[1], tanhalf))}), radical), i = 1 .. 2);

@acer & @vv Thanks. I believe that there is some misinterpretation (see the edit).

@vv & @acer Thanks. But they are not a system; they are two equations (though the solutions to each are identical).

Your “Sumof2Squares(1973);” returns the correct result “23, 38”. 

A better approach for your purpose is to directly use the built-in function NumberTheory:-SumOfSquares (or numtheory:-sum2sqr). 

@dharr Many thanks. I'll read its tutorial later. (I hope that some utilities in such extra packages can be built into Maple in future releases.)

4 5 6 7 8 9 10 Last Page 6 of 22