# 主梁轴力积分与部分地锚模型

独立计算模块为 `axial-mechanics.js`，核验为 `axial-mechanics.test.mjs`。它不改变既有梁挠度、索力优化或双塔三跨模块，也不把后者的支反力假定移植到本模型。这里采用索力连续分布的理想模型：均布竖向荷载全部分配给斜索，主梁轴力按水平分力及指定边界积分；不求梁弯矩、位移、索垂度及塔梁索变形协调。

## 坐标与单位

- L 是两塔之间的主跨长度，a=L/2 为半主跨；x 自左塔朝跨中，0≤x≤a。
- h 是桥面以上的最高索锚高度。fan 全部主跨索锚于塔顶；harp 索平行，塔上锚点高度 z(x)=hx/a。
- 重度 gamma 的单位为 kN/m³，等效材料截面积 area 为 m²，附加线荷载 q0 为 kN/m；q=gamma×area+q0，单位 kN/m。也可直接传入 q，此时以 q 覆盖重度换算值。
- N 以受压为正，负值表示受拉。文献常用拉正，引用其公式时必须反号。
- dH 是微段索水平力，单位 kN；g=dH/dx 是水平力密度，单位 kN/m。g 不等于某根有限间距索的 H。

默认 L=400 m、h=80 m、gamma=25 kN/m³、area=8 m²、q0=0，因此 q=200 kN/m。默认截面 x=a/2=100 m。参数是本节独立教学算例，不能与 320 m 双塔辅助墩模块混用。

## 从单索到积分

微段 dx 的竖向荷载 dV=q dx；沿索方向的拉力为 dT=dV/sinθ，因此：

\[
dH=dT\cos\theta=q\cot\theta\,dx,\qquad
g(x)=q\cot\theta(x),\qquad
\frac{dN}{dx}=-g(x).
\]

若跨中压轴力为 Nc，则一般积分解为：

\[
N(x)=N_c+\int_x^a g(s)\,ds.
\]

**积分只能确定轴力变化量，常量 Nc 来自全桥边界与传力路径。**本交互的积分模式明确选取 Nc=0。左右对称不意味着跨中轴力必然为零：对称可以规定跨中轴向位移，但不能由此推出轴向内力为零。纵向约束、梁塔水平连接、端锚索、预应力或温度变形等都可能改变 Nc。实际桥梁须结合平衡与变形协调求解，不能把本基准扩展为“所有双塔自锚斜拉桥跨中 N=0”。

fan：cotθ=x/h，故

\[
g_f(x)=\frac{qx}{h},\qquad
N_f(x)=\frac{q(a^2-x^2)}{2h},\qquad
N_{f,max}=\frac{qL^2}{8h}.
\]

harp：z(x)=hx/a，故 cotθ=a/h，

\[
g_h(x)=\frac{qa}{h},\qquad
N_h(x)=\frac{qa(a-x)}{h},\qquad
N_{h,max}=\frac{qL^2}{4h}.
\]

harp 在 x=0 的 g 是连续极限值，不代表在塔脚设置长度为零的真实索。相同 L、h、q、Nc=0 时，harp 的塔位压轴力为 fan 的两倍；这是本几何与荷载分配假定下的比较，不是对所有实际竖琴形与扇形桥的比例定律。

默认 fan 塔位 N=50000 kN，harp 塔位 N=100000 kN。x=100 m 时分别为 37500、50000 kN；此处 g 分别为 250、500 kN/m。

## 有明确端锚索的地锚对照

本模式仅采用 fan，左右边跨均长 b，0<b≤a。全桥长度 L+2b，取全局坐标 X 自左边跨外端开始，则塔位为 X=b 与 b+L。所有普通斜索仍由梁锚点连接各自塔顶，按同一 q 分配竖向荷载。

每塔主跨普通斜索的水平合力为 Hmain=qa²/(2h)，边跨普通斜索合力为 Hside=qb²/(2h)。两者之差需要一根或一组等效端锚索平衡：

\[
H_A=H_{main}-H_{side}=\frac{q(a^2-b^2)}{2h}.
\]

自锚对照中，端锚索由塔顶连接边跨梁端，把 HA 作用于梁端。此时梁端紧邻内侧的压轴力是 HA，塔位压轴力为 HA+Hside=Hmain，主跨轴力就是前述 Nc=0 的 Nf。不能在图上删掉端锚索，却继续套用这一轴力图。

部分地锚中，同一 HA 的端锚索转锚于独立地基，梁的两个外端纵向自由。假定竖向支座不提供纵向约束，梁塔位置没有额外的集中纵向力，则外端 N=0，边跨普通索只在塔位累计 Hside。因此：

\[
N_{partial}(x)=\frac{q(b^2-x^2)}{2h}
=N_f(x)-H_A.
\]

这保持主跨 g(x) 不变，将整条轴力曲线下移 HA，而不是把曲线乘上减小系数。塔附近仍受压，x=b 处过零，b<x≤a 受拉；跨中 N=−HA。全桥边跨也满足相同常量差，但自锚外端内侧有 HA 的端锚集中力跳跃，地锚外端没有该梁端力。图中应同时画出端锚索的目的地和荷载方向。

