• 地震数据处理研究(Matlab代码实现)


     👨‍🎓个人主页:研学社的博客 

    💥💥💞💞欢迎来到本博客❤️❤️💥💥

    🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

    ⛳️座右铭:行百里者,半于九十。

    📋📋📋本文目录如下:🎁🎁🎁

    目录

    💥1 概述

    📚2 运行结果

    🌈3 Matlab代码实现

    🎉4 参考文献


    💥1 概述

    本文包括:

    1) 峰值地面加速度

    2) 峰值地速

    3) 峰值地面位移

    4) 总累积能量和归一化累积能量与时间的关系

    5) 根据Trifunac & Brady(1975)D_5_95的重要持续时间

    6) 持续时间长 D_5_75

    7) 总咏叹调强度 (Ia)

    8) 速度时程(有或没有基线校正)

    9) 位移时间历史(有或没有基线校正)

    10) 重采样加速度时间历史(即修改时间步长的输入加速度时间历史)

    11) 线弹性赝加速度响应谱

    12) 线弹性赝速度反应谱

    13) 线弹性位移反应谱

    14) 线弹性速度反应谱

    15) 线弹性加速度响应谱

    16) 恒定延性位移反应谱

    17) 恒定延性速度响应谱

    18) 恒定延性加速度响应谱

    19) 傅里叶振幅谱

    20) 平均周期 (Tm)

    21) 低通巴特沃斯滤波加速度时间历史

    22) 高通巴特沃斯滤波加速时间历史

    23) SDOF系统在输入加速时间历史激励下的增量动态分析(IDA)

    📚2 运行结果

     

     

     

    部分代码:

    %% Earthquake motion
    % Load earthquake data
    eqmotions={'LomaPrietaHallsValley90'};
    data=load([eqmotions{1},'.dat']);
    t=data(:,1);
    dt=t(2)-t(1);
    xgtt=data(:,2);

    %% Adjust earthquake motion to have D_5_75=8.3sec
    % Switch
    sw='arias';
    %%
    % Apply OpenSeismoMatlab
    S1=OpenSeismoMatlab(dt,xgtt,sw);
    %%
    % Duration D_5_75 of the initially loaded motion
    S1.Td_5_75
    %% 
    % S.Td_5_75 must be roughly near 8.3 sec, as required in Mashayekhi et al. (2020)
    % We manipulate the strong shaking part of the motion which corresponds to
    % the significant duration so that S.Td_5_75 is increased to the desired
    % value (8.3 sec)
    id1=find(t==S1.t_5_75(1));
    id2=find(t==S1.t_5_75(2));
    xgtt(id1:id2)=0.8*xgtt(id1:id2);

    %% Calculate duration D_5_75 of adjusted earthquake motion
    % Switch
    sw='arias';
    %%
    % Apply OpenSeismoMatlab
    S2=OpenSeismoMatlab(dt,xgtt,sw);
    %%
    % Duration D_5_75 of the adjusted motion
    S2.Td_5_75

    %% Scale earthquake motion to have Sa(1 sec)=0.382g
    % Switch
    sw='es';
    %%
    % Critical damping ratio
    ksi=0.05;
    %%
    % Period where Sa=0.382g
    T=1;
    %%
    % Apply OpenSeismoMatlab
    S3=OpenSeismoMatlab(dt,xgtt,sw,T,ksi);
    %%
    % Spectral acceleration of the adjusted motion at 1 sec
    S3.Sa
    %%
    % Sa at 1 sec must be equal to 0.382g, so we scale the entire acceleration
    % time history up to this level
    scaleF=0.382*9.81/S3.Sa;
    xgtt=xgtt*scaleF;

    %% Calculate spectral acceleration of scaled earthquake motion
    % Switch
    sw='es';
    %%
    % Critical damping ratio
    ksi=0.05;
    %%
    % Period where Sa=0.382g
    T=1;
    %%
    % Apply OpenSeismoMatlab
    S4=OpenSeismoMatlab(dt,xgtt,sw,T,ksi);
    %%
    % Spectral acceleration of the adjusted motion at 1 sec
    S4.Sa

    %% Plot the acceleration time history

    % Initialize figure
    figure()
    % Plot the acceleration time history of the adjusted motion
    plot(t,xgtt)
    % Finalize figure
    grid on
    xlabel('Time (sec)')
    ylabel('Acceleration (g)')

    %% Perform IDA analysis
    % Switch
    sw='ida';
    %%
    % Eigenperiod
    T=1;
    %%
    % Scaling factors
    lambdaF=logspace(log10(0.001),log10(10),100);
    %%
    % Type of IDA analysis
    IM_DM='Sa_disp';
    %%
    % Mass
    m=1;
    %%
    % Yield displacement
    uy = 0.082*9.81/(2*pi/T)^2;
    %%
    % Post yield stiffness factor
    pysf=0.01;

    🌈3 Matlab代码实现

    🎉4 参考文献

    部分理论来源于网络,如有侵权请联系删除。

    Copyright (c) 2018-2022 by George Papazafeiropoulos Major, Infrastructure Engineer, Hellenic Air Force Civil Engineer, M.Sc., Ph.D. 

  • 相关阅读:
    C++广度优先优先搜索代码找错
    微服务-Feign
    数据结构之链表(带头双向循环链表)
    树的定义及相关概念
    102个Python练手项目;『机器学习』优质内容社区;『基于事件的机器人视觉』课程推荐;『迁移学习导论』书籍代码;前沿论文 | ShowMeAI资讯日报
    高考志愿辅助填报系统
    线程安全,,Maven基本介绍,220822,,
    hive笔记(五):查询、排序-join语句/连接/分区/sort by/distribute by/cluster by
    【嵌入式——QT】QDockWidget
    HTML基础
  • 原文地址:https://blog.csdn.net/weixin_46039719/article/details/128063376