An important cause of failure in machines with complex components is fatigue from vibration due to being subject to multiple forces that vary over time.

While these machines undergo extensive testing both at the bench and in the field, engineers need a generalized methodology to better calculate the fatigue in the presence of any number of known loads in time for a given cycle, in order to improve the estimation of the components’ fatigue life and effectively integrate that into the product development process.

This technical article details the application of the methodology developed using ANSYS WorkBench.

EMAK produces machines for gardening, agriculture and civil construction. The company develops its two-stroke engines for hand-held use like chainsaws, brushcutters, blowers, etc. One of the main causes of failure is fatigue from vibration, so engineers need a methodology to better understand what happens in a durability/field test. The aim of this paper is to explain the strategy adopted to estimate the life of the components in a professional brushcutter using ANSYS Workbench, one of the most popular brands of commercial software. It was a challenging undertaking because it requires interdisciplinary knowledge covering signal processing, fatigue, vibration mechanics, loss factor estimation, Fixed Element Analysis (FEA), IT, etc.

The fatigue calculation of components is essential whenever a part or assembly is subject to repeated forces over time, whatever their nature. In this context, we are talking about the forces generated by the dynamics of the 2T motor and the forces deriving from the toolside load; forces that involve a dynamic response from the structure itself. The evaluation of the fatigue life of such complex components,subject to multiple forces that vary over time, is neither simple nor immediate and therefore must be effectively integrated into the product development process (Fig.1).

There are four initial assumptions that are fundamental to subsequent evaluations when conducting a fatigue life analysis:

**1) The quantification of the variable loads in time Fk(t)** that the moving parts of the machine and the possible presence of the tool could unload onto the structure. In this regard, it is useful to set up a “multi-body” analysis, with rigid or rigidflexible bodies, to represent the kinematics of the machine’s operation.

**2) Analysis of the signal over time and the identification of the best strategy to reproduce the physical phenomenon from the computational point of view.** Since the machine is subject to a predefined cycle that is repeated in time, and since we are interested in the phase of the behavior regime which allows us to overlook the initial transient phase, a possible strategy is to move from the time domain to the frequency domain by solving a series of harmonic analyses, obviously working within the hypothesis that the system behaves linearly for the entity of the vibrations in play.

**3) The generation, running and validation of the dynamic Finite Element (FE) model of the machine. ** The FE model, with the appropriate material properties in terms not only of stiffness and inertia, but also of intrinsic damping, once realized and solved, must be experimentally validated; this can be achieved by correlating the numerical frequency responses with the experimental ones. The activity is then set up on machines that already have physical test samples, to allow the calibration of any unknown parameters (such as friction-related damping, for example) and their subsequent validation. Once calibrated and validated, the procedure can be used on new machines of the same type.

**4) Learning the fatigue behavior of the material. ** The material fatigue curves must be accurately acquired as they have a decisive influence on the results obtained. The ideal, of course, would be to proceed with experimental tests, material by material, to acquire the curves of every specific sample extracted from each component, which would then also record the specific production processes. In the absence of specific real curves, one can use bibliographic data which while certainly faster and cheaper, leaves a level of uncertainty about the actual behavior of the product.

For this specific case, the procedure developed was set up and applied to a professional brushcutter with a displacement of over 50cc. Below we have analyzed the main stages of setting up the procedure.

In the multibody simulation, we modelled the crank thrust and the combustion signal of the power unit (PU), the behavior of the clutch (which decouples the transmission below approximately 4000rpm), the bevel gear that multiplies the engine torque and the cutting device (UT). In particular, the drive shafts were made flexible to account for the different binding reactions discharged onto the bearing couples. Moreover, the shafts, especially the engine shaft of the twostroke single-cylinder engine, are unbalanced, both statically and dynamically, within specific values. In the model, the rotor shaft was represented as two parts joined by a prismatic torque and a cardan joint, while the input to the model was represented by a speed control based on the cycle in Figure 2.

In this specific case, a total of nineteen force components were evaluated with the rigid body model:

- Two force components representing the vertical and horizontal thrusts on the PU cylinder;
- Four force components representing the vertical and horizontal thrusts discharged onto each of the main bearings in the PU;
- A force component representing the external so-called TAP force (representing the impact the operator makes with the UT to restore the wire cutting length during machine’s operation)
- Twelve force components representing the vertical, horizontal and axial thrusts that the bevel gear discharges onto its 4 bearings, two to support the primary, and two to support the secondary.

