﻿

# c# parse pdf to xml : Edit multiple pdf metadata SDK control API .net azure web page sharepoint xnumbers-tutorial118-part871

Xnumbers Tutorial
180
Example. Compute numerically the following integral
dxdy
y
x
D
∫∫
+
2
2
Where the domain D is the half-circular
region showed at the right
Set the parameter "Polar" to True.
Compare the precision with the exact result
Edit multiple pdf metadata - add, remove, update PDF metadata in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Enable VB.NET Users to Read, Write, Edit, Delete and Update PDF Document Metadata
Xnumbers Tutorial
181
Infinite integral
Integral_Inf()
This macro performs the numeric integration of a smooth, regular, not oscillating
function f(x)
over an unlimited (or very long) interval
+∞
−∞
−∞
+∞
f xdx
f xdx
f xdx
a
a
( ( )
,
( ( )
,
( ( )
This macro can use two different methods:
The Bode formula with adaptive step
The double exponential algorithm
The Bode formula with 8 steps to calculate the integral and the truncation error.
(
)
4
3
2
1
0
1
7
32
12
32
7
45
2
f
f
f
f
f
h
I
h
+
+
+
+
=
(
)
8
7
6
5
4
2
7
32
12
32
7
45
2
f
f
f
f
f
h
I
h
+
+
+
+
=
2
1
h
h
h
I
I
I
+
=
63
h2
h
T
I I
E
After each step the routine detects the truncation error and recalculates the step in order to
keep a constant error (variable step integration method).
The double exponential algorithm, also called "tanh-sinh quadrature". ﬁrst introduced by
Takahasi and Mori, is based on the hyperbolic variable transformations.
It is more complicated then the polynomial Newton-Cotes schema but, on the other hand, it is
much more efficient.
Using this macro is very easy.
Example: Approximate the given integral
+∞
⋅ ⋅
0
2
100
x e e dx
x
The integration function is regular over the entire x-axes; the exponential assures the
convergence. Therefore the infinite integral exists.
Put the symbolic expression “100*x^2*exp(-x)” in any cell that you like (A3 for example), and
arrange the worksheet in the following way (but it is not obligatory at all)
The word “inf” means – of course –infinity. It is not necessary to specify the sign, because the
macro always assumes “b”  as +inf , “a”  as  -inf
Now select the cell A3 and run the macro Integral_Inf  . The input fields will be automatically
filled
VB.NET PDF Library SDK to view, edit, convert, process PDF file
NET empowers VB.NET developers to implement fast and high quality PDF conversions to or from multiple supported images and PDF Hyperlink Edit. PDF Metadata Edit.
VB.NET PDF File Split Library: Split, seperate PDF into multiple
Divide PDF file into multiple files by outputting PDF file size. Split Split PDF Document into Multiple PDF Files Demo Code in VB.NET. You
Xnumbers Tutorial
182
Choose “run” to start the integration routine. The result will be similar to the worksheet below
(without formatting) where we have compared the results of both methods
As we can see the integral is 100 with an excellent approximation for both methods but the
double exponential is more efficient. It required only 199 function evaluations.
Sometime we have to calculate the integral over the entire x- axes. Let’ see
+∞
−∞
+ +
+
+
dx
x
x
x
x
1
3
2
4
2
Note that, in this case, we have needed more than 10.000 evaluation points for the variable
step method but only 344 for the DE method. The superiority is ever so evident? Not always.
There are cases in which the adaptive quadrature schema works better. For example when the
integration function has a finite discontinuity (jump) inside the integration interval; this usually
happens for the piecewise functions.
Example, Assume to have to compute the following didactical integral
(
)
+∞
1
2
1
sgn1.5
dx
x
x
The integration function is shown in the
following graph
In this case is easy to calculate the integral
simply separating the given interval [1, +] in
two sub-intervals:  [1, 1.5] [1.5, +].
Calculating each integral and summing we get
the exact result  I = 1/3.
But we want here to investigate how the two methods works in this situation
C# PDF File Merge Library: Merge, append PDF files in C#.net, ASP.
Free online C#.NET source code for combining multiple PDF pages together in .NET framework. C# Demo Code: Combine and Merge Multiple PDF Files into One in .NET.
C# HTML5 PDF Viewer SDK to view, annotate, create and convert PDF
RaterEdge HTML5 PDF Editor empower C#.NET users to edit PDF pages with multiple manipulation functionalities in ASP.NET application.
Xnumbers Tutorial
183
As we can see the variable step method has find the result with high precision using about
7200 steps. The double exponential algorithm fails the convergence
We have to put in evidence that using quadrature algorithms in a “blind” way, may lead to
wrong result. We should always study the integration function to discover singularities,
discontinuities, convergence rate, etc. If the integration function is “sufficiently” smooth, then
the numeric integration can give good approximate results.
This routine can also be used over a closed long interval, when other algorithms would take too
long computational time.
Double Data integration
=IntegrData2D(Dataxy, hx, hy)
Given a bidimensional set of points  (xi, yj) defined by a rectangular grid
{
}
m
n j
i
jh
y
y
ih
x x
x y
D
y
j
x
i
j
i
,  0...  , 0...
,
, )|
0
0
=
=
+
=
+
=
this function computes the numerical double integral over the domain D
∫∫
D
dxdy
f x x y
, )
"Dataxy" is a (n x m ) rectangular array containing the function values f(xi, yj)
"hx" and "hy" are the grid intervals respectively of the x-axis and the y axis
Using this function is very simple.
Example assuming to have the following rectangular dataset (x, y) in wich each cell represent a
point of the grid and thus a value of the function f(xi, yj)  where i = 0, 1, 2...20, j = 0, 1, 2...20
VB.NET PDF Page Insert Library: insert pages into PDF file in vb.
Able to add and insert one or multiple pages to existing adobe PDF document in VB.NET. Add and Insert Multiple PDF Pages to PDF Document Using VB.
C# Create PDF from images Library to convert Jpeg, png images to
Component for combining multiple image formats into one or multiple PDF file in C#.NET. Any piece of area is able to be cropped and pasted to PDF page.
Xnumbers Tutorial
184
the function  = IntegrData2D(B54:V74C53A55) returns the value  16.2661406
The scales x and y at the border of the range are not necessary for the function IntegrData2D.
They are designed only for clarity.
This function can also return the estimate error as second, optional value. To see also the error
select two adjacent cells and insert the function with the CTRL+SHIFT+ENTER keys
The given data set was generated by the function
y
x
e
e
f x x y
+
=
/3
, )
with  xi = 0.3 i  and yi = 0.2 j
Therefore the above result is an approximation of the following integral
∫∫
+
3
0
4
0
/3
dydx
e
e
y
x
One interesting feature of this function is that
it accepts piecewise-rectangular domains
For example. Assume you have to
approximate the following integral
∫∫
+
+
D
y
x
1)
2
Ln(
where D is the domain shown at the right
This integral could be split, of course, into three rectangular integrals
∫∫
∫∫
∫∫
+
+
3
0
3
1
2
1
1
0
2
0
3
3
( , , )
( , , )
( , , )
dydx
f x x y
dydx
f x x y
dydx
f x x y
which the result is about   18.18803389
VB.NET PDF File Merge Library: Merge, append PDF files in vb.net
Combine multiple specified PDF pages in into single one file. using RasterEdge.XDoc. PDF; VB.NET Demo code to Combine and Merge Multiple PDF Files into One.
C# PDF Library SDK to view, edit, convert, process PDF file for C#
XDoc.PDF SDK for .NET empowers C# developers to implement fast and high quality PDF conversions to or from multiple supported images C#.NET: Edit PDF Metadata.
Xnumbers Tutorial
185
But it could be approximated in a worksheet sampling the domain for 0 <= x <= 3 and 0 <= y <=
4 with a suitable grid, for example hx = 0.1 , hy = 0.1
The cells out of the domain must be left empty.
The entire range is now B2:AF42 but the function will compute the integral only over the not
empty cells.
Note that in that case the scales x and y at the border of the range are used for calculating the
function f(xi,yi)
The integral and its estimate error will be
Note the good accuracy of this result.
IntegrData2D use the bidimensional trapezoidal formula with one-step of the Richardson
extrapolation. This algorithm works very fine with smooth regular functions and its precision is
similar the Cavalieri-Simpson formula
C# PDF File Split Library: Split, seperate PDF into multiple files
The following C# codes explain how to split a PDF file into multiple ones by PDF bookmarks or outlines. Split PDF Document into Multiple PDF Files in C#.
VB.NET PDF Converter Library SDK to convert PDF to other file
mechanisms, it can be used for multiple PDF to image PDF barcode reading, PDF barcode generation, PDF content extraction and metadata editing if
Xnumbers Tutorial
186
Series Evaluation
=xSerie(Funct, Id, a, b, [Param], [DgtMax])
Returns the numeric series of a function f(n) .
=
=
b
n a
f n
S
( )
The parameter "Funct" is a math expression string such as:
"2^n/n*(-1)^(n+1)", "x^n/n!", "(-1)^(n)*(3+a)*x/(n-1)", ...
Remember the quote " " for passing a string to an Excel function.
For further details about the math string see  Math formula string
"Id"  indicates the integer index of the sum (usually "n", "k" , "i", etc.)
"a" and "b" are the limits of the sum.
The function may also have other parameters ("x", "y", "a", etc.) that can assume real values.
"Param" contains labels and values for parameters substitution (if there are). If we pass the
variable range without “labels”, the function will assign the values to the variables in the same
order that they appear in the formula string, from left to right.
The parameter "DgtMax" sets the multiprecision arithmetic. if omitted or zero the function uses
the fastest standard arithmetic
Example 1. Compute
=
+
10
1
1
( 1)
n
n
n
n
x
for  x = 2, with standard precision (15 digits) and with 25 digits.
The function substitutes  x = 2  and then, computes the series f(n)  for n =1, 2 ...10
10
2
...
4
2
3
2
2
2
2
2
( 1)
10
4
3
2
1
10
1
1
+
⋅ = = −
=
+
n
n
n
n
xSerie("(-1)^(n+1)*x^n/n","n",1,10,2)= -64.8253968253968
Example 2. Compute
=
=
10
n 0
n
n!
x
s
for  x = 1.5, with standard precision (15 digits) and with 25 digits. As known, this series
approximates the exponential  e^(-1.5)
The function xSerie accepts one or more parameters.
Xnumbers Tutorial
187
Example 3. Compute the following series where a and b are parameters
=
⋅ +
=
10
n 1
n
n
a
b
s
for a = 0.7  and b = 1.5, in standard precision
Note that we have enclosed the labels "a" and "b" in the range B4:C5 passed to the function as
the argument "Param". The labels indicate to the function the correct assignment between the
variables and their values
Labels are optional. If we pass only the range B5:C5, without labels, the function assign the
values to the variables in the order from left to right.
Note how compact and straight is this calculation using the xSerie function.
Series acceleration with ^2
Many series are very slow to converge requiring therefore methods to accelerate their
convergence. The Aitken's extrapolation formula (
2
extrapolation) can be used for this scope.
Practically we build a new series S
(1)
, whose partial sums S
n
(1)
are given by the Aitken's
formula. It is possible to repeat the process starting from the series S
(1)
to obtain S
(2)
., and so
on.
Example. We want to approximate the following series:
=
+
=
k 0
k
1 k
( 1)
S
We know the exact result that is
Σ = Log(2) = 0.693147180559945...
In the cell B4 we insert the formula
=Series(\$B\$1;"k";0;A4)
In the cell C4 we insert
=(B4-LN(2))
we fill the rows from 5 to 16 simply selecting the range
B4:C4 and dragging it down.
In the last cell B17 we have inserted the function
=ExtDelta2(B10:B16)
performing the
2
extrapolation using the last 7 values
of the sum
As we can see, the cell B16 shows the sum with 12 terms; its approximation is very poor
having an error of more than 0.01. But if we apply the
2
extrapolation at the last seven partial
sums   S
(12)
S
(11)
,  S
(10)
....  S
(6)
we have a good approximation with an error less then 1E-8
Note that for reaching this accuracy the given series would need more than 100 million terms!