GOOD MODELING PRACTICES APPROACH
The objective of an approach incorporating good modeling practices is to use FEA intelligibly and not as a black box, although, from a solving point of view, it is one. Your FEA will produce accurate results only if:
- You understand the physics behind your problem.
- You know what you are looking for.
- You have an idea of what the results should look like.
- You understand the behavior of the elements in the library of your FEA software.
- You select the right elements for the task.
- You perform the correct discretization (proper mesh density and good quality).
- You apply the correct boundary conditions (constraints and loadings).
- You understand the effects of your assumptions on the response of your model.
- You know how to modify the model to improve its accuracy.
- You keep a critical eye on the results, and you understand the critical outputs.

If you are a newcomer to FEA, start with a simple FEM. Do not attempt to set up a complex FEA from scratch. Make sure you understand the capabilities of your FEA software. It is hard to understand complex phenomena, or to find errors in a large and complex FEA if you do not have significant experience. Moreover, it is crucial to know beforehand what results to expect.
While FEA software vendors do their best to help users become FEA experts, you must ultimately understand how to properly use the tools, without treating FEA simply as an extension of CAD. Similarities between CAD and FEA are limited to geometry, at best. There is also a risk of assuming that the FEM’s accuracy depends solely on precise geometric representation. The problem with this assumption is that many other factors such as selection of the right elements, definition of the right boundary conditions, selection of an appropriate material model, the convergence study, and the results analysis, to name but a few, are ignored. FEA is complex, and geometric accuracy and attractive color plots alone do not guarantee high quality.
The most experienced FEA analysts are the most pessimistic, when it comes to the accuracy of their models. They have been let down in the past by erroneous models, rerunning their models several times and carefully examining all results before presenting any data to the client. History has shown that while computer simulation has been used to solve very complex problems, it has also been responsible for disasters, when some inputs are not considered, or when data is used incorrectly.
IT ALL STARTS WITH A GOOD PLAN
Even before launching your FEA software, sit down at your desk with a piece of paper and plan your analysis. Do not start the modeling work if you are unable to answer all the following questions:
- What is the design objective?
- Why is FEA the best tool for your problem?
- What are the design criteria?
- How much of the structure will need to be modeled?
- What are the precise boundary conditions (restraints and loads)?
- Which quantities do you need to predict: stresses, displacements, frequency, stability?
- What error can you tolerate in your results?

See details in “Chapter 6 – Defining Your FEA Strategy” in “Practical Finite Element Analysis for Mechanical Engineers”.
UNDERSTAND THE PROBLEM IN DETAIL
- If your intention is to precisely quantify the stress level in a critical region for your structure, during the simulation process, you must qualitatively understand in detail the problem you want to simulate.
- Whatever simulation you submit to the FEA software, you will often obtain an answer, even if you specify an incorrect set of equations. Therefore, the first task of an FEA work project is to understand the physics behind the real structure and the real behavior of the parts you want to model. Then, you will be able to reproduce this behavior using a computer simulation. This approach allows you to completely understand what your FEA is doing.
BE SURE TO UNDERSTAND THE INPUTS AND REQUIREMENTS
Before beginning the analysis:
- List the available inputs.
- List the requested outputs.
- Connect all the provided inputs with the analysis requirements.
- Ask for additional inputs, if necessary.
DEFINE YOUR DESIGN OBJECTIVE
Answer the following questions before you begin modeling:
- Is the problem to be solved so complex that you cannot answer it using a classical method?
- How can FEA help you to answer the question?
- Which question is to be answered?
- Which quantities are to be calculated?
- Do you want to capture a global or a local effect?

Here are a few rules to follow when defining the objectives of your simulation:
- Identify your expectations for the finite element simulation.
- Do not set up a simulation without a clear goal in mind.
- Do not create a model, “just to see what will happen…”
- Predict the behavior you expect to obtain.
- Clearly identify the effects you need to simulate. For example, do not use a material plasticity model if you only need to know whether a yield stress is exceeded.
- Identify the required precision of your calculation.
See details in Chapter 6 – Defining Your FEA Strategy in “Practical Finite Element Analysis for Mechanical Engineers”.
SELECT THE RIGHT TYPE OF ANALYSIS
Define the type of analysis required to capture the effects (linear, nonlinear, static, buckling, normal mode, frequency response, transient, etc.)