The cutting head is the main contributor to the static unbalance on the UT side, because of the nylon thread which is always unevenly wound: this unbalance generates a rotating force at a speed about 1.35 times lower than that of the motor, due to the bevel gear torque. All the output signals from the simulation were sampled at 2000 Hz to adequately reconstruct the tendencies of the forces at the PU’s maximum operating speed (10500rpm=175Hz).

Since the assembly is stressed by equivalent repeated load cycles and since, for the purposes of evaluating fatigue life, we are interested in the dynamic behavior regime of the machine (thus neglecting the initial transient phase), we could pass from the time domain to the frequency domain, thus solving a series of harmonic analyses, one for each frequency contribution from the input signals. This approach is valid for the hypothesis of linearity in the system, under the action of the imposed vibration loads.

Since the duty cycle has a total duration of 10 seconds, the time history of each load component acting on the machine can be expressed with a series of Fourier’s whose terms have frequencies at steps of 0.1 Hz. The frequency contributions from the input signals have therefore been represented by “grooves” at the 0.1 Hz pitch.

By developing the various excitative contributions of the system in series and evaluating the most important frequency contributions, it was possible to limit the frequency range of the study to twice the maximum operating frequency, i.e. about 400 Hz. Ultimately, the harmonic sweep to be solved had to cover a range from 0 to 400Hz at steps of 0.1 Hz, for a total of 4000 harmonics. One could ask if a transient analysis would be more efficient. In this regard, however, one must remember that this would require the replication of a 10-second signal for enough cycles to render the system fully operational, and with a suitable time step to capture the highest frequency of interest (400 Hz) with a sufficient number of points, at least 8-10. Ultimately this means the transient approach would require at least 32,000-40,000 sub-steps for each 10 s cycle necessary to record the response, making it much more onerous computationally than the harmonic approach.

Finally, it should be considered that it is also not advisable to use the mode superposition (MSUP) approach because the different nature of the model materials (aluminum and magnesium alloys, steels, glass fiber reinforced plastic (GFRP)) means that it is not possible to use a single damping value for the whole machine, but that each material should have its own damping contribution, as will be discussed below. Ultimately, the harmonic sweep must be performed in FULL mode, with a consequent increase in calculation times. One can always opt for MSUP, which is much faster, when the procedure allows for it and based on prior experimental confirmation.

This phase represents the real finite element modeling: the choice of the mesh, the boundary conditions, the contact management and the choice of the material model to be used are all elements that must be considered to ensure a good quality model. While these aspects are important for static models, they are fundamental for dynamic models, where, for example, elements such as the fixing screws of the assembly must be carefully modeled by inserting the appropriate contact area, or one risks creating a system model with completely incorrect frequencies. This modelling involves a careful search for the size of the mesh elements to be assigned to each body. The mesh is created using second order elements. Obviously, the areas being studied for fatigue will require the use of a thicker mesh size to more accurately capture the peaks and gradients of the stress that is generated on the joints and ribs, the typical structural elements of die castings.

The model can include the non-linear contacts and materials for a possible static analysis of pre-stress, but must be absolutely linear for the vibration analysis (frequency sweep) around the mean condition.

Since the procedure is completely parametric, it is important to include all the areas for which you will subsequently study the fatigue life in the appropriate named selection, to be able to replicate the methodology on new geometries using the same approach. This aspect is equally indispensable to reduce the file size of the results produced by limiting the saved results only to the areas of interest.

During operation, the average temperature of the various parts of the machine is not the ambient temperature, instead it tends to settle at a constant value that varies from point to point after a few minutes of operation; this is especially true in bench tests where the cycle is repeated over many hours: once fully operational, the fluctuations in temperature over time are minimal. For this reason, in order to make the following evaluations, one cannot ignore a thermal prestress analysis to introduce the average stress condition to which the machine is subjected, nor if you have the S-N curves available when the temperature varies, to choose the appropriate curve to use, point by point. The average stress that results from this will be important to correct the fatigue resistance and therefore to reconstruct the time history of the equivalent voltage of a given node.

Thanks to previous experience with the fluid dynamics of PU cooling, we know the thermal powers, the heat exchange coefficients and the temperatures, which allows us to reconstruct a thermal field that qualitatively represents the real temperature map of the system during operation by running an FE simulation.

