[Bug] “在我电脑上是好的!”:系统环境差异引发的Bug排查记

实干、实践、积累、思考、创新! 写了个程序,在多台电脑上测试时,发现有一台始终运行异常。 具体表现是图形渲染失败,数据提取也不完整——明明其他电脑能正常提取的内容,在这台上就是出不来。 一开始怀疑是文件拷贝遗漏,但反复确认后,程序相关的 DLL 都已齐备。那问题究竟出在哪里? 排查一阵后,我开始猜测是运行环境差异导致的。程序里可能调用了一些系统库函数,或是某些依赖库对操作系统版本比较敏感。于是,我试着在那台电脑上执行了 Windows Update,将其升级到最新版本,并做了一轮系统修复。 更新完成后重新运行程序——果然,一切恢复正常了。 总结下来,还是编译环境与运行环境不一致引发的问题。 关于我们 结构动力学与抗震 | 复杂结构计算分析 | 地铁减振控制 | 人行及风致振动控制 | 程序开发与软件定制 | 有限元仿真 | 有限元求解器开发 | 固体力学 https://www.jdcui.com 合作及技术咨询 COOPERATION …

[数学] 散度的物理意义和散度定理 [The Physical Meaning of Divergence and the Divergence Theorem]

实干、实践、积累、思考、创新! 最近看数学书,整理一下散度的知识点,方便记忆。下面以直角坐标系 (x, y, z) 中的向量场为例进行阐述。 第一:散度的物理意义 散度 (Divergence)是描述向量场 (Vector Field) 源强度 (Source Strength) 的标量函数。在物理上,它可以被精确定义为单位体积的通量(Flux per Unit Volume)。 考虑一个向量场 \(\vec{F}(x, y, z) = P\mathbf{i} + Q\mathbf{j} + R\mathbf{k},其中 P, Q, …

[科研][工具][软件] BBCA v2025: Extract Backbone Curve from Hysteretic Loop [从滞回曲线提取骨架曲线]

实干、实践、积累、思考、创新。 程序图标 ( Program Icon ) 程序介绍 ( Program Introduction) 基本目标是:从滞回曲线提取骨架曲线,方便做试验的小伙伴. Extract Backbone Curve from Hysteretic Loop. 历史版本: BBCA v2019: [科研][工具][软件] BBCA v2019: 滞回环骨架曲线提取工具 [BBCA: Extract Backbone Curve from Hysteretic Loop] BBCA …

[振动控制][编程] VTC-DAP: Vehicle-Track Nonlinear Coupled Dynamics Analysis Program [车辆-轨道非线性耦合动力分析程序]

实干、实践、积累、思考、创新。 随后更新……           相关博文( Related Topics) [01]. [软件][工具] SPECTR: A program for Response Spectra Analysis [SPECTR地震波反应谱计算程序 v1.0] [02]. [地震波][软件]GMS: Ground Motion Selection System [强震记录选取系统] [03]. GML: Ground Motion Library …

[论文][Paper] 深圳某400m双塔连体结构TLD风振控制可行性研究 (Feasibility investigation of wind-induced vibration control using TLD for a 400-meter twin-tower connected structure in Shenzhen)

The structural system of a 400m twin-tower linked project in Shenzhen features a frame-core tube configuration with outriggers and belt truss strengthening story, comprising eastern and western towers connected by connective structure. Due to complex architectural geometry, high wind loads, and unique site-specific wind conditions, under 10-year return period wind loads from the southeastern direction, the towers exhibit significant dynamic responses. Wind-induced accelerations at the tower tops substantially exceed code limits, resulting in occupant comfort deficiencies. To address this, tuned liquid dampers (TLDs) were proposed for wind vibration control. Spectrum analysis was employed to identify governing vibration modes of structural wind-induced responses. Time-history analysis was conducted to evaluate wind-induced dynamic responses of the TLDs-equipped structure, with parametric sensitivity analysis subsequently optimizing TLD design parameters. The results demonstrate that the structural base shear and the wind-induced acceleration spectrum at the eastern tower top exhibit a single-peak characteristic, primarily governed by the first translational mode of the eastern tower. The wind-induced acceleration spectrum at the top of the western tower shows a double-peak characteristic, influenced concurrently by the first translational modes of both the eastern and western towers. TLDs installed atop the eastern tower significantly reduce base shear and wind-induced accelerations at both tower tops. However, TLDs at the top of the western tower only effectively mitigate accelerations perpendicular to the connective structure but show no significant control effect on accelerations along the connective structure direction, the accelerations at the top of the eastern tower, or the structural base shear. Furthermore, when TLDs are installed simultaneously at the tops of both towers, wind-induced accelerations are effectively controlled, ensuring compliance with code-specified limits.

[参会] 2025青年工程师建筑结构创新设计研讨

实干、实践、积累、思考、创新! 9月12日,我参加了《2025年度青年工程师建筑结构创新设计研讨会》。本次会议的指导单位为广东省土木建筑学会结构专委会,会议主要由广州市华阳国际工程设计有限公司主办,广东精特建设工程有限公司与安徽吾兴新材料有限公司协办。会议汇聚了众多专家前辈和行业同仁,并有多位优秀青年结构工程师带来精彩的主题报告。 我在会上分享了题为《一种细腰弱连接楼盖地震作用效应计算的新方法》的报告,内容主要总结了我们团队近年来在细腰弱连接结构抗震设计方法及工程应用方面的研究成果。报告重点探讨了该类结构的受力特性,并提出了一种名为“弱侧地震力法”的新计算方法。该方法以振型分解反应谱法所确定的地震作用为基础,能够有效激发细腰楼盖两侧结构的相对错动变形,弥补现有分析方法的不足,可视为一种预设最不利地震工况的实用设计手段。   本次会议报告内容详实、见解独到,专家点评切中要害、富有洞见,会场交流互动频繁,讨论气氛热烈。会后还与多位同行朋友继续深入探讨,收获颇丰。此次会议不仅拓宽了我的视野,也为我后续的研究提供了宝贵思路。 关于我们 超限复杂高层结构设计 |  美标欧标结构设计| 软件定制开发| 环评减振控制 |人行及风致振动控制 | 减隔震设计 | 施工过程模拟 | 小品钢结构 | 有限元仿真分析 | BIM与GH参数化 | 大震弹塑性分析 https://www.jdcui.com 合作及技术咨询 COOPERATION & CONTACT E-mail:jidong_cui@163.com …

[数据处理] HLA滞回曲线分析软件案例: 多级捏缩滑移滞回曲线分析 [HLA Example: Multi-Stage Pinched Slip Hysteresis Loops Analysis]

实干、实践、积累、思考、创新。 小伙伴试验的一组滞回曲线,比较特殊,存在较为明显的滑移特性,而且每一级加载,存在多级循环,如下图所示。 小伙伴采用其他人的软件无法分析,于是采用我们的HLA( [程序] HLA v2025: Hysteretic Loop Analysis Program [HLA滞回曲线分析工具 2025版] )进行分析。下图为采用最新版HLA分析的结果,可见,HLA可以完整识别所有滞回环,并且分析对应的参数。 下图是滞回曲线的历程曲线,从历程曲线中,也可以看出识别的多级滞回环。 相关博文( Related Topics) [01] [试验][软件][科研] CurveCorrection 2024: General Curve Correction Program [通用曲线修正程序] [02] [科研][软件][试验] HLAV: Hysteresis Loop Animation Viewer …

[数据处理] HLA滞回曲线分析软件案例: 捏缩滑移滞回曲线分析 [HLA Example: Pinched Slip Hysteresis Loop Analysis]

实干、实践、积累、思考、创新。 小伙伴试验的一组滞回曲线,比较特殊,存在较为明显的滑移tex,如下图所示。 小伙伴采用其他人的软件无法分析,于是采用我们的HLA( [程序] HLA v2025: Hysteretic Loop Analysis Program [HLA滞回曲线分析工具 2025版] )进行分析。下图为采用最新版HLA分析的结果,可见,HLA可以完整识别所有滞回环,并且分析对应的参数。 相关博文( Related Topics) [01] [试验][软件][科研] CurveCorrection 2024: General Curve Correction Program [通用曲线修正程序] [02] [科研][软件][试验] HLAV: Hysteresis Loop Animation Viewer [滞回环动画演示软件] …

[仿真分析] 岩土数值模拟中的地应力平衡 [Geostatic Stress Equilibrium in Numerical Modeling of Geotechnical Engineering]

实干、实践、积累、思考、创新! 在岩土工程数值模拟中,地应力平衡是一个至关重要的初始步骤。它不仅决定了后续计算是否真实可靠,更是模拟结果能否反映实际工程响应的基础。本文简要总结地应力平衡的核心评判标准、主要原因及其实现目标。 为何要进行地应力平衡? 地应力平衡的根本原因在于:真实岩土体在自然状态下已存在一个稳定平衡的初始应力场,而数值模型中的“初始几何”并不等同于该应力场形成前的状态。 如果我们直接在模型中施加重力而不进行地应力平衡,模型将产生一个较大的初始变形,这显然与实际情形不符。现实中,岩土体在自重作用下早已完成变形,我们所见到的当前地貌实为应力与变形平衡后的结果。 在实际岩土工程分析中,我们所建立的岩土体几何模型通常基于“现状几何尺寸”,而非处于无应力状态下的“原始初始几何”。可以这样理解:实际岩土体在天然状态下的“原始初始几何”应比当前建模采用的尺寸更大,它在重力及边界条件长期作用下逐渐发生变形,最终趋于当前我们所见的“现状几何尺寸”。如果我们能够准确获取这一“原始初始几何”,并基于该尺寸建立模型,再施加相应的荷载与边界条件,便可以直接计算出岩土体的初始应力状态,而无需进行额外的“地应力平衡分析”。然而,实际问题在于我们无法获知这一原始几何形态。 从另一角度来看,如果我们能已知现状岩土体的内力,并将其直接提取作为模型的初始内力,再与外部荷载及边界条件实现平衡,则所建立的“现状几何尺寸”模型就能够与实际岩土体保持一致。这正是地应力分析的基本思路:以现状几何为建模依据,并将实际岩土体的内力作为初始内力,通过数值方法寻求静力平衡。然而,现实中现状岩土体的初始内力同样无法直接测得,因此我们通常采用一种近似方法:基于现状几何尺寸建立数值模型,施加重力及实际边界条件进行计算,将所得变形稳定后的岩体内力作为现状内力的估计,并将其重新施加到现状几何模型上,在相应外力和边界条件下实现平衡。 这就好比放置重物在弹簧床上:如果直接将重物放在未经预压的床上,床会立刻下陷,产生大幅变形。但如果我们先用某种方式将弹簧预先压缩到刚好能支撑重物的程度(建立初始应力),再轻轻放下重物,床面几乎不会移动。地应力平衡就类似于这个“预压”的过程——目的是在数值模型中生成一个初始应力场,使其在重力作用下保持位移几乎为零,却已具备真实合理的应力状态。 地应力平衡的本质,是通过数值方法反推出一个与当前几何和边界条件相适应的初始应力场,使得模型在重力作用下保持位移近似为零,同时具备合理的应力分布。这一过程相当于“还原”了现实中的原位应力状态,为后续开挖、加载或加固等工程模拟提供真实的起点。 地应力平衡的判别标准? 地应力平衡的质量主要通过以下两方面判断: 位移云图:平衡完成后,位移云图中的最大位移值应达到10⁻¹⁰量级或更低,即几乎接近于零。这是判断平衡是否成功的主要依据。 应力云图:平衡后的应力应具有合理的数值分布,即应力不为零,同时模型保持几乎没有变形的状态。 只有当这两个条件同时满足时,才可认为地应力平衡是有效的。 地应力平衡的实现方式? 常用的地应力平衡方法包括初始应力条件导入、分步加载或迭代计算等。其核心思想是:将“内力”(初始应力)与“外力”(如重力)在数值上达到平衡。 值得注意的是,地应力平衡中必须同时考虑内力(初始应力场)和外力(重力及边界约束)。仅施加重力而不赋予初始应力,或仅赋予应力而不施加重力,都无法实现系统的力学平衡。 测试例子 下图是一个ABAQUS测试的小例子,左边是直接对模型进行重力荷载,右边是进行地应力平衡的结果。 由图可见,左右模型的应力结果是基本一致,左侧模型在重力下发生了显著变形,而右侧地应力平衡的模型变形几乎为0。 应力云图 位移云图 相关博文 ( Related Post) [01] [工程][案例][资料] 某农业玻璃温室结构设计 [Structural design of …

[软件][试验] DataSmoothing 曲线平滑修正软件 案例21: 停顿点修正+平滑修正 [Datasmoothing curve smoothing correction software Case 21: Pause point correction+smooth correction]

实干、实践、积累、思考、创新。 采用DataSmoothing软件( [工具][试验][软件] DataSmoothing v2024: A Program for Test Data Smoothing [试验数据曲线平滑+降噪工具 2024版] )对一组试验曲线进行修正,做一个软件应用案例。 原始试验滞回曲线如下图所示,存在很多异常点及停顿点。 导入DataSmoothing进行停顿点修正 修正后如下图,停顿点得到了修正,曲线数据点显著减少。 进一步删除特殊离散点 并 进行平滑修正。 修正前后曲线效果如下 相关博文( Related Topics) [01] [试验][软件][科研] CurveCorrection 2024: General Curve Correction …

[振动控制] 简谐激励下强迫振动复数解法与实数解法的等效性 [Equivalence of Complex and Real Solutions for Harmonically Excited Forced Vibration]

实干、实践、积累、思考、创新! 在学习动力学与结构振动控制相关内容时,复数解法常用于分析简谐激励下的强迫振动问题。回想起在校初学此部分时,常感到困惑。随着后续深入理解,才认识到其背后的实质:简谐激励下的强迫振动问题,复数解法与实数解法(三角函数法)在数学上是完全等效的。复数解法的优势在于推导过程更为简洁,尤其在处理高阶系统或多频激励时显得更为高效。 以下以单自由度简谐激励受迫振动为例,对这两种方法的等效性作一简要总结。 三角函数激励作用下,单自由度动力体系动力平衡方程如下: \[m\ddot x + c\dot x + kx = F\cos \left( {\omega t} \right)\] 也可表示为正弦函数激励的形式 \[m\ddot x + c\dot x + kx = F\sin \left( {\omega t} …

[软件][试验] DataSmoothing 曲线平滑修正软件 案例22: 局部范围修正 [Datasmoothing curve smoothing correction software Case 22: local correction]

实干、实践、积累、思考、创新。 采用DataSmoothing软件( [工具][试验][软件] DataSmoothing v2024: A Program for Test Data Smoothing [试验数据曲线平滑+降噪工具 2024版] )对一组试验曲线进行修正,做一个软件应用案例。 原始试验滞回曲线存在很多异常点及停顿点。 将数据导入DataSmoothing,如下图 设置相关参数,进行停顿点修正 将停顿点修正后的数据,再次导入软件,进行局部选点平滑 最终效果如下 相关博文( Related Topics) [01] [试验][软件][科研] CurveCorrection 2024: General Curve Correction Program [通用曲线修正程序] …

[记事] 参加2025筑信达用户大会并做报告分享

实干、实践、积累、思考、创新! 2025年8月21日至22日,我有幸以嘉宾身份参加了在浙江嘉兴月河客栈举办的2025筑信达用户大会。本次大会以“分享·交流·实践”为主题,汇聚了来自全国各地的工程设计专家、学者和企业代表,围绕结构工程、岩土工程、电力新能源等多个领域的创新技术与工程实践展开了深入交流。 本次大会设立了民用建筑、工业与交通、电力与新能源三大平行会场,覆盖了当前工程领域的热点议题。来自奥雅纳、华东建筑设计研究院、中冶钢结构、中国电建等单位的专家,分享了包括消能减震、大跨空间结构、海外项目设计、风电混塔技术等众多前沿内容。此外,22日的“出海·破局之道”沙龙聚焦中国工程公司与国际项目的对接,多位拥有丰富海外经验的专家分享了在“一带一路”工程项目中的实践心得,为国内企业“走出去”提供了宝贵的思路。 我在“工程软件智能化应用交流专场”分享了题为《基于调谐液体阻尼器(TLD)的高层建筑风振控制分析——软件开发与工程应用》的报告,重点介绍了我们公司(广州容柏生建筑结构设计事务所(RBS))近年在结构振动控制领域的探索,尤其是TLD技术在超高层建筑风振响应控制中的应用与实践。 在我的报告中,我着重介绍了调谐液体阻尼器(TLD) 的基本原理、数值模拟方法及其在我们近期项目中的具体应用。TLD作为一种经济有效的被动控制装置,特别适用于抑制高层建筑在风荷载作用下的振动响应。借助ETABS的API功能及二次开发能力,我们实现了TLD系统的参数化分析、优化设计等,显著提升了设计效率与准确性。此外,还和多位与会者在问答环节就TLD的适用性、数值模拟细节和施工实施问题展开了进一步讨论。 结语 此次大会不仅是技术的展示,更是一个开放的交流平台。通过此次会议,我深切感受到结构工程正迈向数字化、智能化与国际化的新阶段,只有不断适应这些新的变化才能生存下来并找到机会。期待未来与同行们继续保持交流合作,共同推动结构振动控制及其他前沿技术在实际工程中的落地与应用! 关于我们 超限复杂高层结构设计 |  美标欧标结构设计| 软件定制开发| 环评减振控制 |人行及风致振动控制 | 减隔震设计 | 施工过程模拟 | 小品钢结构 | 有限元仿真分析 | BIM与GH参数化 | 大震弹塑性分析 https://www.jdcui.com 合作及技术咨询 COOPERATION …

[程序] PDDVA: Parameter design of dynamic vibration absorber [PDDVA: 动力吸振器参数设计软件]

实干、实践、积累、思考、创新! 程序图标 ( Program Icon ) 程序介绍 ( Program Introduction) 这是一款在学习振动控制过程中开发的动力吸振器参数分析工具。目前主要集成了经典的二自由度系统模型(即调谐质量阻尼器TMD模型)。用户可通过该程序调整多种参数,生成频响曲线图,并将结果导出至Excel,从而辅助经典振动理论的学习与研究。未来计划扩展更多类型的吸振器模型,并逐步加入参数敏感性分析等功能。 This parameter analysis tool for dynamic vibration absorbers was initially created as a side project during vibration control studies. It currently …

[投票] Grasshopper建筑结构参数化建模应用实例 (封面)

实干、实践、积累、思考、创新。 新书《Grasshopper建筑结构参数化建模应用实例》即将出版,初步设计了一下几个封面,欢迎大家评论区给我们投票,看看哪个方案比较合适。 方案1: 方案2: 方案3: 方案4: 方案5: 方案6: 关于我们 超限复杂高层结构设计 |  美标欧标结构设计| 软件定制开发| 环评减振控制 |人行及风致振动控制 | 减隔震设计 | 施工过程模拟 | 小品钢结构 | 有限元仿真分析 | BIM与GH参数化 | 大震弹塑性分析 https://www.jdcui.com 合作及技术咨询 COOPERATION …

结构动力分析中的阻尼系统分类与总结——以SAP2000为例 [Classification and Summary of Damping Systems in Structural Dynamic Analysis — Using SAP2000 as an Example]

实干、实践、积累、思考、创新。 阻尼是结构动力分析中的重要参数,最近做一些振动相关的研究,对软件做了一些测算,以SAP2000/ETABS中的阻尼为例,进行总结。 阻尼类型 SAP2000/ETABS 阻尼共有三种不同类型:模态阻尼(Modal Damping)、粘滞比例阻尼(Viscous Proportional Damping) 和滞后比例阻尼(Hysteretic Proportional Damping)。不同类型的阻尼适用于不同类型的荷载工况。 阻尼指定方式 每一类阻尼又有三种不同的指定方式:(1)针对每个动力荷载工况独立指定(2)通过材料阻尼属性指定(3)接/支座属性中指定阻尼 三种方式指定的阻尼是叠加的,并影响所有荷载工况。 材料阻尼通常用于模型中比结构其他部分阻尼更大的区域,例如土体区域。 连接/支座阻尼通常用于表示离散的耗能构件,或用于表示模型边界处的辐射阻尼。 模态阻尼 (Modal Damping) 模态阻尼用于反应谱荷载工况和模态时程荷载工况。用户也可以选择为直接积分时程荷载工况指定模态阻尼(此时通常仅限于低阶模态)。为荷载工况指定的模态阻尼将与材料模态阻尼和连接/支座模态阻尼叠加。 荷载工况的模态阻尼 模态阻尼表示为结构每个振型的临界阻尼的百分比(阻尼比)。在模态阻尼表单中,可通过以下方式之一指定阻尼: 所有振型取常数:所有振型采用相同的阻尼比。 按周期或频率线性插值:在一系列频率点或周期点指定阻尼值。在指定点之间,阻尼值线性插值。在指定范围之外,阻尼值保持为最接近指定点的值。 质量和刚度比例:这模拟了下文为直接积分描述的比例阻尼,但阻尼值绝不允许超过 1.0(100%)。 此外,用户还可以指定阻尼覆盖值。这些是针对特定振型的特定阻尼值,用于替换通过上述任一方法获得的阻尼值。通常无需使用阻尼覆盖值,除非可能需要减小长周期隔震振型的阻尼。 材料模态阻尼 这也称为“材料复合模态阻尼”。如果已在材料属性中指定了模态阻尼,则该阻尼将自动转换为使用该材料的每个单元的复合模态阻尼。忽略振型之间的任何交叉耦合。每个振型的模态阻尼值通常不同,具体取决于每个振型在由不同材料组成的单元中引起的变形量。 连接/支座单元的有效模态阻尼 对于反应谱和线性模态时程荷载工况,为线性连接/支座单元指定的阻尼系数,以及为非线性连接/支座单元指定的线性有效阻尼系数,都会自动转换为模态阻尼。忽略振型之间的任何交叉耦合。增加的模态阻尼通常因振型而异,具体取决于每个振型在连接/支座单元中引起的变形量。 …

ETABS/SAP2000中截面切割的内力输出惯例 [Section Cut Output Conventions in ETABS/SAP2000]

实干、实践、积累、思考、创新。 ETABS/SAP2000中的截面切割Section Cut功能非常强大,可以利用截面切割抓取任意位置的内力。 这个功能有时候很有用,比如在做局部节点有限元分析时,可以利用Section Cut捕获一些复杂区域的外力输入。 但需要注意Section Cut输出的内力方向。以下内容整理自官方文档(https://docs.csiamerica.com/help-files/sap/Output/Section_Cut_Output_Conventions.htm)。 Section Cut Output Conventions Section cut forces are reported at a single point in the local coordinate system defined for the section cut. …

[程序] GM_TRUN: A Program for truncating ground motion records [地震波截断工具]

实干、实践、积累、思考、创新。 – – – – <随后更新> – – – –       相关内容(Related Topics) [01]. [Tool] SPECTR – A program for Response Spectra Analysis [反应谱计算程序] [02]. [程序][Tool] Ground Motion Selection [强震记录选取] …

[数学] Laplace Transform [拉普拉斯变换公式]

实干、实践、积累、思考、创新。 拉普拉斯变换,导数及二阶导数的拉普拉斯变换公式整理: #### 1. 拉普拉斯变换定义 函数 $f(t)$的拉普拉斯变换定义为: $$ \mathcal{L}\{f(t)\} = F(s) = \int_0^\infty e^{-st} f(t) dt $$ 其中 \( s = \sigma + j\omega \)是复频率参数。 #### 2. 一阶导数的拉普拉斯变换 **推导过程**: $$ …