- Is it a static or a dynamic problem?
- If the loading is constant over a relatively long period of time, it is a static problem.
- If the inertial and damping effects are negligible, it is a static problem.
- If the loads are applied gradually, it is a static problem.
- If the structure is subjected to vibrations, and the excitation frequency is less than one third of the structure’s lowest natural frequency, it is a static problem.
- Is it a linear or a nonlinear problem?
- If the stiffness of the structure does not change when a loading is applied, it is a linear problem.
- If the strains in the model are less than 5%, it is a linear problem.
- If the strains or stresses of the model do not exceed the proportional limit, it is a linear problem.
- If it is a nonlinear problem, which type of nonlinearity is it?
- Is it a large deformations problem (nonlinear geometric)?
- Is it a material plasticity, hyper-elasticity… problem (nonlinear material)?
- Do the boundary conditions change during the analysis?
- Is it a contact problem?
- Is it a combination of two or three of these?
- If it is a contact problem, define the contact type:
- Glued
- Parts that are separate from one another
- Is there friction, and do you want to model it? If yes, do you know the coefficient of friction?
Take the time to answer all these questions, which will allow you to define the type of analysis you should run and influence the assumptions you must make during the modeling process.
See details in “Chapter 20 – Linear Static Analysis”, “Chapter 21 – Nonlinear Static Analysis”, “Chapter 22 – Linear Buckling Analysis”, “Chapter 23 – Nonlinear Buckling Analysis”, “Chapter 24 – Normal Mode Analysis” in “Practical Finite Element Analysis for Mechanical Engineers”.
CHECK & CLEAN UP THE GEOMETRY
CAD models are usually very large. Reflect on what is essential to the analysis and for the model; it will likely not be the entire product. For example, a CAD model of a mechanical structure could include all the nuts and screws needed to assemble the parts. This may be unnecessary in the FEA, or they may be modeled using simple 1D spring elements. Many parts do not contribute to the effect you wish to capture, so take the necessary time to identify and remove them from the CAD.
Taking the time to perform an efficient geometry cleanup, prior to beginning the modeling process, is a good investment that will save you time later on. Check for duplicate geometric features (solids, lines, surfaces, etc.) and delete them. Remove the unwanted lines, fillets, holes, and beads before you start meshing the components.

After importing the CAD to your pre-processing software:
- Check the dimensions of the imported geometry.
- Scale the model before beginning the modeling process (if the CAD was created in a unit system that is different from the material data and loads you plan to use).
SELECT THE PROPER ELEMENTS
Choosing the element types is a crucial step in creating a good FEM.

- Take your time reading the reference manual for the library of elements associated with the FEA software you are using.
- Run simple test cases to make sure you know how to use them in the practical analysis.
- Make sure you understand how a finite element simulation is affected by the choice of element type.
- Make sure you understand the concepts of element order and integration points.
- Use truss elements for axial and torsional strength (truss structure, actuator, tie-rod, stringer, flange cap, etc.).
- Use beam elements for strength in bending, axial load (tension and/or compression), and transverse shear (frame structures, structures with large slenderness ratios).
- Use 1D spring elements to replace complex parts with equivalent stiffness.
- Use 2D shell elements for parts having a width:thickness ratio greater than 10 to 20 (skin, web, thin-walled structure, etc.)
- Use quadrilateral elements, when possible, in a 2D shell mesh. Try to avoid the triangular elements, since they are much too stiff, especially in bending. Ensure the number of triangular elements in your model is negligible, compared to the number of quadrilateral elements. Ensure that triangular elements are not in the regions of interest.
- Linear elements are usually preferred over quadratic elements in a 2D shell mesh.
- Shells and membranes look similar but behave differently. Be sure to use the correct formulation.
- Do not model thin-walled structures in bending with 3D solid elements. Only 2D shell elements can capture the bending stresses of a thin-walled structure.
- Use 3D solid elements only to capture details that cannot be modeled with 1D or 2D elements.
- The brick element (HEX8) is the preferred element (no locking under bending effects) in a 3D solid mesh.
- The quadratic element (TET10) is preferred over the linear element (TET4), when solid TET elements are used.
- At least two elements through the thickness are required in a 3D solid mesh with quadratic TET10.
- It is not necessarily true that 3D elements outperform 2D elements or that 2D outperform 1D elements.
See details in “Chapter 7 – The Library of Elements” in “Practical Finite Element Analysis for Mechanical Engineers”.
CREATE AN INTELLIGIBLE MESH
Meshing is one of the key steps to produce a FEM which will be able to predict accurate results.

