<div>The program runs when I define &quot;bigF = cln_R&quot;, but I get errors when I set &quot;bigF = cln_F&quot;</div><div>I found that the exponential function only gives many digits of precision when I use cln_F. </div>
<div>I am attaching my program and the out put is below:</div><div><br></div><div><div>fuji:rama joshua$ make</div><div>g++ -DHAVE_CONFIG_H -I.  -I../include -I../include   -g -O2 -MT e.o -MD -MP -MF .deps/e.Tpo -c -o e.o e.cc</div>
<div>In file included from /usr/include/c++/4.0.0/backward/iostream.h:31,</div><div>                 from e.cc:1:</div><div>/usr/include/c++/4.0.0/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the &lt;X&gt; header for the &lt;X.h&gt; header for C++ includes, or &lt;iostream&gt; instead of the deprecated header &lt;iostream.h&gt;. To disable this warning use -Wno-deprecated.</div>
<div>e.cc: In function ‘bigF h(bigF, bigF*, int, int, int)’:</div><div>e.cc:233: error: conversion from ‘const cln::cl_N’ to non-scalar type ‘bigF’ requested</div><div>e.cc: In function ‘bigF ff(bigF, bigF, bigF*, int, int, int)’:</div>
<div>e.cc:251: error: no match for ‘operator=’ in ‘q = cln::operator*(const cln::cl_R&amp;, const cln::cl_R&amp;)(((const cln::cl_R&amp;)(&amp; cln::exp(const cln::cl_R&amp;)())))’</div><div>../include/cln/float_class.h:40: note: candidates are: cln::cl_F&amp; cln::cl_F::operator=(const cln::cl_F&amp;)</div>
<div>../include/cln/float_class.h:47: note:                 cln::cl_F&amp; cln::cl_F::operator=(float)</div><div>../include/cln/float_class.h:48: note:                 cln::cl_F&amp; cln::cl_F::operator=(double)</div><div>
e.cc:258: error: conversion from ‘const cln::cl_N’ to non-scalar type ‘bigF’ requested</div><div>e.cc: In function ‘bigF v(bigF, bigF*, int, int, int)’:</div><div>e.cc:275: error: conversion from ‘int’ to ‘cln::cl_F’ is ambiguous</div>
<div>../include/cln/float_class.h:38: note: candidates are: cln::cl_F::cl_F(cln::cl_anything*)</div><div>../include/cln/float_class.h:26: note:                 cln::cl_F::cl_F(const char*)</div><div>../include/cln/float_class.h:48: note:                 cln::cl_F::cl_F(double)</div>
<div>../include/cln/float_class.h:47: note:                 cln::cl_F::cl_F(float)</div><div>e.cc:276: error: conversion from ‘int’ to ‘cln::cl_F’ is ambiguous</div><div>../include/cln/float_class.h:38: note: candidates are: cln::cl_F::cl_F(cln::cl_anything*) &lt;near match&gt;</div>
<div>../include/cln/float_class.h:26: note:                 cln::cl_F::cl_F(const char*) &lt;near match&gt;</div><div>../include/cln/float_class.h:48: note:                 cln::cl_F::cl_F(double)</div><div>../include/cln/float_class.h:47: note:                 cln::cl_F::cl_F(float)</div>
<div>e.cc:281: error: no match for ‘operator=’ in ‘w = cln::operator*(const cln::cl_R&amp;, const cln::cl_R&amp;)(((const cln::cl_R&amp;)((const cln::cl_R*)(&amp; w.cln::cl_F::&lt;anonymous&gt;))))’</div><div>../include/cln/float_class.h:40: note: candidates are: cln::cl_F&amp; cln::cl_F::operator=(const cln::cl_F&amp;)</div>
<div>../include/cln/float_class.h:47: note:                 cln::cl_F&amp; cln::cl_F::operator=(float)</div><div>../include/cln/float_class.h:48: note:                 cln::cl_F&amp; cln::cl_F::operator=(double)</div><div>
e.cc:283: error: ambiguous overload for ‘operator=’ in ‘q = 0’</div><div>../include/cln/float_class.h:40: note: candidates are: cln::cl_F&amp; cln::cl_F::operator=(const cln::cl_F&amp;)</div><div>../include/cln/float_class.h:47: note:                 cln::cl_F&amp; cln::cl_F::operator=(float)</div>
<div>../include/cln/float_class.h:48: note:                 cln::cl_F&amp; cln::cl_F::operator=(double)</div><div>e.cc:289: error: no match for ‘operator=’ in ‘q = cln::operator*(const cln::cl_R&amp;, const cln::cl_R&amp;)(((const cln::cl_R&amp;)(&amp; cln::exp(const cln::cl_R&amp;)())))’</div>
<div>../include/cln/float_class.h:40: note: candidates are: cln::cl_F&amp; cln::cl_F::operator=(const cln::cl_F&amp;)</div><div>../include/cln/float_class.h:47: note:                 cln::cl_F&amp; cln::cl_F::operator=(float)</div>
<div>../include/cln/float_class.h:48: note:                 cln::cl_F&amp; cln::cl_F::operator=(double)</div><div>e.cc:294: error: conversion from ‘const cln::cl_N’ to non-scalar type ‘bigF’ requested</div><div>e.cc: In function ‘bigF integralH(bigF*, int, int, int, int)’:</div>
<div>e.cc:312: error: ambiguous overload for ‘operator=’ in ‘aa = 1’</div><div>../include/cln/float_class.h:40: note: candidates are: cln::cl_F&amp; cln::cl_F::operator=(const cln::cl_F&amp;)</div><div>../include/cln/float_class.h:47: note:                 cln::cl_F&amp; cln::cl_F::operator=(float)</div>
<div>../include/cln/float_class.h:48: note:                 cln::cl_F&amp; cln::cl_F::operator=(double)</div><div>e.cc:313: error: ambiguous overload for ‘operator=’ in ‘b = 20’</div><div>../include/cln/float_class.h:40: note: candidates are: cln::cl_F&amp; cln::cl_F::operator=(const cln::cl_F&amp;)</div>
<div>../include/cln/float_class.h:47: note:                 cln::cl_F&amp; cln::cl_F::operator=(float)</div><div>../include/cln/float_class.h:48: note:                 cln::cl_F&amp; cln::cl_F::operator=(double)</div><div>
e.cc:317: error: conversion from ‘int’ to ‘cln::cl_F’ is ambiguous</div><div>../include/cln/float_class.h:38: note: candidates are: cln::cl_F::cl_F(cln::cl_anything*)</div><div>../include/cln/float_class.h:26: note:                 cln::cl_F::cl_F(const char*)</div>
<div>../include/cln/float_class.h:48: note:                 cln::cl_F::cl_F(double)</div><div>../include/cln/float_class.h:47: note:                 cln::cl_F::cl_F(float)</div><div>e.cc:320: error: ambiguous overload for ‘operator=’ in ‘w = 0’</div>
<div>../include/cln/float_class.h:40: note: candidates are: cln::cl_F&amp; cln::cl_F::operator=(const cln::cl_F&amp;)</div><div>../include/cln/float_class.h:47: note:                 cln::cl_F&amp; cln::cl_F::operator=(float)</div>
<div>../include/cln/float_class.h:48: note:                 cln::cl_F&amp; cln::cl_F::operator=(double)</div><div>e.cc:321: error: conversion from ‘int’ to ‘cln::cl_F’ is ambiguous</div><div>../include/cln/float_class.h:38: note: candidates are: cln::cl_F::cl_F(cln::cl_anything*) &lt;near match&gt;</div>
<div>../include/cln/float_class.h:26: note:                 cln::cl_F::cl_F(const char*) &lt;near match&gt;</div><div>../include/cln/float_class.h:48: note:                 cln::cl_F::cl_F(double)</div><div>../include/cln/float_class.h:47: note:                 cln::cl_F::cl_F(float)</div>
<div>e.cc: In function ‘bigF integralL(bigF*, int, int, int, int)’:</div><div>e.cc:339: error: ambiguous overload for ‘operator=’ in ‘b = 1’</div><div>../include/cln/float_class.h:40: note: candidates are: cln::cl_F&amp; cln::cl_F::operator=(const cln::cl_F&amp;)</div>
<div>../include/cln/float_class.h:47: note:                 cln::cl_F&amp; cln::cl_F::operator=(float)</div><div>../include/cln/float_class.h:48: note:                 cln::cl_F&amp; cln::cl_F::operator=(double)</div><div>
e.cc:346: error: ambiguous overload for ‘operator=’ in ‘w = 0’</div><div>../include/cln/float_class.h:40: note: candidates are: cln::cl_F&amp; cln::cl_F::operator=(const cln::cl_F&amp;)</div><div>../include/cln/float_class.h:47: note:                 cln::cl_F&amp; cln::cl_F::operator=(float)</div>
<div>../include/cln/float_class.h:48: note:                 cln::cl_F&amp; cln::cl_F::operator=(double)</div><div>make: *** [e.o] Error 1</div><div>fuji:rama joshua$ make</div><div><br></div></div><div><br></div><div><br>
</div><br clear="all"><br>-- <br>Joshua Friedman PhD<br><a href="mailto:CrownEagle@gmail.com">CrownEagle@gmail.com</a><br><a href="http://www.math.sunysb.edu/~joshua">http://www.math.sunysb.edu/~joshua</a><br>