找回密码
 注册
关于网站域名变更的通知
查看: 525|回复: 3
打印 上一主题 下一主题

关于这段代码between的用法

[复制链接]
  • TA的每日心情
    开心
    2022-1-21 15:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2022-11-9 10:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    % function amat=event_hyp(seis,t,x,0.4,700,v,1,3): `% m3 G; a6 U& _2 A( A
    $ n9 h) {1 J7 _. q5 l! @
    v=2000;
    6 W0 J2 q( U2 u8 Vdx=10;  b5 {9 q' X' s( o1 o2 B0 Y, W
    dt=.004;%basic model parameters2- g7 p9 H5 e! E' n# g4 _2 w
    x=0:dx:2000;%x axis3$ ^! Z  b. ]  K$ d
    t=0:dt:2;%t axis4$ j+ }- p% N9 U- h/ Z" Z* A7 \  p
    seis=zeros(length(t),length(x));. ~( {- D! e  `0 [6 Q
    % seis=event_hyp(seis,t,x,.4,700,v,1,3);- s' i, D  s( d2 w  ^& ?
    flag=1;aper=3;
    % h0 L. |5 j3 x8 y/ @tnot=0.4;* n& z! Z) E2 F4 b. k! K
    xnot=700;7 M/ o. i+ D% y+ n8 @7 e
    amat=zeros(2000,2000);# k, A  p( _: f8 Y# f3 A1 @! T
    amp=1;; J# F3 g+ [( E5 u5 M
    / A5 x8 K; s/ |$ d3 t
    % if(nargin<8)
    4 q7 n4 G& }, C3 {! C%         flag=3;
    8 M2 T* k2 e) i0 Y% ~' M: q% end
    1 V! P  r! b8 g: P" X, c% if(nargin < 9 )
    1 |' A' ?, V' {* {+ k/ o%         aper = inf;, |2 E* V# V/ m" _# A0 Z1 t8 p
    % end0 K8 G, x+ s0 {2 f! }0 L/ k
    # a2 l7 m: ^5 o# h+ [9 i( u
    v=v/2;6 Z& M* L- ~( h
    3 X1 ^' P! c$ o9 R! x8 L9 h9 h* _
    %loop over columns
    : h$ N' X4 T0 M) l2 D[nsamp,nc]=size(amat);
    3 S& E) n3 g# j# n# w2 a
    6 j( r& B! K: gdt=t(2)-t(1);+ a  p  r1 ]/ a# j* m# ?
    tmin=t(1);
    9 E) A2 Y$ ~. Q7 ifor k=1:nc5 m( P' ]) q: u# E# d% q& v
            xoff=x(k)-xnot;7 r) R  M* B) y" X
            if(abs(xoff) < aper)
    8 x- c5 p$ z/ \3 ^( [4 W                tk = sqrt(tnot^2+(xoff/v)^2);
    + s# B/ ~8 H, I' s, x+ H/ Q6 Z                a=amp;
    1 Q+ }0 W7 q, b6 z# B9 C* w                if(flag==2)2 Y8 A- k: o4 ?# I* P5 z4 t% |1 J
                            a = tnot*a/tk;( `4 i$ ^6 j# y: ?" U1 [8 m
                    elseif(flag==3)
    , O; W1 J7 }. I  Z! }) V                        a = tnot*a/(tk^1.5);
    3 |2 _( N/ V  [# s& G                elseif(flag==4). C, p7 H% |) @
                            a = tnot*a/(tk*tk);) ]% `! r+ O0 @; @% Q! a) O
                    end
    4 Q1 B& K8 d' T4 k7 u$ ?" ?                ik=(tk-tmin)/dt+1;
    , Q0 O& @0 ?8 w8 V  m                if( between(1,nsamp,ik) )4 F# n1 j2 p6 A: ~6 S
                            ik1=floor(ik);
    . [- }- T# d" S                        ik2=ceil(ik);, l% i+ u$ h0 F3 U6 Z, w! x1 {
                            if(ik1==ik2)# `! Z3 F$ k2 X
                                    amat(ik1,k)=amat(ik1,k)+a;* G4 t+ }1 y, i" m8 c7 H
                            else
    - a# d1 s4 R+ T1 S                                amat(ik1,k)=amat(ik1,k)+a*(ik-ik2)/(ik1-ik2);
    " }/ s# r/ _+ Q9 Y) b9 ^                                amat(ik2,k)=amat(ik2,k)+a*(ik-ik1)/(ik2-ik1);  y7 H4 ?7 Y0 ]' k
                            end" c; |0 }8 k, p4 j* `9 o
                    end
      v$ t6 I/ Z* I8 T, W* \        end
    $ V  I& P# C( Y4 Uend; ]  j; [3 M: x% E8 B6 i# _
    figure(1);imagesc(amat);colormap gray
    . u& s* {6 m$ u% q2 |1 J) ?( C& N: _  C  k5 P+ C
    在这段代码里面的between用法是不是有些不正确,因为是学习代码所以不太懂,问问大家
    * h/ q; p3 \2 e9 k, r& z

    该用户从未签到

    2#
    发表于 2022-11-9 11:27 | 只看该作者
    确实用错了。between函数参数类型应该是datatime类型。

    点评

    请问该怎么修改呢?  详情 回复 发表于 2022-11-9 13:17
  • TA的每日心情
    开心
    2022-1-21 15:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
     楼主| 发表于 2022-11-9 13:17 | 只看该作者
    li205212021 发表于 2022-11-9 11:27
    % q# G' L! Z& b8 N确实用错了。between函数参数类型应该是datatime类型。

    2 _6 g7 X' L9 r' y6 `& U5 I请问该怎么修改呢?
    8 f% ]/ B% s/ l

    该用户从未签到

    4#
    发表于 2022-11-9 13:24 | 只看该作者
    if (between(1,nsamp,ik),这个位置就是if的一个判断逻辑嘛。; g/ ?& {1 U% ~0 u" J+ @
    问题是你要想知道怎么改,你首先得知道这个位置的判断逻辑是什么。; e$ |- r. ^4 ^3 W8 H
    : V! z1 [/ {, [9 _) @& _
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-10-4 13:16 , Processed in 0.140625 second(s), 24 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表