- Run a preliminary simulation with a coarse mesh to confirm the critical regions.
- Apply a fine mesh in regions with significant gradients in stress or strain.
- Do not create a fine mesh for the entire model. Apply the finer mesh in regions of interest.
- Create a coarse mesh for comparisons, stiffness problems, and load models.
- Create a structured mesh in critical regions.
- A finer mesh gives an answer closer to reality, so apply a converged mesh in regions where you want to extract stresses or strains.
- If you do not know the mesh density needed for the converged mesh, perform a convergence study.
- When using local mesh refinement, smooth the transition between the different regions. If the transition is too abrupt, spurious results may occur in this region. Adjacent elements should not differ by more than a factor of three in their area or volume.
- Plot unaveraged stress and compare it to averaged stress to check the mesh.
- Do not connect linear and quadratic elements.
- Check your mesh quality using the checks available in your pre-processing software.
- Build simple meshes, avoiding complexity.
- Respect the physical interfaces.
- Use glued contacts to join meshes and create assemblies of larger parts.
- In 2D shell meshing, the ideal quadrilateral element is your goal: “If it looks good, it is good.”
- Apply accurate properties to the elements to represent the geometry (shell thickness, beam cross section, inertia, etc.)
- During the meshing process, discontinuities, called cracks, appear in the resulting mesh. To check for cracks in the model once the meshing process is completed, various methods are available:
- Use a pre-processing software to plot the edges.
- Run a dummy load case and have a look at the deformations.
- Run a modal analysis and plot the mode shapes.
See details in “Chapter 8 – Meshing” in “Practical Finite Element Analysis for Mechanical Engineers”.
DEFINE THE RIGHT BOUNDARY CONDITIONS
During the process of creating an FEM, defining the boundary conditions is the stage at which many engineers make incorrect assumptions. The topic of boundary conditions is less understood by FEA beginners, but it is not uncommon for experienced engineers to also have difficulty properly defining them.
Boundary conditions have a major impact on the results of an analysis, and a small mistake when defining them can make the difference between a correct and incorrect simulation. To properly define your model’s boundary conditions, you will need to follow a strategy, which will permit you to test and validate them.
- Predict how the model will behave using your engineering judgment, test results, or previous analyses.
- Ensure that the set of boundary conditions (constraints and loadings) reflects real life.
- Prevent rigid body motions.
- Check the boundary conditions with a modal analysis.
- Ensure that the deformation of supports is negligible.
- Boundary conditions usually generate singularities, so keep them far from regions of interest.
- Predict the load path before running your model.
- Take advantage of the Saint-Venant’s principle.
- Point loads may cause unrealistic stresses in adjacent elements (singularities). It is preferable to distribute a load over several nodes using a local mesh refinement, if needed.
- If the direction of the boundary conditions varies during the simulation, run a nonlinear solution.
- Check the boundary conditions after the run by observing deflections/reactions at the constrained nodes.
- At a given node, set either the load or the displacement but not both.
- Do not add stiffness to the model by creating excessive constraints such as redundant supports.
- Ask yourself whether parts that were not included in the model could really allow the deflections you obtain with your simulation.
See details in “Chapter 11 – Defining Loads and Boundary Conditions” in “Practical Finite Element Analysis for Mechanical Engineers”.
VALIDATE THE INPUT DATA
- A simulation cannot be more precise than its input.
- If there are uncertainties associated with the material data or external loads, use a conservative estimate.
- If there are uncertainties associated with the input data, vary the associated parameters to see how the results are affected by them.

MANAGE THE UNITS
Most FEA software are units-free:
- Use units in such a way as to satisfy Newton’s Second Law of Motion.
- Check mass and center of gravity with a modal analysis, or apply gravity and check reactions.
- Verify that force, elastic moduli, acceleration, mass density, and dimensions represent consistent units.
See details in “Chapter 9 – Setting Your Units” in “Practical Finite Element Analysis for Mechanical Engineers”.
DEFINE CONTACT PROPERLY
Contacts define how parts interact and are typically used to understand behavior and load transfer within an assembly. Contacts are very useful in FEA simulations because they allow multiple bodies to interact, without the need to add elements to the model.
There are advantages to contact conditions in a model, since it is possible to model more realistic behaviors, but their addition to a simulation can be costly; contact conditions create significant computational complexity in a model, and numerous parameters must be managed by the FEA analyst. The consideration of contact often marks the transition point between linear and nonlinear simulations.