To calculate the average pre-stress condition to which the system is subject, it is necessary to conduct a static simulation that contains all the “static” average loads present in the system being examined. Besides the temperature conditions calculated by means of the thermal analysis, and the possible average contributions of the variable loads in time obtained from the multibody simulation, the pretension bolts that keep together the various parts of the whole play an important role in the calculation of the pre-stress to which the machine is subjected; the screws and their surroundings are generally meshed by finely controlling the dimensions of the element, to better capture certain gradients of tension and to accurately evaluate the effective clamping area (through appropriate frictional contacts that will become bonded only in the areas of effective contact in the next frequency sweep). Regarding the constraints assigned to the structure, zero displacements and rotations were imposed on the centroid of the handlebar’s extremity and at the attachment point of the belt. It should be noted that the handlebars and the shaft of Fig. 2 are connected to the rest of the machine by means of four springloaded vibration dampers shaped like linear bushings with adequate stiffness and damping values derived from careful static and dynamic characterizations. The average values of the 19 force components within the duty cycle discussed above were assigned as forces on the nodes and oriented according to a nodal reference system. In pre-stress statics, gravity is also considered, which by itself entails a certain deformation of the entire structure given the not insignificant weight of the brushcutter during operation (about 10 kg). The results file of this static analysis of the average pre-stress is saved in the file “statica.rst”.

After suitably linearizing the model realized for the different material properties and for the definition of the contacts, we set up a harmonic sweep in the 0-400 Hz range, with a frequency step of 0.1 Hz to cover all the important frequency contributions present, to develop a Fourier series for the temporal histories of the loads to be applied.

The corresponding contributions of the series were applied in terms of real and imaginary parts, i.e. module and phase, in the action area of each time-variable load contribution for each frequency. This obviously accounted for any phase delays between the various load conditions. 4000 harmonics were tested in this way. Using the Rayleigh matrix’s definition of appropriate coefficients, the intrinsic damping properties of each material were inserted and varied as the frequency under examination varied, in order to follow the desired trend of tanδ obtained experimentally.

The approach to fatigue proposed in this procedure is STRESS-LIFE or HCF (High Cycle Fatigue). In order to evaluate fatigue life, it is necessary to know the S-N curves for each material under examination. Since the company has never carried out any specific fatigue tests, the curves referred to were always taken from bibliographic sources of various kinds. The procedure set-up remains valid regardless of the origin of the curves, but obviously the accuracy of the results relies on the validity of the curves chosen. In general, the fatigue curve refers to the specimen tested with an alternating symmetrical load, for example the test performed on the Moore machine; therefore, the curves that must be included in the calculation should consider all the non-ideals that actual pieces offer: much larger dimensions than those of the specimen, radii of curvature and surface finish, higher temperature than the ambient temperature, etc. All this means that the curve must be scaled by a factor, the so-called Kf or strength factor, which according to our experience reaches about 0.4, as shown in Figure 7 (thick green line).

TThe entire exercise was carried out in the Workbench environment. A suitable set of MAPDL macros which can be launched directly from the Workbench interface using ACT customization, was created for the fatigue procedure. The aim of the activity therefore was the realization of an ANSYS MAPDL procedure for the verification of the fatigue life even of complex assemblies under repetitive load conditions. The procedure assumes a known test load cycle, thought to be repeated endless times, linked to the bench testing phase of the machine. As a starting point, the procedure requires the resolution of the harmonic analyses considering all the important frequency components necessary to reconstruct the input load cycle, and of the static representing the average conditions. Using the results generated by these simulations, one proceeds to the temporal reconstruction of the voltage history in the points of interest for the temporal duration of the cycle - in particular, one needs to obtain the temporal history of the signed Von Mises. This temporal history is then broken down into a history of peaks and valleys, useful for counting the load cycles using the rainflow procedure. Taking note, therefore, of the load cycles in terms of the mean and alternating voltage and their number present in the temporal history of the signed Von Mises, one then proceeds to correct the alternating voltage taking into account the mean value, according to Soderberg’s theory (one can also insert further criteria to correct the mean value). With these values one enters the S-N curves to calculate each contribution’s number of breaking cycles and therefore the total damage and the fatigue life. A comprehensive explanation of the functionality of each macro is given below.

**Macro “0_parameters.inp”.**

