stochastic finite element for biomechanics

Upload: chukwuemeka-joseph

Post on 04-Apr-2018

228 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    1/54

    STOCHASTIC FINITE ELEMENTSTUDY OF NON-SPHERICAL

    PEARS

    Submitted by:

    NAME: KEE MEW JONATHAN AH-FAT

    MATRIC NO: U025875H

    DEPARTMENT OF MECHANICAL ENGINEERINGNATIONAL UNIVERSITY OF SINGAPORE

    Session 2005/2006

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    2/54

    Summary

    The non-destructive analysis of the vibration responses of spherically shaped fruits in

    order to evaluate their firmness by finite element simulations has been well studied over

    the years. In this report, the aim is to transpose such a method to the study of non-

    spherical fruits such as pears, strawberries, papayas, etc., to investigate the key factors

    governing the resonant frequencies registered for the sorting of such non-spherical fruits.

    An algorithm to generate pear models with random non-spherical shapes and their

    corresponding finite element meshes was developed based on the statistical Gaussian

    theory. The resonant frequencies of the artificial pears were calculated and, along withtheir corresponding mode shapes, were evaluated with regard to the different geometrical

    features and the material properties of the pears. Modal and stochastic finite element

    analyses were applied to reveal the extent of the effects of the geometrical features and

    the material aspects.

    One hundred 3D models of non-spherical pears were generated and modal analysis was

    carried out to find out the natural frequencies spectrums. Amongst them, twenty models

    were then selected such that their f o , the lowest spherical frequency , covered the whole

    range of frequencies for the 100 pears to implement the stochastic finite element

    simulations. Stochastic finite element analysis reveals that both the geometric features

    and the inner qualities of the pear affect the calculation of the firmness remarkably. It can

    be stated from the evaluations carried out that the sorting of non-spherical fruits should

    be preceded by a sorting according to the geometric property of the fruit before firmness

    is evaluated. The height was observed to affect the value of the firmness index of the

    models and in their case, the height can be used as a criterion of preliminary selection.

    2

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    3/54

    ACKNOWLEDGEMENT

    The author wishes to express sincere appreciation of the advices given bymy supervisor, Prof HP Lee and the assistances by some other staffs of the Institute of High Performance Computing in carrying out this studysuccessfully.

    3

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    4/54

    TABLE OF CONTENTS

    SUMMARY 2

    ACKNOWLEDGEMENT 3

    TABLE OF CONTENTS 4

    LIST OF FIGURES & TABLES 5

    LIST OF SYMBOLS 7

    INTRODUCTION 8

    MATERIALS AND METHODS 9

    RESULTS AND DISCUSSION 12

    CONCLUSIONS 29

    LIST OF REFERENCES 30

    APPENDIX A

    - Program code for the pear model generation

    APPENDIX B

    4

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    5/54

    LIST OF TABLES

    1. Summary of the first 14 mode shapes.

    LIST OF FIGURES

    1. Part of a pear contour.

    2. 20 layers along pear length.

    3. Sample of the models generated with their meshing

    4. Mode shape 1.

    5. Mode shape 2.

    6. Mode shape 3.

    7. Mode shape 4.

    8. Mode shape 5.

    9. Eigenfrequency against height of the 20 selected models.

    10. Eigenfrequency against mass of the 20 selected models.

    11. Variation of the 4th and 8th mode shapes vs height

    12. Firmness index vs mass of 20 selected models

    13. Firmness index vs height of 20 selected models

    14. Eigenfrequency against Youngs modulus.

    15. Eigenfrequency against Youngs modulus.

    16. Eigenfrequency against density.

    17. Eigenfrequency against density.

    18. Maximum/minimum first 14 frequencies for one pear with material propertyvariations.

    5

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    6/54

    19. Firmness against Young's modulus

    20. Firmness against Density

    B1. Picture showing 3 of the 20 real pears.

    B2. Setup used for scanning pears.

    B3. Scanner.

    B4. Microtester.

    B5. Pears with their corresponding meshes.

    B6. Compressive behaviour of 4 of the real pears under gradual loading.

    B7. Extrapolation of the graph of firmness vs height of the models

    6

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    7/54

    LIST OF SYMBOLS

    E Youngs modulus, N/m 2

    f o lowest spherical eigenfrequency, kHz

    Nu Poisson ratio Rho density, kg/m 3

    7

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    8/54

    Introduction

    The ability to determine the quality of the fruits harvested for consumption has been a

    necessity of prime importance in the food processing industry. Up until now, the non-

    destructive methods to gauge their quality, or the internal tissue quality, which is

    indicated by the material properties such as the density and Youngs modulus, would

    usually make use of their dynamic frequency responses. In such procedures, the fruit is

    given an external stimulus and the response signal is recorded and a firmness index of the

    fruit is calculated. This firmness index is closely related to the Youngs modulus of the

    fruit and The pears will eventually be sorted according to the firmness index [5,6].However, for non-spherical fruits the sole observation of their frequency response in

    order to determine the firmness of the fruit can be misleading since the shape of the fruit

    bears a significant effect on these frequency responses [4]. And this effect may not be

    differentiated from the effect of internal tissue deterioration. All these uncertainties may

    weaken the efficiency of the selection process.

    Past studies on the subject have shown that the use of the firmness index as expressed

    as , where f 3 / 22 m f o o is the lowest spherical frequencies and m is the mass of the fruit,

    minimized the size effect of the fruit in terms of mass [5], that is the value of the firmness

    index obtained from this expression is not affected by varying masses of the fruits.

    Moreover, it was also demonstrated that the Youngs modulus bore a high degree of

    correlation with this firmness indicator [6]. However, in the case of non-spherical fruits,

    like pears, there are other geometric factors to consider apart from size effect whose

    influence on the firmness value is not minimized by the given expression for firmness

    index.

    8

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    9/54

    In the present study, finite element modal analysis is implemented to calculate the

    eigenfrequencies and the mode shapes (the pattern in which an object deforms when it

    vibrates) [3,7,8], while a stochastic finite element analysis reveals the whole range of

    effect of the multiple variations of parameters such as material properties of density and

    Youngs modulus. The overlap of the geometric effect with that from the material

    properties is evaluated.

    The stochastic analysis is the most suitable tool for the study of natural products which in

    essence contain a variety of uncertainties. The uncertainties could be geometrical or they

    may be the internal material properties. In a stochastic simulation, it is easy to cover thewhole span of all the uncertainties to derive the relevant effect ranges.

    The aim of this study is to determine to what extent the non-spherical geometry affects

    the resonant frequencies and the mode shapes, and thus the firmness that is used for

    sorting of the fruits. Through this study, a more comprehensive understanding of the

    effects of the geometric feature and the internal material properties on the resonant

    frequencies, mode shapes, and firmness for non-spherical fruits will be yielded. Improved

    quality control methodology could also be derived from the current study.

    Materials and methods

    3D shape construction

    The basic requirement before starting to generate a random non-spherical pear is that the

    shape and overall volume of the pear will have to be randomly distributed, and still

    following the Gaussian normal distribution. Computer codes using the Patran Command

    language are developed for the software MSC.Patran [9] to construct the pear models.

    9

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    10/54

    Virtually, the model-to-be-made is first divided into four parts with one of the parts

    illustrated as in Figure 1; each contour line will be representing a quadrant of the fruit.

    Figure 1: Part of a pear contour

    The four quadrants were first divided equally into twenty layers.

    Figure 2: 20 layers along pear length

    The pear model is to be differentiated into a narrow top portion called the stem end and a

    more bulbous bottom portion otherwise known as the calyx end. These portions vary

    independently from each other with respect to their lengths. The shape of the models is to

    be determined by twenty one descriptors. The variations of the height and the radii of

    each layer are stepwise, so that two consecutive pears have a maximum of 10%

    difference between their heights or the radii of each of their layer. The contours in Figure

    1 are then generated using B-Spline.

    It can be observed from real-life pears that the central axis (from the pedicel at the fruit

    stalk to that part of the fruit called the remnants of the calyx and which is found at the

    bottom of the fruit) is not a straight line most of the time. Similarly, the central axis of the

    pear models also curve and skew up to an amount of 3 0.

    10

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    11/54

    Surfaces are then created out of these curves which will in turn be used to create a solid

    with the B-rep function in MSC.Patran.

    Finite element mesh

    The mesh with hexahedral elements is then created from the solids with a fixed

    differentiation size of 3mm.

    Figure 3 shows typical virtual pears for the current study.

    Figure 3: sample of the models generated and their meshing

    The resulting 100 virtual pear models have heights ranging from 118cm to 140cm and

    masses ranging from 368g to 445g. The total number of nodes for these models was

    roughly 2500, while the number of elements was around 2200.

    The generation of the solids and the meshes has been performed by a set of codes with

    the Patran Command Language (PCL). A copy of the coding is to be found in the

    Appendix A.

    The finite element modal analysis is first carried out using MSC.Nastran [10] while the

    stochastic analysis is implemented with MSC.Robust Design [11].

    In the modal analysis, the pear models are given a density of 860kg/m 3 [1], a Youngs

    modulus of 3MPa (this value was chosen arbitrarily as the value of the Youngs modulus

    11

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    12/54

    varied widely from 2 to 6MPa according to the variety under investigation and tests

    carried out on real pears showed that for the Youngs modulus to be around this value)

    and a Poissons ratio of 0.3 [1].

    Results and discussion

    General evaluation

    MSC.Patran is used in the present study to read in the codes to generate the solids and

    meshes for the pears. MSC.Nastran TM is used to compute the natural resonant frequencies

    and the corresponding mode shapes.MSC.Robust Design TM is an optimal design tool to use the Monte Carlo method to

    sample the specific data for the uncertain quantities. MSC.Nastran is then called to

    implement the calculations with the sampled data. It is understood, in the Monte Carlo

    method, that the more variables are input into a model, the more realistic the model

    becomes. In this case, the variables are set to be the material properties of the model. One

    of the main advantages of the Monte Carlo simulation is that the number of times the

    program has to select random values of the input variables to create a realistic solution is

    independent of the number of variables in the problem. Theoretically, any number of

    variables can be accounted for. The only cost is the number of samplings have to be

    increased to make the statistics correct.

    The amount of uncertainty in MSC.Robust Design TM is quantified by using the

    Coefficient of Variation (CoV), which is the percentage ratio of the standard deviation to

    the average value. In the current study, the CoV is set at 5% of the average material

    properties of the pear and the variables follow a Gaussian distribution.

    12

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    13/54

    100 finite element pear models are generated and the first fourteen natural resonance

    frequencies along with their corresponding mode shapes are calculated from the FE

    modal analysis with MSC.Nastran. The first eigenfrequencies for the 100 pear models

    with the given material properties range from 130Hz to 166Hz. It is found from the

    modal analysis that the mode shapes for the whole 100 pears display a great degree of

    consistency for the 14 mode shapes. For the whole 100 pears, the first two modes being a

    bending and the 3 rd mode shape an expansion of the stem. Figures 4 to 8 show the typical

    first five mode shapes. The 4 th mode shape demonstrates either an elongation or a

    compression of the stem. The higher order modes either display an oblate-prolate (a typeof deformation mostly undergone by sphere-shaped objects and involves a compression

    or elongation along one of the objects main axes) deformation or the combinations of the

    bending, compression and oblate-prolate. Generally, the higher order modes involve most

    of the time only the deformation of the calyx end.

    13

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    14/54

    Figure 4: mode shape 1

    Figure 5: mode shape 2

    14

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    15/54

    Figure 6: mode shape 3

    Figure 7: mode shape 4

    15

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    16/54

    Figure 8: mode shape 5

    The extreme values obtained for the twenty pears throughout the first fourteen mode

    shapes and a brief description of their mode of deformation are tabulated in Table 1

    16

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    17/54

    Mode shape

    number

    Minimum

    frequency

    Maximum

    frequencyDescription of mode shape

    1 0.13013 0.166439 Bending of stem end

    2 0.130592 0.166868 Bending of stem end

    3 0.201598 0.237297 Expansion of stem end

    4 0.242573 0.276418 Elongation/Compression of stem end5 0.263131 0.283474 Complex

    6 0.264362 0.287289 Complex

    7 0.282347 0.301926 Oblate-prolate

    8 0.284647 0.302919 Oblate-prolate

    9 0.31532 0.328227 Expansion of the stem andcalyx ends and the neck 10 0.319537 0.330128 Oblate-prolate

    11 0.321565 0.346596 Complex

    12 0.328887 0.347968 Complex

    13 0.330247 0.368048 Complex

    14 0.352917 0.392659 Complex

    Table 1: Summary of the first 14 mode shapes

    Twenty models are then selected out of the 100 pear models so that their lowest

    frequencies cover the whole range of the first eigenfrequencies for the whole 100 pears.

    These values are then assessed against the masses and the heights of the pears as shown

    in Figures 9-10.

    17

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    18/54

    0.12

    0.125

    0.13

    0.135

    0.14

    0.145

    0.15

    0.155

    0.16

    0.165

    0.17

    115 120 125 130 135 140 145

    Height of the pears (mm)

    E i g e n

    f r e q u e n c y

    ( k H z

    )

    Figure 9: eigenfrequency vs height of the 20 selected models

    0.12

    0.125

    0.13

    0.135

    0.14

    0.145

    0.15

    0.155

    0.16

    0.165

    0.17

    370 380 390 400 410 420 430 440 450

    Mass of the pears (g)

    E i g e n

    f r e q u e n c y

    ( k H z )

    Figure 10: eigenfrequency vs mass of the 20 selected models

    18

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    19/54

    As it can be seen from Figures 9-10, the height of the pears has a clear incidence on the

    lowest eigenfrequency while the effect of the mass of the models is less evident. It seems

    that the shorter the pear, the higher the first resonant eigenfrequency.

    Effect of geometrical variations on the eigenfrequency

    12 pears are then selected based on their similarity in mass. Their masses are roughly the

    mean value for the whole 100 pears. The selection of similar mass is to minimize the

    effect of mass difference so that the variation of the resonant frequencies can be observed

    as the shape differs from pear to pear while the mass remains more or less constant. It isfound that the difference of shape shifts the first eigenfrequencies of the 12 pears from

    131 Hz to 152 Hz. This range of variation almost covers the whole span of first

    frequency change for the whole 100 pears (130 Hz to 166 Hz) while the mass of the 12

    pears has a standard deviation of only 1.303g. This great variation in the first resonant

    frequencies for such a small variation in the mass indicates that there are some varying

    geometrical properties in the model which causes the frequencies to vary in turn.

    A set of 20 pears whose first eigenfrequencies cover the whole range of values of the

    whole 100 pears are chosen and their heights are compared against the values of their

    frequencies for the first 14 th mode shapes. It is observed that the correlation between the

    height and the frequency is not uniform throughout the mode shapes. It is further

    observed that this variation in correlation ranged from 0.2 to 0.9; with mode shape 4 and

    mode shape 8 registering these two extreme values, respectively. Figure 11 gives the

    variations of the frequencies for these two modes versus the heights to illustrate the

    extent of the influence of the height along the successive mode shapes.

    19

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    20/54

    variation of frequencies of 2 mode shapes vs height

    0.2

    0.22

    0.24

    0.26

    0.28

    0.3

    0.32

    115 120 125 130 135 140 145

    height

    e i g e n

    f r e q u e n c y

    mode shape 4

    mode shape 8

    Figure 11: Variation of the 4th and 8th mode shapes vs height

    Moreover, the given firmness index is observed to be less affected by the effect of mass,

    as shown in figure 12, as the correlation between the firmness index and mass is now -

    0.37, a marked decrease when compared to the correlation value of -0.55 between the

    eigenfrequency and mass. However, the height of the models still bears a high degree of

    correlation with the index as shown in figure 13. These trends show that the expression

    for the firmness index is still effective to a certain extent in minimizing the effect of mass

    even for non-spherical fruits, while the height of the fruits is still a factor for concern if a

    sorting system with only the firmness index as criterion of selection is used.

    20

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    21/54

    0.8

    0.9

    1

    1.1

    1.2

    1.3

    1.4

    1.5

    370 380 390 400 410 420 430 440 450

    Mass of the pears (g)

    F i r m n e s s

    i n d e x

    Figure 12: Firmness index vs mass of 20 selected models

    0.8

    0.9

    1

    1.1

    1.2

    1.3

    1.4

    1.5

    115 120 125 130 135 140 145

    Height of the pears (mm)

    F i r m n e s s

    i n d e x

    Figure 13: Firmness index vs height of 20 selected models

    21

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    22/54

    Effect of material properties

    Stochastic finite element analysis is then implemented to evaluate the effect of the

    variations in the material properties, i.e., Youngs modulus and mass density. Each of the

    twenty selected pears is then run in MSC.Robust Design where their material

    properties are randomized to be a Gaussian distribution varying from 2.55MPa to

    3.45MPa for the Youngs modulus and from 731kg/m 3 to 989kg/m 3 for the density.

    These parameters have been chosen as it is at these values that the coefficient of variationof these inputs gives a good approximation of a Gaussian distribution. In the stochastic

    finite element analysis, Monte Carlo sampling methods are used to randomly sample 100

    values for the mass density and Youngs modulus. The corresponding eigenfrequencies

    obtained for the different values selected for the material properties are calculated with

    MSC.Nastran modal analysis. Very similar distribution patterns for the first

    eigenfrequencies are observed for all the twenty pears with the variations of the mass

    density and Youngs modulus for the whole twenty models. Figures 12 to 15 give the

    correlations of the first resonant frequency to the material properties for 2 pears.

    22

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    23/54

    23

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    24/54

    Figure 14 & 15: first eigenfrequency vs Young's modulus

    It is seen from these two figures that the variations of the density and the Youngs

    modulus have remarkable effects on the first eigenfrequencies. Within the range of

    concern, the values of Youngs modulus increased as the values of the first

    eigenfrequency also increased while the latter is seen to decrease as the value of the

    density decreased.

    24

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    25/54

    Figure 16 & 17: first eigenfrequency vs density

    25

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    26/54

    The separate effect of each property on the variation of the first 14 eigenfrequencies is

    observed. A graph of the extreme values under the different settings against the 14

    successive mode shapes is plotted for easy visual comparison as shown in figure 16.

    Figure 18: Maximum/minimum first 14 frequencies for one pear with material property variations

    The graph is fairly similar for all the pears under observation and it can be seen that as

    was found earlier, the 2 material properties affected the frequencies to a similar extent.

    The firmness index is then calculated for each value of the density used and the

    corresponding first eigenfrequency obtained in the stochastic simulations of the 20 pears.

    The firmness index for each pear was assessed against the variations of the density and

    Youngs modulus. It is observed that there is a strong correlation between the firmness

    index and Youngs modulus, whereas the firmness is rather independent from the density

    as shown from the figures 19 and 20.

    26

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    27/54

    This observation agrees with the findings from the study done by Nourain et al., 2005.

    Graph of Young's modulus vs firmness

    0.8

    0.85

    0.9

    0.95

    1

    1.05

    1.1

    1.15

    1.2

    2.6 2.7 2.8 2.9 3 3.1 3.2 3.3 3.4

    Young's modulus (MPa)

    F i r m n e s s

    Figure 19: Firmness against Young's modulus

    Graph of Density vs Firmness

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    0.00075 0.0008 0.00085 0.0009 0.00095

    Density (g/cm3)

    F i r m n e s s

    Figure 20: Firmness against density

    27

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    28/54

    From the aforementioned results, it is seen that the geometrical effect on the

    eigenfrequency of the models is quite significant since it causes the first eigenfrequency

    to shift from 130Hz to 160Hz when the height is concerned whereas the effect of either of

    the material properties causes a shift phase of around 20Hz in most cases for the first

    eigenfrequency.

    From the aforementioned results, it is seen that the geometrical effect on the

    eigenfrequency of the models is quite significant since it causes the first eigenfrequency

    to shift from 130Hz to 160Hz when the height is concerned whereas the effect of either of

    the material properties causes a shift phase of around 20Hz in most cases for the firsteigenfrequency.

    Test on Packham pears

    It has been intended from the very beginning that the current study of the dynamic

    response of the non-spherical pears was to be carried out mainly with the help of 3D

    finite element and stochastic analyses. This is because there were no suitable pears

    available on the market when the project was started. The testing performed eventually

    on real pears would only be carried as a means to complement the results of these

    computer simulations. The project was drawing to a close at the time of testing, and the

    only variety of pears available on the market was slightly smaller than the pear models in

    terms of height. Nevertheless, these pears still displayed behaviour similar to the pear

    models: the value of the resonant frequency and that of the firmness index was fairly

    affected by the height of the fruits. The standard deviation of these two properties was

    28

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    29/54

    comparable with that of the pear models. A detailed summary of the tests carried out can

    be found in Appendix B.

    Conclusions

    In the present project, the effects of the different shapes and the material properties of the

    non-spherical pears are evaluated. From the finite element and the stochastic finite

    element simulations, it can be derived that the eigenfrequencies are quite sensitive to

    different internal material as well as the external geometrical properties of the fruit. It is

    seen that while the height of the pears have the most remarkable effect among thegeometrical properties on the vibrational frequencies of the pears. Its influence, however,

    is not consistent throughout the other mode shapes of the pear other than the first mode

    shape.

    It can be concluded from this study that the sorting of the non-spherical pears may not be

    very effective if the effects of the variation of shape are not differentiated from the

    change that material degeneration would produce. It can be further said that for an

    effective quality control of non-spherical fruits, a preliminary sorting of these fruits

    according to their heights would be a recommended procedure since this particular

    feature has a prominent influence on the value of the first spherical frequencies.

    However, further numerical study in the future will be attempted on analysis of the high

    frequency modes to identify the one that is not affected so much by the geometrical

    properties. A new method could be suggested to make use of the higher eigenfrequency

    at which the effect of the height is the least as the sorting factor.

    29

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    30/54

    REFERENCES

    1. Dewulf, W., Jancsk, P., Nicolai, B., De Roeck, G., and Briassoulis, D. 1999.Determining the Firmness of a Pear using Finite Element Modal Analysis." J.agric. Engng Res. 71, 217 224. Journal On-line. Available from

    http://www.idealibrary.com .

    2. Jancsk P., Papadiamontopoulou E., De Baerdemaeker J., and Nicola B. 24August 1998. Effect of Shape on Acoustic Response of Conference Pears aFinite Element Modelling Approach. AgENg Oslo98 conference 98-F-007.Available fromhttp://www.agr.kuleuven.ac.be/aee/amc/staff/palj/ageng_98/jancsok.htm .

    3. Jancsk, P., Nicola, B., and De Baerdemaeker, J. Stochastic FE vibrationanalysis of fruits for quality measurement purposes," Department of AgroEngineering and Economics, Laboratory for Agro- Machinery and

    Processing, K. U. Leuven, Belgium. Available fromhttp://www.biw.kuleuven.be/aee/amc/staff/palj/XXXI5.pdf .

    4. Jancsk, P., Nicola, B., Coucke, P., and De Baerdemaeker, J. 1997. 3DFinite Element Model Generation of Fruits Based on Image Processing." 3 rd IFAC/ISHS Workshop on Mathematical and Control Application inAgriculture and Horticulture, p 131 135. September 28 October 2, 1997Hannover, Germany.

    5. Lu, R., and Abbott, J.A. 1996. Finite Element Analysis of Modes of Vibration in Apples. Journal of Texture studies 27 (1996) 265 286.

    6. Nourain, J., Ying, Y., and Wang, J. 2005. Firmness of melon using itsvibration characteristic and finite element analysis. J Zhejiang Univ SCI2005 6B(6):483 490.

    7. Dewulf, W., Jancsk, P., Papadiamantopoulou, E., Nicola, B., and De Roeck,G. 1998. Monitoring the firmness of a Conference Pear using experimentalmodal analysis. Proceedings of ISMA23; Leuven, Belgium. 1998:1148 1497.

    8. Chen, H., and De Baerdemaeker, J. 1993. Finite Element Based ModalAnalysis of Fruit Firmness. Trans. ASAE. 1993; 36(6): 1827 1833.

    9. MSC.Patran v2005 R2, Users guide, MSC.Software Corporation, 2005.

    10. MSC.Nastran v2005, Users guide, MSC.Software Corporation, 2005.

    11. MSC.Robust Design v2004 R2, Users guide, MSC.Software, 2005.

    30

    http://www.idealibrary.com/http://www.agr.kuleuven.ac.be/aee/amc/staff/palj/ageng_98/jancsok.htmhttp://www.biw.kuleuven.be/aee/amc/staff/palj/XXXI5.pdfhttp://www.biw.kuleuven.be/aee/amc/staff/palj/XXXI5.pdfhttp://www.agr.kuleuven.ac.be/aee/amc/staff/palj/ageng_98/jancsok.htmhttp://www.idealibrary.com/
  • 7/30/2019 Stochastic Finite Element for Biomechanics

    31/54

    Appendix A

    /** Purpose: Random shape generator** Input: filename name of external file

    ** Output: none**/

    $FUNCTION pear("hex", , 10)$FUNCTION pear(mesh_type, meshSize, iter_no)FUNCTION pear()

    INTEGER iter_no =30$STRING mesh_type[] /* "tet", "hex" */STRING mesh_type[80] = "hex"REAL percentage = 0.01REAL meshSize = 2.0

    $REAL R = 1$REAL H = 1.8

    $REAL r1, r2, h1

    STRING filename[80], filename1[80], tmp_file[80]

    filename = "../../../../../Home15/cme/cae0010/shape/random.log"filename1 = "../../../../../Home15/cme/cae0010/shape/pear.log"tmp_file = "../../../../../Home15/cme/cae0010/shape/temp.log"

    LOGICAL msg_flag = TRUE /* TRUE: Will delete original curves in

    creation of chained curves */

    LOGICAL option = TRUE /* TRUE : r1 may be equal r2 */

    REAL tol = 0.001 /* The geometric tolerance. */

    REAL rand_no(10000)STRING rand_str[20](10000)STRING pearShape_str[20](100)REAL pearShape_no(100)

    $INTEGER str_leng, str_pos$STRING str_sub[40], e_str[3]

    INTEGER i, j, dnum

    $STRING line_2point_created_ids[VIRTUAL]STRING asm_create_grid_xyz_created_ids[VIRTUAL]$STRING asm_line_2point_created_ids[VIRTUAL]$STRING asm_create_line_arc_created_ids[VIRTUAL]STRING sgm_curve_bspline_created_ids[VIRTUAL]$STRING sgm_curve_break_poi_created_ids[VIRTUAL]

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    32/54

    STRING asm_delete_any_deleted_ids[VIRTUAL]$INTEGER sgm_create_curve_cha_segment_id$STRING sgm_create_curve_ch_created_ids[VIRTUAL]STRING sgm_surface_trimmed__created_id[VIRTUAL], sgm_solid_ids[VIRTUAL]

    LOGICAL debugREAL tmp_realSTRING record[720], field[128], tmp_str[20]INTEGER status, channel, itokenINTEGER lrecl

    /** Initialising values*/

    debug = FALSE

    /** Open the random.log file*/

    status = text_open( filename , "OR", 0, 0, channel )

    IF( status != 0 ) THEN

    write( "Unable to open file: "//filename )ui_override_message( 38000217, "" )pref_global_set_v2( TRUE, 3, str_from_real( tol ) )RETURN status

    END IF

    i = 1WHILE( text_read_string( channel, record, lrecl ) == 0 )

    /** Check for integers and blank tokens*/

    itoken = 0

    REPEATitoken += 1

    field = str_token( record, " ", itoken, TRUE )IF( field != "") THEN$ dump field$ rand_str(i) = field$ dump rand_no(i)

    rand_str(i) = fieldrand_no(i) = str_to_real(field)

    i = i+1

    END IF

    UNTIL ( field == "" )

    END WHILE

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    33/54

    text_close( channel, "" )

    /** Open the pear.log file*/status = text_open( filename1 , "OR", 0, 0, channel )

    IF( status != 0 ) THEN

    write( "Unable to open file: "//filename1 )ui_override_message( 38000217, "" )pref_global_set_v2( TRUE, 3, str_from_real( tol ) )RETURN status

    END IF

    i = 1WHILE( text_read_string( channel, record, lrecl ) == 0 )

    /** Check for integers and blank tokens*/

    itoken = 0

    REPEATitoken += 1

    field = str_token( record, " ", itoken, TRUE )IF( field != "") THEN

    pearShape_str(i) = fieldpearShape_no(i) = str_to_real(field)

    i = i+1

    END IF

    UNTIL ( field == "" )

    END WHILE

    text_close( channel, "" )

    dnum = i - 1

    $dump pearShape_str

    $dump pearShape_no$dump i-1

    STRING x1[20](20), x2[20](20), x3[20](20)STRING y1[20](20), y2[20](20), y3[20](20)

    STRING x_1[20](20), x_2[20](20), x_3[20](20)STRING y_1[20](20), y_2[20](20), y_3[20](20)

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    34/54

    FOR( i = 1 TO 20 )x1(i) = str_from_real(rand_no(i) *

    percentage*pearShape_no(i) + pearShape_no(i))y2(i) = str_from_real(rand_no(i+20) *

    percentage*pearShape_no(i+20) + pearShape_no(i+20))x_1(i) = str_from_real(rand_no(i+40) *

    percentage*pearShape_no(i+40) - pearShape_no(i+40))y_2(i) = str_from_real(rand_no(i+60) *

    percentage*pearShape_no(i+60) - pearShape_no(i+60))

    END FOR

    FOR( i = 1 TO 20 )x2(i) = "0"y1(i) = "0"x_2(i) = "0"y_1(i) = "0"

    END FOR

    pearShape_no(81) = rand_no(81) * percentage*pearShape_no(81)+ pearShape_no(81)

    pearShape_no(82) = rand_no(82) * percentage*pearShape_no(82)+ pearShape_no(82)

    FOR( i = 1 TO 11 )x3(i) = str_from_real(pearShape_no(81) * (i-1) )y3(i) = str_from_real(pearShape_no(81) * (i-1) )x_3(i) = str_from_real((pearShape_no(81) * (i-1)) )y_3(i) = str_from_real((pearShape_no(81) * (i-1)) )

    END FORFOR( i = 1 TO 9 )

    x3(i+11) = str_from_real(pearShape_no(82) * i +pearShape_no(81) * 10 )

    y3(i+11) = str_from_real(pearShape_no(82) * i +pearShape_no(81) * 10)

    x_3(i+11) = str_from_real((pearShape_no(82) * i +pearShape_no(81) * 10))

    y_3(i+11) = str_from_real((pearShape_no(82) * i +pearShape_no(81) * 10 ))

    END FORstatus = text_open( tmp_file , "NOW", 0, 0, channel )

    FOR( i = 1 TO 20 )status = text_write_string( channel , x1(i) )

    END FORFOR( i = 1 TO 20 )

    status = text_write_string( channel , y2(i) )END FORFOR( i = 1 TO 20 )

    tmp_real = str_to_real(x_1(i))tmp_str = str_from_real(-tmp_real)

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    35/54

    status = text_write_string( channel , tmp_str )END FORFOR( i = 1 TO 20 )

    tmp_real = str_to_real(y_2(i))tmp_str = str_from_real(-tmp_real)status = text_write_string( channel , tmp_str )

    END FOR

    tmp_str = str_from_real(pearShape_no(81))status = text_write_string( channel , tmp_str )tmp_str = str_from_real(pearShape_no(82))status = text_write_string( channel , tmp_str )text_close( channel, "" )

    /***************************************************************/

    /***************************************************************/

    /***************************************************************/IF ( iter_no > 1 ) THENFOR ( j = 1 TO iter_no-1)

    /** Open the temp.log file again*/status = text_open( tmp_file , "OR", 0, 0, channel )

    IF( status != 0 ) THEN

    write( "Unable to open file: "//tmp_file )ui_override_message( 38000217, "" )pref_global_set_v2( TRUE, 3, str_from_real( tol ) )RETURN status

    END IF

    i = 1WHILE( text_read_string( channel, record, lrecl ) == 0 )

    /** Check for integers and blank tokens*/

    itoken = 0

    REPEAT

    itoken += 1

    field = str_token( record, " ", itoken, TRUE )IF( field != "") THEN

    pearShape_str(i) = fieldpearShape_no(i) = str_to_real(field)

    i = i+1

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    36/54

    END IF

    UNTIL ( field == "" )

    END WHILE

    text_close( channel, "" )

    dnum = i - 1

    $dump pearShape_str$dump pearShape_no$dump i-1

    $ STRING x1[20](20), x2[20](20), x3[20](20)$ STRING y1[20](20), y2[20](20), y3[20](20)

    $ STRING x_1[20](20), x_2[20](20), x_3[20](20)$ STRING y_1[20](20), y_2[20](20), y_3[20](20)

    FOR( i = 1 TO 20 )x1(i) = str_from_real(rand_no(i + (82 * j)) *

    percentage*pearShape_no(i) + pearShape_no(i))y2(i) = str_from_real(rand_no(i+20 + (82 * j)) *

    percentage*pearShape_no(i+20) + pearShape_no(i+20))x_1(i) = str_from_real(rand_no(i+40 + (82 * j)) *

    percentage*pearShape_no(i+40) - pearShape_no(i+40))y_2(i) = str_from_real(rand_no(i+60 + (82 * j)) *

    percentage*pearShape_no(i+60) - pearShape_no(i+60))

    END FOR

    FOR( i = 1 TO 20 )x2(i) = "0"y1(i) = "0"x_2(i) = "0"y_1(i) = "0"

    END FOR

    pearShape_no(81) = rand_no(81) * percentage*pearShape_no(81)+ pearShape_no(81)

    pearShape_no(82) = rand_no(82) * percentage*pearShape_no(82)

    + pearShape_no(82)

    FOR( i = 1 TO 11 )x3(i) = str_from_real(pearShape_no(81) * (i-1) )y3(i) = str_from_real(pearShape_no(81) * (i-1) )x_3(i) = str_from_real((pearShape_no(81) * (i-1)) )y_3(i) = str_from_real((pearShape_no(81) * (i-1)) )

    END FORFOR( i = 1 TO 9 )

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    37/54

    x3(i+11) = str_from_real(pearShape_no(82) * i +pearShape_no(81) * 10 )

    y3(i+11) = str_from_real(pearShape_no(82) * i +pearShape_no(81) * 10)

    x_3(i+11) = str_from_real((pearShape_no(82) * i +pearShape_no(81) * 10))

    y_3(i+11) = str_from_real((pearShape_no(82) * i +pearShape_no(81) * 10 ))

    END FORstatus = text_open( tmp_file , "NOW", 0, 0, channel )

    FOR( i = 1 TO 20 )status = text_write_string( channel , x1(i) )

    END FORFOR( i = 1 TO 20 )

    status = text_write_string( channel , y2(i) )END FORFOR( i = 1 TO 20 )

    tmp_real = str_to_real(x_1(i))

    tmp_str = str_from_real(-tmp_real)status = text_write_string( channel , tmp_str )

    END FORFOR( i = 1 TO 20 )

    tmp_real = str_to_real(y_2(i))tmp_str = str_from_real(-tmp_real)status = text_write_string( channel , tmp_str )

    END FOR

    tmp_str = str_from_real(pearShape_no(81))status = text_write_string( channel , tmp_str )tmp_str = str_from_real(pearShape_no(82))status = text_write_string( channel , tmp_str )text_close( channel, "" )

    END FOREND IF

    /***************************************************************/

    /***************************************************************/

    /***************************************************************/

    STRING curve_no[2], c1[2], c2[2]STRING sgm_surface_2curve_created_ids[VIRTUAL]

    FOR( i = 1 TO 20 )asm_const_grid_xyz( "1", "["//x1(i)//" "//x2(i)//"

    "//x3(i)//"]", "Coord 0", asm_create_grid_xyz_created_ids )asm_const_grid_xyz( "2", "["//y1(i)//" "//y2(i)//"

    "//y3(i)//"]", "Coord 0", asm_create_grid_xyz_created_ids )

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    38/54

    asm_const_grid_xyz( "3", "["//x_1(i)//" "//x_2(i)//""//x_3(i)//"]", "Coord 0", asm_create_grid_xyz_created_ids )

    asm_const_grid_xyz( "4", "["//y_1(i)//" "//y_2(i)//""//y_3(i)//"]", "Coord 0", asm_create_grid_xyz_created_ids )

    curve_no = str_from_integer(i)sgm_const_curve_bspline( curve_no, "Point 1 4 3 2", 3, TRUE,

    1, TRUE, sgm_curve_bspline_created_ids )asm_delete_point( "Point 1:10", asm_delete_any_deleted_ids )

    END FOR

    sgm_create_surface_trimmed_v1( "1", "Curve 1", "", "",FALSE, TRUE, TRUE, TRUE, sgm_surface_trimmed__created_id )

    sgm_create_surface_trimmed_v1( "21", "Curve 20", "", "",FALSE, TRUE, TRUE, TRUE, sgm_surface_trimmed__created_id )

    FOR( i = 2 TO 20 )curve_no = str_from_integer(i)

    c1 = str_from_integer(i-1)c2 = str_from_integer(i)sgm_const_surface_2curve( curve_no, "Curve "//c1, "Curve

    "//c2, sgm_surface_2curve_created_ids )

    END FOR

    $dump x1$dump y2$dump x_1$dump y_2

    ge_const_solid_brep( "1", "Surface 1:21", FALSE,sgm_solid_ids )

    INTEGER fem_num_nodes, fem_num_elemsSTRING fem_nodes_created[VIRTUAL],

    fem_elems_created[VIRTUAL]

    STRING R_str1[20], R_str2[20], R_str3[20]STRING asm_create_hpat_xyz_created_ids[VIRTUAL]R_str1 = str_from_real(-70.0)R_str2 = str_from_real(140)

    R_str3 = str_from_real(140*1.5)

    STRING val_array_str[32](4)

    val_array_str(1) = str_from_real(meshSize)val_array_str(2) = "0.1"val_array_str(3) = "0.2"val_array_str(4) = "0.0"

    IF( mesh_type == "tet" ) THEN

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    39/54

    fem_create_mesh_sol_5( "Solid 1", "TetHybrid", "Tet4", 4,

    val_array_str, 49168, 0, 1, 0, 1, 0.0049999999, "", "#", "#", "Coord0", "Coord 0", fem_num_nodes, fem_num_elems, fem_nodes_created,fem_elems_created )

    asm_delete_point( "Point 1:100", asm_delete_any_deleted_ids)

    asm_delete_surface( "Surface 1:100",asm_delete_any_deleted_ids )

    asm_delete_curve( "Curve 1:100", asm_delete_any_deleted_ids)

    ELSE IF ( mesh_type == "hex" ) THEN

    asm_const_hpat_xyz( "2", "", "["//R_str1//" "//R_str1//" 0]", "Coord 0",asm_create_hpat_xyz_created_ids )

    fem_mesh_solid_hex8( meshSize, "PARTIAL",

    asm_create_hpat_xyz_created_ids)

    asm_delete_point( "Point 1:100", asm_delete_any_deleted_ids)

    asm_delete_surface( "Surface 1:100",asm_delete_any_deleted_ids )

    asm_delete_curve( "Curve 1:100", asm_delete_any_deleted_ids)

    END IF

    RETURN 0

    END FUNCTION

    /** Function that generates a hexahedral (HEX8) mesh from a given set

    of surfaces* which form a valid BREP solid.*/

    FUNCTION fem_mesh_solid_hex8( elem_size, method, tmp_solid_list)$FUNCTION fem_mesh_solid_hex8( brep_surface_list, elem_size, method)

    $FUNCTION fem_mesh_solid_hex8( brep_surface_list, elem_size, method, @$ num_nodes, num_elems, nodes_created,

    elems_created )

    /* INPUT: */$STRING brep_surface_list[] /* The list of surfaces representing thesolid to be meshed. */REAL elem_size /* The required element size. */STRING method[] /* "FULL": Retain only grids thatfully intersects with solid.

    "PARTIAL": Retain grids that fullyor partially intersects with solid. */

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    40/54

    STRING tmp_solid_list[]/* OUTPUT: */$INTEGER num_nodes /* The number of nodes created. */$INTEGER num_elems /* The number of elements created. */$STRING nodes_created[] /* The list of nodes created. */$STRING elems_created[] /* The list of elements created. */

    /* 0 = successful */

    INTEGER i, status, handle, item(1)REAL limits(6), vector_xyz(3), origin_xyz(3), geotolSTRING ret_list[VIRTUAL], ret_solid[VIRTUAL]LOGICAL debug = FALSE

    /* Verify input element size. */

    uil_app_asm.get_geo_tol( geotol ) /* Get the geometric tolerance ofthe model. */

    IF ( elem_size

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    41/54

    /* Get the maximum limits of the model */

    /* gm_viewport_world_limits_get( limits )

    origin_xyz(1) = limits(1)origin_xyz(2) = limits(3)origin_xyz(3) = limits(5)

    vector_xyz(1) = limits(2) - limits(1)vector_xyz(2) = limits(4) - limits(3)vector_xyz(3) = limits(6) - limits(5)

    dump vector_xyzdump origin_xyz *//* Create a block bounding the limits of the model. */

    $fem_mesh_solid_hex8( "Surface 2:6", 0.1, "FULL")

    /*status = asm_const_hpat_xyz( "2", @

    str_vector_from_xyz( vector_xyz ), @str_point_from_xyz( origin_xyz ), @"Coord 0", @tmp_solid_list )

    IF ( status != 0 ) THEN RETURN 0*/

    /* Creating HEX8 mesh on TMP_SOLID_LIST */

    INTEGER fem_create_mesh_solid_num_nodesINTEGER fem_create_mesh_solid_num_elemsSTRING fem_create_mesh_s_nodes_created[VIRTUAL]STRING fem_create_mesh_s_elems_created[VIRTUAL]STRING para[20](1)

    para(1) = str_from_real( elem_size )

    status = fem_create_mesh_sol_5( tmp_solid_list, @"IsoMesh", @"Hex8", @1, para, @49152, 0, 1, 0, 1, 0., @"", "#", "#", "Coord 0", "Coord 0",

    @fem_create_mesh_solid_num_nodes, @fem_create_mesh_solid_num_elems, @fem_create_mesh_s_nodes_created, @

    fem_create_mesh_s_elems_created )IF ( status != 0 ) THEN RETURN status

    /* Delete TMP_SOLID_LIST.Note: Patran needs to delete the original solid to which a mesh

    isassociated with in order to associate the mesh to another solid.

    */

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    42/54

    fem_disassoc_geo( TRUE, TRUE, tmp_solid_list )asm_delete_solid( tmp_solid_list, ret_list )

    /* Associating HEX8 elements with solid. Write associated elementsto

    INT_ELEM_LIST. */

    STRING all_elem[VIRTUAL], deleted_elem[VIRTUAL],int_elem_list[VIRTUAL], @

    int_node_list[VIRTUAL]

    all_elem = "Elem "//fem_create_mesh_s_elems_created

    lp_eval( ret_solid, 4, handle )lp_sublist_attribute_get_int( handle, 2, item )lp_eval_cleanup( handle )

    sgm_assoc_element_solid_v1( all_elem, "Solid "//str_from_integer(item(1) ), 32 )

    list_create_elem_ass_geo( 0, "Solid "//str_from_integer( item(1) ),@

    "lista", int_elem_list )

    IF ( debug ) THEN

    write_line( "...elements associated with BREP solid are:",int_elem_list )

    END IF

    /* Get the list of elements to be deleted. */

    deleted_elem = ""

    IF ( method == "full" ) THEN

    /* These elements are those that do not intersect, or intersectpartially with the BREP solid. */

    str_create_boolean_list( all_elem, int_elem_list, "a-b",deleted_elem )

    IF ( deleted_elem != "" ) THEN fem_delete_elem_and_node(deleted_elem, ret_list )

    ELSE IF ( method == "partial" ) THEN

    /* These elements are those that do not intersect the BREP solidat all. */

    list_get_node_ass_elem( int_elem_list, int_node_list )

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    43/54

    uil_list_a.clear()list_create_elem_ass_node( 8, int_node_list, "lista",

    int_elem_list )

    str_create_boolean_list( all_elem, int_elem_list, "a-b",deleted_elem )

    IF ( deleted_elem != "" ) THEN fem_delete_elem_and_node(deleted_elem, ret_list )

    ELSE

    write_line( "Invalid method!! TERMINATED!!" )

    END IF

    /* Delete the BREP solid. */

    asm_delete_solid( ret_solid, ret_list )

    /* Refresh the graphics. */

    repaint_graphics( )

    /* Get output variables. *//*

    elems_created = int_elem_listlp_eval( elems_created, 4, handle )lp_sublist_count( handle, 1024, num_elems )lp_eval_cleanup( handle )

    list_get_node_ass_elem( elems_created, nodes_created )lp_eval( nodes_created, 4, handle )lp_sublist_count( handle, 512, num_nodes )lp_eval_cleanup( handle )

    *//***** Extracting free element faces ******/

    /*STRING free_elem_face[30](VIRTUAL), free_elem_face_list[VIRTUAL]INTEGER free_elem_face_count

    status = fem_get_hex8_free_faces( int_elem_list, free_elem_face, @free_elem_face_count )

    IF ( status != 0 ) THEN RETURN status

    free_elem_face_list = ""

    FOR ( i = 1 TO free_elem_face_count )

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    44/54

    free_elem_face_list = free_elem_face_list//free_elem_face(i)//" "

    END FOR

    IF ( debug ) THEN

    write_line( "...number of free element faces:",free_elem_face_count )

    write_line( "...the free element faces are:", free_elem_face_list)

    END IF*/

    RETURN 0

    END FUNCTION

    /** Function that converts Cartesian coordinates to a string

    representing a vector* in the form of "".*/

    FUNCTION str_vector_from_xyz( xyz )

    /*INPUT:*/REAL xyz()

    /*RETURN:*/STRING vector[50]

    vector = ""

    RETURN vector

    END FUNCTION

    /** Function that extracts the free element faces from a given list of* HEX8 elements.*/

    FUNCTION fem_get_hex8_free_faces( elem_list, free_face_array,free_face_count )

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    45/54

    /* INPUT:*/STRING elem_list[] /* The list of elements to be queried. */

    /* OUTPUT:*/STRING free_face_array[]() /* The array containing the free elementfaces

    (dimension is free_face_count). */INTEGER free_face_count /* The number of free element faces. */

    /* 0 = successful */

    INTEGER elem_ids(VIRTUAL)INTEGER num_elems, elem_topo_codes(VIRTUAL), @

    shape_code(VIRTUAL), nodes_per_elem(VIRTUAL), @nodl(VIRTUAL), face_elem_ids(VIRTUAL), face_ids(VIRTUAL)

    INTEGER i, handle, item(1), status

    /* Get all the element IDs from ELEM_LIST. */

    lp_eval( elem_list, 4, handle )lp_sublist_count( handle, 1024, num_elems )

    IF (num_elems

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    46/54

    IF (status != 0) THEN RETURN statusstatus = SYS_ALLOCATE_ARRAY( face_ids, 1, 6*num_elems )IF (status != 0) THEN RETURN status

    status = db_get_elem_etop( num_elems, elem_ids, elem_topo_codes )IF (status != 0) THEN RETURN status

    status = db_get_elem_topology_data( num_elems, elem_topo_codes, @shape_code, nodes_per_elem )

    IF (status != 0) THEN RETURN status

    status = db_get_nodes_for_elems( num_elems, 8, elem_ids, nodl )IF (status != 0) THEN RETURN status

    status = fem_u_get_free_faces( elem_ids, 8, 4, 6, num_elems, nodl, @shape_code, nodes_per_elem, @face_elem_ids, face_ids,

    free_face_count )

    status = SYS_ALLOCATE_ARRAY( free_face_array, 1, free_face_count )IF (status != 0) THEN RETURN status

    FOR (i = 1 TO free_face_count)

    free_face_array(i) = "Elm "//str_from_integer( face_elem_ids(i))// @

    "."//str_from_integer( face_ids(i) )

    END FOR

    RETURN 0

    END FUNCTION

    /** Function that performs a boolean operation on two given list.*/

    FUNCTION str_create_boolean_list( list1, list2, operation, ret_list )

    /* INPUT: */STRING list1[] /* The first input list "a". */STRING list2[] /* The second input list "b". */

    STRING operation[] /* The boolean operation: "a+b", "a-b" */

    /* OUTPUT: */STRING ret_list[] /* The output list after performing the booleanoperation. */

    /* 0 = successful */

    GLOBAL STRING listc[VIRTUAL]

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    47/54

    uil_list_a.clear()list_create_target_list( "lista", list1 )uil_list_b.clear()list_create_target_list( "listb", list2 )

    uil_list_boolean.create( operation )ret_list = listc

    RETURN 0

    END FUNCTION

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    48/54

    Tests on Packham pears

    Due to the seasonal availability of the pears, the only non-spherical pear on the market at

    the time of the study is the Packham pear. The general features of this kind of pear are

    illustrated in figure B1. Tests are carried out for twenty randomly selected Packham pears

    to measure their geometrical (height, overall contour, mass) and internal material

    properties (Youngs modulus, density). The pears are first scanned using a laser scanner,

    the Minolta VIVID 900 non-contact 3D digitizer in order to obtain their general outline

    and surfaces for subsequent meshing in order to perform a modal analysis. The figures

    B2 and B3 show the setup as when the pears are scanned and the digitizer usedrespectively. These surfaces are then exported as IGES files using the softwares

    RapidForm2001 and Minolta Polygon Editing Tool v1.03. The pears are then weighed on

    an electronic balance and measured their heights using a Vernier caliper.

    Figure B1: Pictures showing 3 of the 20 real pears

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    49/54

    Figure B2 Setup used for scanning pears Figure B3 Scanner

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    50/54

    In order to obtain their density, the pears are placed one pear at a time in a graduated

    beaker. The latter is filled with water to a certain level, after which the pear is removed

    and the fall in the water level gives an approximate value for their density. The pears are

    then cut into cubes of 1cm x 1cm x 1cm and placed onto a materials testing machine and

    subjected to a gradually increasing compressive loading. The machine used in this

    experiment is the Instron 5500 microtester (Fig. B4). The Youngs modulus is derived as

    the gradient of the graph of the loading against the distance by which the hammer of the

    machine has moved. Figure B6 shows the graphs of 4 of the tested samples as captured

    by the software Bluehill.

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    51/54

    Figure B4 Microtester

    These divergences can be assumed to be still within the domain of possibility for

    products which are subject to the laws of probability. When the graphs of the

    eigenfrequency against the mass and height of the pear models are extrapolated to the

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    52/54

    average mass and height of the real pears, the percentage error was less than 10% for

    both.

    On average, the height of the pears has been found to measure around 88.5mm while the

    mass was 208.9 g. The average Youngs modulus was 3.37MPa while the average density

    of the pears was 948.6 kgm -3. Hence, the values of the Youngs modulus and of the

    density of these real pears only diverged by 12% and 10% respectively from the values

    that have been applied in the models. And also the variations in their values fall for the

    most part within the range set for the stochastic analysis of the pear models

    The surfaces obtained from the scanning are meshed on MSC.Patran and sent toMSC.Nastran for a modal analysis. An illustration of the meshes obtained for different

    pears can be seen in Figure B5. The average value of the firmness index of the pear was

    evaluated to be 3.2. When the graph of the firmness index against the height is

    extrapolated, to 88.5mm, the firmness index given is found to fall short of the expected

    value by only 0.43 units as shown in the figure B7.

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    53/54

    Figure B5 Pears with their corresponding mesh

    Figure B6 Compressive behaviour of 4 of the real pears under gradual loading

  • 7/30/2019 Stochastic Finite Element for Biomechanics

    54/54

    Extrapolation of the graph of firmness vs height of the models

    y = -0.0388x + 6.2030.8

    1.3

    1.8

    2.3

    2.8

    88.5 98.5 108.5 118.5 128.5 138.5

    height(mm)

    F i r m n e s s

    2.77

    Figure B7: Extrapolation of the graph of firmness vs height of the models

    It is seen from the numerical simulations that the stochastic simulations with

    MSC.Robust Design can cover the full range of changes in the different material

    properties to reflect the full extension of their separate as well as their combined effects

    on the eigenfrequencies with single a simulation run. It would be very cost-effective if

    the stochastic finite element simulations can be applied in quality control testing in the

    food processing industry.