- Use contact when absolutely necessary.
- Use contact locally, not for all parts of a complex assembly.
- The solution will take significantly longer to compute with the use of contact.
- Try to use first order elements in the contact regions.
- Ensure that you properly select the master and slave surfaces.
- Be sure to remove rigid body motion of contact pairs before contact is established. This can be done by adding appropriate constraints or by using a stabilization procedure.
- Does friction need to be modeled? If yes, what is the friction coefficient? You may need to run models with different values if the coefficient is not firmly established.
See details in “Chapter 14 – Modeling Contacts” in “Practical Finite Element Analysis for Mechanical Engineers”.
MODEL THE RIGHT MATERIAL BEHAVIOR
In terms of material properties, whatever the source is, it is an approximation.

- Use an isotropic material (same properties in all directions) in a metallic part.
- Use a 2D-orthotropic material (different properties in two directions) in a composite part modeled with shell elements.
- Use a 3D-anisotropic material in a composite part modeled with solid elements.
- Determine whether temperature dependence is important in the analysis. If not, model the material properties at room temperature or at the operating temperature.
- Properly define the density, if inertial loads are involved in the analysis.
- Properly define the coefficient of thermal expansion, if thermal stresses are required.
- Model a boundary wherever material properties change.
- For a nonlinear analysis, define whether the stresses are below the yielding point. If not, use a nonlinear material:
- If the strains are recoverable, model a nonlinear elastic behavior.
- If the strains are irrecoverable, model a plastic behavior.
- Use the true stress-strain curve.
- Ensure that the Young modulus matches the yield stress.
See details in “Chapter 10 – Material Modeling” in “Practical Finite Element Analysis for Mechanical Engineers”.
MANAGE THE SINGULARITIES
Real structures do not contain singularities. These are a fiction created by the simplifying assumptions of the model.
- If your singularities are far away from the region of interest, you can ignore them.
- If they are in the region of interest, you must take corrective action:
- Model a pressure load instead of a point force.
- Spread displacement constraints over a set of nodes, instead of at a single node.
- Use material plasticity.

See details in “Chapter 11 – Defining Loads and Boundary Conditions” & "Chapter 17 - Understanding FEA Outputs" in “Practical Finite Element Analysis for Mechanical Engineers”.
SHOULD YOU MODEL THE ENTIRE STRUCTURE?
- Define which portion of the structure you need to model:
- Option 1: model the entire structure with a refined mesh. This requires more resources, compared to the other options.
- Option 2: model only the region of interest with a refined mesh.
- Option 3: model the region of interest with a refined mesh and the surrounding structure with a coarse mesh. This is an advantageous option because the boundary conditions for the region of interest, which are given by the surrounding structure, are very accurate.
- Do you need to model the bolts? If yes, with which method?

See details in “Chapter 15 – Submodeling” in “Practical Finite Element Analysis for Mechanical Engineers”.
SHOULD YOU MODEL THE BOLTS?
Although the mechanical industry has developed technologies to manufacture integrally machined parts, additive material processes, friction stir welding, and so on, many small and large structures still require the use of old-fashioned bolted joints.

- Bolts are not usually modeled with a 3D approach, because we are not interested in stress in the bolts but only in the load transferred by the bolt, so a beam or discrete spring element is sufficient.
- Do not model bolts with 3D elements: use MPC + beam, MPC + 1D discrete spring, or Rutman fasteners.
- The behavior of a joint may be influenced by the bolt preload. This preload can be included in the model even if the bolt is modeled with a 1D element.
See details in “Chapter 13 – Modeling Bolted Joints” in “Practical Finite Element Analysis for Mechanical Engineers”.
VERIFY AND VALIDATE YOUR MODEL
In FEA, both careless users and experienced engineers who are not careful to systematically validate their models can easily make significant mistakes. Expensive decisions in terms of both time and money can sometimes turn out be based on incorrect answers. FEA is demanding, in the sense that the FEA analyst must be proficient not only in mechanics but also in mathematics, computer science, and especially FEA itself. Therefore, it is important to employ validation and correlation procedures whenever FEA is used to solve a problem.

