Title: Equation Solver
1Equation Solver
Important hint A follow up example demonstrating
the Parameter Study solution for the mass
calculations using the same Equation Solver can
be found in the DocumentParameter Study support
in P-GRADE Portal 2.5, Pinciples Practices.ppt
2Outline
- Access to the Demo program
- The Mathematic problem
- The Matrix operation package
- The Grid Workflow solution
- ExampleBasic solutionAdvanced solution
- Summary
3Access to the Demo program
- 1. The demo applications discussed here can be
uploaded and used directly within the P-PGRADE
Portals administrated by the MTA Sztaki (Seegrid,
Voce, Gilda),(Example shows tab Workflow/Upload
of the Seegrid Portal)
where, Equation solver contains the basic
solution, Equation solver single
input the more advanced one. Before
eventual workflow submission do not forget to 2.
Open and Save the uploaded application with the
Workflow Editor.(The Workflow Editor can be
started in the tab Workflow / Workflow Manager)
3. Define a proxy Certificate within tab
Certificates / Download
4The mathematical problem
- Let us solve the equation
- Ax B where the coefficients
ai,j bi are real - A-1Ax A-1B
- A-1A E
- x Ex
- x A-1B
5The Matrix Operation Package(1)Base conventions
- sequential program written in C (MatrixDemoNew)
- Input(s) and output are matrices represented by
files (Minput1 , Minput2 ,Moutput) - operation is controlled by command line
arguments - Moutput OP (Minput1)
- Moutput OP (Minput1,scalarArg)
- Moutput OP (Minput1,Minput2 )
6The Matrix Operation Package(2)Detailed I/O
conventions
- The input(s)Â and the output of the MatrixDemoNew
are files containing the representation of the
matrices. They are referred i.e. opened within
the executable as "INPUT1" (,"INPUT2") and
"OUTPUT". - The structures the ASCII files are uniform a
space separated list of the following tokens
Number of lines, number of columns, floating
point elements ordered first along the lines of
the matrix.Example 2 3 1.1
1.2 1.3 2.1 2.2 2.3 represents
the following matrix 1.1 1.2 1.3 2.1
2.2 2.3 -
7The Matrix Operation Package(3)Operations
- Syntax ltOP_codegt ltExtensiongt
Verbose - OP Extension Explanation ShortName
- AÂ I1I2Â -gt O Add
- SÂ I1I2Â -gt O Subtract
- MÂ I1I2Â -gt O Multiply
- RÂ I2I1Â -gt O Reverse
Multiply - TÂ transpose of I1 -gt O Transpose
- IÂ invert of I1 -gt O Invert
- c floting value I1-gt O constant
multiply - L integer I1value,-gt O Line of
- C integer I1,value-gt O Column of
- Example L 3 V
Operation and I/0 files will be printed on
standard output
Eventual extension values are defined as command
line values
8The Grid Workflow solutionPart 1 basic algorithm
- Two additional jobs (Copy_A, Copy_B) simplify
the work of the user. They copy their inputs to
their outputs, with the consequence that the user
may to define each input file just at a single
Port. If these jobs would have be omitted it
were the responsibility of the user to define
files with the same content at the proper
placesport 0 of Invert_A should be equal with
port 0 of A_Mull_X and port 1 of Multip_B
should be equal with port 1 of A_Mull_X - The job Invert_A performs the inversion of
matrtix A, - The jobs Multip_B, A_mul_X perform matrix
multiplications, - The job Subtr_B compares the results by
performing subtraction operation
9The Grid Workflow solution(1)
10The Grid Workflow solution (2)Input Matrix
association
Location of file representing B in the AxB
11The Grid Workflow solution (3)Matrix Operation
Input Definition
Expected file names are INPUT1 and INPUT2
12The Grid Workflow solution (4)Matrix operation
definition
Matrix Operation Package
Op Code
13The Grid Workflow solution(5)The progress
5 5 10.0 9.0 8.0 7.0 6.0 30.0 8.0 7.0 5.0 9.0
40.0 0.0 11.0 5.0 71.0 1.0 6.0 5.0 0.0 4.0 21.0
7.0 4.0 8.0 0.0
5 1 110.0 132.0 448.0 48.0 79.0
A
A
B
B
A(A-1B)-B
This value should be zero
A-1
A-1B
A(A-1B)
Result x reached at this point, control follows
14The Grid Workflow solution (6)Workflow result
15The Grid Workflow solution (6)Workflow result
Test results 1,2,3,4,5 modified by the numerical
instability, due to the division operations
inside of matrix inversion
16The Grid Workflow solutionPart 2 advanced
algorithm
- The jobs Copy_A, Copy_B will be
substituted by the single one, by the
Separator. By convention it receives just one
file containing the values of the matrices A and
B. The values are represented in a text form and
separated by a character. The jobs algorithm
finds this character and yields the files
containing A and B an separate output ports.
Listing the content of the input file of the
separator job is the following - 5 5 10.0 9.0 8.0 7.0 6.0 30.0 8.0 7.0 5.0 9.0
40.0 0.0 11.0 5.0 71.0 1.0 6.0 5.0 0.0 4.0 21.0
7.0 4.0 8.0 0.05 1 110.0 132.0 448.0 48.0 79.0
17The Grid Workflow solutionPart 2 advanced
algorithm view
5 5 10.0 9.0 8.0 7.0 6.0 30.0 8.0 7.0 5.0 9.0
40.0 0.0 11.0 5.0 71.0 1.0 6.0 5.0 0.0 4.0 21.0
7.0 4.0 8.0 0.05 1 110.0 132.0 448.0 48.0 79.0
5 1 110.0 132.0 448.0 48.0 79.0
AB
5 5 10.0 9.0 8.0 7.0 6.0 30.0 8.0 7.0 5.0 9.0
40.0 0.0 11.0 5.0 71.0 1.0 6.0 5.0 0.0 4.0 21.0
7.0 4.0 8.0 0.0
A
B
18Summary
- Simple way of calculation
- Extendibility
- Graphical usage
- Immediate access