Code Monkey home page Code Monkey logo

elliptic's People

Contributors

drbitboy avatar moiseevigor avatar still-flow avatar wspr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

elliptic's Issues

Infinite precision

Infinite precision evaluation functions for elliptic integrals and others

Original issue reported on code.google.com by [email protected] on 10 Jan 2010 at 6:33

empty input for elliptic123(phi,m)

Dear Vigor,

Could you please add the empty returns (with the same empty size as the input) when calling elliptic123 with two empty inputs? The current version of the code gives the following:

aa= zeros(1,0); [r1 r2]=elliptic123(aa,aa)
Output argument "F" (and maybe others) not assigned during call to "elliptic123>elliptic12x".
Error in elliptic123

It would be very nice to get r1==r2==aa in some vectorization operations since aa could be an empty array.

Thank you very much!

Best wishes,
Jinchuan

A precision problem on elliptic123

Dear virogr,
there might be a problem with the precision of elliptic123. I run the following code on 64bit linux version of Matlab:
K>> [~, K1]= elliptic123(pi/2, 1+2.*eps(0.5))

K1 =

  NaN +    NaNi

K>> [~, K1]= elliptic123(pi/2, 1)

K1 =

 1

K>> ellipticE(pi/2, 1+2.*eps(0.5))

ans =

 1

K>> ellipticE(pi/2, 1)

ans =

 1

Thanks!
Best wishes,
Jinchuan

elliptic12i fails for asin(m>1) input

These two equivalent calculations:

    elliptic12i(asin(sqrt(5)*sin(pi/4)),1/5)
    elliptic12i(1.5708 - 1.0317i,1/5)

Produce the following answers:

       1.6596
       1.6596 -     1.2298i

Only the second is correct. The problem occurs because 

    mu(I)     = atan( sqrt(1./m(I).*(tan(phi(I)).^2.*cot(lambda(I)).^2 - 1)) );

has a singularity for phi = pi/2.

(Note that having cot(lambda) in there is also a problem for similar numerical 
reasons (since lambda=acot(...) but that's an issue for another day.)

Unfortunately I don't know how to fix this problem.


Original issue reported on code.google.com by [email protected] on 10 Jan 2011 at 8:23

inverse Jacobi elliptic function

How can I compute the inverse Jacobi elliptic function using MATLAB 7.4 
(R2007a)?
http://www.mathworks.com/support/solutions/en/data/1-8DZ7LZ/?solution=1-
8DZ7LZ

Original issue reported on code.google.com by [email protected] on 8 Jan 2010 at 11:16

Weierstrass's elliptic functions implementation

Weierstrass's elliptic functions implementation request in terms of elliptic 
integrals and jacobi's elliptic functions

http://en.wikipedia.org/wiki/Weierstrass's_elliptic_functions
http://www.mai.liu.se/~halun/complex/elliptic/
http://mathworld.wolfram.com/WeierstrassEllipticFunction.html

Original issue reported on code.google.com by [email protected] on 10 Jan 2010 at 4:51

Inverse Complete Elliptic Integrals of First and Second type.

To implement with the elliptic package the inverse Complete Elliptic Integrals 
of First K(k) and Second Type E(e).

Various hints from: Louis V. King On The Direct Numerical Calculation Of 
Elliptic Functions And Integrals, 
http://www.archive.org/details/onthenumerical032686mbp

Original issue reported on code.google.com by [email protected] on 20 Dec 2010 at 6:45

elliptic12 sometimes gives incorrect results

The function elliptic12 returns incorrect results for phase equal to some odd multiples of pi/2. For example

m = 0.5;
n = 17;
elliptic12(n*pi/2, m) - n*ellipke(m)
==>
ans = -1.8541

The correct answer is ans = 0 (for any integer n).

While loops with iteation control INVERSELLIPTIC2

- Consider using atan2 instead of atan for the inverselliptic2.m because it's 
more stable and you won't need the eps for the denominator.
- My project required plugging in large numbers in the inverselliptic2.m 
function, which won't work because there's only 4 iterations. So I'd recommend 
using a while loop:
        [~, E] = elliptic12(invE(:),m,tol);
        dinvE = (E - z)./sqrt( 1-m.*sin(invE(:)).^2 );
        while max(abs(dinvE)) > tol
            invE(:) = invE(:)-dinvE;
            [~, E] = elliptic12(invE(:),m,tol);
            dinvE = (E - z)./sqrt( 1-m.*sin(invE(:)).^2 );
        end
        invE(:) = invE(:)-dinvE;

    instead of:
        for iter=1:4
            [~, E] = elliptic12(invE(:),m,tol);
            invE(:) = invE(:)-(E - z)./sqrt( 1-m.*sin(invE(:)).^2 );
        end

Original issue reported on code.google.com by [email protected] on 5 Jan 2014 at 9:08

Carlson symmetric form

Carlson symmetric form realization request

http://en.wikipedia.org/wiki/Carlson_symmetric_form

Original issue reported on code.google.com by [email protected] on 25 Apr 2010 at 11:02

Problem with Matlab2013b

I am sorry to report the following bug in your Matlab package for Elliptic 
Integrals and Functions. I use Matlab2013b and I find that the error message 
jumps out:

Error using .*
Matrix dimensions must agree.

Error in ellipj (line 95)
phin(:) = (2 .^ double(n(K))).*a(i,K).*u(I);

Error in ellipji (line 76)
[s,c,d] = ellipj(phi,m,tol);

Original issue reported on code.google.com by [email protected] on 14 Feb 2015 at 8:39

Wrong result for 3rd kind, where correct result expected

The documentation for elliptic123 leads me to believe that this call should be in the range that Passes.

[K,E,Pi]=elliptic123(0.358, 0.99958)

However, when I compare it with the built-in ellipticPi(0.9958, 0.358), I get very different results.

Nonconformant arguments in ellipj

In Octave 7.3.0

ellipj([1,2],0.9)

gives

error: =: nonconformant arguments (op1 is 2x1, op2 is 2x2)
error: called from
    ellipj at line 95 column 10

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.