2
BENCHMARK COMPUTATION: WHAT IS THE PURPOSE AND MEANING? I. BABusKA Institute for Physical Science and Technology. University of Maryland. College Park. Maryland. USA J.T. aDEN Texas Institute for Computational Mechanics, The University of Texas at Austin, Austin, Texas. USA Introduction In recent years, the solution of benchmark problems has been strongly advocated as a means for 'validating' engineering software. The idea is classical: a software product, or perhaps simply an algorithm, is used to solve one or more specific model problems and results are compared against a standard to determine reliability and performance. Among well-known standard sets is the MacNeal-Harder set I. which provides a testbed for certain finite element methods of structural analysis. Other benchmark problems are used to validate or 'anchor' computational fluid-dynamics software. The idea of testing software on model problems is, of course, a very natuml one that has. been part of developing software tools since the inception of computational analysis. Indeed 'QA' (quality assurance) is a fundamental step in assessing the functionality of a code by exercising it on at least a few cases. But the idea of 'Benchmarking' as it is now called, has steadily grown into an industry of great proportions in its own right. Benchmarking is being heralded within the software industry as a necessary basis for ensuring the customer of the quality of a software product. The magazine Benchmark specializes in the periodic publication of benchmark comparisons and is the organ of the National Association for Finite Elemelll Methods (NAFEM) which endorses a formalization of the benchmarking exercise. Today, 'certification' of commercial finite clement software is advocated by some specialists, including commercial software developers, and the proposed certification processes focus on benchmark testing. Our aim here is to examine some of the benchmarking practices now being used and to address inherent inconsistencies in the WdY some standard benchmarking problems are presented. Typically, benchmark problems are analysed using different codes, the internal details and methodologies of which are not available, and little is done to explain differences in results that may be obtained. In addition, little justification of the recommended tests is generally given and exactly what properties of the subject code are being tested are frequently obscure. Under such conditions, certification of software would seem to be self- serving for developers passing the tests and, at the least, unfair to both the developer and the user. To address these concerns. we pose the following questions: What, in fact. are the goals of speci til' benchmark tests? What. in other 'words, are the properlies of the software that the bem:hmark problem purporls to unveil? Are the aClual benchmark prohkms designed properly to answer these questions? What can be inferred from the results or a few benchmark examples about more general classes or problems? To resolve these and related issues lilr all cases of benchmark problems is an impractical if not an impossible task. Thus, we shall focus on a more modest goal of discussing these issues for computational models of elastic plates. We presume that we are given the following task: Given a black-box finite element structural anatysis code. determine its suitability for use by analyzing a specified problem of bending of a linearly-elastic plate. The following questions arise: 1. What do we mean by a plate? There are many different plate theories that can be used as a basis for developing finite elements. Since the code under scrutiny is a black box, we presume that it must perform acceptably on our benchmark problems regardless of its basis. One should perhaps ask: What features of the plate behaviour are of interest? Displacements, moments, shear forces, reactions, etc. may be of interest, but other features can also be investigated. How can different plate elements be compared without establishing a meaningful theoretical basis for comparison? . One possible resolution of this paradox is to prescribe the data for the plate as 'exact', these data (for example, moments) are computcd from the solution of a three- dimensional linear elasticity problem for a thin cylindrical domain (the plate). Boundary conditions on the lateral (cylindrical) sides of the plate have to be precisely formulated. For example, the notion of a 'simple support' has to be specified in a threc-dimensional setting because the dati of interest, for example moments and shear forces in the neighbourhood of the boundary, as well as reactions, could be very sensitive to boundary conditions when lhe plate is very thin. Also. bounpary conditions have to be 'legal'. By this we mean that the solution has to exist and be unique. It is not uncommon in engineering literature that an illegal boundary condition is used, such as, for example. specification that the (vertical) displacement on the center· line of the cylindrical side of the plate be zero. Then it is easy to show that, in general, a solution may not exist to the plate problem. The date of interest, for comparison purposes, have to be finite. For example, referring to the benchmark problem of pinched shell when the load is a concentrated load. Belytschko 2 gives the exact (finite) value of the displacement under the load. This cannot be related to the three-dimensional solution because the displacement is infinite under the load. (It is also infinite when the Reissner-Mindlin shell formulation is used). Nevertheless, the given value has been proposed in bem:hll1ark l'Olllputalions as the exact value. Similar situations exist tll[ plates under line loading. ~. Wh,ll prohlem does lhe tinite element method solve? Assuming. lhat \\'e successively rdine the mesh. a reasonahle tinite clement method should converge to an exm:l solution of some mathematical problem. Usually a plate model. ror example. the Kirchhoff or a Reissner-

J.T. aDEN Texas Institute for Computational Mechanics, …users.ices.utexas.edu/~oden/Dr._Oden_Reprints/1992-005.benchmark...software tools since the inception of computational

Embed Size (px)

Citation preview