Requires all the parameters useful for the subsequent fatigue analysis to be defined manually by the user. The S-N curves of each material of the components on which you want to perform the fatigue post and the yield stress (useful for correcting the average value of Soderberg) must obviously be included among the various data to be provided.

**Macro “1_body_macro.inp”**

This is the mother macro that calls all the other macros, including the 0_parameters.inp macro, in the right logical order. This is the macro launched by the ACT customization once the parameters have been set in the 0_parameters.inp macro.

**Macro “2_post_statica.inp”.**

This represents the first action to be performed in logical order. It corresponds to the post-processing on the nodes of interest of the static analysis that represents the constant as the time of the system’s response to the loads applied as input varies. In particular, an array called “post_static_nodeXXX” (XXX is the number of the corresponding node in each case) is generated for each node of interest, and consists of a single row with 12 columns that report all the voltage tensor components, the main voltages, and the equivalent von Mises and signed Von Mises voltages. For example, for the node 92899 (a generic node of the conveyor skin) one obtains the following “post_static_node92899” array

**Macro “3_post_harm.inp”.**

This corresponds to the post-processing on the nodes of interest of the harmonic analyses generated. These represent the variable of the system’s response to the loads applied as input. In particular, this macro reads the file of the harmonic results for the various frequencies analyzed, first loading the real part and then the imaginary part for each of them. An array called “post_harm_nodeXXX”, which consists of as many rows as the harmonics analyzed and 16 columns with the real and imaginary parts of all the voltage tensor components, and the equivalent von Mises voltage, is generated for each node of interest. For example, for the node 92899 you get the following “post_harm_node92899” array

**Macro “4_reconstruction_temp.inp”.**

This corresponds to the reconstruction of the temporal response of the signed von Mises voltage for the temporal duration of the load cycle on the nodes of interest. This reconstruction is based on the results of the prestress static analysis and of the harmonic analysis generated and post-processed in the previous steps. In particular, the macro reconstructs all the tensors of the voltages x, y, z, xy, xz, yz for each node and for each temporal step at each instant, and recombines linearly the constant contribution of the statics and the variable contributions in time of the different harmonics, each with its own module, phase and frequency (or equivalently, the real part, the imaginary part and the frequency). Once the voltage tensor has been reconstructed on each node and for each instant, the equivalent von Mises voltage and the main voltages at that given instant can be calculated.

In particular, the Von Mises voltage is calculated with to the following formula where the tensor components are known:

While the main voltages are calculated by solving the following thirddegree polynomial for each instant:

Depending on which is the main voltage with higher module, the sign is assigned to the Von Mises previously calculated, thus obtaining the signed Von Mises (positive if mod(σ1) ≥ mod(σ3), negative if mod(σ13) > mod(σ1)); An array called “ricostr_temp_nodeXXX” (XXX is the number of the corresponding node in each case) is then generated for each node of interest, which consists of one row for each time step analyzed and 11 columns that report the time reconstruction of the 6 components of the voltage tensor, the reconstruction of the main voltages s1 and s3 and of the signed Von Mises; for example, for the node 92899 you get the following “ricostr_temp_node92899” array

By plotting column 11 of the signed Von Mises Voltage as a function of the times of column 2, one obtains the equivalent uniaxial response of the system for that specific node (for example, node 92899) as the time varies, which is useful to evaluate the fatigue life. During this phase, the procedure also evaluates the absolute maximum and minimum values recorded by the time history of the generic node’s signed von Mises and saves them in the variables max_assol_ nodeXXX and min_assol_nodeXXX.

**Macro “5_creation_spiovents.inp”.**

This macro simplifies the temporal history of the signed Von Mises for each node, transforming them into a history of “levels”, in other words, moving from an analog signal to a digital one. The number of layers used is a parameter “N_bin_x_rainfl” that can be modified within the macro 0_parameters.inp (the higher this number, the more accurate the reconstruction, but the slower the subsequent creation of the rainflow will be). The absolute minimum-maximum interval of the signed Von Mises voltage of the node being examined is divided into N_bin_x_rainfl levels, each with an amplitude equal to abs(max_assol_ nodeXXX-min_assol_nodeXXX) / (N_bin_x_rainfl-1). The central value of the level’s voltage is assigned at each level. Level 1 corresponds to the absolute minimum of the signed Von Mises for that node, level N_ bin_x_rainfl (for example equal to 50) corresponds to the absolute maximum of the signed Von Mises.

