Hi,
I have a project that requires the use of your elliptic functions project. Thanks for that. I do have a suggestion:
- 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;