最后怎么和 Miner 法则结合的?

最后怎么和 Miner 法则结合的?

这是频域疲劳计算最核心的一步:把 Dirlik 得到的应力幅值分布,和 S-N 曲线、Miner 法则结合起来,算出总损伤和寿命。下面从逻辑、数学、代码、直观理解四个层面讲清楚。


一、Miner 法则的本质

Miner 线性累积损伤法则说:

如果材料在应力幅值 ( S_i ) 下能承受 ( N_i ) 次循环才失效,那么实际作用 ( n_i ) 次,就消耗了 ( n_i / N_i ) 的寿命。所有幅值的损伤线性叠加,当总和 ( D = 1 ) 时失效。

数学表达:

\[D = \sum_i \frac{n_i}{N_i} \]

连续化(幅值连续分布):

\[D = \int_0^\infty \frac{n(S)}{N(S)} dS \]

其中:

  • ( n(S) ):应力幅值 ( S ) 实际发生的循环次数
  • ( N(S) ):应力幅值 ( S ) 下材料能承受的循环次数(由 S-N 曲线给出)

关键问题:在频域里,我们不知道每个幅值 ( S ) 具体出现多少次,只知道它的概率分布 ( p(S) ) 和总循环数 ( \nu_p T )。


二、频域里怎么得到 ( n(S) )?

1. 总循环数

单位时间的循环数 = 峰值率 ( \nu_p )。时间 ( T ) 内的总循环数:

\[N_{\text{total}} = \nu_p \cdot T \]

2. 各幅值的循环数

幅值落在 ( [S, S+dS] ) 的比例是 ( p(S) dS ),所以:

\[n(S) dS = \underbrace{\nu_p T}_{\text{总循环数}} \cdot \underbrace{p(S) dS}_{\text{幅值比例}} \]

这就是 "总循环数按概率密度分配到各幅值" 的过程。

直观理解:

总循环数 νp·T
     │
     ├── 幅值 5 MPa 占 p(5)dS  →  n(5) = νp·T·p(5)dS
     ├── 幅值 10 MPa 占 p(10)dS →  n(10) = νp·T·p(10)dS
     ├── 幅值 20 MPa 占 p(20)dS →  n(20) = νp·T·p(20)dS
     └── ...

三、代入 Miner 法则

1. 每个幅值贡献的损伤

\[\frac{n(S) dS}{N(S)} = \frac{\nu_p T \, p(S) dS}{N(S)} \]

2. 总损伤(积分)

\[D = \int_0^\infty \frac{\nu_p T \, p(S)}{N(S)} dS = \nu_p T \int_0^\infty \frac{p(S)}{N(S)} dS \]

3. 代入 S-N 曲线

S-N 曲线:

\[N(S) = C S^{-k} \quad \Longrightarrow \quad \frac{1}{N(S)} = \frac{S^k}{C} \]

代入:

\[\boxed{D = \frac{\nu_p T}{C} \int_0^\infty p(S) S^k \, dS} \]

4. 疲劳寿命

当 ( D = 1 ) 时失效:

\[\boxed{T_f = \frac{T}{D}} \]


四、物理图像:Miner 法则的"记账"

把疲劳计算想象成寿命预算的消耗:

概念 类比
S-N 曲线 ( N(S) ) 每个幅值对应的"寿命预算"(能承受多少次)
循环数 ( n(S) ) 每个幅值的"消费次数"
损伤 ( n(S)/N(S) ) 每个幅值消耗了预算的比例
总损伤 ( D ) 所有幅值消耗的预算总和
( D = 1 ) 预算花完,失效
( T_f = T/D ) 按当前消耗速率,预算能撑多久

具体例子:

假设总循环 ( \nu_p T = 1000 ) 次,Dirlik 分布给出:

幅值 ( S ) 占比 ( p(S)dS ) 循环数 ( n(S) ) ( N(S) = C S^{-k} ) 损伤 ( n/N )
5 MPa 0.5 500 ( 10^9 ) ( 5\times 10^{-7} )
10 MPa 0.3 300 ( 10^6 ) ( 3\times 10^{-4} )
20 MPa 0.2 200 ( 1.25\times 10^3 ) ( 0.16 )
合计 1.0 1000 — ( D \approx 0.16 )