We record the level to which each voltage value of the temporal history of the node being examined corresponds in the first column of the array st_temp_liv_nodeXXX (an array with one row for each temporal step and 2 columns), which therefore represents the rewriting of the temporal history of the signed Von Mises in terms of a history of levels. To create the rainflow, the temporal history must start from the absolute minimum or maximum. Therefore, the same temporal history is reported in the second column of the st_temp_liv_nodeXXX array, starting with the first instant in which the absolute minimum is recorded (this is possible based on an assumption of a history of infinitely repeated loading). After creating the temporal history of the levels, one proceeds with the creation of the “slopes” on which the “rainflow”’s rain lines can flow; to do this, one must record all the broken lines (in increasing order) that join a peak with the next valley, and vice versa. Therefore, a “spioventi_nodeXXX” array is generated for each node which shows the split times (with 10 columns and a row for each time step, even if the number of split times will generally be lower than the number of time steps; the number of split times will be saved in the conta_ spezz_nodeXXX variable); the first column shows the starting level of the split times and the second column shows the finishing level. The third column is initially created the same as the second, but is then modified by the rainflow’s next macro (the successive columns are always filled later by the rainflow’s macro). The rows after the conta_spezz_nodeXXX number will be empty.

**Macro “6_rainflow.inp”.**

This macro counts the cycles present in the signed Von Mises temporal history for each single point of interest using the rainflow methodology. In particular, note the cyclical time history of the signed Von Mises for each point considered, counting takes place according to the rules of Figure 10. The 6_rainflow.inp macro does the counting for each point of interest according to this theory and saves the information about the start and end of the cycle counted in the spioventi_nodeXXX array; more precisely, the value of the cycle start level is stored in column 1 and value of the cycle end level (the level at which the “water flow” of the rainflow is interrupted) is stored in column 3. Knowing the starting and ending levels of each semi-cycle, we can go back to the voltage values corresponding to these levels, which represent the minimum and maximum voltage values of the semicycle, which are then saved in in column 4 and 5 of the spioventi_ nodeXXX array. Columns 6 and 7 show the average and alternating voltage values of this semi-cycle, calculated as shown in Figure 11.

**Macro “7_png.inp”.**

This macro serves the main macros previously described and is used to generate an external .png image of what was actually plotted.

**Macro “8_fatica.inp”.**

This macro carries out the real fatigue analysis for each node of interest, taking into account the material properties of the component to which it belongs (yield stress value, to correct the mean value, and the S-N curve for the fatigue life). Firstly, it evaluates the correct alternating voltage of the mean value for each half-cycle present in the signed Von Mises temporal history for each node of interest. In fact, column 8 of the spioventi_nodeXXX array shows the value of the equivalent alternating voltage, obtained after correcting the alternating voltage with respect to the average recorded voltage. The correction was made according to Soderberg’s theory (as requested by the customer):

*According to this theory, the correction is applied only if the average voltage is tensile, while no correction is applied in compression. If the average voltage is in modulus greater than the yield strength, however, whether in tension or compression, an infinite alternating voltage is assumed (the macro imposes this equal to 1012 Pa).*

Using this equivalent value of alternating voltage, we can enter the corresponding S-N curve (defined for each component of interest in the 0_parameters.inp macro) and calculate the corresponding number of breaking cycles. At the intermediate points of the curve, the value of N for the desired equivalent alternating voltage is interpolated linearly. For voltage values beyond the extremes defined in the curve, N maintains constant the last defined value. This value of N is shown in column 9 of the spioventi_nodeXXX array. In column 10 of this array, we report the damage relative to the semi-cycle considered, which is evaluated as: Damage=0.5/N_cicli_a_rottura; at this point, we are able to evaluate the total breakage damage caused by the signed Von Mises time history for each node, broken down into semi-cycles. To do this we use the Palmgreen-Miner linear damage accumulation rule

