190 likes | 217 Views
Equation Solver. A Grid solution. 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 Document Parameter Study support in P-GRADE Portal 2.5, Pinciples & Practices.ppt. Outline.
E N D
Equation Solver A Grid solution • 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 Document • Parameter Study support in P-GRADE Portal 2.5, Pinciples & Practices.ppt LPDS MTA SZTAKI
Outline • Access to the Demo program • The Mathematic problem • The Matrix operation package • The Grid Workflow solution • ExampleBasic solutionAdvanced solution • Summary LPDS MTA SZTAKI
Access 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 LPDS MTA SZTAKI
The mathematical problem Let us solve the equation A*x = B where thecoefficients ai,j bi are real: A-1*A*x = A-1*B A-1*A = E x = E*x x = A-1*B LPDS MTA SZTAKI
The 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 ) LPDS MTA SZTAKI
INPUT1 OUTPUT INPUT2 OP The 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 LPDS MTA SZTAKI
The Matrix Operation Package(3)Operations Syntax: <OP_code> [<Extension>] [V[erbose]] OP Extension Explanation ShortName AI1+I2 -> OAdd SI1–I2 -> OSubtract MI1*I2 -> OMultiply RI2*I1 -> OReverse Multiply Ttranspose of I1 -> OTranspose Iinvert of I1 -> OInvert cflotingvalue * I1-> Oconstant multiply LintegerI1[value,*]-> OLine of CintegerI1[*,value]-> OColumn of Example:L3 V Operation and I/0 files will be printed on standard output Eventual extension values are defined as command line values LPDS MTA SZTAKI
The 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 places:port 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 LPDS MTA SZTAKI
The Grid Workflow solution(1) LPDS MTA SZTAKI
The Grid Workflow solution (2)Input Matrix association Location of file representing “B” in the A*x=B LPDS MTA SZTAKI
The Grid Workflow solution (3)Matrix Operation Input Definition Expected file names are INPUT1 and INPUT2 LPDS MTA SZTAKI
The Grid Workflow solution (4)Matrix operation definition Matrix Operation Package Op Code LPDS MTA SZTAKI
The 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 B A B A*(A-1*B)-B This value should be zero A-1 A-1*B A*(A-1*B) Result x reached at this point, control follows LPDS MTA SZTAKI
The Grid Workflow solution (6)Workflow result LPDS MTA SZTAKI
The 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 LPDS MTA SZTAKI
The 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.0#5 1 110.0 132.0 448.0 48.0 79.0 LPDS MTA SZTAKI
The 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.0#5 1 110.0 132.0 448.0 48.0 79.0 5 1 110.0 132.0 448.0 48.0 79.0 A#B 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 LPDS MTA SZTAKI
Summary • Simple way of calculation • Extendibility • Graphical usage • Immediate access LPDS MTA SZTAKI