Page 1: J.T. aDEN Texas Institute for Computational Mechanics, …users.ices.utexas.edu/~oden/Dr._Oden_Reprints/1992-005.benchmark...software tools since the inception of computational

BENCHMARK COMPUTATION: WHAT IS THE PURPOSE AND MEANING?I. BABusKA

Institute for Physical Science and Technology. University of Maryland. College Park. Maryland. USAJ.T. aDEN

Texas Institute for Computational Mechanics, The University of Texas at Austin, Austin, Texas. USA

IntroductionIn recent years, the solution of benchmark problems has

been strongly advocated as a means for 'validating'engineering software. The idea is classical: a softwareproduct, or perhaps simply an algorithm, is used to solveone or more specific model problems and results arecompared against a standard to determine reliability andperformance. Among well-known standard sets is theMacNeal-Harder set I. which provides a testbed forcertain finite element methods of structural analysis. Otherbenchmark problems are used to validate or 'anchor'computational fluid-dynamics software.

The idea of testing software on model problems is, ofcourse, a very natuml one that has. been part of developingsoftware tools since the inception of computationalanalysis. Indeed 'QA' (quality assurance) is a fundamentalstep in assessing the functionality of a code by exercisingit on at least a few cases. But the idea of 'Benchmarking'as it is now called, has steadily grown into an industryof great proportions in its own right. Benchmarking isbeing heralded within the software industry as a necessarybasis for ensuring the customer of the quality of a softwareproduct. The magazine Benchmark specializes in theperiodic publication of benchmark comparisons and is theorgan of the National Association for Finite ElemelllMethods (NAFEM) which endorses a formalization of thebenchmarking exercise. Today, 'certification' ofcommercial finite clement software is advocated by somespecialists, including commercial software developers, andthe proposed certification processes focus on benchmarktesting.

Our aim here is to examine some of the benchmarkingpractices now being used and to address inherentinconsistencies in the WdY some standard benchmarkingproblems are presented. Typically, benchmark problemsare analysed using different codes, the internal details andmethodologies of which are not available, and little is doneto explain differences in results that may be obtained. Inaddition, little justification of the recommended tests isgenerally given and exactly what properties of the subjectcode are being tested are frequently obscure. Under suchconditions, certification of software would seem to be self-serving for developers passing the tests and, at the least,unfair to both the developer and the user.

To address these concerns. we pose the followingquestions:

• What, in fact. are the goals of speci til' benchmarktests? What. in other 'words, are the properlies of thesoftware that the bem:hmark problem purporls tounveil?

• Are the aClual benchmark prohkms designedproperly to answer these questions?

• What can be inferred from the results or a fewbenchmark examples about more general classes orproblems?

• To resolve these and related issues lilr all cases of

benchmark problems is an impractical if not an impossibletask. Thus, we shall focus on a more modest goal ofdiscussing these issues for computational models of elasticplates.

• We presume that we are given the following task:Given a black-box finite element structural anatysiscode. determine its suitability for use by analyzing aspecified problem of bending of a linearly-elastic plate.The following questions arise:

1. What do we mean by a plate? There are many differentplate theories that can be used as a basis for developingfinite elements. Since the code under scrutiny is a blackbox, we presume that it must perform acceptably on ourbenchmark problems regardless of its basis. One shouldperhaps ask: What features of the plate behaviour are ofinterest? Displacements, moments, shear forces, reactions,etc. may be of interest, but other features can also beinvestigated. How can different plate elements becompared without establishing a meaningful theoreticalbasis for comparison? .

One possible resolution of this paradox is to prescribethe data for the plate as 'exact', these data (for example,moments) are computcd from the solution of a three-dimensional linear elasticity problem for a thin cylindricaldomain (the plate). Boundary conditions on the lateral(cylindrical) sides of the plate have to be preciselyformulated. For example, the notion of a 'simple support'has to be specified in a threc-dimensional setting becausethe dati of interest, for example moments and shear forcesin the neighbourhood of the boundary, as well as reactions,could be very sensitive to boundary conditions when lheplate is very thin.

Also. bounpary conditions have to be 'legal'. By this wemean that the solution has to exist and be unique. It isnot uncommon in engineering literature that an illegalboundary condition is used, such as, for example.specification that the (vertical) displacement on the center·line of the cylindrical side of the plate be zero. Then itis easy to show that, in general, a solution may not existto the plate problem.

The date of interest, for comparison purposes, have tobe finite. For example, referring to the benchmark problemof pinched shell when the load is a concentrated load.Belytschko 2 gives the exact (finite) value of thedisplacement under the load. This cannot be related to thethree-dimensional solution because the displacement isinfinite under the load. (It is also infinite when theReissner-Mindlin shell formulation is used).Nevertheless, the given value has been proposed inbem:hll1ark l'Olllputalions as the exact value. Similarsituations exist tll[ plates under line loading.~. Wh,ll prohlem does lhe tinite element method solve?Assuming. lhat \\'e successively rdine the mesh. areasonahle tinite clement method should converge to anexm:l solution of some mathematical problem. Usually aplate model. ror example. the Kirchhoff or a Reissner-

