人気ブログランキング | 話題のタグを見る

天才少女ドラマーたち

YouTube で見つけた天才少女ドラマーたち。4人の演奏スタイルは全く異なっているが、みんな魅力的。つくづく日本はすごい国だなと思った。







# by tnomura9 | 2022-01-05 12:54 | Comments(0)

Li-sa-X

天才少女ギタリスト Li-sa-X がちょっと見ない間に大きくなって16歳になっていた。


昔から有名なので新星ではないのだが。スキルも格段に上がっている。8歳のときの『Scarified』と比べても上達が明らかに分かる。単なるテクニックではなく音楽性を感じる演奏だ。


この子は、天才少女では終わらないね。



# by tnomura9 | 2021-12-30 10:40 | 話のネタ | Comments(0)

NEMOPHILA


曲も、スキルも、ビジュアルも、MVも全てがカッコいい .... らしい。

大化けしそうなバンド。

# by tnomura9 | 2021-12-29 17:04 | 話のネタ | Comments(0)

長距離選手のランニングフォームについて

田中希実と不破聖衣来に釣られて、ホクレンディスタンス3000mの動画を見た。田中希実が黒人選手を抑えて一着でゴールインしたが、レースを見ていて気づいたことがある。

それは、先頭集団の選手たちと、それ以外の選手たちのフォームの違いだ。ちょっと見ただけでも分かるはっきりした違いがあるのだ。

先頭集団の選手たちと、それ以外の選手たちのフォームで違っているのは、前に振り出した足の大腿と体幹の作る角度だ。後続の集団の前に振り出した大腿は地面と水平で、体幹とは直角に近い角度になっている。それに比べ、先頭の集団の選手の前に降り出した足の大腿は、地面に対して立っていて、体幹との角度は鈍角になっている。

また、足の部分の動きに注目すると、足の軌跡の形が異なっているのが分かる。後続集団の選手の足の軌跡は前後に長い楕円形になっている。それに比べ、先頭集団の足の軌跡は円運動をしているのだ。

これらの違いはおそらく先頭集団の腰の位置が高いせいだろう。地面を這うような走法を腰高に変えて足が楕円運動ではなく円運動を描くようにするだけで、ランニングのスピードがかなり上がるのではないだろうか。

足が楕円運動をする走法と、足が円運動する走法では、感覚的にも地面を蹴って前に出るときのエネルギー効率が違っているような気がする。

黒人選手の強さは、人種的に筋肉や循環系の強さが違うというのではなく、ランニングフォームの違いだとしたら日本人の選手にもチャンスが出てくるのではないかと思う。

ネット検索すれば何か出てくるのではないかと思ってやってみたら、出てきた。ランニングフォームには3種類あって、フォアフット走法、ヒールストライク走法、ミッドフット走法というのだそうだ。先頭集団の選手のはフォアフット走法で、スピードに優れるようだが、日本人の骨格にはあまり合わないらしい。残念。

しかし、不破聖衣来選手の走法はヒールストライク走法だが速い。どこが違うのだろうと10000m走のビデオをみて、他の選手と見比べていたら一つ違うところを見つけた。それは後ろに蹴り出した後の足のかかとの位置が高いのだ。蹴り足を前に振り戻すときのかかとの高さが腰の高さに届いている。それに比べ他の選手のかかとの位置はかなり低い。

かかとの位置が高いということは後ろの足を折りたたんで前に振り戻すことができるので、モーメントがかなり小さくなるのではないだろうか。そのため、振り戻すときの回転速度がかなり早くなる。そのへんが彼女の異次元の走りの秘密のひとつだとすると面白い。

長距離走の走り方は選手の独自な経験的な工夫の成果なのだろうが、それだけでなく工学的な視点からこれを検討すると、面白い成果が期待できるような気がする。

ビデオを漁っていたら、田中希実の踵も高かった。

# by tnomura9 | 2021-12-21 06:04 | 話のネタ | Comments(0)

read とコマンドライン編集

標準入力から1行を読み込んで、標準出力に出力するプログラムはシェルスクリプトでは次のように書ける。

$ read line; echo $line
hello, world
hello, world

同じようなプログラムを C で書くと次のようになる。

$ cat foo.c
#include <stdio.h>

int main()
{
    size_t bufsize = 0;
    char * line = NULL;

    getline(&line, &bufsize, stdin);
    printf("%s", line);
}

コンパイルして実行。

$ gcc foo.c
$ ./a.out
hello, world
hello, world

しかし、この方法ではコマンドライン編集ができないのでカーソル移動キーを使うと次のようになってしまう。

$ read line; echo $line
hello^[[D^[[D
hello

コマンドライン編集を行いたい場合は、read では -e オプションをつけるだけだ。矢印キーや Emacs ライクな編集操作ができる。

$ read -e line; echo $line
hello world
hello world

同じようなプログラムを C で書くことができる。readline ライブラリが必要だが、標準では搭載されていないので apt でインストールしなければならない。

$ sudo apt install libreadline-dev

C のプログラムは次のようになる。

$ cat bar.c
#include <stdio.h>
#include <readline/readline.h>

int main()
{
    static char * line = NULL;

    line = readline("> ");
    printf("%s\n", line);
}

コンパイルするときは -lreadline で readline ライブラリの指定が必要だ。

$ gcc bar.c -lreadline
$ ./a.out
> hello world
hello world

シェルスクリプトでは1行で済むところが、結構面倒な手続きになる。しかし、シェルスクリプトと同じことをするプログラムを C 言語でも書くことができる。やっていることが同じということがミソだ。シェルコマンドと同じことができる C のスニペットを持っていれば、シェルスクリプトで試作して動作確認した後 、C でプログラムすることができる。

# by tnomura9 | 2021-12-06 23:08 | ed と sed | Comments(0)