﻿

# c# parse pdf to xml : View pdf metadata Library application class asp.net html wpf ajax xnumbers-tutorial115-part868

Xnumbers Tutorial
150
A simple skeleton for one variable is:
In the cell C2 you must insert the function
f(x) to sample. The reference for the
independent variable x is the cell B2. For
example, if the function is y = x +2x
2
You have to insert the formula
= B2+2*B2^2  in the cell C2
Parameters N (Samples), P (Period), H (Step) are not all independent. Only two parameters
can be freely chosen.
The macro chooses the first two parameters found from top to bottom
The remain parameter is obtained by the step-formula
Synthetically you can have one of the following three cases
Given parameters
Calculated parameter
Samples, Period    (N, P)
Step        (H)
Samples, Step       (N, H)
Period     (P)
Period, Step           (P, H)
Samples  (N)
Look at the following three examples below for better explanation. The given parameters are in
blue while the calculated parameter is in red.
After you have set and filled the skeleton, select it and start the sampler macro again
(remember that range must always have 6 rows, including the header)
The macro show the following window
The check-box “Add formula” tells to the macro to leave the formula in the sample set,
otherwise it contains only the values. Formula can be added only for a monovariable list or for a
table.
Enable VB.NET Users to Read, Write, Edit, Delete and Update PDF Document Metadata
Xnumbers Tutorial
151
Integral function
=IntegrData(xi, yi, [IntType])
Computes numerically the integral functions F(xi) of a given dataset (xi, yi)
=
i
x
i
i
ydx
F x
0
( )
The sampling interval must be constant
The IntType parameter (default = 2)  sets the integration formulas 1, 2, 3
Case 1 - 2 points integration formula of 1st degree
symmetric
)/2
(
2
1
12
h f f f
I
+
=
/12
(2)
3
E ≈h h f
Case 2 - 4 points integration formulas of 3rd degree
symmetric
)/24
13
13
(
4
3
2
1
23
f f
f
h f
I
+
= − − +
(4)
5
11/720
h f
E
Left side
)/24
5
19
(9
4
3
2
1
12
f
f
f
h f
I
+
+
=
Right side
9 )/24
19
5
(
4
3
2
1
34
f
f
f
h f
I
+
+
=
Case 3 - 6 points integration formulas of 5th degree
symmetric
1440
)/
11
) 93
802(
93
(11
6
5
4
3
2
1
34
f
f
f
f
f
f
h
I
+
+
+
=
(6)
7
60480
191/
h f
E
Left side
1440
)/
27
173
482
798
1427
(475
6
5
4
3
2
1
12
f
f
f
f
f
f
h
I
+
+
+
=
1440
)/
11
77
258
1022
637
( 27
6
5
4
3
2
1
23
f
f
f
f
f
f
h
I
+
+
+
= −
Right side
1440
)/
27
637
1022
258
77
( 11
6
5
4
3
2
1
45
f
f
f
f
f
f
h
I
+
+
+
= −
1440
)/
475
1427
798
482
173
(27
6
5
4
3
2
1
56
f
f
f
f
f
f
h
I
+
+
+
=
Depending on the case, the algorithm uses these formulas at the beginning, at the center and
the end of the integration interval.
2 points formula
f
1
f
2
x
h
4 points formulas
f
1
f
2
f
3
f
4
x
h
f
1
f
2
f
3
f
4
x
h
f
1
f
2
f
3
f
4
h
VB.NET PDF- View PDF Online with VB.NET HTML5 PDF Viewer
View PDF in WPF. Annotate PDF in WPF. Export PDF in to PDF. Image: Remove Image from PDF Page. Image Link: Edit URL. Bookmark: Edit Bookmark. Metadata: Edit, Delete
VB.NET PDF Library SDK to view, edit, convert, process PDF file
Offer professional PDF document metadata editing APIs, using which VB.NET developers can redact, delete, view and save PDF metadata. PDF Document Protection.
Xnumbers Tutorial
152
6 points formulas
f
1
f
2
f
3
f
4
x
h
f
5
f
6
f
1
f
2
f
3
f
4
x
h
f
5
f
6
x
f
1
f
2
f
3
f
4
h
f
5
f
6
f
1
f
2
f
3
f
4
x
h
f
5
f
6
f
1
f
2
f
3
f
4
x
h
f
5
f
6
Example. Compute the integral function of the following tabulated function y(xi)
Using the integration formulas 1, 2 and
3, we have, of course, different precision.
The following graph shows the error
behaviour of the three schemas.
The average errors are about 0.05 for
the 1st degree formula, 5E-5 for the 3rd
degree and 4E-6 for the 5th degree.
Clearly, for smooth, regular functions,
the highest degree formulas reach the
highest precision but we have to
consider that they are also more
expensive
1.E-06
1.E-05
1.E-04
1.E-03
1.E-02
1.E-01
1.E+00
0
1
2
3
4
5
6
err1
err2
err3
Usually the 3
rd
degree formulas are the best compromise between cost and precision
Avoid discontinues. But, generally, do highest integration degree formulas always give the
best precision? Not always. When the function to integrate shows jumps or direction
discontinuities, the better choice is the linear formula. See the following example.
Given the following functions
2|
4| )/2 2 |
( ) ) (|
+
=
x
x
x
y x
its exact integral function is
[
]
8/4
2|
2)|
4| 2(
4)|
(
( )
( )
2
0
+ +
=
=
x
x
x
x
x
y xdx
F x
x
C# PDF Library SDK to view, edit, convert, process PDF file for C#
RasterEdge WPF PDF Viewer provides C# users abilities to view, annotate, convert and create PDF in WPF application. C#.NET: Edit PDF Metadata.
VB.NET PDF - View PDF with WPF PDF Viewer for VB.NET
View PDF in WPF. Annotate PDF in WPF. Export PDF in to PDF. Image: Remove Image from PDF Page. Image Link: Edit URL. Bookmark: Edit Bookmark. Metadata: Edit, Delete
Xnumbers Tutorial
153
Sampling the function y(x) and F(x) with h = 0.25  for 0 ≤ x ≤  6,  we have the following data
sets (xi, y(xi)) and (xi, F(xi))
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
0
1
2
3
4
5
6
y
∫ y dx
As we can see, the function y(x), always linear, has no derivative at the points x = 2, and x = 4.
If we integrate the data set (xi, yi) with the 1st degree formula (IntType = 1) the result coincides
with the exact solution (error = 0). But if we try with the other higher formulas the average error
Integral function of a symbolic formula
When we have the function f(x) written in a symbolic formula we can obtain the plot of its
integral function in two ways.
Sampling the given function f(x
i
) for x
i
= x
0
+ ih  with a suitable step h
Solving the associated ODE equation
Integrating f(x) from x
0
to x
i
for x
i
= x
0
+ ih  with a suitable step h
The first method is simple and it is already shown in the previous chapter; the second way
need some more explanation.
The function y(x) that we want to plot is defined as
=
x
x
f x x dx
y x
0
( )
( )
Taking the derivatives of both sides and remebering Leibniz's rule, we have
( )
'( )
f x
y x
=

( ) ) 0
0
y x x =
y
As we can see, the computing of any integral function is equivalent of solving an ODE.
Therefore we can use any method that we have used for solving ODE: Runge-Kutta, Predictor-
Corrector, Taylor, etc. (see chap. ODE for further details)
The third method, less efficient then the others, may be successfully used when the function
f(x) or its derivatives f'(x) has some singularities in the integration range.
The following example explain better the concept. Assume to have to plot the integral function
of the following function
=
x
dx
x
y x
0
2
)
ln(
( )
We note that,.
=−∞
)
lim ln(
2
0
x
x
Therefore, x = 0 is a singular point. From theory we know that the integral exists, thus we can
project to tabulate the given integral for several points x
i
= ih  with a suitable step h, for
example h = 0.1
For this scope we may use the function integr_de or Integr that are more suitable for such
singularities
C# WPF PDF Viewer SDK to view PDF document in C#.NET
WPF Viewer & Editor. WPF: View PDF. WPF: Annotate PDF. WPF: Export PDF. Bookmark: Edit Bookmark. Metadata: Edit, Delete Metadata. Watermark: Add Watermark to PDF
How to C#: Modify Image Metadata (tag)
C#.NET edit PDF bookmark, C#.NET edit PDF metadata, C#.NET VB.NET How-to, VB.NET PDF, VB.NET Word, VB VB.NET Barcode Read, VB.NET Barcode Generator, view less.
Xnumbers Tutorial
154
Insert the function definition in cell B1
Ln(x^2)
Build a sequence x = 0, 0.1, 0.2...4 in the
range A4:A44
Insert the function integr_de in cell B5 and the
function = LN(A5^2) in cell C5 and drag down
the range B5:C5.
Note that we cannot complete the first cell C4
because of #NUM! error.
Now, plotting the the range A5:C44, we have the following graph
-4
-3
-2
-1
0
1
2
3
4
0
0.5
1
1.5
2
2.5
3
3.5
4
∫f(x)
f(x)
Comparing with the exact
solution
x
x x
y x
) 2
ln(
( )
2
=
we observe a precision better
then 1E-15.
From the graph we see that the
integral function y(x) has a zero
between 2.5 and 3
From the table we may take a
more precise bracketing of the
zero
2.7 <  x
z
< 2.8
Zeros of integral function
We may obtain a more close solution of the integral equation using the Newton-Raphson
iterative algorithm
0
()
( )
0
=
=
x
x
f tdt
y x
( )
( )
1
n
n
n
n
f x
y x
x
x
=
+
In the cell B1 insert the
definition of the function f(x)
Ln(x^2)
Starting from x
0
= 2.7 we
calculate the integral from 0 to
2.7 in the cell C5, The
derivative is the function f(x)
itself, calculated in the cell B5.
The new value x
1
is calculated
in the cell A6
Iterating the process, the solution happears in the last cells of the column A
As we can see, after few iteration the zero converges to the exact solution x = e with a
precision better then 1E-15
C#.NET. Allow Users to Read and Edit Metadata Stored in Tiff Image in C#.NET Application. C# Overview - View and Edit TIFF Metadata.
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
Document and metadata. All object data. File attachment. Flatten visible layers. VB.NET Demo Code to Optimize An Exist PDF File in Visual C#.NET Project.
Xnumbers Tutorial
155
Function Integration (Romberg method)
=Integr_ro(Funct, a, b, [Param], [rank], [ErrMax])
This function computes the numeric integral of a function f(x) by the Romberg method.
=
b
a
f x
I
( )
The parameter "Funct" is a math expression string in the variable x, such as:
"x*cos(x)", "1+x+x^2", "exp(-x^2)", ecc.. .
Remember the quote " " for passing a string to an Excel function.
"Funct" may be also a cell containing a string formula
"Param" contains label and values for parameters substitution (if there are)
"Rank", from 1 to 16 (default), sets the maximum integration rank.
"ErrMax" (default 1E-15) , sets the maximum relative error.
For further details about writing a math string see  Math formula string
The algorithm starts with rank = 1 and  incrementing the rank until it detects a stop condition.
|R(p, p) - R(p, p-1)| < 10^-15          absolute error detect
or
(|R(p, p) - R(p, p-1)|) / |R(p, p)|  < 10^-15    if |R(p, p)| >> 1    relative error detect
or
rank = 16
Example.  Compute the integral of  "x*cos(x)"  for  0 ≤ x ≤ 0.4
Integr_ro("x*cos(x)", 0, 0.4) = 0.0768283309263453
This function can also display the number of sub-intervals and the estimate error.
To see these values simply select three adjacent cells and give the CTRL+SHIFT+ENTER key
sequence.
This result is reached with rank = 4 , s = 16 sub-intervals, and an estimate error of about
E = 3.75E-16
The function accepts also external parameters. Remember only to include the label in the
parameter selection.
Xnumbers Tutorial
156
Function Integration (Double Exponential method)
=
Integr_de(funct, a, b, [Param])
This function
1
computes the numeric integral of a function f(x) by the Double Exponential
method. This is specially suitable for improper integrals and infinite, not oscillating integrals.
=
b
a
f x x dx
I
( )
+∞
=
a
f xdx
I
( )
+∞
−∞
=
f xdx
I
( )
The parameter "funct" is a math expression string in the variable x, such as:
"x*cos(x)", "1+x+x^2", "exp(-x^2)", ecc.. .
Remember the quote " " for passing a string to an Excel function. "funct" may be also a cell
containing a string formula.
The limits "a" and "b" can also be infinite. In this case insert the string "inf"
"Param" contains labels and values for parameters substitution (if there are)
For further details about writing a math string see  Math formula string
The Double Exponential method is a fairly good numerical integration technique of high
efficiency, suitable for integrating improper integrals, infinite integrals and "stiff" integrals having
discontinue derivative functions.
This ingenious scheme, was introduced first by Takahasi and Mori 
For finite integral, the formula, also called "tanh-sinh transformation", is the following
+∞
−∞
=
f xt t htdt
f xdx
b
a
( ()) ) ()
( )
where:
(
)
)
sinh(
tanh
2
2
()
t
b a a b b a
xt
+
+
=
(
)
)
sinh(
cosh
)
cosh(
2
()
2
t
t
b a
ht
=
Example
4996...
0.47442115
)
(1
1
0
03.
05.
=
dx
x
x
The above integral is very difficult to compute because the derivative is discontinue at 0 and 1
The Romberg method would require more than 32.000 points to reach an accuracy of 1E-7. On
the contrary, this function requires less then 100 points for reaching the high accuracy of 1E-14
This function can also evaluate infinite and/or semi-infinite integral.
1
This function uses the double exponential quadrature derived from the original FORTRAN subroutine INTDE of the
Xnumbers Tutorial
157
Example
0
x dx
n
As known, the integral exist if n > 1 and its value is I = 1/(n-1). The parameter "n" is called
"order of convergence". For n = 1.1 we get   I = 10
Note that we need to pass the parameter with its label "n". (Param = "D1:D2")
This function cannot give reliable results if n is too close to 1.
The minimum value is about n = 1.03.  For lower values the function returns  "?".
The DE integration works very well for finite improper integral
Example
( )
( )
2
ln
lim
ln
1
2
0
1
0
2
=−
=
+
a
a
x dx
x dx
Note that the function f(x) is not defined for x = 0
Example. Another difficult improper integral
4/9
ln( )
1
0
=−
xdx
x
Xnumbers Tutorial
158
Function Integration (mixed method)
=
Integr(Funct, a, b, [Param])
This function computes the numeric integral of a function f(x) over a finite or infinite interval
b
a
f xdx
( )
+∞
( )
a
f xdx
−∞
b
f xdx
( )
+∞
−∞
f( x)dx
This function can compute definite integrals, improper integrals and piece-wise functions
integrals. The parameter "funct" is a math expression string in the variable x, such as:
"x*cos(x)", "1+x+x^2", "exp(-x^2)", ecc.. .
Remember the quote " " for passing a string to an Excel function.
"funct" may be also a cell containing a string formula
The limits "a" and "b" can also be infinite. In this case, insert the string "inf"
"Param" contains labels and values for parameters substitution (if there are)
This function uses two quadrature algorithms
1) The double exponential method
1
(see function integr_de
2) The adaptive Newton-Cotes schema (Bode's formula)   (see macro Integral_Inf
If the first method fails, the function switches on the second method
Oscillating functions, need specific algorithms.  See Integration of oscillating functions (Filon
formulas)
and Fourier's sine-cosine transform
Example. Compute the integral of  xcos(x)   for  0  x  0.4
In the given interval the function is continuous, so its definite integral exists. This result is
reached with rank = 4, s = 16 sub-intervals, and an estimate error of about  3.7E-16. This
function returns the integral and can also displays the number of sub-intervals and the estimate
error. To see these values simply select three adjacent cells and give the
CTRL+SHIFT+ENTER keys sequence.
Note that the function Integr is surrounded by { } . This means that it returns an array
The function Integr can accept also parameters in the math expression string.
See the example below.
1
This function uses the double exponential quadrature derived from the original FORTRAN subroutines INTDE and
INTDEI of the DE-Quadrature (Numerical Automatic Integrator) Package , by Takuya OOURA, Copyright(C) 1996