端锚示意点与桥面同高，距塔的水平距离为 b，故其角度 θA=atan2(h,b)，竖向分量：

\[
V_A=H_A\frac{h}{b}.
\]

地锚基础承受索朝塔的水平拉力 HA 与向上的拔力 VA；索在塔顶施加向下的 VA。自锚时 VA 作用于梁端，必须由端部竖向约束及相关构件另行平衡，不能假定只承压支座自然足够。本模块返回这些分量，但不解梁端抗拔、地基或锚碇设计。若地锚实际低于桥面，角度和 VA 应按真实高差重算，不能沿用这里的 VA。

默认 b=100 m 时，HA=37500 kN、VA=30000 kN，地锚模式塔位 N=12500 kN，跨中 N=−37500 kN。每塔主跨普通索 H=50000 kN、边跨普通索 H=12500 kN、端锚索 H=37500 kN，水平合力为零。每塔全部索的竖向荷载为 q(a+b)+VA=90000 kN。这里只列索传来的塔荷载，不包含塔自重等其他荷载。

当 b=a 时 HA=0，两种方案重合。b=0 会使示意端锚索的 VA 无定义，故接口拒绝，不把它当可实现的零边跨结构。

## API

```js
import { AXIAL_DEFAULTS, analyzeAxialBridge } from './axial-mechanics.js';

const fan = analyzeAxialBridge();
const harp = analyzeAxialBridge({ type: 'harp', sectionRatio: 0.75 });
const partial = analyzeAxialBridge({
  type: 'fan', mode: 'anchorage', sideRatio: 0.5,
});
```

默认参数：`{L:400,h:80,gamma:25,area:8,q0:0,sectionRatio:0.5,type:'fan',mode:'integral',sideRatio:0.5,samples:201}`。sectionRatio=x/a，sideRatio=b/a；type 为 fan/harp，mode 为 integral/anchorage。anchorage 只允许 fan。L、h 必须正；gamma、area、q0、q 非负；sectionRatio∈[0,1]；sideRatio∈(0,1]。

返回值：

- q、a、b、x；qSource 标明由重度换算还是直接输入。
- densityCurve、axialCurve、fanCurve、harpCurve、selfCurve、partialCurve 均为 `{x,value}` 数组，x 是塔到跨中的局部坐标。densityCurve.value 为 g，其余为压正轴力。harp 的 partialCurve 为 null。
- current=`{x,density,N}`；Nmid、Ntower；zeroX 是半主跨过零坐标。q=0 时所有截面为零，zeroEverywhere=true、zeroX=null。
- fanMax、harpMax 始终表示同参数、Nc=0 的索形基准塔位值，不被地锚模式替换。
- groundAnchorH 是当前模式传地基的 HA，积分模式为零。
- fullBridge（仅 fan）包含全局 x、self、partial、active 数组以及 towerXs、midspanX、totalLength。active 随模式选择；数组增补塔位、跨中和零点，不保证严格等间距。
- anchors（仅 fan）包含不随模式变化的 H、V、angle、length，以及当前 selfDeckHorizontal、groundHorizontal、selfDeckVertical、groundUplift。角度单位为弧度；各分量为大小，方向由左右侧及本文约定给出。
- towerBalance（仅 fan）包含 mainHorizontal、sideHorizontal、anchorHorizontal、residual，以及 mainVertical、sideVertical、anchorVertical、verticalDownward。residual=Hmain−Hside−HA。

## 独立验证与来源

运行 `node --test axial-mechanics.test.mjs`。2026-10-22 实测 8 项全部通过。核心交叉核验把区间分成 10000 段，在每段中点根据真实索几何计算 θ，令 dV=qΔx，先算 T=dV/sinθ，再累加 Tcosθ。它不调用积分闭式公式，分别核验 fan、harp 的多个截面以及主跨与边跨水平合力之差。其余测试核验全桥边界、端锚分量和塔平衡、dN/dx=−g、qL²/h 缩放、重度换算、零荷载与参数约束。

fan/harp 几何和按索分担长度进行分力分解可参照普林斯顿大学 [Structural Studies: Cable Stayed Bridges](https://courses.edx.org/assets/courseware/v1/7c46462fb7455ee6e960b1188f229b37/asset-v1%3APrincetonX%2BCEE262.1x%2B1T2019%2Btype%40asset%2Bblock/Br-CableStayed_v31Jan19__1_.pdf)。部分地锚外端零轴力边界及 fan 积分可参照 [Structural Effects of Partially Earth-anchored Cable System on Medium-Span Cable-stayed Bridges](https://www.kssc.or.kr/wonmun/KSSC_3_2008_8_3_225%28C%29.pdf) 和 [Structural Behavior of a Long-Span Partially Earth-Anchored Cable-Stayed Bridge during Installation of a Key Segment by Thermal Prestressing](https://www.mdpi.com/2076-3417/6/8/231)。本模块的统一压正符号、显式等效端锚对照与 API 为本教材推导实现。
