2016-07-29 12 views
0

私はティックと価格変数に基づいてNetlogoで定期的な関数を作成します。Netlogoは定期的な関数を作成します

私は、価格が2桁(0と1)の間で維持されている機能を希望します。私は周期性を選択できれば嬉しいです。

私の小さな再現性の例:

patches-own[ 
price 
] 

to setup 
    clear-all 
    ask patches [ 
    set price 0.1 
    ] 
    reset-ticks 
end 

to go 
    ask patches [ 
    set price (sin ticks) + price 
    ] 
    tick 

end 

はあなただけmodベースのサイクルをしたいようですね事前に

答えて

1

、ありがとうございました。

to test 
    ca 
    reset-ticks 
    print map price n-values 100 [?] 
    print map [price02 0 1 ?] n-values 100 [?] 
end 

to-report price [#ticks] 
    let _cycle 10 ;cycle length 
    let _first 3 ;length of first cycle component 
    report ifelse-value (#ticks mod _cycle < _first) [ 
    0.1 
    ][ 
    0.2 
    ] 
end 

編集:

また、あなたは、単に正弦波を拡張しようとしています。

to-report price02 [#min #max #ticks] 
    let _cycle 10 
    let _sin sin (#ticks * 360/_cycle) 
    let _scaledsin (1 + _sin)/2 
    report #min + (#max - #min) * _scaledsin 
end 
+0

は本当に、私は0と1の間のすべての変数を望んでいない... verhulstまたはtrigo機能 – delaye

+0

のようなものは、上記の編集を参照してください。 – Alan

+0

ありがとう! – delaye

関連する問題