読者です 読者をやめる 読者になる 読者になる

48ヶ月点検

スーパーカブ110プロ(JA07)の4年目の定期点検。春頃から、以前と音が変わったかなーと思ったまま乗り続けていたところ、それがチェーンにけっこうなダメージを与えていたらしいとのこと。今年は調整で何とかしてもらい、来年の点検時にはスプロケット込みで交換の可能性が出てきました。ぐむむむ。

これまでの走行距離はだいたい8000 km。来年の今頃は10,000 kmくらいか。1万キロでチェーン交換なんて聞いたことないよー(自業自得)

本日の給油

給油日 オドメーター (km) 給油量 (L) 単価 (円/L) 燃費 (km/L) 距離単価 (円/km)
2016-02-13 6714.7 2.96 108.78 49.26 2.21
2016-04-03 6847.3 2.57 108.95 51.60 2.11
2016-04-10 7025.7 3.42 111.99 52.16 2.15
2016-05-18 7113.8 1.68 108.93 52.44 2.08
2016-06-01 7286.3 3.28 114.94 52.59 2.19
2016-06-15 7464.2 2.65 118.11 67.13 1.76
2016-07-24 7579.7 2.54 107.87 45.47 2.37
2016-09-09 7740.9 2.87 127.87 56.17 2.28

急にガソリン価格が上がったなー。

MaxのGenExprを使ってみた

先日Pure Dataのexternを書きました。

これを、Maxでも動かせるようにしようと思って、Max SDKのドキュメントを読み始めました。ただMaxにはgen~もありますしJavaも使えるので、まずはgen~で試してみようと思い立ってから1時間強……同じものが書けてしまいました。

f:id:amarui:20160908131040p:plain

キモはcodeboxの中でGenExprを使うところにあります。codebox中では複数行のGenExprが書け、しかも条件分岐や繰り返しなどの制御構文を使うことができます。僕のプログラムではforループが使えることが必須だったので、助かりました。

続きを読む

今後10年の言語(翻訳)

もともとはClojureのことが読みたくてBruce A. Tateの「Seven Languages in Seven Weeks訳書)」を買ったのですが、読んでいくとErlangが気になりはじめました(ほぼ同時期に発掘して読んだMatz氏のブログ記事もErlangに言及していたので)。その後、2013年ごろにベータ版が公開されたDave Thomasの「Programming Elixir訳書)」でElixirを知りました。

とうとうElixir本の日本語訳が出版されることになりました。Elixir本の日本語訳*1の出版を勝手に祝して、以下のようなブログ記事の日本語訳をしてみました。

*1:現時点の日本語Elixir本は原著1.2版の翻訳です。もう原著は1.2は廃盤になっていて、1.3版のベータ版が公開になっています。

続きを読む

Pure Dataのexternalを作ってみた(後編)

はじめに

先日つくった正弦波を生成するsingen~を拡張して、もう少し複雑なexternにしていきます。正弦波の生成ができたので、それらを複数重ねて音作りをする加算合成シンセにしてみましょう。

とは言ってもいきなり難しいものは無理なので、下図のように基音の周波数倍音の数スペクトルのスロープ(傾き)の3つをコントロールできるものにします。一般的な加算合成法ではそれぞれの正弦波を独立してコントロールできるようにするのですが、今日のところは整数倍の成分の合成だけを考えます。つまり各倍音の周波数は基音の周波数によって決まり、独立したコントロールはできません。

f:id:amarui:20160816115156p:plain

これを数式で書くと以下のようになります。音合成の教科書などには必ずと言っていいほど載っている式で、スペクトルの傾きを0にするとすべての成分音のレベルが等しくなります。また、スペクトルの傾きを1にすると鋸歯波になります。(-1)k-1はなくてもいいのですが、時刻ゼロのときに振幅ゼロの鋸歯波の波形が得られるので入れています。

f:id:amarui:20160816121917p:plain

以下が完成したexternを使用しているイメージ。複数(multiple)の正弦波(sin)を生成(generate)するのでmulsingen~と命名しました。出力のあたりがごちゃごちゃしていますが、Pd-extendedのoutput~のようなことをしているだけです。

f:id:amarui:20160816120549p:plain

続きを読む