4. Main effects and interaction effects

Once a factorial run matrix has been executed and every simulation case has returned a scalar response, the analysis phase begins. The goal is to decompose the variation in that response into contributions attributable to individual factors (main effects) and to combinations of factors whose influence depends on one another (interaction effects). In CAE parameter studies this decomposition is not a statistical formality — it is the mechanism by which an engineer decides which design variables actually matter, which can be tuned independently, and which must be co-optimized because their effects are coupled.

Establishing the Response Metric and Sign Convention

Before any effect can be computed, the response must be reduced to a single comparable quantity per run. Typical choices are peak von Mises stress, first natural frequency, maximum deflection, mass, or a normalized performance index. Fix the extraction location and the sign convention explicitly: for example, "maximum principal stress at the fillet, tensile positive," or "tip deflection in the +Y direction." If two runs use different probe locations or averaging windows, the effects computed from them are meaningless. Record the metric definition alongside the run table so the analysis is reproducible.

For a two-level design, encode each factor with a low level (−1) and a high level (+1). The main effect of a factor is the difference between the average response at its high level and the average response at its low level:

Main effect of A:  E_A = mean(y | A = +1) − mean(y | A = −1)

For a 2^3 design with 8 runs:
  E_A = (y2 + y4 + y6 + y8)/4 − (y1 + y3 + y5 + y7)/4

The interaction effect between A and B is the difference of differences — how much the A-effect changes when B moves from low to high:

Interaction AB:  E_AB = mean(y | A=+1,B=+1) + mean(y | A=−1,B=−1)
                      − mean(y | A=+1,B=−1) − mean(y | A=−1,B=+1)

Equivalently, with contrast coefficients c_i ∈ {−1,+1}:
  E_AB = (1/4) · Σ c_i(A)·c_i(B)·y_i

This contrast formulation generalizes cleanly: every effect is a signed sum of run responses divided by the number of runs at each level combination. It is the same arithmetic used by Design of Experiments software, and implementing it by hand once is the best way to trust the tool output later.

Worked Example: A Three-Factor Stiffness Study

Consider a bracket studied with three factors: wall thickness t (2.0 / 3.0 mm), fillet radius r (3 / 6 mm), and rib height h (10 / 20 mm). The response is peak von Mises stress in MPa. The following values are illustrative and constructed for teaching, not measured results:

RuntrhPeak stress (MPa)
1−1−1−1212
2+1−1−1168
3−1+1−1196
4+1+1−1150
5−1−1+1204
6+1−1+1158
7−1+1+1188
8+1+1+1142

Applying the contrast formula: the main effect of thickness is (168+150+158+142)/4 − (212+196+204+188)/4 = 154.5 − 200.0 = −45.5 MPa. Increasing thickness from 2.0 to 3.0 mm reduces peak stress by about 45.5 MPa on average. The main effect of fillet radius is (196+150+188+142)/4 − (212+168+204+158)/4 = 169.0 − 185.5 = −16.5 MPa. The main effect of rib height is (204+158+188+142)/4 − (212+168+196+150)/4 = 173.0 − 181.5 = −8.5 MPa.

Now the interaction between thickness and fillet radius: (150 + 212) − (168 + 196) = 362 − 364 = −2, divided by 4 gives −0.5 MPa — essentially negligible. The thickness–rib interaction is (158 + 204) − (168 + 204) = 362 − 372 = −10, giving −2.5 MPa, also small. The fillet–rib interaction is (188 + 204) − (196 + 204) = 392 − 400 = −8, giving −2.0 MPa. The three-factor interaction is small as well.

A quick sanity check: the sum of squares of all seven effects, divided by 8, should equal the total corrected sum of squares of the eight responses. If it does not, a sign or index error has crept into the contrast table.

Reading the Results as Engineering Guidance

The magnitude ranking here — thickness dominates, radius is secondary, rib height is minor, interactions are near zero — has direct design consequences. Because the interactions are small, the factors behave nearly additively: the stress reduction from thickening the wall is roughly the same regardless of fillet radius, so the two can be tuned independently and the cheapest combination can be selected. If, by contrast, the thickness–radius interaction had been large and negative, thickening the wall would pay off much more at the large fillet than at the small one, and the design decision would have to be made jointly rather than factor by factor.

Sign matters as much as magnitude. A negative main effect on stress means the high level is beneficial; a positive effect would mean the high level is detrimental and the low level should be preferred. For responses such as first natural frequency, the desired direction is upward, so the interpretation flips. Always state the response and the desired direction before ranking effects.

Main effects and interaction effects from a 2^3 bracket study Left: bar chart of effect magnitudes for thickness, radius, rib height and their interactions. Right: interaction plot showing peak stress versus thickness at low and high fillet radius, with nearly parallel lines indicating negligible interaction. Effect magnitude on peak stress (MPa) 0 10 20 30 40 50 t (thickness) −45.5 r (fillet) −16.5 h (rib) −8.5 t·h −2.5 r·h −2.0 t·r −0.5 t·r·h ≈ 0 Interaction plot: stress vs. thickness t = 2.0 t = 3.0 140 160 180 200 215 Peak stress (MPa) r = 3 mm r = 6 mm Nearly parallel lines → t·r interaction ≈ −0.5 MPa (negligible). Thickness shifts both curves down by ~45 MPa → strong main effect.

Interpreting Interaction Plots and Avoiding Common Traps

The right-hand panel of the figure shows the interaction plot for thickness versus fillet radius. Each line connects the average stress at the two thickness levels for a fixed radius. When the lines are nearly parallel, the interaction is negligible and the main effects tell the whole story. When the lines cross or diverge sharply, the interaction dominates and reporting main effects alone is misleading — the effect of one factor depends on the level of the other.

Three practical traps deserve attention. First, scale dependence: effects are expressed in the units of the response, so a 45 MPa effect on stress and a 0.5 mm effect on deflection cannot be compared directly. Normalize by the response range or by the factor range when ranking across different responses. Second, nonlinearity: a two-level design captures only linear main effects and bilinear interactions. If the true response is curved — common in stress concentration versus fillet radius — the two-level estimate is an average slope and may hide a plateau. Add center points or a response surface design when curvature is suspected. Third, noise versus signal: a small effect may be indistinguishable from solver or mesh variability. Estimate run-to-run noise from repeated runs or a center-point replicate, and treat effects below roughly two to three times that noise as unresolved rather than real.

Do not rank effects by raw magnitude alone when the factors have different physical ranges. A factor varied over a wide range will usually show a larger effect than one varied over a narrow range, even if its sensitivity per unit is lower. Report effects per unit change, or state the level ranges explicitly alongside the effect values.

From Effects to the Next Simulation Campaign

The effect table is the input to the next decision. Factors with large main effects and negligible interactions can be optimized independently, often with a one-factor-at-a-time sweep or a simple analytical model. Factors with strong interactions must be studied jointly, typically with a response surface or a finer factorial grid in the interacting pair. Factors with effects below the noise floor can be fixed at their nominal values, freeing simulation budget for the variables that matter. In this example, thickness and fillet radius would receive the refinement budget, rib height would be fixed, and the near-zero interactions would justify treating the two active factors as separable — a conclusion that directly reduces the number of CAE runs required in the next iteration.