结论:( D = 0.16 ),说明寿命还剩 ( 1/0.16 \approx 6.25 ) 倍,即 ( T_f = T/0.16 = 6.25T )。

注意:幅值越大,虽然循环次数少,但对损伤的贡献可能压倒性(因为 ( N(S) ) 随 ( S ) 急剧下降)。


五、代码实现对应

回顾代码中的关键几行:

nu_p = np.sqrt(m4 / m2)                            # 峰值率
pdf_vals = dirlik_pdf(S_vals, m0, D1, ...)         # p(S)
S_eq_vals = S_vals / (1 - sigma_m / sigma_u)       # Goodman 修正
integral = trapz(pdf_vals * S_eq_vals**k / C, S_vals)   # ∫ p(S) S^k / C dS
D = nu_p * T * integral                            # Miner 总损伤
T_f = T / D                                        # 疲劳寿命

逐行对应:

代码 数学含义
nu_p ( \nu_p ):单位时间循环数
pdf_vals ( p(S) ):幅值概率密度
S_eq_vals ( S_{\text{eq}} ):Goodman 修正后的等效幅值
S_eq_vals**k / C ( \dfrac{1}{N(S)} = \dfrac{S^k}{C} )
trapz(...) ( \displaystyle \int_0^\infty \frac{p(S)}{N(S)} dS )
D = nu_p * T * integral ( D = \nu_p T \displaystyle\int \frac{p(S)}{N(S)} dS )
T_f = T / D ( T_f = T/D )

六、完整链条回顾

应力 PSD S_σ(f)
      │
      ├─► 谱矩 m0, m2, m4
      │       │
      │       ├─► νp = √(m4/m2)         →  每秒循环次数
      │       │
      │       └─► Dirlik 参数 D1,D2,D3,R,Q
      │               │
      │               └─► p(S)             →  各幅值概率分布
      │
      ▼
总循环数 νp · T
      │
      ▼
按 p(S) 分配到各幅值: n(S) = νp·T·p(S) dS
      │
      ▼
结合 S-N 曲线 N(S) = C S^{-k}:
      │
      ▼
Miner 损伤积分: D = ∫ n(S)/N(S) dS = νp T ∫ p(S)/N(S) dS
      │
      ▼
疲劳寿命: T_f = T / D

七、关键理解点

1. 为什么要用概率密度?

因为频域法不知道每个幅值的具体时间序列,只知道它的统计分布。所以用 ( p(S) ) 代替具体的循环计数。

2. 为什么积分能代替求和?

Miner 法则原本是离散求和 ( D = \sum n_i / N_i )。当幅值连续变化时,求和变成积分:

\[\sum_i \frac{n_i}{N_i} \quad \longrightarrow \quad \int_0^\infty \frac{n(S)}{N(S)} dS \]

3. 为什么是 ( \nu_p ) 而不是 ( \nu_0 )?

因为疲劳循环由应力峰值决定,每个峰对应一次循环,所以用峰值率 ( \nu_p )。窄带时 ( \nu_p \approx \nu_0 ),宽带时 ( \nu_p > \nu_0 )。

4. Goodman 修正在做什么?

S-N 曲线通常基于对称循环(( R = -1 ))。如果实际有平均应力 ( \sigma_m ),需要把实际幅值 ( S ) 等效为对称循环下的幅值 ( S_{\text{eq}} ):

\[S_{\text{eq}} = \frac{S}{1 - \sigma_m/\sigma_u} \]

然后用 ( S_{\text{eq}} ) 查 S-N 曲线。


八、一句话总结

Miner 法则把"总循环数 ( \nu_p T )"按概率密度 ( p(S) ) 分配到各个应力幅值,得到每个幅值的循环数 ( n(S) = \nu_p T , p(S) dS );再用 S-N 曲线算出每个幅值能承受的循环数 ( N(S) );两者相除得到该幅值的损伤 ( n/N );所有幅值积分求和得到总损伤 ( D ),最后 ( T_f = T/D ) 就是疲劳寿命。

posted @ 2026-10-09 09:33  redufa  阅读(11)  评论(0)    收藏  举报