/////////////////////////////////////
//
ftloo01.c
//
//
stephen c. ferguson
//
created 10/18/98
//
modified August 2008 by Tad Boniecki
//
/////////////////////////////////////
// 3358
- 3418
void
Formula_00(CDATA *v)
{
// Nova variation method
z = v->z;
temp = 1;
while( v->Iteration++ <
v->Maxit && temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
sine_cosine();
z2
= z*z;
z3
= z2*z;
v->z = z - (zsin*clog_z() -
ctan_z())/(z2*zcos - 2*z)* v->c;
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// 3243
- 3258
void
Formula_01(CDATA *v)
{
// Nova variation method
z = v->z;
//v->z += 1;
temp = 1;
while( v->Iteration++ <
v->Maxit && temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
sine_cosine();
z2
= z*z;
z3
= z2*z;
v->z = z-(z3*zsin -
1)/(7*z2*zcos - 1)+ v->c; //
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// very
similar to #6
void
Formula_02(CDATA *v)
{
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
= z-(zsin/(1e-15+zcos))*(z8-z6-zsin-z-1)/(8*z7-6*z5-zcos -c); // almost the old 49 for 3165 "no
1-3"
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
3189 - 3197, and 3199 - 3205 a very complicated one
void
Formula_03(CDATA *v)
{
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z3*z;
z5
= z4*z;
sine_cosine();
//zcos
= (1e-15+zcos)/0.1;
//zsin
= (1e-15+zsin)/0.1;
v->z = z - ((z*zsin) - z3 +
v->c/(z5*zcos))/(c/z5 + zsin*zcos - 100*z5);
v->z
= v->z - z*((z4 - z*zsin - v->c)/(4*z3 - 3*z2 - 2*z - z*zcos - v->c));
v->z = c/(v->z);
v->z = (v->z)*(v->z) -
v->z;
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
3045 - 3077
void
Formula_04(CDATA *v)
{
// Newton method
if (v->jul == 0)
v->z = 1;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
z
= z1 = v->z;
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
sine_cosine();
//v->z = z-(z4-z)/(4*z3)+v->c;
//
a good one
v->z
= z - ((z5 - z4 + z3*zsin + v->c)/(z4 + z3 - z2*zcos + v->c));
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
3003 - 3044
void
Formula_05(CDATA *v)
{
// Twister weed method
z1 = z;
z = v->z;
c2 = cexp_z();
//z = z1;
//c2 = 1;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
z1
= z;
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z2
= z*z;
sine_cosine();
z
= z -(c2*z2*z2-1)/(z*z2*zcos - z*c)+ v->c;
zd
= z1-z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
z;
v->pYTemp[v->Iteration] = __imag__
z;
v->z = z;
}
//
another variant of old #49, ?? 3167 - 3174 Others too - it's good
void
Formula_06(CDATA *v)
{
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
//v->z
= z-(zsin/(1e-15+zcos))*(z8-z6-zsin-z-1)/(8*z7-6*z5-zcos -c); // almost the old 49 for 3165 "no
1-3"
//v->z
= z-(zsin/(1e-15+zcos))*(z8-zsin-z*c)/(8*z7-zcos-c); // current #8 - same red/blue flame as the above when
enlarged
v->z
= z-(zsin/(1e-15+zcos))*(z8-z6-zsin-z-1)/(8*z7-6*z5-zcos); // new 3167 - 3174 ?
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2946 - 2987
void
Formula_07(CDATA *v) // Phoenix
{
// Nova variation method
z = v->z;
v->z = csin_z();
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
sine_cosine();
v->z = z -(c*cexp_z()*z4-z)*(z3 -
zsin*clog_z())/(z2*zcos + zsin*zsin*zsin)+v->c;
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
//
variant of old #49, 3152 to 3163
void
Formula_08(CDATA *v)
{
temp
= 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
= z-(zsin/(1e-15+zcos))*(z8-zsin-z*c)/(8*z7-zcos-c);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2848 - 2872
void
Formula_09(CDATA *v)
{
// Nova variation method
z = v->z;
v->z = csin_z();
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
sine_cosine();
//v->z = z-(z4-z)/(4*z3-z)+
v->c;
v->z = z-(z3 - zsin*clog_z())/(z2*zcos
+ zsin*zsin*zsin)+v->c;
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2719 - 2809
void
Formula_10(CDATA *v)
{
// Nova variation method
z = v->z;
//v->z += 1;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
sine_cosine();
z2
= z*z;
z3
= z2*z;
v->z = z-(z3*zsin-1)/(3*z2*zcos -
zsin*zsin)+v->c;
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
//OK
2698 - 2718
void
Formula_11(CDATA *v)
{
z = v->z;
c = v->c;
z = -z/3;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration] = __real__
z;
v->pYTemp[v->Iteration] = __imag__ z;
z2 = z;
z1 = z*z;
sine_cosine();
z = z - (c*cexp_z()*zsin *
z1*clog_z())/(z*z + c * zcos);
zd = z-z2;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2652 - 2687
void
Formula_18(CDATA *v) // Newton M-Set,
Explanation by Paul Carlson
{
z = v->z;
c = v->c;
z = -z/3;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration] = __real__
z;
v->pYTemp[v->Iteration] = __imag__ z;
z2 = z;
z1 = z*z;
sine_cosine();
//z=z-(z*z1+z1*c-z+c-zsin)/(3*z1+2*c*z-1-zcos);
z= z - (c*cexp_z()*zsin -
z1*clog_z())/(z*z + c*z - zcos);
zd = z-z2;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2620 - 2651
void
Formula_19(CDATA *v)
{
z = v->z;
c = v->c;
z = -z/3;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z2 = z;
//ztan
= ctan_z()/v->bailout;
sine_cosine();
zcos
= (1e-15+zcos)/v->dStrands;
zsin
= (1e-15+zsin)/v->dStrands;
z=z-(z*z*z+
c*cexp_z() - z - z*clog_z())/(3*z*z+2*c*z-zcos);
zd
= z-z2;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2599 - 2619
void
Formula_20(CDATA *v)
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z*z*z*z - z*z*z*c - z - c; // the
function
z' =
4*z*z*z - 3*z*z*c - 1; // 1st
derivative
z'' = 12*z*z - 6*z*c; // 2nd derivative
12*z*z = 6*z*c;
z =
(6*z*c)/(12*z); // solve for
z
z =
c/2;
*/
z = v->z;
c = v->c;
z = z/2;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z2 = z;
z1 = z*z;
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
z=z-(z1*c*cexp_z()
- z1*z*c - z - z*clog_z())/(4*z*z1 - 3*z1*c - zcos);
zd = z-z2;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2584 - 2598
void
Formula_21(CDATA *v) //
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z*z*z*c + z*z + z + c; // the function
z' =
3*z*z*c + 2*z + 1; // 1st
derivative
z'' = 6*z*c + 2; // 2nd
derivative
6*z*c = -2;
z
= -2/(6*c); // solve
for z
z
= -1/(3*c)
*/
z = v->z;
c = v->c;
z = -1/(3*z);
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z2 = z;
z1 = z*z;
sine_cosine();
z =z-(z1*c + c*cexp_z() + ctan_z() -
zcos)/(z1*z1*c + z*clog_z() + c - zsin);
zd = z-z2;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2550 to 2583
void
Formula_22(CDATA *v) //
{
z = v->z;
c = v->c;
if (v->jul == 0)
z = -.5;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__
z;
z2 = z;
z1 = z*z;
z
= z2;
sine_cosine();
z
= z-(z1*z*c * c * cexp_z()*zsin)/(zsin + 2*zcos);
zd = z-z2;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2511 - 2542
void
Formula_23(CDATA *v) //
{
z = v->z;
c = v->c;
z = -.5/z;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z2 = z;
z1 = z*z;
//ztan
= ctan_z();
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
z
= z-(z1*z1*c + z1*z + z + c - zsin)/(4*z1*z*c + 3*cexp_z() - zcos);
zd = z-z2;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2479 - 2510
void
Formula_24(CDATA *v) // testing
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z*z*z + z*z*c + c; // the function
z' =
3*z*z + 2*z*c ; // 1st derivative
z'' = 6*z + 2*c ; // 2nd derivative
6*z = -2*c;
z
= -2*c/6;
*/
z = v->z;
c = v->c;
z = -z/3;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z2 = z;
z1 = z*z;
//ztan
= ctan_z();
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
z
= z - (z1*cexp_z() + z1*c + c - zsin)/(3*z1 + 2*z*c - zcos);
zd = z-z2;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2449 - 2478
void
Formula_25(CDATA *v) // testing
{
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z = z + (z5*zsin - c*z4*zcos)/((z5*clog_z() + ctan_z()) *
ctan_z());
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2434 - 2448
void
Formula_26(CDATA *v) // testing
{
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
= z + cexp_z() * (z5*zsin - c*z4*zcos)/((z5*clog_z() + ctan_z()) * ctan_z());
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
but not too hot 2421 - 2433
void
Formula_27(CDATA *v) // testing
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z*z*z*z*z*z*z + z*z*z*z*z*z*c + c; //
the function
z' =
7*z*z*z*z*z*z + 6*z*z*z*z*z*c ; // 1st derivative
z'' = 42*z*z*z*z*z + 30*z*z*z*z*c ; // 2nd derivative
42*z*z*z*z*z = -30*z*z*z*z*c;
z
= -(30*z*z*z*z*c)/(42*z*z*z*z);
z
= -(15*c)/21;
z
= -(5*c)/7;
*/
//if (jul == 0)
z = v->z;
c = v->c;
z = -(5*z)/7;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z1 = z;
z2 = z1*z1;
z5 = z2*z2*z1;
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
z = (7*z5*z1 + 6*z5*c - zcos);
z = z1-(z5*z2 + z5*z1*c + c - zsin)/z;
v->z
= z + ctan_z() * (z5*zsin - z4*zcos)/(z5 + ctan_z()) * zsin * zcos * ctan_z();
zd = z-z1;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2405 to 2420
void
Formula_28(CDATA *v) // 9th order
Newton Mset
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z*z*z*z*z*z*z*z*z + z*z*z*z*z*z*z*z*c + c;
// the function
z' =
9*z*z*z*z*z*z*z*z + 8*z*z*z*z*z*z*z*c
; // 1st derivative
z'' = 72*z*z*z*z*z*z*z + 56*z*z*z*z*z*z*c ; // 2nd derivative
72*z*z*z*z*z*z*z = -56*z*z*z*z*z*z*c;
z = -(56*z*z*z*z*z*z*c)/(72*z*z*z*z*z*z);
z = -(7*c)/9;
*/
//if (jul == 0)
z = v->z;
c = v->c;
z = -(7*z)/9;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z1 = z;
z2 = z*z;
z4 = z2*z2;
z5 = z2*z2*z;
z8 = z4*z4;
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
//z
= z-(z5*z4 + z8*c + c - zsin)/(9*z8 + 8*z5*z2*c - zcos);
z = z - zsin/(clog_z()*z8 + (cexp_z() +
c*z - zcos));
zd = z-z1;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2386 to 2404
void
Formula_29(CDATA *v) // 13th order
Newton Mset
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z^13 + (z^12)*c + c; // the function
z' =
13*(z^12) + 12*(z^11)*c; // 1st derivative
z'' = 12*13*(z^11) + 11*12*(z^10)*c; // 2nd derivative
12*13*(z^11) = -11*12*(z^10)*c;
z
= -(11*12*(z^10)*c)/(12*13*(z^10));
= -(11*12*c)/(12*13);
= -11*c/13;
*/
//if (jul == 0)
z = v->z;
c = v->c;
z = -(11*z)/13;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z1 = z;
z2 = z*z;
z4 = z2*z2;
z5 = z2*z2*z;
z8 = z4*z2;
z8 = z4;
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
z = z - (clog_z()*z8 + (cexp_z() + c*z -
zcos))/zsin;
zd = z-z1;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2364 to 2380
void
Formula_30(CDATA *v) // Testing again
{
z = v->z;
c = v->c;
z =
-(3*z)/5;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z1 = z;
z2 = z*z;
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
z = z - clog_z()*(z2*z2*z + z2*z2*c + z +
c - zsin)/(5*z2*cexp_z() + 4*z2*z*c + 1 - zcos);
zd = z-z1;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2311 to 2341
void
Formula_31(CDATA *v) // Newton Diamond
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z^5 + (z^4)*c + z + c;
// the function
z' =
5*(z^4) + 4*(z^3)*c + 1; // 1st derivative
z'' = 20*(z^3) + 12*(z^2)*c; // 2nd derivative
20*(z^3) = -12*(z^2)*c;
z =
-(12*(z^2)*c)/(20*(z^2)); // solve
for z
z =
-(3*c)/5;
*/
z = v->z;
c = v->c;
z = -(3*z)/5;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z1 = z;
z2 = z*z;
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
z = z - clog_z()*(z2*z2*z + z2*z2*c + z +
c - zsin)/(5*z2*z2 + 4*z2*z*c + 1 - zcos);
zd = z-z1;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// ok
2283 to 2310
void
Formula_32(CDATA *v) // Newton Pentagon
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z^6 + (z^5)*c + z + c;
// the function
z' =
6*(z^5) + 5*(z^4)*c + 1; // 1st derivative
z'' = 30*(z^4) + 20*(z^3)*c; // 2nd derivative
30*(z^4) = -20*(z^3)*c;
z =
-(20*(z^3)*c)/(30*(z^3)); // solve
for z
z =
-(2*c)/3;
*/
z = v->z;
c = v->c;
z = -(2*z)/3;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z1 = z;
z2 = z*z;
z4 = z2*z2;
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
//z=z-(z4*z2 + z4*z*c + z + c -
zsin)/(6*z4*z + 5*z4*c - zcos);
z
= z - z2*cexp_z()+ c*zcos;
zd
= z-z1;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2270 to 2282
void
Formula_33(CDATA *v) // Newton Hexagon
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z^7 + (z^6)*c + z + c;
// the function
z' =
7*(z^6) + 6*(z^5)*c + 1; // 1st derivative
z'' = 42*(z^5) + 30*(z^4)*c; // 2nd derivative
42*(z^5) = -30*(z^4)*c;
z =
-(30*(z^4)*c)/(42*(z^4)); // solve
for z
z =
-(5*c)/7;
*/
z = v->z;
c = v->c;
z = -(5*z)/7;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z1 = z;
z2 = z*z;
z4 = z2*z2;
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
z = z - (z4*z2*z + z4*z2*c + z*cexp_z() +
c - zsin)/(7*z4*z2 + 6*z4*z*c + cexp_z()* - zcos);
zd
= z-z1;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2257 to 2269
void
Formula_34(CDATA *v) // Newton Octagon
{
/*
Solve the roots of the function.
Initialize z to one of the roots.
Apply Newton's method for solving roots.
f(z) = z - z/z'
z =
z^9 + (z^8)*c + z + c;
// the function
z' =
9*(z^8) + 8*(z^7)*c + 1; // 1st derivative
z'' = 72*(z^7) + 56*(z^6)*c; // 2nd derivative
72*(z^7) = -56*(z^6)*c;
z =
-(56*(z^6)*c)/(72*(z^6)); // solve
for z
z =
-(7*c)/9;
*/
z = v->z;
c = v->c;
z = -(7*z)/9;
temp = 1;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ z;
v->pYTemp[v->Iteration] = __imag__ z;
z1 = z;
z2 = z*z;
z4 = z2*z2;
sine_cosine();
//zcos
= (1e-15+zcos)/v->dStrands;
//zsin
= (1e-15+zsin)/v->dStrands;
z=z-
cexp_z()*(z4*z4*z + z4*z4*c + z + c - zsin)/(9*z4*z4 + 8*z4*z2*z*c + 1 - zcos);
zd = z-z1;
temp = sum_sqrs_zd();
}
__real__ v->z = __real__ z;
__imag__ v->z = __imag__ z;
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// keep
3147 to 3151
void
Formula_35(CDATA *v) // Testing
{
temp
= 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
= z-(zsin/(1e-15+zcos))*(z7-zsin-z*c-1)/(8*z7-zcos-c);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// keep
2207 to 2241
void
Formula_36(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
c2 = cexp_z();
v->z =
z-(z5-z3-z2*zsin-c2*zsin)/(5*z3-z*z2-z2*zcos-1-zcos)+ v->c;
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2193-2206
void
Formula_37(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z = z + (ctan_z()*ctan_z() - z4 + 7*c
)/((z*zsin * zcos - z5)*ctan_z());
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
2184 to 2192
void
Formula_38(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z = z - (z7*zcos -
z4)/(z2*zsin -1 ) + v->c;
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// keep
2149 - 2171
void
Formula_39(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
= z-(z3-z2-z*zsin)/(z3-z2-z*zcos)+v->c;
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// keep
2137 - 2148
void
Formula_40(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
if (v->jul == 0)
v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z = z - (z - c)*(z + c)*(z*z
+ c)*c;
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// keep
2123-2134
void
Formula_41(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
=
z-(zsin/(1e-15+zsin))*(z8-z5*zsin-z*c-1)/(8*z7-6*z5-zcos-c)*(z5-z4*zsin-zsin*z*c-z);
//
was v->z =
z-(z5-z4*zsin-zsin*z*c-z)/(5*z4-5*z4*zcos-zcos*z*c-1);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// OK
but weak 3123 - 3135
void
Formula_42(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z = z-(z3*zsin * zcos * zcos
- c)/(z*cexp_z() - zsin + z2); //
change this
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
//
Similar to original 3087 - 3095
void
Formula_43(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z =
z-(z5*zsin-z3*zsin-zsin*z*c-z)/(5*z4*zcos-z4*zcos-zcos*z2*c-1);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// keep
2050 - 2070
void
Formula_44(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
//
was v->z =
z-(z6-z5-z5*zsin-z4*zsin*c-zsin*z*c-z)/(6*z5-5*z4-z5*zcos-z4*zcos*c-zcos*z*c-1);
v->z =
z-(z5*zsin-z4*zsin-z3*zsin-z2*zsin*c)/(4*z3*zcos-3*z2*zcos-z2*zcos*c);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// keep
2032-2049
void
Formula_45(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z = (z -(z*zsin * zcos -
z5)*ctan_z())/(zsin*z5 -zcos*(z2-zsin));
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// keep
1986 - 2028
void
Formula_46(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z = z-(z8+z6+z5-z5*zsin-z4*zcos*c-z)/(8*z7-6*z5-5*z4-z5*zcos*zcos-z4*zcos-1);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// keep
1957 - 1985
void
Formula_47(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
= z - (c + ctan_z() + zcos*zsin)/(ctan_z() + z4*zsin - z5);
zd
= z1-v->z;
temp
= sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// 1921
- 1930 keep
void
Formula_48(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z = (z -(z*zsin * zcos -
z5)*ctan_z()/(ctan_z()*ctan_z() - z4 + 7*c));
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
//
modified 20 June 2007 produced # 1696 - 1713; to keep
void
Formula_49(CDATA *v)
{
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
= z-(zsin/(1e-15+zcos*zsin + c))*(z8-z6-zsin-z*c-1)/(8*z7-6*z5-zcos-c);
//
was v->z
= z-(zsin/(1e-15+zcos))*(z8-z6-zsin-z*c-1)/(8*z7-6*z5-zcos-c);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
}
//
modified June 2007; another version of #49; made # 1714 - 1733; To keep
void
Formula_50(CDATA *v)
{
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
//
was v->z =
z-(z4-z3-z3-z2*zsin*c)/(4*z3-3*z2-z2*zcos*c);
v->z
= z-(zsin/(1e-15+7*zcos*zsin + c))*(4*z8-z6-zsin-z*c-1)/(z7-6*z5-zcos-c);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
//
entirely new formula 27/6/7; used for # 1737 - 1778; to keep
void
Formula_51(CDATA *v)
{
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
// was v->z =
z-(z4*zsin-z3*zsin-z3*zsin-z2*zsin*c)/(4*z3-3*z2-z2*zcos*c);
v->z
= z - c*(z8*zsin - z5 + z4*zcos)/(z6 - 27*z7 + z*c);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
//
entirely new formula 10/7/7; used for # 1800 - 1828; to keep
void
Formula_52(CDATA *v)
{
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
//
was v->z =
z-(z4*zsin-z3*zsin-z3*zsin-z2*zsin*c)/(4*z3*zcos-3*z2*zcos-z2*zcos*c);
v->z
= z - c*(z*ctan_z() - z4*zcos)/(zsin*z5 -zcos*(z2-zsin));
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
//
partially tested variant of new 52 22/7/7; 1837 - 1839 keep
void
Formula_53(CDATA *v)
{
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
//
was v->z
= z-(z3*zsin-z2*zsin*c-1)/(3*z2*zcos-2*z*zcos*c);
v->z = z + ctan_z()*ctan_z();
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// 1847
- 1860
void
Formula_54(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
// 4th order Nova
//if (v->jul == 0)
//v->z = 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
= z + ctan_z()*ctan_z() * (z + z*ctan_z()) * z2*zsin * z3*zcos *
z8*ctan_z()/(z5*zsin - z4);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}
// 1862
- 1903
void
Formula_55(CDATA *v)
{
//MessageBox(NULL, "formula 02",
"bug", MB_OK);
//if (v->jul == 0)
//v->z += 1;
temp = 1;
c = v->c;
while( v->Iteration++ < v->Maxit
&& temp > zerotol && temp < dMAX)
{
v->pXTemp[v->Iteration]
= __real__ v->z;
v->pYTemp[v->Iteration] = __imag__ v->z;
z
= z1 = v->z;
z2
= z*z;
z3
= z2*z;
z4
= z2*z2;
z5
= z4*z;
z6
= z5*z;
z7
= z6*z;
z8
= z7*z;
sine_cosine();
v->z
= z + ctan_z() * (z5 + ctan_z()) * zsin * zcos * ctan_z()/(z5*zsin - z4*zcos);
zd
= z1-v->z;
temp = sum_sqrs_zd();
}
v->pXTemp[v->Iteration] = __real__
v->z;
v->pYTemp[v->Iteration] = __imag__
v->z;
}