Upload
jayendran-chandrashekar
View
221
Download
0
Embed Size (px)
Citation preview
7/27/2019 OOPS Methodology for Ihcp
1/17
PLEASE SCROLL DOWN FOR ARTICLE
This article was downloaded by: [Indian Institute of Technology]
On: 6 June 2010
Access details: Access Details: [subscription number 742779879]
Publisher Taylor & Francis
Informa Ltd Registered in England and Wales Registered Number: 1072954 Registered office: Mortimer House, 37-
41 Mortimer Street, London W1T 3JH, UK
Numerical Heat Transfer, Part B: FundamentalsPublication details, including instructions for authors and subscription information:http://www.informaworld.com/smpp/title~content=t713723316
Object-Oriented Development of Inverse Heat Conduction Code Adaptableto Various ConfigurationsSun Kyoung Kimaa Department of Die and Mold Design, Seoul National University of Technology, Seoul, Korea
To cite this Article Kim, Sun Kyoung(2006) 'Object-Oriented Development of Inverse Heat Conduction Code Adaptable toVarious Configurations', Numerical Heat Transfer, Part B: Fundamentals, 50: 3, 269 284
To link to this Article: DOI: 10.1080/10407790500508878URL: http://dx.doi.org/10.1080/10407790500508878
Full terms and conditions of use: http://www.informaworld.com/terms-and-conditions-of-access.pdf
This article may be used for research, teaching and private study purposes. Any substantial orsystematic reproduction, re-distribution, re-selling, loan or sub-licensing, systematic supply ordistribution in any form to anyone is expressly forbidden.
The publisher does not give any warranty express or implied or make any representation that the contentswill be complete or accurate or up to date. The accuracy of any instructions, formulae and drug dosesshould be independently verified with primary sources. The publisher shall not be liable for any loss,actions, claims, proceedings, demand or costs or damages whatsoever or howsoever caused arising directlyor indirectly in connection with or arising out of the use of this material.
http://www.informaworld.com/smpp/title~content=t713723316http://dx.doi.org/10.1080/10407790500508878http://www.informaworld.com/terms-and-conditions-of-access.pdfhttp://www.informaworld.com/terms-and-conditions-of-access.pdfhttp://dx.doi.org/10.1080/10407790500508878http://www.informaworld.com/smpp/title~content=t7137233167/27/2019 OOPS Methodology for Ihcp
2/17
OBJECT-ORIENTED DEVELOPMENT OF INVERSEHEAT CONDUCTION CODE ADAPTABLE TO VARIOUSCONFIGURATIONS
Sun Kyoung KimDepartment of Die and Mold Design, Seoul National University of Technology,
Seoul, Korea
This article suggests a method for developing computer code that can solve inverse heat con-
duction problems (IHCPs). The concept of object-oriented development is employed to
implement the computer code in an efficient and flexible fashion. The software design is
conducted based on the unified modeling language. Furthermore, this article also explains
how to implement the deliverable computer code using existing software development tools.
The flexibility and reusability of the developed code is emphasized and verified through two
examples, which are adaptable regularization and the modification of existing IHCP code
for another IHCP.
1. INTRODUCTION
Inverse heat conduction problems (IHCPs) have been thoroughly investigatedfor a variety of configurations [14]. There are many classes of IHCPs, according tothe specification of the corresponding direct problem. For example, a three-dimen-sional steady-state IHCP [5] and two-dimensional transient IHCP [2, 4] have beensolved in previous studies. Recently, IHCPs in micro- or nanoscale have also beenstudied [6]. The scale of the problem is now considered another measure for classi-fication of IHCPs. IHCPs can also be classified by the kinds of unknown to bedetermined. Such unknowns can be the material property [7, 8], boundary conditions[1, 9], and geometry [10, 11]. Other unknowns are the heat sources [12, 13] and inter-face conductance [14], which are not considered in this study.
Many different types of IHCPs may be encountered while analyzing real-world
thermal systems [2, 3]. Implementational issues, however, are not much studied. Thiswork suggests a unified process for implementing computer software that can solveIHCPs. This work employs the methods of object-oriented programming to realizethe computer software in a rapid and reliable fashion [15].
For object-oriented development, the solution scheme for the IHCP should bebased on an optimization scheme. When the inversion scheme is strongly coupledwith the direct problem, the benefit of the object-oriented development is not that
Received 28 March 2005; accepted 8 November 2005.
Address correspondence to Sun Kyoung Kim, Department of Die and Mold Design, College
of Engineering, Seoul National University of Technology, 138 Gongreung Gil, Nowon, Seoul, 139743,
Republic of Korea. E-mail: [email protected]
269
Numerical Heat Transfer, Part B, 50: 269284, 2006
Copyright # Taylor & Francis Group, LLC
ISSN: 1040-7790 print=1521-0626 onlineDOI: 10.1080/10407790500508878
7/27/2019 OOPS Methodology for Ihcp
3/17
great. The methods that modify the matrices of the direct problem are not suitablefor the current approach [16, 17]. Any methods that specially treat the time domainare also not suitable [1822]. Such methods are the sequential method [1, 18], thefrequency-domain method [20, 21], and filtering methods [22].
Studies on object-oriented development of numerical codes are found in pre-vious works. They are focused on implementation of specific numerical methodssuch as the finite-volume method [23] or the finite-element method [24]. Masterset al. have shown how to handle data structures for numerical codes in an object-oriented way [24]. This work is not about implementation of a computer code fora specific direct problem. This work provides a framework for developing IHCPcomputer codes, which can be interrelated with any kind of direct problem. Thisframework makes it possible to build up a new IHCP code simply by assemblingexisting codes, since the concepts of object-oriented software development allowseasier reuse, safe wrapping, and ensured interoperability. More specifically, the uni-
fied modeling language (UML), which is the standard object modeling language, isutilized in this development [25, 26]. The present article does not explain the math-ematical details of the IHCP [2, 4]. Readers who are not familiar with IHCPs arerecommended to read [1]. This work presents several UML diagrams and explainsthem. In the process of realizing those diagrams, the software design is completed.UML suggests that the scenario, use case, class, and sequence diagrams be includedas essential elements in the design. This work shows and explains those four elementssequentially. By doing so, what to realize and how to implement become clear.
2. DELINEATION OF IHCP
2.1. Scenario
Let us briefly describe conventional solution methods for IHCPs. There aremany different solution methods for IHCPs, including the sequential method [1],the whole-domain method [14] and the space-marching method [1, 2]. In thesequential method and the space-marching method, the inverse estimation and thedirect problem are strongly coupled, so it is very hard to develop a flexible andreusable code [1]. Flexibility and reusability are crucial issues in software develop-ment, since those properties allow shortening the development time [15]. Althoughthe sequential method and other methods have many excellent features, they are
not considered in this work for the aforementioned reason.The scenario here means the abstract description of what happens inside theIHCP software while it runs. There are decisions that should be made accordingto the developmental phases. Some of them are to be decided during the design phaseand others during the implementational phase or run time. Let us describe thosedetails.
Generally, in an inversion process, we reverse the direction of information flow[2]. By doing so, the causes are found from the observations of the results. In a typi-cal IHCP, the boundary condition, of Dirichlet or Neumann type, is determinedbased on temperature readings elsewhere. The main issue in this sort of inversionis the instability of the solution, which is attributed to the mathematical ill-posedness
inherent in the problem [14]. To overcome this difficulty, treating the problem as an
270 S. K. KIM
7/27/2019 OOPS Methodology for Ihcp
4/17
optimization problem is widely accepted and has been proven to be reliable [2, 4].This study also employs the optimization-based approach.
The optimization problem for an IHCP finds the unknowns of interest thatrender a statistical consistency between the calculation and measurement data. Thus,
numerical or analytical calculation should be conducted to compare the results withthe experimental data. Usually, the experimental data in an IHCP are temperaturereadings. Sometimes, as special cases, thermal strain or heat flux measurementscan also comprise such data. This study considers temperature measurements only.
2.2. Use Case
Use case means a collection of scenarios which can happen while running thesoftware [25, 26]. The conventional scenarios of numerical tools are not very compli-cated. There is no fatal risk that can be incurred by a failure of this kind of software
run. Thus, usually a simple description can explain the entire scenario successfully.The use cases for IHCPs may be as follows:
Basic flow:
a. The experimenter obtains a set of experimental data.b. The analyst gathers all the information required for the analysis, includ-
ing experimental data, statistical criterion, geometry, boundary condition,material property, sensor locations, and information about unknowns ofinterest.
c. The analyst starts the inverse analysis by initiating the optimization routine.d. The optimization routine repeatedly calls the direct simulation routine to cal-
culate deviation between experimental and numerical data with a provision ofthe test unknowns.
e. The optimization routine eventually finds the unknowns that satisfy the cri-teria imposed by the analyst and returns the unknowns as a final solution set.
Alternative flow 1:c. The input data are inconsistent with each other, so that the analysis cannot
start.Alternative flow 2:
e. The optimization routine cannot find the unknowns that meet the imposedcriteria.
A use case diagram can explain the above scenario in a visual fashion, as shownin Figure 1. There are no strict rules for drawing this diagram. As long as thediagram can reveal what will happen in the system during run time, any form is goodenough. The use case is an overview of the entire system from the outside of the sys-tem. It clearly explains the requirements of the system. Although it does not neces-sarily have to be connected to the classes of the system, it gives a conceptualfoundation for building the classes.
As shown in Figure 1, there are two actors in the diagram, who are the Exper-imenter and the Inverse Analyst. The diagram shows what those actors should do.Here, we assume that the experimental system and the software are under their control.
Especially, the Inverse Analysts role is crucial. He or she should initiate the analysis
OBJECT-ORIENTED DEVELOPMENT OF IHCP CODE 271
7/27/2019 OOPS Methodology for Ihcp
5/17
and check the integrity of the entire analysis. What should be done inside the software isnow quite clear. The next step is to build the classes to implement the system.
3. DIAGRAMS
3.1. Basic Class Diagram
Classes are central to objected-oriented modeling. The classes explain theobjects of the system and the static relationships between them. There are three dif-ferent views in classes. Each of them focuses on concept, specification, andimplementation. This work basically considers the conceptual class diagram, sincethe implementational details are not the purpose of this article.
Three important aspects in solving IHCPs are how to conduct the optimiza-tion, how to simulate the phenomena numerically, and how to handle the experi-mental, numerical, and user-provided data. The core of the classes is the
optimization class, where all the data should be processed. Thus, the class diagramin Figure 2 shows the essence of the IHCP software. The optimization software seeksthe desired unknown condition that meets the rule of discrepancy between the simu-lated and experimental data.
The implementation-level class diagram should be extended from the basic dia-gram shown in Figure 2. Basically, the optimization class seeks the unknown con-dition of interest that meets the discrepancy rule of the IHCP. Consider an IHCPsystem with N measurement data. The discrepancy rule is expressed as [1]
J
XN
i1
Ti Yi2
r
2i
N
1
Figure 1. Use case diagram.
272 S. K. KIM
7/27/2019 OOPS Methodology for Ihcp
6/17
where Ti, Yi, and ri are the simulated and measured temperatures and the standarddeviation at the ith sensor location, respectively. Because seeking a solution that ren-ders J% 0 returns an unstable solution [2], the optimization problem usuallybecomes one to find the unknown such that J% N. However, this kind of equalityis quite hard to satisfy. Thus, the expression is replaced by an inequality conditionsuch as N ffiffiffiffiffiffiffi2N
p< J< N ffiffiffiffiffiffiffi2N
p[1, 2]. This discrepancy rule becomes the feasi-
bility condition of the optimization problem. In most cases, we have to employ somesort of regularization to obtain a sufficiently smooth and dependable solution
[14]. Depending on the way the regularization is handled, the optimization canbe constrained or unconstrained. Basically, when the inversion involves regulariza-tion, the optimization problem should be a constrained one. However, introductionof the regularization parameter relieves the burden of the constrained optimization.Consider the regularization term, R, and the Lagrange multiplier, k. In this case,the optimization problem should minimize R subject to the feasibility condition.The Lagrangian of the optimization in this case is written as L R kJ. At theoptimum point, we have rL rR krJ 0. Introducing the regularizationparameter, a, which is equal to 1=k, we have rJ arR 0. We can convertthe expression into a positive-definite one by multiplying by rJT, which turnsout to
rJT rJ arR 0 2
For a given a, the above expression becomes a nonlinear system of equations. Itshould be noted that an engineer should determine a that satisfies the feasibilitycondition. The level of smoothing in the resulting solution varies greatly dependingon the selection of the regularization parameter. Therefore, in a sense, the con-strained optimization is a process that automatically determines the regularizationparameter. However, the computational cost also increases dramatically in the con-strained optimization [27]. The IHCP software can run in either way according to
the requirement.
Figure 2. Basic class diagram.
OBJECT-ORIENTED DEVELOPMENT OF IHCP CODE 273
7/27/2019 OOPS Methodology for Ihcp
7/17
3.2. Optimization Class
In order to provide flexibility in the analysis, the computer codes should beadaptable to various optimization methods. Thus, the optimization class should
be an interface class to realize such adaptability and utilize many existing optimiza-tion codes. We can wrap any existing optimization code with an interface to make itadaptable to the IHCP code. This kind of wrapping is done by employing the adap-tor pattern, which is shown in Figure 3 [28].
The class diagram shown in Figure 3 is not the most general or unique one. It issimply a plausible one. This class diagram shows that a variety of optimization codescan be utilized to implement the optimization class in the IHCP code. The general-ization arrow in the diagram is realized by inheritance toward the direction reverse tothe arrow. For example, in C the Levenberg-Marquardt method can be declaredas [24]
class LevenbergMarquardtMethod : public GradientBasedOptimization{ };
3.3. Whole Class Diagram
The whole class diagram, which neglects the detail around the optimization class,is shown in Figure 4. This diagram reveals several important features of the IHCPcode. The ultimate purpose of any IHCP code is to determine the unknown of interest.Most IHCPs, as in this diagram, regard geometry, boundary condition, and material
Figure 3. Optimization classes.
274 S. K. KIM
7/27/2019 OOPS Methodology for Ihcp
8/17
property as the unknowns. There are several other unknowns, such as heat source,initial condition, and time constant of the thermal wave, in the hyperbolic heat equa-tion. These are not considered here. The unknown condition is necessary for therenewal of the simulated data. The diagram conceptualizes the polymorphism of theunknown condition using a typical pattern. The realization of the unknown conditiondepends greatly on the type of the unknown. Thus, we need to unify the access method
to the UnknownCondition class. Suppose the unknown is the boundary condition.The difficulty that arises here is that the unknown condition should be treated as aknown boundary condition when solving the direct problem. The conventional wayof handling this kind of situation is to allot related variables to a global array, but thishas a negative impact on the flexibility and reusability of the code. The Unknown-Condition class should hold the pointer to the data in the BoundaryCondition classinstead of holding the boundary condition data values. The UnknownConditionclass should update the corresponding boundary condition when it is updated. TheBoundaryCondition class does not have to hold any information, whether it hasany unknown condition or not. In this fashion, the UnknownCondition class andclasses related directly to the DirectProblem class are isolated. Three classes derived
from an abstract class, UnknownCondtion, are employed to resolve the different
Figure 4. Overall class diagram.
OBJECT-ORIENTED DEVELOPMENT OF IHCP CODE 275
7/27/2019 OOPS Methodology for Ihcp
9/17
natures of three different kinds of unknown conditions. Complete separation of theGeometry, BoundaryCondition, and MaterialProperty classes from the Unknown-Condition derived-classes allows great flexibility in designing and implementing thecode for the direct problem.
A sample design of the UnknownCondition class is shown in Figure 5. The classshould have some members characterizing the unknown. The one important thing is
that the class should involve metadata that explain the data themselves in the class.
3.4. Sequences and Collaboration Diagrams
The sequence diagram presents the procedures to be done by the software.Figure 6 shows the sequences diagram that performs the described inverse analysis.Understanding the diagram is quite straightforward. The diagram clarifies the tasksto be done by the software. The diagram does not have to include every detail of theprocedures that the software should implement. As shown in the diagram, it reveals
the essence of the process that should be done in an optimization-based IHCP code.The solid arrows mean actions and the dashed arrows mean the returns.The main routine, IHCPMain, initiates the procedures. Then, the optimization
routine repeatedly calls the direct problem and compares the simulated data with theexperimental data. By doing so, the optimization routine finds the inverse solution.The idea that was described in the use case diagram is further concretized in thesequence diagram. The role of this diagram is to declare procedurally what is sup-posed to happen inside the software.
The collaboration diagram is similar to the sequence diagram. It further clari-fies the tasks to be executed. Each operation is numbered according to the order ofexecution. As shown in Figure 7, this diagram depicts how each class is collaborating
with other classes.
Figure 5. Classes around UnknownCondition class.
276 S. K. KIM
7/27/2019 OOPS Methodology for Ihcp
10/17
3.5. Implementational Issues
Implementation here means realizing the executable computer software based
on the abstraction presented in the diagrams. Recently, several development toolsthat are capable of automatically converting the diagrams into the computer codeshave become available [29]. Even without such automation tools, the diagram greatlyhelps in the writing of codes. An automation tool or a developer creates a skeletonbased on the diagrams. Then, the developer fills out the routines in the skeleton. Thedeveloper might be able to utilize many existing codes in order to complete the rou-tines. For example, the developer can reuse any existing code that can solve the directheat conduction problem. Furthermore, commercial analysis software can be inter-linked to the IHCP software via a proper interface. Studies on object-oriented devel-opment of numerical codes for the direct problem are found elsewhere [23, 24].Theses studies present various implementation issues involving the data structures,
mesh generation, and matrix buildup scheme.
Figure 6. Sequence diagram.
OBJECT-ORIENTED DEVELOPMENT OF IHCP CODE 277
7/27/2019 OOPS Methodology for Ihcp
11/17
This article does not present any actual computer codes. Such realization is aresult of the process but not the main issue in this article. The actual computer code,which is implemented based on the proposed UML design, will vary greatly depend-ing on the coding convention, developing tools situation, and other restrictions.Figure 8 shows a screen view of the implemented IHCP software.
Figure 7. Collaboration diagram.
Figure 8. Implemented computer software.
278 S. K. KIM
7/27/2019 OOPS Methodology for Ihcp
12/17
4. APPLICATION TO TWO-DIMENSIONAL BOUNDARY IHCP
4.1. Objective and Constraint
We have applied different regularization methods to different IHCPs. It should
be emphasized that Eq. (1) is not the objective function of the optimization problem.It is the constraint of the optimization problem. The objective function should be theregularization term. The Optimization class is associated with the Regularizationclass, which actually determines the objective function to be optimized. Let us applythis model to the Tikhonov regularization and the maximum entropy regularizationto a two-dimensional transient IHCP.
4.2. Problem Statement
The IHCP considered in this test case is as follows. The governing equation for
temperature Tx;y; t, where x (0 x a) and y (0 y b) are the Cartesian coor-dinate variables over the solid domain R, and t is time (0 t tf), is described as
CqT
qtr krT 0 in R 3a
Here, Cand kare the volumetric heat capacity and the thermal conductivity, respect-ively. The corresponding conditions for the top, left, bottom, and right boundariesA1 and A2, respectively, are specified as follows:
kqT
qy f
x;
t on
A1 3
b
qT
qx 0 on A2 3c
In addition, initially the domain is maintained at a uniform temperature, T0, that is,
Tx;y; 0 T0 in R 3d
A direct solution of the problem gives temperature as a function of location and time
for given initial and boundary conditions assuming the surface heat flux fx; tknown. Thus, temperature for a particular function fx; t can be denoted asTx;y; t; f.
Through inverse analysis, the unknown condition which is consistent with tem-perature observation can be estimated. The temperature measured on the lower sur-face can be expressed as a continuous function Yx; t. If no error is included in themeasured temperature, the inverse solution can be obtained from
Find fx; t such that Tx; 0; f Yx; t 4
However, we have uncertainty of ri for each temperature reading, Yi, which is
obtained at a specified sensor location and at a given time. Thus, the solution should
OBJECT-ORIENTED DEVELOPMENT OF IHCP CODE 279
7/27/2019 OOPS Methodology for Ihcp
13/17
satisfy Eq. (1), which is the constraint of the optimization problem. Such a solution iscalled a feasible solution. Thus the problem can be stated as: Find a solution thatminimizes the regularization functional among those satisfying the feasibility con-dition, Eq. (1).
4.3. Reconstruction of Unknown Boundary Condition
In this test case, the unknown boundary condition class in Figures 4 and 5 isutilized. The inverse analysis is conducted using the simulated measurement dataembedded with random errors with known standard deviation, which are artificiallygenerated with the same computer code that implements the DirectProblem class inFigure 2. The unknown boundary condition to be estimated is the boundary con-dition that was imposed while the simulated measurement data were generated.
4.4. Adaptable Regularization
Regularization classes are derived from the Objective class associated withOptimization class as shown in Figure 4. Consider two derived classes, Maxium-Entropy and Tikhonov, which are supposed to implement the maximum entropyand Tikhonov regularizations, respectively [30, 31]. The adaptable regularization isrealized in this way.
The regularization functional in the maximum entropy method and the zeroth-order Tikhonov regularization are given as
Rf X
W
i1fi ln f
i
Fwhere f ff1; f2; . . . ; fWg and F
XW
i1fi 5a
Rf XW
i1f2i 5b
It is known that the maximum entropy method has more resolving power thanthe conventional Tikhonov regularization method. However, it takes a lot of compu-tational resources, owing to the strong nonlinearity induced from the logarithm inEq. (5a) [30]. Thus, we need to change the regularization method on the demand
of the resolution. We have implemented both the classes and solved the specifiedIHCP. In this study, Optimization class has been realized based on the successivequadratic programming [27].
Figure 9a shows the original heat flux imposed as the boundary conditionwhile generating the simulated measurement data. Figure 9b shows the resultobtained by the zeroth-order Tikihonov regularization. Figure 9c shows the resultby the maximum entropy method. As found in the literature, the maximum entropymethod shows better resolution and accuracy [31]. The numerical scheme itself is notthe main scope of this study. Thus, we do not present any more about the maximumentropy method. However, it should be noted that the calculation time for themaximum entropy regularization is approximately 10 times longer than that for
the Tikhonov regularization. The regularization method should be properly selected
280 S. K. KIM
7/27/2019 OOPS Methodology for Ihcp
14/17
Figure 9. Adaptable regularization: (a) original heat flux; (b) conjugate gradient method with zeroth-orderTikhonov regularization; (c) maximum entropy regularization.
OBJECT-ORIENTED DEVELOPMENT OF IHCP CODE 281
7/27/2019 OOPS Methodology for Ihcp
15/17
according to the demand for computational accuracy. As in this case, it is convenientto employ multiple regularization methods and to select the best one among themconsidering the trade-off between calculation time and resolution. The object-oriented development allows easier implementation of IHCP code with selectable
regularization through the adaptor pattern.
4.5. Modification to Different IHCPs
This code can be easily reused for various IHCPs. For example, we can applythe method to the three-dimensional IHCP simply by modifying the DirectProblemclass. Moreover, for the multidimensional case we can use commercial software asthe direct solution method. In this case, the DirectProblem, BoundaryCondition,and MaterialProperty classes should be interfaced to the commercial software, whichshould allow such interfacing.
Another example is changing the unknown of interest from the boundary con-dition to the geometry or material property. Object-oriented development allows thismodification, simply and robustly. The material property case is easier than thegeometry case. Usually, the material property case results in a parameter estimationproblem [1, 7]. This renders the problem easier because the number of unknowns isfewer. To do this, the ptrCoefficents member in the MaterialProperty class should beappropriately defined. In the geometry case, the difficulty arises from the complexityof gradient evaluation and geometry updating. In a geometry reconstruction prob-lem, the number of unknowns usually becomes very large. The conventional meth-ods of gradient evaluation, such as the finite-difference method, which allowseasier encapsulation of the class, demands unacceptably long computational time.
Thus, an analytical scheme which makes the implementation of Gradient classinvolving and intriguing is inevitably necessary to reduce the computational time.However, even in this case, the Gradient class can be encapsulated by using anotherDirectProblem class solely for the gradient evaluation.
In the unknown geometry case, a certain portion of boundary is supposed todeform during the calculation. Thus, the numerical mesh should be regeneratedduring the run time. This deformable geometry system is supposed to be implemen-ted solely by the UnknownGeometry class (see Figure 5). A method of the geometryclass, updateNodes( ), updates positions of nodes by changing the nodal coordinatevalues through a property of the Geometry class, ptrNode. As shown here, within
this framework any existing code can be easily reused and modified to solve agiven IHCP.
5. CONCLUSION
This article has presented a method to develop a computer code for the inverseheat conduction problem (IHCP) in an object-oriented fashion. The developmentprocess includes the scenario description, use case, class, and sequence diagrams.Through completing the diagrams, the concept and idea inherent in the originalproblem become concretized, getting close to an implementational level.
There are meaningful implications in introducing the object-oriented method
to numerical tool developers. First, while realizing the UML diagrams, the developer
282 S. K. KIM
7/27/2019 OOPS Methodology for Ihcp
16/17
becomes aware of every important feature to be implemented as well as underly-ing concepts. Second, revising and reusing the software becomes convenient andefficient.
The current study has shown how to develop an involved numerical code that
solves IHCPs. The IHCP considered is solved with the optimization-based methodfor the flexibility and generality of the code. The completed diagrams clearly and sys-tematically explain what should be done by the IHCP code and how to realize it.Flexibility and reusability have been examined through two examples. First, we haveshown that different regularization methods can be easily adapted to the existingIHCP code using the adaptor pattern. Second, we have also shown that theobject-oriented development allows easier reuse of the existing IHCP. The boundaryIHCP code can be modified to other IHCPs without great difficulty.
REFERENCES
1. J. V. Beck, B. Blackwell, and C. R. St. Clair, Jr., Inverse Heat Conduction, Wiley,New York, 1985.
2. O. M. Alifanov, Inverse Heat Transfer Problem, Springer-Verlag, Berlin, 1994.3. K. Kurpisz and A. J. Nowak, Inverse Thermal Problems, Computational Mechanics
Publications, Swansea, UK, 1995.4. M. N. Ozisik and H. R. B. Orlande, Inverse Heat Transfer: Fundamentals and Applica-
tions, Taylor & Francis, 2000.5. S. K. Kim and W. I. Lee, Inverse Estimation of Steady-State Surface Temperature on a Three-
Dimensional Body, Int. J. Numer. Meth. Heat Fluid Flow, vol. 12, no. 8, pp. 10321050, 2002.6. S. K. Kim and I. M. Daniel, Solution to Inverse Heat Conduction Problem in Nanoscale
Using Sequential Method, Numer. Heat Transfer B, vol. 44, pp. 439456, 2003.7. G. P. Flach and M. N. Ozisik, Inverse Heat Conduction Problem of Simultaneously Esti-
mating Spatially Varying Thermal Conductivity and Heat Capacity per Unit Volume,Numer. Heat Transfer A, vol. 16, pp. 249266, 1989.
8. S. Kim, B. Chung, M. C. Kim, and K. Y. Kim, Inverse Estimation of Temperature-Dependent Thermal Conductivity and Heat Capacity per Unit Volume with the DirectIntegration Approach, Numer. Heat Transfer A, vol. 44, no. 5, pp. 521535, 2003.
9. J. Su and G. F. Hewitt, Inverse Heat Conduction Problem of Estimating Time-VaryingHeat Transfer Coefficient, Numer. Heat Transfer A, vol. 45, no. 8, pp. 777789, 2004.
10. C. K. Hsieh and A. J. Kassab, A General Method for the Solution of Inverse HeatConduction Problems with Partially Unknown Geometries, Int. J. Heat Mass Transfer,
vol. 29, no. 1, pp. 4758, 1986.11. S. K. Kim and W. I. Lee, Implementation of Inverse Method for Estimating Undeter-mined Boundary in a Two-Dimensional Slab Based on Temperature Measurement,Numer. Heat Transfer A, vol. 46, pp. 515523, 2004.
12. C. Huang and S. Cheng, A Three-Dimensional Inverse Problem of Estimating the Volu-metric Heat Generation for a Composite Material, Numer. Heat Transfer A, vol. 39, no. 4,pp. 383403, 2001.
13. G. Blanc, J. V. Beck, and M. Raynaud, Solution of the Inverse Heat Conduction Problemwith a Time-Variable Number of Future Temperatures, Numer. Heat Transfer B, vol. 32,no. 4, pp. 437451, 1997.
14. T.-C. Chen and P.-C. Tuan, Inverse Problem of Estimating Interface Conductancebetween Periodically Contacting Surfaces Using the Weighting Input Estimation Method,
Numer. Heat Transfer B, vol. 41, no. 5, pp. 477492, 2002.
OBJECT-ORIENTED DEVELOPMENT OF IHCP CODE 283
7/27/2019 OOPS Methodology for Ihcp
17/17
15. P. Coad and J. Nicola, Object-Oriented Programming, Pearson Education, 1993.16. A. Behbahani-nia and F. Kowsary, A Direct Transformation Matrices Method for Solution
of Inverse Heat Conduction Problems, Numer. Heat Transfer B, vol. 46, no. 4, pp. 371386,2004.
17. N. Al-Khalidy, A General Space Marching Algorithm for the Solution of Two-Dimen-sional Boundary Inverse Heat Conduction Problems, Numer. Heat Transfer B, vol. 34,no. 3, pp. 339360, 1998.
18. T. S. Kumar, A Serial Solution for the 2-D Inverse Heat Conduction Problem for Estimat-ing Multiple Heat Flux Components, Numer. Heat Transfer B, vol. 45, no. 6, pp. 541563,2004.
19. A. L. Koay, S. H. Pulko, and A. J. Wilkinson, Reverse Time TLM Modeling of ThermalProblems Described by the Hyperbolic Heat Conduction Equation, Numer. Heat TransferB, vol. 44, no. 4, pp. 347363, 2003.
20. J. Blum and W. Marquardt, An Optimal Solution to Inverse Heat Conduction ProblemsBased on Frequency Domain Interpretation and Observers, Numer. Heat Transfer B,vol. 32, no. 4, pp. 453478, 1997.
21. T. Luttich, A. Mhamdi, and W. Marquardt, Design, Formulation, and Solution of Multi-dimensional Inverse Heat Conduction Problems, Numer. Heat Transfer B, vol. 47, no. 2,pp. 111113, 2005.
22. N. Daouas and M.-S. Radhouani, A New Approach of the Kalman Filter Using FutureTemperature Measurements for Nonlinear Inverse Heat Conduction Problems, Numer.Heat Transfer B, vol. 45, no. 6, pp. 565585, 2004.
23. I. Masters, I. Rees, and R. W. Lewis, Advanced Programming Methods and Data Struc-tures for Computational Modeling Using Edge-Based Finite Volume Methods, Int. J.Numer. Anal. Meth. Geomech., vol. 28, pp. 15211532, 2004.
24. I. Masters, A. S. Usmani, J. T. Cross, and R. W. Lewis, Finite Element Analysis ofSolidification Using Object-Oriented and Parallel Techniques, Int. J. Numer. Meth. Eng.,
vol. 40, pp. 28912909, 1997.25. M. Folwer, UML Distilled: A Brief Guide to the Standard Object Modeling Language,
3rd ed., Addison-Wesley, 2003.26. G. Booch, J. Rumbaugh, and I. Jacobson, The Unified Modeling Language User Guide,
Addison-Wesley, 1998.27. J. S. Arora, Introduction to Optimum Design, McGraw-Hill, New York, 1989.28. E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design Patterns, Addison-Wesley,
1995.29. T. Quatrani, Visual Modeling with Rational Rose 2002 and UML, Addison-Wesley, 2002.30. A. N. Tikhonov and V. Y. Arsenin, Solution of Ill-Posed Problems, Winston and Sons,
Washington, DC, 1977.31. S. K. Kim and W. L. Lee, Solution of Inverse Heat Conduction Problems Using
Maximum Entropy Method, Int. J. Heat Mass Transfer, vol. 45, no. 2, pp. 381391, 2002.
284 S. K. KIM