- Verify your model to ensure that you have applied the correct boundary conditions (loads and constraints).
- Do not assume the model is correct. Perform standard checks before running your model for results:
- Accuracy checks
- Mathematical checks
- Check the shapes and sizes of the elements. Use the tools provided by your pre-processing software to highlight critical elements. Avoid badly shaped elements, especially in regions of interest and where high gradients occur.
- Validate the model by making a prediction that was not used in specifying or calibrating the model. For example, apply a very simple loading for which you can perform a hand calculation and verify that the results are the same.
- For a given surface, orient all the elements normal in the same direction, to apply consistent pressure.
- Perform all checks prior to releasing your FEA.
- If possible, correlate your model with test data.
- When conducting correlation with test data, ensure you apply the same boundary conditions as in the test. It is possible that test conditions will differ from the structure’s real-life environment.
- Each time you significantly modify your model, you should check it again.
See details in “Chapter 16 – Validating and Correlating Your FEA” in “Practical Finite Element Analysis for Mechanical Engineers”.
MANAGE INCOMPATIBLE DEGREES OF FREEDOM
Three methods are available to connect two elements having incompatible degrees of freedom:
- Use R-type elements to connect beam to shell elements.
- Use R-type elements to connect shell to solid elements.
- Use extra elements.
See details in “Chapter 7 – The Library of Elements” & “Chapter 12 – Rigid Body Elements and Multi-Point Constraints” in “Practical Finite Element Analysis for Mechanical Engineers”.
KEEP AN EYE ON THE SOLUTION’S PARAMETERS
- In all FEA software, each solution contains many parameters that are not specified by the user. Make sure you know and understand all these parameters.
- Make sure you understand how these parameters will affect the solution.
- If you do not know a parameter, refer to the manual of your FEA software before submitting your run.
KEEP A CRITICAL EYE ON THE RESULTS
Today, finite element simulations are used to simulate very complex structures and mechanical systems. Thanks to the immense calculation capacity of modern computers, it is possible to solve extremely refined FEMs. A consequence is the vast amount of output data for these simulations, which is where post-processing comes into play.
Postprocessing is often defined as the “art of results interpretation.” The quantity of results generated by the solver is so large that the FEA analyst needs to use a dedicated software, called a post-processing software, to organize and interpret the results.

- Never believe simulation results without considering their plausibility.
- Always trust your engineering judgment.
- Never accept simulation results that are not in line with your engineering judgment.
- Always look at the deformed shape first, even if you are more interested in stresses and forces.
- Ask yourself whether the deformation shapes make sense and are in line with your predictions.
- Post-process the appropriate stresses. For example, the von Mises stress is irrelevant for a brittle material.
- Check whether the constrained nodes behave as expected.
- Pay special attention to regions where gradients are large. If high gradients occur in a region of interest, apply a finer mesh.
- Ensure that discontinuities in the stress field are not the result of a change in the numerical stiffness (too abrupt a change in element size, for example).
- In the contact regions, check that the mesh properly represents the deformation of the surfaces in contact. If not, refine the mesh in the contact region.
- When running a linear solution, verify that the displacements are small and that the stresses are not greater than the yield.
- Ask yourself whether high stress near the boundary conditions is fictitious or real.
- Check if the displacements are in the expected range.
- Do not focus too much on the hot spots; check the global behavior.
- Check reactions against applied loads: what goes in must equal what goes out.
- Perform a free body diagram check, based on reaction forces.
- Plot non-averaged stresses.
- Perform animations of the deformed shapes.
- If you combine loadings, consider separating them to better understand the effect induced by each load type.
- Perform a sensitivity study to evaluate the effects of input parameters on response.
- Compare results to previous analyses or test results, when possible.
- Do not assume the model is correct simply because the solver generates an answer.
- Do not use an FEA for a purpose other than the one for which it was developed. For example, do not perform a buckling analysis with an FEA created to capture the load transfer in a joint. Every FEA is developed to answer a specific set of questions. All the assumptions have been made to answer these questions. If the FEA is used to predict an effect that was not considered during its development, your prediction will be incorrect.
See details in “Chapter 17 – Understanding FEA Outputs” in “Practical Finite Element Analysis for Mechanical Engineers”.
DOCUMENT EVERYTHING

