c# parse pdf to xml : Preview edit pdf metadata control Library system azure .net winforms console xnumbers-tutorial125-part879

Xnumbers Tutorial 
250 
Euler-Mascheroni Constant  
γ
xGm([Digit_Max])   
Returns the Euler-Mascheroni gamma constant. 
The optional parameter Digit_Max sets the maximum digits (default 30, max 415)  
+ + + +
=
→∞
)
log(
1
...
3
1
2
1
1
lim
n
n
n
γ
Example: compute the gamma constant with 40 significant digits 
xGm(40) = 0.5772156649015328606084804798767149086546 
Gamma function Γ(x) 
xGamma(x, [Prec]) 
Returns the gamma function with precision up to 30 digits.  
Definition: 
=
Γ
0
1
( )
t e e dt
x
t
x
Optional parameter Prec sets the maximun precision from 15 (default) to 30 digits 
When Prec = 15 the routine works in faster double arithmetic. 
This routine uses the excellent Lanczos series approximation
1
+
+
+ +
Γ
=
+
N
i
i
x
g
x i
c
c
e
x g
e
x
1
0
2
1
2
1
2
( )
π
where: g = 607/128, ci are the Lanczos' coefficients and 14 < N < 22. 
Relative accuracy in double precision is better than 10^-14, (except very near to the poles x = 
0, -1. -2, -3, etc.). In extended precision the accuracy is better then 1E-30 
xGamma(5.1)       = 27.9317537383684 
xGamma(5.1, 30) = 27.9317537383683833586731052773 
This function works also with large argument because it uses the multiprecision format to avoid 
the overflow for arguments greater than 170.  
Example,  
xgamma(x) 
Rel. Error 
0.0001 
9.99942288323162E+3 
1.00E-15 
0.001 
9.99423772484596E+2 
1.02E-15 
0.01 
9.94325851191507E+1 
1.00E-15 
0.1 
9.51350769866874 
9.33E-16 
10 
3.6288E+5 
100 
9.33262154439441E+155 
5.64E-16 
1
This high accuracy algorithm has been extracted form a very good note by Paul Godfrey, Intersil , C.2001 
Preview edit pdf metadata - add, remove, update PDF metadata in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Allow C# Developers to Read, Add, Edit, Update and Delete PDF Metadata
pdf metadata viewer online; acrobat pdf additional metadata
Preview edit pdf metadata - VB.NET PDF metadata library: add, remove, update PDF metadata in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Enable VB.NET Users to Read, Write, Edit, Delete and Update PDF Document Metadata
embed metadata in pdf; pdf metadata editor
Xnumbers Tutorial 
251 
1,000 
4.02387260077093E+2564 
1.92E-15 
10,000 
2.84625968091705E+35655 
1.58E-15 
100,000 
2.82422940796034E+456568 
2.75E-15 
1,000,000  8.26393168833122E+5565702 
2.54E-15 
Note that relative accuracy is better than 5E-15 in any case. 
You can convert in double only the values with x  170, otherwise you will get  #VALUE! (error). 
You can manipulate these large values only by the "x-functions", or, separating mantissa and 
exponent (see xsplit()) 
FACTORIAL: Thanks to its efficence and accuracy, this function can also be used to calculate 
the factorial of a big integer number, using the relation 
n! = Γ(n+1) 
Example: 
xfact(10002) = 
2.84711361574652325360317551421E+35667  30 digits, slower 
xgamma(10003) = 
2.84711361574651E+35667 
15 digits, faster 
Log Gamma function 
xGammaln(x) 
xGammalog(x) 
These function return the natural and decimal logarithm of the gamma function. 
xgammaln(100000)  = 
1051287.7089736568948 
xgammalog(100000) = 
456568.45089997090835 
Relative accuracy is better than 10^-(14+|log(x)|)      for x>0 
These functions are added only for compatibility with Excel and other math packages. They are 
useful to avoid overflow in standard precision arithmetic for large arguments of gamma 
function. However if you use directly the xgamma() and multiprecision arithmetic, you need no 
more to use these functions. 
Gamma quotient 
xGammaQ(x1, x2)  
Performs the division of two gamma functions. 
q = Γ(x
1
) / Γ(x
2
Relative accuracy is better than 1E-14, for x
> 0 and x
> 0 
Example: suppose you have to calculate for v =1,000,000 the following quotient 
( )
( )
2
2
1
v
v
q
Γ
Γ
=
+
Taking    x
1
= 500,000.5   and   x
2
= 500,000  , we have easily 
xgammaq(500000.5 , 500000) = 707.106604409874    (rel error = 5.96E-16 ) 
Note that if you have used the standard GAMMALN() function, you should have: 
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
Also a preview component enables compressing and decompressing in preview in ASP Document and metadata. VB.NET Demo Code to Optimize An Exist PDF File in Visual
remove metadata from pdf acrobat; c# read pdf metadata
C# WinForms Viewer: Load, View, Convert, Annotate and Edit PDF
It makes users easy to view PDF document and edit PDF document in preview. Please refer to more details list below, it will show you from following aspects:
edit multiple pdf metadata; google search pdf metadata
Xnumbers Tutorial 
252 
EXP(GAMMALEN(500000.5) - GAMMALEN(500000)) = 707.106604681849  
(with a rel. error = 3.846E-10) 
As we can see, In this case, the error is more than 500,000 times bigger that the previous one!  
Gamma F-factor 
xGammaF(x1, x2)   
Returns the gamma factor of the Fischer distribution. 
⋅Γ
Γ
+
Γ
=
2
2
2
2
1
2
1
x
x
x x
k
Relative accuracy is better than 1E-14, for x
> 0 and x
> 0 
Digamma function 
digamma(x)  
Returns the logarithmic derivative of the gamma function 
(
)
( )
 '( ( )
ln ( ( )
( )
x
x
x
dx
d
x
Γ
Γ
=
Γ
=
Ψ
Relative accuracy is better than 1E-14, for x > 0  
Example 
digamma(x) 
value 
rel. error 
0.01 
-100.560885457869 
3.24E-15 
0.1 
-10.4237549404111 
2.23E-15 
-0.577215664901532 
1.49E-15 
10 
2.25175258906672 
4.92E-16 
100 
4.60016185273809 
5.65E-16 
1000 
6.90725519564881 
2.97E-16 
Note that  Ψ
(
1
) = − γ   
(Eulero- constant) 
Beta function 
xBeta(a, b)   
Returns the beta function 
=
 1 
0
1
1
(1 )
( , , )
dt
t
t
B ab
b
a
Relative accuracy is better than 1E-14, for a > 0  and b > 0 
C# WPF Viewer: Load, View, Convert, Annotate and Edit PDF
Search PDF text in preview. • View PDF outlines. Related Resources. To view, convert, edit, process, protect, sign PDF files, please refer to XDoc.PDF SDK
c# read pdf metadata; pdf metadata viewer
How to C#: Preview Document Content Using XDoc.Word
How to C#: Preview Document Content Using XDoc.Word. Get Preview From File. You may get document preview image from an existing Word file in C#.net.
pdf metadata editor; change pdf metadata
Xnumbers Tutorial 
253 
Incomplete Gamma function 
xGammaI(a, x, [sel]) 
Returns one of the following Incomplete Gamma functions specified by the "sel"  parameter 
(default 1) 
Sel =1 
Sel =2 
Sel = 3 
Sel = 4 (Tricomi) 
=
x
t
a
t e e dt
ax
0
1
( , , )
γ
=
Γ
x
t
a
t e e dt
ax
( , , )
1
( )
( , , )
( , , )
a
a x
Pa x
Γ
=
γ
( )
( , , )
( , , )
*
a
x
a x
a x
a
Γ
=
γ
γ
Relative accuracy is better than 1E-14 for : a > 0,  
x≥0
Incomplete Beta function 
xBetaI(x, a, b, [sel]) 
Returns one of the following Incomplete Beta functions specified by the "sel"  parameter 
(default 1) 
Sel = 1 
Sel = 2 
=
x
b
a
x
dt
t
t
B ab
0
1
1
(1 )
( , , )
( , , )
( , )
( , )
Bab
B ab
I ab
x
x
=
where B(a, b) is the Beta function 
Relative accuracy is better than 1E-14 for a > 0, b > 0.  
1
0
≤ x≤
x
 
Combinations function 
xcomb_big(n, k)   
Returns the combination, or binomial coefficients, for large integer numbers 
)! !
(
!
,
n k k n
n
k
n
C
n k
=
=
Relative accuracy is better than 1E-14, for n >> 0  and k >> 0 
This function uses the gamma function to calculate the factorials. It is much faster than xcomb 
function. For this reason is adapted for large integer values (10,000 - 1,000,000) 
xcomb(5000,2493) = 
1.5627920156854189438574778889E+1503 
(30 digits, slow)
xcomb_big(5000,2493) =  1.56279201568542E+1503 
(15 digits , fast)
How to C#: Preview Document Content Using XDoc.PowerPoint
How to C#: Preview Document Content Using XDoc.PowerPoint. Get Preview From File. You may get document preview image from an existing PowerPoint file in C#.net.
acrobat pdf additional metadata; modify pdf metadata
VB.NET PDF insert image library: insert images into PDF in vb.net
NET. An independent .NET framework component supports inserting image to PDF in preview without adobe PDF control installed. Access
add metadata to pdf programmatically; read pdf metadata online
Xnumbers Tutorial 
254 
Bessel  functions of integer order 
BesselJ (x, [n]) 
Bessel function of 1° kind, order n: Jn(x) 
BesselY (x, [n]) 
Bessel function of 2°kind, order n: Yn(x) 
BesseldJ (x, [n]) 
First derivative of Bessel functions of 1° kind, order n: J'n(x) 
BesseldY (x, [n]) 
First derivative of Bessel functions of 2° kind, order n: Y'n(x) 
BesselI (x, [n]) 
Modified Bessel function of 1° kind, order n: In(x) 
BesselK (x, [n]) 
Modified Bessel function of 2°kind, order n: Kn(x) 
BesseldI (x, [n]) 
First derivative of mod. Bessel functions of 1° kind, order n: I'n(x) 
BesseldK (x, [n]) 
First derivative of mod. Bessel functions of 2° kind, order n: K'n(x) 
Relative accuracy is better than 1E-13, for x > 0  and n any integer 
These routines
1
have a high general accuracy. Look at the following example. We have 
compared results obtained from our BesselJ with the standard Excel similar function 
J0(x) (BesselJ) 
Rel. Error 
J0(x) (Excel standard) 
Rel. Error 
0.1 
0.997501562066040
1.11E-16
0.997501564770017 
2.71E-09 
0.5 
0.938469807240813
1.06E-15
0.938469807423541 
1.95E-10 
0.765197686557967
7.25E-16
0.765197683754859 
3.66E-09 
-0.177596771314338
2.66E-15
-0.177596774112343 
1.58E-08 
10 
-0.245935764451374
1.06E-13
-0.245935764384446 
2.72E-10 
50 
0.055812327669252
3.98E-15
0.055812327598901 
1.26E-09 
As we can se, the general accuracy is better than 200,000 times! 
Cosine Integral Ci(x) 
CosIntegral(x) 
Returns the Cosine integral defined as: 
dt
t
t
x
x
)
cos(
ci( )
=−
Relative accuracy is better than 1E-13, for x > 0   
Sine Integral Si(x) 
SinIntegral(x) 
Returns the sine integral defined as: 
dt
t
sint
x
x
()
si( )
0
=
Relative accuracy is better than 1E-13, for x > 0   
1
All these special functions are provided thanks to the FORTRAN 77 Routines Library for Computation of Special 
Functions developed by Shanjie Zhang and Jianming Jin . The programs and subroutines contained in this library are 
copyrighted. However, authors kindly gave permission to the user to incorporate any of these routines into his 
programs. 
VB.NET PDF File Split Library: Split, seperate PDF into multiple
Split PDF document by PDF bookmark and outlines in VB.NET. Independent component for splitting PDF document in preview without using external PDF control.
adding metadata to pdf; preview edit pdf metadata
C# PDF insert text Library: insert text into PDF content in C#.net
Supports adding text to PDF in preview without adobe reader installed in ASP.NET. Powerful .NET PDF edit control allows modify existing scanned PDF text.
get pdf metadata; batch update pdf metadata
Xnumbers Tutorial 
255 
Fresnel sine Integral  
Fresnel_sin(x) 
Returns the Fresnel's sine integral defined as: 
dt
t
sin
S x
x
 )
( )
2
0
2
1
π
=
Relative accuracy is better than 1E-13, for x > 0   
Remember also the following relation 
(
)
=
x
S k k z
t dt
k
0
2
sin( )
where: 
π
2
k=
Fresnel cosine Integral  
Fresnel_cos(x)   
Returns the Fresnel's cosine integral defined as: 
dt
t
C x
x
  )
cos(
( )
2
0
2
1
π
=
Relative accuracy is better than 1E-13, for x > 0   
Remember also the following relation 
(
)
=
x
Ck z
t dt
k
0
2
)
cos(
where: 
π
2
k=
Fibonacci numbers  
xFib(n, [DgtMax])   
Returns the Fibonacci's numbers defined by the following recurrent formula: 
n 2
n 1
n
2
1
2 ,
1 ,
+
=
=
=
F
F
F
F
F
Example:  
xFib(136)  = 11825896447871834976429068427 
xFib(4000) = 3.99094734350044227920812480949E+835 
VB.NET PDF url edit library: insert, remove PDF links in vb.net
Edit PDF url in preview without adobe PDF reader control. Free library and control for .NET framework and easy to be integrated in .NET WinForms and ASP.NET.
edit pdf metadata acrobat; pdf metadata extract
C# PDF replace text Library: replace text in PDF content in C#.net
Replace text in PDF file in preview on ASPX webpage. Able to replace PDF text in ASP.NET program. Other PDF edit functionalities, like add PDF text, add PDF text
batch edit pdf metadata; add metadata to pdf file
Xnumbers Tutorial 
256 
Hypergeometric function   
Hypgeom(a, b, c, x) 
Returns the Hypergeometric function 
The parameter "a" is real, "b" is real, "c" is real and different form 0, -1, -2, -3 ... 
The variable "x" is real with |x| < 1 
Relative accuracy is better than 1E-14, for -1 < x < 1   
The hypergeometric function is the solution of the so called Gaussian-hypergeometric 
differential equation 
(
)
(
)
(
)
0
1
1
=
+
+ − − + + +
+
′′
aby
xy
c a a b
x y
x
An integral form of the hypergeometric function is 
(
)
(
)
− −
Γ Γ Γ −
Γ
=
1
0
1
1
1
1
)
( ) ) (
( )
( , , , , . . )
dt
tx
t
t
c b
b
c
Fabcx
a
c b
b
More known is the series expansion that converges for !x| < 1 
...
6!
2)
( 1)(
2)
2) ( ( 1)(
( 1)(
2!
( 1)
( 1) ) ( ( 1)
1!
( , , , , . . ) ) 1
3
2
+
+
+
+
+
+
+
+
+
+
+
+
= +
x
c
cc
b
bb
a
aa
x
cc
bb
x aa
c
ab
Fabcx
Special result are: 
p
x
x
F p
= −
)
( ,1,1, , ) ) (1
x
x
x
F
)
ln(1
(1,1,2, )
+
− =
( , , , , , ) 1.6
32
27
6
5
3
2
3
1
=
F
Zeta function  ζ(s) 
Zeta(s) 
The Riemann zeta function ζ(s)  is an important special function of mathematics and physics 
which is intimately related with results surrounding the prime number, series, integrals, etc. 
Relative accuracy is better than 1E-14, for any s  1   
It uses the fast Borwein formula.  
Definition. For |s|>1 the  function is defined as: 
=
=
1
1
( )
k
s
k
s
ζ
Analytic continuation. It can be defined for 0< s <1 by the following analytic continuation: 
=
=
1
1
1
( 1)
1 2
1
( )
k
s
k
s
k
s
ζ
For s< 0 the function is defined by the following relation: 
 ) ( ( ) ( ( )
cos(
(1 ) ) 2(2 2 )
2
1
s
s
s
s
s
ζ
π
π
ζ
Γ
− =
Xnumbers Tutorial 
257 
Same known exact results are:  
ζ(2) = (π
2
) /6  ,   ζ(4) = (π
4
)/90
Zeta function is very useful in computing series. Look at this example: 
4
5
(2)
2
1
1
1
1
2)
(
1
2
1
2
2
2
0
2
=
− −
=
=
+
=
=
=
ζ
k
k
k
k
k
k
So, the final result is  
(π
2
)/6 - 5/4
Airy functions   
= AiryA(x)   
= AiryB(x)   
= AiryAD(x)   
= AiryBD(x)   
Return the Airy functions A(x), B(x) and theirs derivatives A'(x), B'(x) 
A(x) = 
(
)
(
)
(
)
+
+
Γ
=
3
2( 1)
sin
3
!
1
3
1
1/3
0
3
1
2/3
π
π
n
x
n
n
n
n
B(x) = 
(
)
(
)
(
)
+
+
Γ
=
3
2( 1)
sin
3
!
1
3
1
1/3
0
3
1
1/6
π
π
n
x
n
n
n
n
Variable x is real. Relative accuracy is better than 1E-14 
Elliptic Integrals   
= IElliptic1(φ, k) 
= IElliptic2(φ, k) 
Return the Jacobian Elliptic Integrals of 1st and 2nd kind 
IElliptic1 = 
=
φ
θ
θ
φ
0
2
2
sin
1
( , , )
k
d
k
F
IElliptic2 = 
θ θ
φ
φ
d
k
k
E
sin
1
( , , )
0
2
2
=
Variable φ is real,   0 < k < 1. Relative accuracy is better than 1E-14 
Xnumbers Tutorial 
258 
Kummer confluent hypergeometric functions   
= Kummer1(a, b, z)   
= Kummer2(a, b, z)   
They return the Kummer conflent hypergeometric functions of 1st and 2nd kind, also called 
M(a, b, z), and U(a, b, z) respectively. 
The confluent hypergeometric functions give the complete solutions of the confluent 
hypergeometric differential equation. 
0
)
(
2
2
=
+ −
aw
dz
dw
b a
dz
d w
z
having the complete solution  
( , , , , )
( , , , , )
2
1
w qM M abz z qU U abz
+
=
The parameters "a" and "b" can be positive or negative but always different from 0, -1, -2, -3 ... 
The variable z must be positive for Kummer2 
For a > 0 and b > 0, the confluent hypergeometrix functions have an integral representation 
(Abramowitz and Stegun 1972, p. 505) 
− −
Γ − − Γ
Γ
=
1
0
1
1
(1 )
) ( ( )
(
( )
( , , , )
dt
t
e t
b
b a
b
M ab b z
b a
zt a
− −
+
Γ
=
0
1
1
(1 )
( )
1
( , , , )
dt
t
e t
a
U ab z
b a
zt a
M(a,b,z) 
U(a,b,z) 
0.5 
0.2 
5.85803416181
0.70928623024
0.5 
0.2 
601.287114305
0.40255172241
0.5 
0.2 
10 
112016.644576
0.29849708947
0.5 
0.2 
20 
3063046479.13
0.21689337800
0.5 
0.2 
30 
7.6396125E+13
0.17882728338
8.2 
1.4 
41.1797940694
1.39280467E-06
-0.9 
0.4 
10 
-345.535973205
7.72952303674
Xnumbers Tutorial 
259 
Integral of sine-cosine power   
= IntPowSin(n, x)   
= IntPowCos(n, x)   
These functions return the integral of sine and cosine raised to the n integer power 
=
x
n
t dt
x n
SPI
0
)
(sin
( , , )
=
x
n
t dt
xn
CPI
0
)
(cos
( , )
Variable x  0 is real, n = 0, 1, 2, 3 ... is integer. Relative accuracy is better than 1E-15 
-0.2
0
0.2
0.4
0.6
0.8
1
1.2
1.4
0
0.5
1
1.5
2
2.5
3
3.5
4
CPI(x)
SPI(x)
n = 8
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
-6
-4
-2
0
2
4
6
CPI(x)
SPI(x)
n = 8
These functions use the fast recursive algorithms 
( , , 2)
1
)
(sin
cos
( , , )
1
+
=−
xn
SPI
n
n
n
x
x
xn
SPI
n
,  
x
x
SPI
cos
( , 1) ) 1
= −
=
x
x
SPI
( , 0)=
2)
( ,
1
)
(cos
sin
( , , )
1
+
=
xn
CPI
n
n
n
x
x
x n
CPI
n
   
x
x
CPI
sin
( , 1)
=
,  
x
x
CPI
( , 0)=
The recursive formula of CPI(x, n) is very stable and accurate for all values x  0 , n  0, n  N 
On the contrary, the recursive formula of SPI(x, n) degrades precision for small value of x 
In that case, the function automatically switches on the power expansion series 
+ +
+
+
=
=
+
1
2
1
0
1
2
1
1
)
(sin
k
k
k
n
x
n
y
k n
a
n
y
t dt
,    
x1<
x
where 
2 4 4 6...(2 2 )
1)
13 5...(2
2
2 1
1
k
k
i
i
a
k
i
k
⋅ ⋅
⋅ ⋅
=
=
=
  
x
y=sin
Documents you may be interested
Documents you may be interested