Therefore, adding together all the damage of each semi-cycle for each node studied (reported in column 10 of the spioventi_nodeXXX array), the fatigue damage relative to the load cycle analyzed and thought to be endlessly repeated is obtained. This Damage value for each node is saved in an array called out_fatica_pelle_kkk (where kkk is the index that runs the various defined named_selection on which the fatigue analysis is to be performed). This array has one row for each node making up the named_selection number kkk and 4 columns. Column 1 shows the number of the node in question, column 2 shows the total damage relative to the entire input time history calculated as described above. Column 3 reports the number of blocks of this load history to reach breakage, calculated as: N_blocchi_arottura=1/ Danno_tot; column 4 shows the final fatigue life in hours, calculated as: Vita_ore=N_blocchi_arottura*t_fin*1/3600 dove t_fin is the time duration of the input load cycle. The macro also automatically saves multiple png images that represent the damage map, the number of breaking load blocks and the fatigue life in hours. The out_fatica_pelle_kkk arrays are automatically saved in the workbook in appropriate text files called out_fatica_pelle_kkk.dat (one file for each named_selection), as are the damage and fatigue life maps plotted on the model.

The validation of the model essentially involved two aspects: the first was to ensure that the model of the combustion signal was consistent with the experimental findings, the second was to ensure the best possible correlation between the numerical and the experimental dynamic response (using an instrumented hammer). In examining the transfer function obtained, Figures 14 and 15 show the good degree of correlation achieved, which further reinforces the work done so far. The same procedure was tested on three different geometries of the same component, called the conveyor, which joins the PU to the brushcutter’s transmission tube, and which had shown some breakages; more precisely:

- Geometry01 bench breakage around 200h, breakage in the field within 10h;
- Geometry02 no breakage at the end of the durability bench test (300h), field breakage between 20 and 50h;
- Geometry03 no data available.

In the bench tests, the only excitement that could not be reproduced was the TAP, or the impulsive force due to repeated crushing of the cutting organ; this force was modelled, on the FEM side, as a square impulsive wave of 1600N amplitude and 20ms length, with values deduced from some experimental measurements. The following considerations can be made:

A. There is an excellent correlation around the positioning of the most critical points in terms of fatigue, both for geometry01 and geometry02. It should be noted that the change in geometry saw a modification of the critical points, a sign that the changes made had an influence.

B. The numerically estimated value of the fatigue life is in line with what has been experienced in reality: for geometry01, the life calculated without considering the TAP overestimates the 200 hours of reality in a reasonable way engineering-wise, and when calculated considering the TAP the estimated numerical life drops significantly (resulting less than the 10 hours of reality). These differences can be attributed to:

- The strong stochastic character of the fatigue curves and of the exciting TAP (depends on the operator);

- If the equivalent Von Mises voltage is very close to or even higher than yield, the HCF approach loses its validity because it fails to consider the effects of local plasticization.

C. For geometry02 the calculated life is 28 hours for the complete cycle with TAP, in perfect alignment with field tests (20-50h). The calculated life without taking into account the TAP (i.e. imagining only a durability bench test) gives a practically infinite value, in line with the tests (300h without breakages).

D. For geometry03 no experimental data is yet available, but the life estimated by the procedure is about 100 hours for the complete cycle, certainly better than for the previous geometries; the fatigue life for the durability bench test only is still infinite.

E. The time reconstruction of the equivalent Von Mises voltage highlights the link between vibrations and fatigue life: in particular, it changes depending on the frequency range involved in the time reconstruction of the input signal and, of course, the transfer function of the system.

The developed procedure allows one to calculate fatigue in the presence of any number of known loads in time according to a given cycle, considering the dynamics of the machine. The procedure is absolutely general and was initially developed for a chainsaw and then adapted to a brushcutter; in the future, its use will be extended to other types of machines such as cutters and hedge trimmers, to name a few.

The location of the critical points has so far been consistent with the breakages experienced in the field or at the test bench, for both the chainsaw and the brushcutter. Some slight uncertainty remains concerning the estimated life for the reasons discussed above. For these reasons, some future developments to be made to the procedure have been identified:

- Introduction of a strain-life approach (or low-cycle fatigue (LCF) tests), in very stressed areas, to take into account possible plasticization and to better estimate the life for a not-too-high number of cycles;
- After evaluating the stiffness of the fastening system, the introduction of soft constraints on the handles (typically bushing), too, to more accurately represent the physical reality and to estimate the acceleration in these areas, an aspect in which appropriate regulatory obligations have been imposed which must be respected.

CASE STUDY

This article provides a non-exhaustive overview of some of the latest advances in the adoption of CAE technologies in the medical field by citing some ongoing EU research programs.

rbf-morph biomechanics