- Keep an updated journal throughout the development process containing the CAD references (drawing numbers with revisions), names of FEA analysts and/or suppliers involved in the building of the model, and different model versions with a history of updates.
- Document all FEA assumptions:
- The FEA’s objectives
- Element types
- Material data
- Coordinate systems
- Meshing assumptions
- Convergence studies, if required
- Boundary conditions
- List of load cases
- Contact types
- MPC types and R-type elements used, with their purposes
- Description of joints (methods used to compute stiffness)
- Solution type, with associated parameters
- Document the accuracy checks and mathematical checks.
- Document the correlation and calibration.
See details in “Chapter 19 – Documenting Your FEA” in “Practical Finite Element Analysis for Mechanical Engineers”.
ASK FOR HELP
While you are developing an FEA, you will face problems you will be unable to solve, and you should not hesitate to ask for help. There are many different ways to get help.

- Ask colleagues around you or among your contacts. The solution to a problem you are facing will often have been found by another FEA analyst.
- Contact your FEA software support.
- Use technical forums on the internet. My personal favorite is Eng-Tips. When using the services of such forums, describe your problem as precisely as possible. When you receive an answer, provide feedback to the community, first, for those who helped you, who will be interested to know if their advice was helpful, and second, to assist other FEA analysts facing a similar problem.
When you need to contact technical support or a technical forum, some best practices are recommended:
- Do your homework before asking a question.
- Read the manual.
- Create a simple test model to illustrate your question. A specialist may be willing to correct a simple problem but will not want to look at your model with a million elements.
- Be specific about the question and only supply the required information to the specialist.
- Focus your question on a single solution. If you have multiple questions that are unrelated, you must create an independent request for each one.
- Provide as many details as the specialist needs to answer your questions, but don’t provide unnecessary information. For example, a specialist will not need to know a part’s dimensions, or the specific type of steel.
- Don’t post your question more than once.
- Nothing irritates a specialist more than discovering that a customer has submitted a question twice without waiting for the original answer. It is perfectly fine to ask the specialist for clarification once you get a response, but don’t ask repeatedly without acknowledging the initial request. You will be found out, and your future calls will not get the same attention.
- Don’t assume you have found a software bug.
- Issues are due to user errors, not bugs, 99% of the time. If you do find a bug, the best chance of getting it fixed is to replicate it with a simple test case that you can send to technical support.
- Once they find one bug, FEA analysts tend to assume all errors going forward are also bugs. Don’t fall into this trap! Make sure that future errors are not the result of your own bad input before reporting them.
THE MOST COMMON MISTAKES IN FEA THAT YOU WILL MAKE AT LEAST ONCE

- Conducting an analysis with little to no understanding of the physics behind the analyzed phenomenon
- Not understanding how the structure is likely to behave
- Not knowing enough about the library of elements in the FEA software used for the model
- Not being sufficiently aware of the end requirements
- Not checking and validating the FEM
- Using 3D elements, instead of 2D elements
- Using triangular elements, instead of quadrilateral elements
- Null Young modulus or Poisson’s factor in a material definition
- Insufficient supports
- Part of the model is a mechanism
- A large stiffness difference among parts
- In a nonlinear analysis, a support or a connection reaches zero stiffness
- Incorrect element data (incorrect thickness, beam cross section dimension, beam orientation)
- Incorrect supports, in terms of location, type, or direction
- Incorrect loads, in terms of location, type, direction, or magnitude
- Using a non-consistent unit system
- Duplicate elements
- Incompatible elements connected together
- Unrealistic boundary conditions
- When post-processing stress, not checking unaveraged stresses
- Post-processing components in an incorrect coordinate system
- Post-processing in a singular region
- Post-processing stresses in a region that has not been meshed with a converged mesh
- Relying only on graphics without double-checking input data
- Underestimating the resources and timescale required for the analysis
- Not listing the assumptions made for the analysis
- Including too much detail
- Running the incorrect solution, for example, running a linear solution when the modeled component operates in a large displacement range and the material behaves in the plastic range
THE 10 COMMANDMENTS OF THE FEA ANALYST
Follow the good practices and apply the validated modeling techniques.
