【问题标题】:Repeating numbers with modulo -1 to 1 using positive and negative numbers使用正数和负数重复模 -1 到 1 的数字
【发布时间】:2019-12-27 12:40:55
【问题描述】:

模数重复

我知道我可以像 2,3,1,2,3,1,... 一样将数字“包装”/循环回自身 通过使用模数。

下面的示例代码。

a=[1:8]'
b=mod(a,3)+1

但是我如何使用模数将数字从 -1 到 1 (-1,-.5,0,.5,1) “包装”回自身。 一些测试数字会是 a=[1.1,-2.3,.3,-.5],它会循环,值会在 -1 到 1 之间

我想一个视觉示例是将 x,y 平面从 -1 弯曲到 1 成圆环(它如何循环回到自身上)。

我在想一个正弦波如何去 0,1,0,-1 并再次返回,但我不确定如何实现它。

PS:我使用的是 Octave 4.2.2

【问题讨论】:

    标签: sequence octave mod


    【解决方案1】:

    这可以通过在取模之前偏移值,然后在之后反转偏移来实现。

    例如,如果目标范围是 [a,b)(半开区间使得 b 不属于间隔),然后可以这样做:

    y = mod( x - a, b - a ) + a;
    

    例如:

    a = -1;
    b = 1;
    x = -10:0.01:10;
    y = mod( x - a, b - a ) + a;
    plot(x,y)
    

    【讨论】:

      猜你喜欢
      • 2021-11-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-12
      • 1970-01-01
      相关资源
      最近更新 更多