[科研][软件][OpenSees] OSBWTest: OpenSees BoucWen Material Test ( OpenSees BoucWen材料测试)

实干、实践、积累、思考、创新。 程序图标 ( Program Icon ) 程序介绍 ( Program Introduction) 拖了很久,最近搞东西用到BoucWen这个材料,从OpenSees中搬过来,写个程序测试一下,因为和最原始的Bouc Wen模型还有点不同。 最原始的BoucWen模型在这里做了测试:[研究][软件] BWTest: Bouc-Wen模型参数测试分析 [Bouc-Wen Hysteretic Model Parameters Analysis] 关于BoucWen Material 的OpenSees介绍在OpenSeesWiki中找到:BoucWen Material – OpenSeesWiki (berkeley.edu) 命令也搬过来: This command is used …

[论文][Paper] 基于目标谱匹配法的地震波选波系统研制 (Development of seismic wave selection system based on target spectrum matching method)

实干、实践、积累、思考、创新。 快10年之前做的东西,算是10年前的成果了,最近整理了一下。 【题目】 基于目标谱匹配法的地震波选波系统研制 【英文题目】 Development of seismic wave selection system based on target spectrum matching method 【作者】 崔济东1,戚永乐2 【英文作者】  CUI Jidong1, QI Yongle2 【单位】 1. 广州容柏生建筑结构设计事务所(普通合伙)2. 中国能源建设集团广东省电力设计研究院有限公司 【中文摘要】 随着结构计算分析技术的快速发展,动力时程分析在结构抗震设计中运用越来越广泛,编制能够快速提供满足规范要求的地震波的选波系统具有较大的应用价值。根据《建筑抗震设计规范》(GB50011-2010)的要求,基于目标谱匹配法,开发了地震波选波系统GMSS。对GMSS的总体设计框架进行介绍,着重阐述地震动数据库模块的设计及软件提供的两种目标谱匹配方案:离散周期点匹配法及周期范围匹配法。通过某超高层实例对GMSS选取的地震波进行验证,结果表明离散周期点匹配法侧重于控制具体周期点的反应谱误差,周期范围匹配法侧重于控制指定周期范围内地震波反应谱与目标谱形状的吻合程度,两种方案的选波结果均可满足规范要求,GMSS选波系统运行效率较高,可进一步用于科研和工程实践。 …

[研究][软件] BWTest: Bouc-Wen模型参数测试分析 [Bouc-Wen Hysteretic Model Parameters Analysis]

