本程序用于准确计算牙科种植体螺钉的预紧力; 通过使用 拧紧扭矩 和 拆卸扭矩 测量值、引入了一种全新的预紧力确定方法、与传统方法相比、显著降低了不确定性、提高了种植体种植稳定度。
本项目实现了来自论文《一种实现牙科种植体系统预紧力的新方法》(作者:Chandur P.K. Wadhwani 和 Thomas D. Hess)中的预紧力计算公式。
主要功能包括:
- 精确的预紧力计算:使用WH模型进行精确的预紧力确定
- 最终扭矩计算:确定达到期望预紧力所需的扭矩
- 对比分析:比较WH方法与传统方法
- 风险评估:评估安全系数和风险等级
- 种植体系统数据库:支持主要种植体系统及其规格
WH模型通过测量拧紧扭矩和拆卸扭矩来提供更准确的预紧力计算方法。实施的关键方程如下:
P = (Tt - Tr) * π / p
其中:
- P: 预紧力 (N)
- Tt: 拧紧扭矩 (N-cm)
- Tr: 拆卸扭矩 (N-cm)
- p: 螺纹螺距 (cm)
- π: 圆周率 (3.14159...)
Ti = (p * Tt * P_desired) / (π * (Tt - Tr))
其中:
- Ti: 最终拧紧扭矩 (N-cm)
- P_desired: 期望预紧力 (N)
src/
├── app/
│ ├── app.py # 主Streamlit应用程序
│ └── components/ # UI组件
│ ├── welcome.py # 欢迎页面
│ ├── preload_calculator.py # 预紧力计算器组件
│ ├── final_torque_calculator.py # 最终扭矩计算器组件
│ ├── compare_methods.py # 方法对比组件
│ ├── implant_systems_analysis.py # 种植体系统分析组件
│ └── generate_report.py # PDF报告生成
├── src/
│ ├── core/
│ │ ├── preload.py # 核心预紧力计算模块
│ │ ├── torque.py # 扭矩和应力计算
│ │ └── example.py # 演示用法的示例脚本
│ └── __init__.py
├── tests/
│ ├── test_preload.py # 预紧力模块测试套件
│ ├── test_torque.py # 扭矩计算测试
│ └── test_implant_systems.py # 种植体系统计算测试
├── data/
│ └── implant_systems/ # 种植体系统规格
│ └── sample_systems.json # 种植体系统数据库
└── README.md
from src.core.preload import calculate_preload
# 示例值
tightening_torque = 35 # N-cm
removal_torque = 29.5 # N-cm
thread_pitch = 0.04 # cm
# 计算预紧力
preload = calculate_preload(tightening_torque, removal_torque, thread_pitch)
print(f"计算得到的预紧力: {preload:.2f} N")from src.core.preload import calculate_preload, calculate_final_torque
# 示例值
initial_torque = 25 # N-cm
removal_torque = 21.4 # N-cm
thread_pitch = 0.04 # cm
desired_preload = 400 # N
# 首先计算初始预紧力
initial_preload = calculate_preload(initial_torque, removal_torque, thread_pitch)
# 然后计算所需最终扭矩
final_torque = calculate_final_torque(
initial_torque, removal_torque, initial_preload, desired_preload, thread_pitch
)
print(f"所需最终扭矩: {final_torque:.2f} N-cm")该项目包含一个Streamlit Web应用程序,为预紧力计算公式提供了易于使用的界面。
- 预紧力计算器:使用WH方法计算预紧力
- 最终扭矩计算器:确定达到期望预紧力所需的扭矩
- 方法对比:比较WH方法与传统方法
- 种植体系统分析:分析不同的种植体系统
- PDF报告生成:生成计算结果的综合PDF报告
要运行Streamlit应用程序:
# 安装依赖
pip install -r requirements.txt
# 运行应用程序
streamlit run app/app.py- 提高准确性:WH方法将不确定性从约±35%降低到±9%,相比传统方法
- 科学基础:基于严格的科学研究,并经过实验验证
- 实际应用:可直接应用于临床环境,以提高种植体稳定性
该工具包使用主要种植体系统的规格进行了测试,包括:
- Nobel Biocare (Branemark, Replace)
- Straumann (BoneLevel, TissueLevel)
- Dentsply Astra (OsseoSpeed)
- Camlog (Screw_Line)
跨种植体系统的分析显示了传统方法与WH预紧力计算之间的显著差异:
| 种植体系统 | 传统预紧力 | W-H预紧力 | 不确定性降低 |
|---|---|---|---|
| Nobel Biocare Branemark | 583.33 N (±35%) | 412.33 N (±9%) | 81.8% |
| Nobel Biocare Replace | 875.00 N (±35%) | 412.33 N (±9%) | 87.9% |
| Straumann BoneLevel | 994.32 N (±35%) | 471.24 N (±9%) | 87.8% |
| Straumann TissueLevel | 925.93 N (±35%) | 471.24 N (±9%) | 86.9% |
| Dentsply Astra OsseoSpeed | 694.44 N (±35%) | 336.60 N (±9%) | 87.5% |
| Camlog Screw_Line | 560.22 N (±35%) | 269.28 N (±9%) | 87.6% |
基于传统预紧力估算的不同种植体系统安全系数评估:
| 种植体系统 | 应力 (MPa) | 安全系数 | 风险等级 |
|---|---|---|---|
| Nobel Biocare Branemark | 281.36 | 3.02 | 低 |
| Nobel Biocare Replace | 422.05 | 2.25 | 中等 |
| Straumann BoneLevel | 782.91 | 1.21 | 高 |
| Straumann TissueLevel | 544.36 | 1.75 | 中等 |
| Dentsply Astra OsseoSpeed | 408.27 | 2.33 | 中等 |
| Camlog Screw_Line | 379.14 | 2.51 | 中等 |
此分析强调了准确预紧力计算的重要性,因为较高的预紧力值可能导致过度应力和潜在的种植体失效。
# 运行所有测试
python -m unittest discover -s tests
# 运行特定测试文件
python -m unittest tests/test_preload.py
# 运行种植体系统测试
python -m unittest tests/test_implant_systems.py
示例脚本演示了:
- WH方法:计算预紧力、最终扭矩、自松动和初级锁定
- 传统方法:估算预紧力、应力和安全系数
- 对比:展示WH方法的改进准确性
要运行示例脚本:
python src/core/example.py- 基于Web的UI,便于计算
- 用于临床使用的移动应用程序
- 数据库集成,用于跟踪种植体指标
- 机器学习,用于预测预紧力分析
- 扩展种植体系统数据库,增加更多制造商
该项目根据MIT许可证授权 - 有关详细信息,请参见LICENSE文件。
- Dr. Chandur P.K. Wadhwani 和 Dr. Thomas D. Hess 的开创性研究
- 牙科种植体社区对循证方法的支持
- 种植体制造商提供的技术规格