Page 2: J.T. aDEN Texas Institute for Computational Mechanics, …users.ices.utexas.edu/~oden/Dr._Oden_Reprints/1992-005.benchmark...software tools since the inception of computational

84

Mindlin model, is first formulated and the finite elementmethod is expected to converge to its exact solution.Nevertheless, it is frequently not clear from the descriptionof some codes exactly what is the solution to which thefinite element method converges.

It could also happen that the finite element solutionconverges to a limit, but the limit has little relation to themodel used as a basis for developing the element. Forexample, consider the problem of a bending of a circular,simply supported Kirchhoff plate characterized by abiharmonic equation. Use a triangulation for which thecircular boundary is approximated by straight-sideelements. Using classical conforming bending elementsand minimization of the total energy over the functionswhich are zero at the boundary, the solution will convergeto the solution of a biharmonic equation, but the boundaryconditions will be completely incorrect.

It may very well be that the only comparison principlefor assessment of codes for linear structural problems isto compare computed data (e.g., moments) with that ofthe three-dimensional elasticity solution.3. How should one compare the efficiency of various finiteelement codes? It is not uncommon in some benchmarkstudies to compare the efficiency of two or more codesall of which produce questionable or incorrect results. Itwould seem to be of little value if a given program wasten times faster than a competitor if the results were wrong.A more rational approach would seem to be to tie theaccuracy of calculation to the effort required to attain it.For instance, how much CPU time would a test cod'erequire to deliver a prescribed accuracy? Other factorswhich come into consideration are the relation betweenhuman cost to set up a calculation and computer cost forsolving the benchmark problems. Hence, any comparisonhas to be supported by concrete data and by convincinganalyses of their relevance.4. What does the benchmark computation show?Benchmark computations are often very complex and canbe naively designed to portray ccrtain deficiencies. Thebenchmark should be such that it isolates a specific andwell-defined aspect of the performance of a code and doesnot lead to false interpretations. For example, in Refercncc) the computation of a uniformly-loaded, simply-supported Kirchhoff plate of the form of a parallelogram(a "skewed plate") with interior angle 0 < a ~ 90° ispresented as a useful benchinark. The mesh is quadrilateral(or triangular with divided quadrilaterals) with sidesparallel to plates skewed sides. Typical benchmark resultsshow detcrioration of accuracy as a decreases. The dataas presented give the impression that the observed effectof deterioration is caused by the skewness of the elements,but this is not the case. There are two basic effectspresent-skewness of the elements and changing of theregularity of the solution (the singularity at the corners)by changing a. It is possible to show that the effect of theskewness of the elements is negligible in comparison to

that of the singularity. Without a careful analysis of theactual solution of the problem, a hastily designedbenchmark problem can lead to completely erroneousconclusions.

It should also be noted that the character of thesingularity associated with a depends, again. on the modelused to derive the plate element. Different convergencerates produced by different rcgularities could bemisinterpreted as different responses to skewness-again,an incorrect conclusion.5. What set of benchmark problems should be selected?It is essential that the purpose of the benchmarkcomputation be clearly defined together with thequantitative indicators that will be used for a givenpurpose. It has to be clear that the indicators depend ordo not depend upon, for example. whcther the regularityof the solution is essential or not in assessing theperformance of an element, etc. This can often beestablished theoretically or experimentally by an additionalset of examples.

Summary CommentsIn view of the deficiencies in many benchmark problems

described abovc, what guidelines could we lay down fortruly testing a given "black box" FEM code on a simpleclass of problems. such as bending of elastic plates?

We believe thi!' question is open and we solicit opinionsfrom membcrs of IACM. Certainly. some possibilitiessuggest themselves:

• Use a well-defined standard as a basis for comparisonof methods, such as the solution provided by three-dimensional linear elasticity theory or by a fine meshof elements based on 3D elasticity.

• Determine the CPU time required to produce a resultwithin an accuracy of five percent and then theadditional CPU's needed to bring the rcsult withinone percent.

• Provide rationale for selecting which "results" aremeaningful and exactly what aspects of thefunctionality, robustness, or overall performance ofthe code these results test.

Many other possibilities suggest themselves. We invitecomments and suggestions from the readership.

References1. R.H. MacNeal, and R.L. Harder. "A proposed standardset of problems to test finite element accuracy," Journalof Finite Elemellf Analysis and Design, I. pp. 3-20, 1985.2. K.J. Forsberg and H.H. Fong, (eds.), "Finite elementstandards forum," Proceedings of the 26th StructuresStructural Dynamics and Material Conference, April 15,1985, Orlando, Florida, PDA Engineering, Santa Ana,California, 1986.3. 1. Robinson, "An evaluation of skew sensitivity of thirtyplate bending elements in nineteen FE systems," F E.N.Finite Element News. Robinson and Assoc. Dorset,England, 1985.