实干、实践、积累、思考、创新。 程序图标 ( Program Icon ) 程序介绍 ( Program Introduction) BWTest: Bouc-Wen模型参数测试分析,程序用来测试经典的Bouc-Wen滞回模型的参数。 这里先简单介绍一下经典Bouc-Wen模型,经典Bouc-Wen滞回模型是一个光滑的滞回恢复力模型,其模型表达式为: \[\left\{ \begin{array}{l} F\left( t \right){\rm{ = }}a\frac{{{F_y}}}{{{u_y}}}u\left( t \right) + \left( {1 – a} \right){F_y}z\left( t \right)\\ \dot z\left( …

[Python][编程][笔记] Python符号计算——求偏微分方程 (Python symbolic computation — solving partial differential equations)

实干、实践、积累、思考、创新。 最近忙,放松时间学学python。 python中的 sympy库是一款符号运算库,功能强大。这里测试其求微分方程的功能。The sympy library in python is a symbolic operation library with powerful functions. Here we test its function of finding differential equations. 我们可以试试用sumpy求解单自由度粘滞阻尼体系自由振动的运动方程。We can try to use …

[Python][编程][笔记] Python海龟绘图 —— 多边形 (Python turtle drawing – polygon)

实干、实践、积累、思考、创新。 最近工作比较忙,撸撸python代码放松一下,用python的turtle库绘图,重新学习python。       相关话题 ( Related Topics) [01]. Python 出现”invalid literal for int() with base 10: \xef\xbb\xbf0″ 错误 [02]. [编程笔记] Tuple in Python [Python中的元组] [03]. [Python][编程][笔记] Python海龟绘图 —— 多边形 Polygon 微信公众号 ( Wechat Subscription) …

[试验][工具][编程] 试验力-位移滞回曲线平滑修正案例 3(PPC试验停顿点修正+DataSmoothing平滑修正) (Case of smoothing correction of test disp-force curve)

实干、实践、积累、思考、创新。 用小伙伴的试验数据做个测试。 原始试验数据如下图所示,非常多的抖动。   首先在数据平滑之前,先将原始试验数据导入PPC软件( [软件][试验] PPC: Pause Point Correction [试验曲线停顿点修正工具] )进行停顿点修正。如下图所示。 PPC修正后的数据如下图所示,可见,历程数据及滞回曲线数据显著改善。 进一步将停顿点修正后的数据导入DataSmoothing ([工具][试验][编程] DataSmoothing: A Program for Data Smoothing [试验数据曲线平滑+降噪工具])进行平滑修正,如下图。 经过DataSmoothing修正后的最终数据如下图。可以发现,经过平滑修正后的应力-应变曲线趋势更加清晰。 关于试验数据修正程序介绍 ( Program Introduction) NoiseRemoval:http://www.jdcui.com/?p=15046 该程序主要作用是,修正试验数据中的噪声,适合那些许多波动试验数据曲线。 OutlierRemoval:http://www.jdcui.com/?p=14365 …

[工具][软件][地震动] AEEG: A Program for Artificial Earthquake Accelerograms Generation [人工地震波合成软件]

实干、实践、积累、思考、创新。 程序图标 ( Program Icon ) 程序介绍 ( Program Introduction) 根据目标谱,生成人工波的软件。A Program for Artificial Earthquake Accelerograms Generation. 这个东西不做不知道,做了才发现其实很多小细节。不同处理方法出来效果差异很大。 程序案例( Examples) [01] [软件][地震动] AEEG人工地震波合成 —— 案例1(拟合自定义反应谱) [02] [软件][地震动] AEEG人工地震波合成 —— 案例2(如何提高人工波拟合精度) [03] [软件][地震动] AEEG人工地震波合成 —— …

[地震动][软件] Spectr_Frequency

实干、实践、积累、思考、创新。 随后更新…..       相关话题 ( Related Topics) [01]. [Tool] SPECTR – A program for Response Spectra Analysis [反应谱计算程序] [02]. [程序][Tool] Ground Motion Selection [强震记录选取] [03]. [程序][软件]Ground Motion Library [强震记录管理] [04]. Artificial ground motion …

[试验][工具] 试验应力-应变曲线平滑修正案例 1(PPC试验停顿点修正+DataSmoothing平滑修正) (Case of smoothing correction of test stress-strain curve)

实干、实践、积累、思考、创新。 用小伙伴的应力-应变试验数据做个修正案例。 如下图所示,是原小伙伴的应力应变数据,可以发现在应变较小时,曲线异常抖动,在应变较大后期也存在部分跳跃的不连续位置。 首先在数据平滑之前,先将原始试验数据导入PPC软件( [软件][试验] PPC: Pause Point Correction [试验曲线停顿点修正工具] )进行停顿点修正。因为试验过程中的停顿点和非停顿点可以认为是两类频率非常不同的数据,那么保留停顿点直接对原始数据进行平滑修正可能会影响平滑修正效果。 下图是停顿点修正前后的应力曲线,可以发现,试验曲线存在较多停顿点,而且基本都集中在峰值应力位置,这些停顿一般是试验过程中途暂停导致。   进一步将停顿点修正后的数据导入DataSmoothing ([工具][试验][编程] DataSmoothing: A Program for Data Smoothing [试验数据曲线平滑+降噪工具])进行平滑修正,如下图。 修正完毕后,导出修正前后的数据并绘图如下,可以发现,经过平滑修正后的应力-应变曲线趋势更加清晰。 关于试验数据修正程序介绍 ( Program Introduction) NoiseRemoval:http://www.jdcui.com/?p=15046 该程序主要作用是,修正试验数据中的噪声,适合那些许多波动试验数据曲线。 OutlierRemoval:http://www.jdcui.com/?p=14365 …

[动力学][地震工程] 一个有趣的问题: SPECTR中的Newmark-Beta法计算反应谱发散?

实干、实践、积累、思考、创新。 一个遗留了好几年的问题,起因是一位网友找了条十分特殊的自己合成波测试 SPECTR 2015 (当时搞选波工具,SPECTR是仿Seismosignal的界面做的),结果发现Newmark法计算的反应谱结果是发散的,之所以说“特殊”,是因为其他波都没出现这个问题(其他波不同方法计算都是重合的),由于一般波测试没问题,而且默认用的逐步精确法,十分稳健,当时没太在意,就去研究其他东西去了,但是问题倒是记录到了word,一直放在硬盘的某个角落,电脑换了几轮,但记录的这个word每次都舍不得删掉,虽然极其碍眼,今天又整理硬盘,又看到了这个word,这次决定把这个word删掉,一次性解决问题,于是打开以前的代码,果然看回好几年前写的代码,写得的确丑,还有点乱,但仔细检查公式倒是没问题,那问题到底出在哪?最后灵机一动,发现问题在加速度的递推公式上,当时采用了增量法的NEWMARK递推公式,各step的加速度均通过上一步的加速度加上加速度增量逐步累加得到,而可能对于这条波,恰好出现了浮点数精度丢失。于是把加速度改为平衡方程反推,果然问题解决了!!!改天更新SPECTR 2022!!! PS:浮点数精度丢失,整型数溢出是编程中很难发现的bug,隐藏最深。Floating point precision lost and integer overflow is a hard-to-find bug in programming. 相关话题 ( Related Topics) [01]. [Tool] SPECTR – A program for Response …

[软件][试验] PPC: Pause Point Correction [试验曲线停顿点修正工具]

实干、实践、积累、思考、创新。 程序图标 ( Program Icon ) 程序介绍 ( Program Introduction) 朋友找我们写的一个小工具,主要功能是修正试验曲线的停顿点。我们知道做拟静力试验,很多时候并不是一次性做完,而是做一下然后停下来看试验现象、或者停下来进行一些检查,确保没问题后再进行试验。而在停下来的时候记录仪器通常并不会停止记录,这就会导致很多停顿点,有些时候这些停顿点会影响数据的处理和分析。因此,可以考虑对数据的停顿点进行处理。另外,修正完停顿点后,试验曲线的数据量通常也会显著减少。如果需要做这之类修正就可利用这个工具去做。 PS:2022/11/20 对程序进行更新,增加了局部平滑修正选项,可使得停顿点修正得进一步的改善。 程序案例 ( Program Examples) [01] [试验][工具] 试验应力-应变曲线平滑修正案例 1(PPC试验停顿点修正+DataSmoothing平滑修正) (Case of smoothing correction of test stress-strain curve) [02] [试验][工具] 试验力-位移滞回曲线平滑修正案例 2(PPC试验停顿点修正+DataSmoothing平滑修正) …

[笔记][编程] Visual Studio 2019 设置引用提示错误 “对COM组件的调用返回了错误 HRESULT E_FAIL”

实干、实践、积累、思考,创新。 用Visual Studio编程程序.NET程时,设置引用时弹出如下“对COM组件的调用返回了错误 HRESULT E_FAIL”的错误窗口,无法设置引用的库。 后百度找到方法,就是管理员方式调用 Developer Command Prompt for Vs 2019,然后将路径设置到 PublicAssemblies的情况下,运行 gacutil -i Microsoft.VisualStudio.Shell.Interop.11.0.dll 然后重新打卡 Visual Studio 2019 就可以了。 微信公众号 ( Wechat Subscription) 欢迎关注 “结构之旅” 微信公众号

[工具][试验][编程] DataSmoothing试验滞回曲线平滑修正——案例6

实干、实践、积累、思考、创新。 小伙伴的试验数据有问题找我们处理,用DataSmoothing [工具][试验][编程] DataSmoothing: A Program for Data Smoothing [试验数据曲线平滑+降噪工具] 做个滞回曲线平滑修正案例。以下是小伙伴的数据,可以看到很多地方抖动厉害,无法直接使用,必须经过修正处理。 这是小伙伴的试验滞回曲线 可以发现,原始的滞回曲线极度不平滑,非常多毛刺点,无法直接使用,需要修正。 将滞回曲线数据导入 DataSmoothing,通过简单设置参数,点击Run Smoothing运行修正,即可完成修正,结果如下图所示。 可以再图形面板上将修正后的数据单独显示,可以查看修正的效果,若修正效果不理想,可以再次调整参数,然后运行分析。对于这个例子,可以发现修正后的数据非常漂亮,基本可直接使用了。 修正完毕后,可点击Save Results保存数据结果,以下是将数据结果在EXCEL中绘制折线图的效果。 DataSmoothing  的软件案例 ( Application Examples) [01]  [工具][试验][编程] DataSmoothing试验滞回曲线平滑修正——案例1 [02]  [工具][试验][编程] DataSmoothing试验滞回曲线平滑修正——案例2 [03]  …

[软件][数学][地震动] FPSA: Fourier and Power Spectra Analysis [地震波频谱分析工具]

实干、实践、积累、思考、创新。 程序图标( Program Icon ) 程序介绍 ( Program Introduction) 有小伙伴找我们,建议我们做一个这样的工具。断断续续花了许多天研究,做了出来。以下建安介绍这个小软件。这是一个采用快速傅里叶变换(FFT)进行傅里叶谱及功率谱密度分析的工具。功率谱密度(PSD)计算采用周期图法(Periodogram),并同时提供了多个不同的窗函数用于加窗处理。具体窗函数包括 Rectwin, Hann, Haming,  Bartlett。 软件可输出数据的傅里叶幅值谱 Fourier Amplitude、相位谱 Fourier Phase及功率谱 Power Specturm (PSD, Power Spectral Amplitude)。 软件支持批量导入信号,批量分析,并可将分析的傅里叶谱及功率谱导入程序,进行平均值计算。软件可以用于地震波功率谱的批量计算、分析及平均处理。 此外,根据网友建议,软件也增加了多种地震波的格式导入,具体包括PEER,YJK,PKPM,Midas等的地震波数据格式快速导入。 程序界面 ( Program Interface ) 20221123 …

[数学][几何] 费马螺线 [Fermat’s Spiral]

实干、实践、积累、思考,创新。 费马螺线 Fermat’s spiral的极坐标公式如下: 其中其中 a 为实数,θ为转角。 对于任意给定的正值θ,可以有两个r的取值,分别按以下公式: 我们可以通过以下公式将极坐标转换为笛卡尔坐标: x = r*cos(θ); y =r*sin(θ); 接下来可以用过EXCEL绘制费马螺线,如下 最后我们可以把曲线导入之前的编写的 GAAGM软件 [软件][工具][编程] GAAGM: Graph Animation and Animated Gif Maker [曲线图动画及Gif动图生成工具],制作漂亮的曲线动画。   相关博文 ( Related Topics) …

[数学][软件] FOUR_TRAN Example 3: Earthquake Ground Acceleration Frequency Spectrum Analysis [FOUR_TRAN傅里叶分析工具 案例3: 地震波频谱分析]

实干、实践、积累、思考、创新。 2020 年写的题目,现在已经是2022年了…… 这两天补上笔记                       关于软件( About the Program)   [01] [数学][地震动][软件] FOUR_TRAN: Fourier Analysis Tool [傅里叶分析工具] 案例 ( Examples …

[数学][编程][混沌] 虫口模型的数值模拟 [Numerical simulation of insect population model]

实干、实践、积累、思考,创新。 1976 年 , 美国数学家梅 (May .R ) 在美国 《 自然 》 杂志上发表的题为 “ 具有复杂的动力学的简单模型 ” 文章中指出 , 在生态学中一些非常简单的确定性的数学模型却能产生看似随机的行为。如虫口模型:xn+ 1= μxn ( 1 -x n ),其中 xn 是第n 年的虫口数,xn+ 1 …

[软件][试验] SawtoothRemove滞回曲线锯齿修正工具——案例1

实干、实践、积累、思考,创新。 小伙伴试验数据出问题,找我们处理。 用小伙伴的试验数据做的 SawtoothRemove([软件][试验][研究] SawtoothRemove: Remove the Sawtooth Patterns in Your Test Data [剔除试验数据中的锯齿]) 案例。直接上图,看修正过程和结果。 (1)将滞回曲线数据导入SawtoothRemove,从下图可以看见,滞回曲线有非常多的局部跳动,这种跳动也可以理解为一种锯齿。 (2)点击Analyze Loop分析滞回环,分析完毕我们可以在LOOP No.下拉菜单中查看各个滞回环,各个滞回环会在右边的绘图面板中显示。 (3)可以单独显示某个滞回环曲线,可以发现单个滞回环曲线有非常多的锯齿。 (4)直接点击 “修正数据的锯齿” 按钮,可一键修正锯齿,如下图所示,修正的曲线如红色所示,变得非常平滑,原来的锯齿修正了。 (5)可单独显示修正后的曲线,如下图。 (6) 最后点击 “输出EXCEL曲线图” ,可将曲线图直接输出到EXEL表,方便使用者进行后续数据的处理。 另外网站还提供了其他几款用于修正试验数据的工具,感兴趣的小伙伴可以看看: NoiseRemoval:http://www.jdcui.com/?p=15046 …

[编程][笔记] 如何将n^m个可能枚举出来?

实干、实践、积累、思考,创新。 如题 如何将n^m个可能枚举出来?通常枚举实现,直觉想到的就是用循环。 对于n和m很大的时候,写循环显然不可能。另外且当n和m都是运行时确定时,不管n和m是大还是小,都无法用循环了,因为用循环就意味着代码写死了。 最后想了一下,对于这种情况,可以用进制的方式进行实现。 n^m,相当于一个m维的数组,每个数组的取值可能有n个,那么m维数组,总的可能数就有n^m个。 举几个例子 2^m,可以表示为一个2进制位数 4^m,可以表示为一个4进制位数 具体的 2^2,一共有4种可能,具体情况如下: 1: 0 0 2: 1 0 3: 0 1 4: 1 1 3^2,一共有9种可能,具体情况如下: 1: 0 0 2: 1 0 …

[编程训练][软件] 粒子群优化算法求解无约束最优化问题 [Particle Swarm Optimization Algorithm for Solving Unconstrained Optimization Problems]

实干、实践、积累、思考,创新。 程序图标 ( Program Icon ) 程序介绍 ( Program Introduction) 假期花了几天研究粒子群优化算法,顺便写了这个小工具,简单测试无约束最优化问题,也顺便训练一下编程。 软件自带几个经典的PSO粒子群优化算法测试函数,具体包括: 0: Sphere 1: Eggcrate 2: Rosenbrock 3: Ackley 4: Schaffer 5: Rastrigrin 6: Cigar 7: Griewangk 8: Schwefel 几个函数的图像可以在这个博文查看:[笔记][智能算法]几个经典的PSO粒子群优化算法测试函数 (Benchmark …

[编程训练] BMP图像缩放 (BMP Image Scaling)

实干、实践、积累、思考,创新。 其他程序用到,就研究一下。 导入BMP图像,设置70%缩放: 导入BMP图像,设置50%缩放: 导入BMP图像,设置20%缩放: 相关博文 ( Related Topics) [01] [编程][算法][几何] 编程训练: 凸包问题 [Convex-Hull Problem] [02] [编程][算法][几何] 编程训练: 离散点的闭合路径 [Closed Path for points] [03] [编程][算法][几何] 编程训练: 3次B样条曲线 [Cubic BSpline] [04] …

[软件][工具][编程] GAAGM: Graph Animation and Animated Gif Maker [曲线图动画及Gif动图生成工具][滞回曲线动画演示]

实干、实践、积累、思考,创新。 程序图标 ( Program Icon ) 程序介绍 ( Program Introduction) 曲线图动画及Gif动图生成工具,可以用于制作一些数据演示。 程序界面 ( Program Interface ) 程序演示视频: 以下是测试的几个例子 生成的GIF动图。 (1)滞回曲线 (2)地震波时程 (3)SIN函数 (4)螺旋线 下载 ( Download ) (  如果您需要使用这个软件,请在这给网站捐助:http://www.jdcui.com/?page_id=4813,捐助不少于【100RMB】,捐助后在评论区留下您的评论,软件将通过网站管理员QQ:3014479529给您发送,敬请尊重劳动成果 !!!) 微信公众号 ( Wechat Subscription) 欢迎关注 “结构之旅” 微信公众号

新书《结构地震反应分析 编程与软件应用》出版了!!

实干、实践、积累、思考、创新。 新写的一本书快要出版了,书的题目是《结构地震反应分析 编程与软件应用》,这是继《PERFORM-3D原理与实例》、《有限单元法 编程与软件应用》后,www.jdcui.com的第三本书,主题是结构地震动力计算,依然是一本实用的基础的书籍,将理论、编程及软件应用结合,通过典型的小例子手把手教大家编程及使用软件。终于在年前拿到了出版社的样稿,印刷效果还是不错。 查了一下已经可以在京东购买了。以下是几个购买连接: 中国建筑工业出版社官方旗舰店: https://item.jd.com/10043957730709.html 中国建筑书店有限责任公司图书专营店:https://item.jd.com/10043957749812.html 顺带也贴一下目录吧: 年后再详细介绍这本书!!! 😛 🙂  公众号 ( Wechat Subscription) 欢迎关注 “结构之旅” 微信公众号

[笔记][编程] 查询Access,出现异常 “IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败。”

实干、实践、积累、思考,创新。 用C#编写程序,查询Access数据库时,出现异常“IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败。” 后检查发现,SELECT 语句查询语句的 表的名称Section有冲突,将 Section加上”[ ]”修饰即可。 微信公众号 ( Wechat Subscription) 欢迎关注 “结构之旅” 微信公众号