Releases: Rro-123/rsf-friction
Release list
v1.4.0
v1.4.0
✨ 新增:时间依赖接口
- 'RSF.frictionOverTime(材质, N, 速度历史, opts)' — 返回 μ(t)、θ(t)、F(t) 演化序列,体现速度阶跃直接效应、静止愈合、滑动历史演化。
- computeFriction 新增 opts.holdTime — RSF 模式传入静止保持时间 Δt,按老化律(θ = θ₀ + Δt)返回静止愈合后的静摩擦 μ_s(θ₀+Δt)。
📚 文档与目录
- 'CHANGELOG.md' 归入 docs/;根目录仅留 npm 必需入口。
- 新增 docs/README.md 文档索引;重构 README / docs/guide.md / docs/materials-table.md,消除跨文档重复。
- 修正 'healingCurve' API 误标(其为 RateStateFriction 方法,非顶层函数)。
⚙️ 安装
'''bash
npm install rsf-friction@1.4.0
'''
v1.3.0
变更(键名规则统一,破坏性)
材质键名统一为「接触对」规则:
- 自配对(同种材料自接触,如 钢-钢、花岗岩-花岗岩、铜-铜)用单名键:
steel、granite、copper - 异材质用「主材质_副材质」成对键名:
aluminum_steel、pom_steel - 特例:
stainless_steel(不锈钢-不锈钢)单名中的下划线属材质名本身(stainless steel),非成对连接符
共重命名 23 条:aluminum→aluminum_steel、copper→铜-铜(原铜-钢改 copper_steel)、brass→brass_steel、bronze→bronze_steel、nickel→nickel_steel、lead→lead_steel、zinc→zinc_steel、tin→tin_steel、tungsten→tungsten_steel、rubber→rubber_concrete、rubber_wet→rubber_concrete_wet、ptfe→PTFE-PTFE(原 PTFE-钢改 ptfe_steel)、polyethylene→pe_steel、pvc_pvc→pvc、ptfe_ptfe→ptfe、ice→ice_steel、ceramic→ceramic_steel、asphalt→tire_asphalt、brick→砖-砖(原砖-木材改 brick_wood)、cork→cork_steel、felt→felt_steel。
⚠️ 破坏性变更
computeFriction / RSF.materials 的旧键名含义已调整或改写(如 copper、aluminum、ptfe、brick、rubber、ice 等),请按 docs/materials-table.md「怎么读这张表」的键名规则迁移到新键名。
文档
docs/materials-table.md、README.md、docs/guide.md 均补充键名规则说明;materials.json 键名同步更新(仍 71 种接触对,14 岩石 + 57 工程材料)。
安装
- npm:
npm install rsf-friction - CDN:
https://cdn.jsdelivr.net/npm/rsf-friction@1.3.0/rsf.js - GitHub:下载
rsf.js直接引入
v1.2.3
新增(内置材质表 49 → 71 种接触对)
- 金属 2 种:铜-铜(1.00/1.00)、铸铁-钢(0.23/0.40)
- 聚合物 13 种:聚甲醛(POM)-钢、聚氯乙烯(PVC)-钢、PVC 自配对、聚碳酸酯(PC)-钢、尼龙-钢、有机玻璃(PMMA)-钢、聚醚醚酮(PEEK)-钢、PTFE 自配对、酚醛树脂层压材-青铜、橡胶-钢、PET-钢、PVDF-钢、FEP-钢
- 其他非金属 7 种:混凝土-钢、皮革-钢、玻璃-钢、木材-钢、砖-砖、石墨-钢、皮革-木材
数据经《机械设计手册》/ Engineering ToolBox / GORTEF / Super Civil CD / Machinery's Handbook 等网络查证与交叉核对,每条均为明确接触对 + 干/湿条件。
变更
zinc基准改为「锌-钢(干)」:数据源核实为 zinc-on-steel,与其它金属 X-钢 口径统一- 聚合物补回条目改用成对语义键名(如
pom_steel、pvc_pvc) docs/materials-table.md按材质中心索引重建(每个材质一个章节 + 单对速查表),数值统一两位小数,与rsf.js完全一致
数据口径
仅收录 μ 与 μ_s 双值完整、配对明确的干摩擦工程参考值;数值反常(铝-铝 动>静)、低可靠(不锈钢-钢 / 钛-钢 / 碳化钨-碳化钨 / 硬质合金-钢)、缺单值(PMMA-PMMA / PS-钢 / PP-钢 / PE-PE 等)或缺 RSF 参数的岩石新条目暂不收录(不编造)。
安装
- npm:
npm install rsf-friction - CDN:
https://cdn.jsdelivr.net/npm/rsf-friction@1.2.3/rsf.js - GitHub:下载
rsf.js直接引入
v1.2.2
新增
- npm 发布支持:
package.json补充exports(含materials/*.json子路径)、files白名单、sideEffects、engines、prepublishOnly(发布前自动跑测试)、homepage、bugs等字段。 - CHANGELOG.md:新增版本记录文件。
变更(结构重组)
- 文档集中到
docs/:使用指南.md→docs/guide.md、材质参数表.md→docs/materials-table.md(文件名英文化)。 - 演示页独立到
demo/:index.html→demo/index.html;根目录index.html改为 GitHub Pages 跳转入口(旧链接rro-123.github.io/rsf-friction/不失效)。 - 材质数据目录
materials/仅保留机器可读的materials.json。 - README 安装方式重构:npm 安装(
npm install rsf-friction)为主,CDN 链接切换为 npm CDN(jsDelivr / unpkg)。
修复
- 演示页与文档中所有旧路径引用随目录迁移同步更新。
安装
npm install rsf-frictionv1.2.1
演示页(index.html)改进补丁版本。
新增
- 四个面板均加入内置材质下拉框(62 种材质,岩石类自动填充 RSF 参数、只读)
- 面板 4 静态愈合支持「对数时间轴 / 线性时间轴」切换
- 图表横轴刻度整齐化(对数轴 10 的幂、线性轴 nice 等差刻度)
- 图表刻度按数据范围动态显示小数位
- 面板 1 的 μ_ss(V) 曲线配套数据表格
修复
- 无障碍:31 个表单 label 补充 for 关联
- 错误输入校验:非法/非正数值给出明确错误提示
- 选择材质后相关参数设为只读;工程材料显示「—」并明确显示库仑参数
- 表格取样值整齐排列(等距时间点 / 10 的幂)
v1.2.0
新增
- 内置材质参数表扩充至 62 种(14 种岩石含 RSF 参数 + 48 种工程材料库仑参数)
- 材质参数表拆分为独立文件:materials/materials.json(机器可读)+ materials/材质参数表.md(可读文档)
- rsf.js 的 materials 新增 category 字段,index.d.ts 新增 MaterialCategory 类型
- 使用指南新增「如何修改 / 新增材质」三种方式说明
- 新增内置材质表完整性测试(≥62 种且逐一可计算)
改进
- 修正 README 的 CDN 链接版本号
- 补充 rsf.js 中 materials 的 category 字段注释
数据来源说明
库仑 μ/μ_s 参考 Serway & Jewett《Physics for Scientists and Engineers》、Engineering ToolBox、机械设计手册;岩石 RSF 参数为 Dieterich (1979) / Ruina (1983) / Marone (1998) 等文献的典型量级(非特定样品标定值,正式研究请以实测为准)。
v1.1.0
新增自动化测试与 TypeScript 类型定义。
新增功能
- 自动化测试:node:test 测试套件(16 项,npm test),覆盖本构律解析解、速度阶跃直接效应、静态愈合、computeFriction、稳定性判据、粘滑仿真
- TypeScript 类型定义:index.d.ts,完整类型化全部导出(类、函数、接口、常量)
- package.json 新增 types 入口与 test 脚本
- README 补充 TypeScript 用法与测试说明
当前功能
- RSF 本构律(Dieterich 1979 / Ruina 1983),四种状态演化律
- 三种求解模型:RateStateFriction / SpringBlockSlider / StickSlipSlider
- 三变量便捷接口 computeFriction(材质, 法向力, 速度)
- 内置 11 种材质参数表
- 自适应 Cash-Karp RK45 求解器(与解析解逐位吻合)
- 复现粘滑、速度阶跃直接效应、静态对数愈合
- 零依赖 Canvas 可视化演示页
- TypeScript 类型定义
- 自动化测试(npm test)
许可证
MIT
v1.0.0
速率-状态摩擦定律(Rate-and-State Friction, RSF)计算库的首个正式版本。
功能特性
- RSF 本构律(Dieterich 1979 / Ruina 1983),四种状态演化律(Dieterich / Ruina / PRZ / Nagata)
- 三种求解模型:RateStateFriction(本构)、SpringBlockSlider(准静态)、StickSlipSlider(准动力粘滑)
- 三变量便捷接口 computeFriction(材质, 法向力, 速度)
- 内置 11 种材质参数表(岩石类含 RSF 参数,工程类含库仑 μ/μ_s)
- 自适应 Cash-Karp RK45 求解器,与解析解逐位吻合
- 复现粘滑、速度阶跃直接效应、静态对数愈合
- 零依赖 Canvas 可视化演示页
许可证
MIT