ささみろぐ

チラシの裏

町の謎に出る

MCC今年度部長のsasamijpです。MCC advent calendar 2017 12/14の記事です 12/14です 本当です

MCC Advent Calendar 2017 - Adventar

地下鉄を乗り回してなぞなぞを解いていくという企画があったのでやってきました。

realdgame.jp

新宿駅の地下、丸ノ内線の窓口にあるブースで2000円ちょっとのキットを買って、指示が書かれた紙に従います。クリアするまでに4〜6時間ぐらいかかるので丸一日確保してやるのが普通みたいです。ネタバレ禁止なので詳しく書けないけど、ただのシーザー暗号(文字ずらすやつ)ではない問題も多く、普段何気なく見たり触ったりしているものが手がかりになるような問題があって面白いです。

ところで、自分の足で町を歩きまわり、誰かと協力して発見を積み重ねていく感覚はかなり脳にいい。溜まっていたヤバい何かが治療されていきます。そもそも外を歩き回って木の実を見つけて喜んだり、森を走り回って叫びながら獲物を追い込んだり、川をうろうろして仕掛けを考えて魚を捕っていた生き物だから、これが楽しいのは当然のことですね。現代の人間も、道をうろうろしながらタバコ吸って叫んでみたり、喫煙所でソーシャルゲームをして雄叫びを上げたり、服を着たままお風呂に入ったりするべきではないでしょうか。

普段、土日にレポートしかやらないような生活、座り仕事、電車移動をしていると、歩き回って何か見つけるという感覚がだんだん鈍ってくるような気がします。まさに今こそ、町をうろうろする時代では!?ポケモンGOより面白いゲームをやりたい!なにも思いつかない!

チラシの裏

4日ぐらい使って呉と広島に行った。海と山があるというのがいいところで、小金井にはそれらがなく、飛行機に乗って行った。小金井には何も無いんじゃないか?

コンクリートが熱くて暑いなか呉を歩いて回った。山と海との距離が異様に近く、歩いている間は暑いということと戦争のこととこの先どうしようということを順繰りに考えていた。大和ミュージアムで潜水艦のカレーを買った。船の積み木に苦戦していたら大和を作るときはブロック工法を使ったんだよとおばさんが教えてくれた。大和を作った場所ではまだブロック工法でコンテナ船を作っていて、レンガの鎮守府の近くは白い制服のおじさんが歩いていて、100年たっても同じ場所が同じ使われ方で安心感がある。オタクなのでこの世界の片隅にですずさんが右手をふっ飛ばした場所に行った。行ったところでそういえばあの人たちは実在しないんだった…と気づき、気づきを得た。最初から知っていたけど気づいた。

人の少ないフェリーで広島港に行った。客室の外はエンジンの低い音が大きくて涼しくて動的な眺めが綺麗だった。 原爆ドームは具体的で説得力があって、捻れたり歪んだり溶けたり外れたりして、芝生と柵に囲まれて崩れていた。 平和記念資料館にある意見ノートに色んな言語とボールペンで戦争への感想が書いてあった。英語と中国語と日本語、たまにスペイン語とドイツ語があった。

海にはカキ?養殖のイカダがたくさん浮かんでいて、空が入道雲とか飛行機雲とかで雲ばっかりになっていた。広島港の近くの海に突き出た公園を一周したらすごく疲れた。すごく疲れたまま180円の人の少ない路面電車に乗って帰った。

読んだ本最近

世界史 上 (中公文庫 マ 10-3)

世界史 上 (中公文庫 マ 10-3)

世界史 下 (中公文庫 マ 10-4)

世界史 下 (中公文庫 マ 10-4)

読むcivとか言われてて面白そうなので読んだら面白かった。戦争とか文化とか宗教とかのせめぎ合いがわかりやすいし、作者めっちゃよく調べてんな〜って思った(小学生並みの感想)。

サピエンス全史(上)文明の構造と人類の幸福

サピエンス全史(上)文明の構造と人類の幸福

サピエンス全史(下)文明の構造と人類の幸福

サピエンス全史(下)文明の構造と人類の幸福

友人が面白いって言ってたので読んだらめっちゃ面白かった。もう人間の幸福とか脳内物質でしかないみたいな説とか伊藤計劃のハーモニー思い出した。あと仏教っていうかブッダがすごくて、渇愛をやめれば苦しみもなくなるよねみたいな説にはう〜〜ん確かに….と唸った。俺も渇愛やめてえ〜

計算物理学入門

計算物理学入門

  • 作者: ハーベイゴールド,ジャントボチニク,Harvey Gould,Jan Tobochnik,鈴木増雄,石川正勝,溜渕継博,宮島佐介
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2000/12
  • メディア: 単行本
  • 購入: 1人 クリック: 28回
  • この商品を含むブログ (45件) を見る

レポートのネタ探しに読んだら面白い実験がいっぱい載ってた。セルオートマトンで流体のシミュレータ作るのとかが好き。コンピュータで物理やるのロマンあるよな〜って思った。非線形とか複雑系とか呼ばれるやつに興味が出てきた(出てきただけ)。

輝ける闇 (新潮文庫)

輝ける闇 (新潮文庫)

夏の闇 (新潮文庫)

夏の闇 (新潮文庫)

文章それ自体がエロい(中学生並みの表現)。輝ける闇もすごくよかったけど、夏の闇もすごくよくて「あ〜〜〜〜結局ベトナム行くんか〜〜〜い!!!!!!!!!!!!」って思った。ていうか夏の闇の文庫の裏の概説みたいなところにベトナム行くって書くなよ…なんでそこでネタバレするんだよ…

伊藤計劃トリビュート2 (ハヤカワ文庫JA)

伊藤計劃トリビュート2 (ハヤカワ文庫JA)

めちゃよかった

尾張ハジメさんマジで好き….🙏

markdownでレポートを書く

日ごと夜ごとに積もり積もるレポート課題からなる圧倒的需要にお答えして、今日はmarkdownで爆速かつ高品質なレポートを書く環境を作っていきたいと思います。材料はこちら

全体のイメージとしては markdowntex ➔ pdf という順番で変換していく仕組みを作ります。

まずtex ➔ pdfです。dockerのlatexイメージはこれ

GitHub - thii/docker-platex: Docker image for pLaTeX

latex環境を作ろうとして失敗することはよくありますが、これはdockerで動くので失敗しません楽勝です。 githubのREADMEにもありますが、dockerをインストールしてdockerコマンドを使えるようにした後、

docker pull thii/platex
docker run --rm -v `pwd`:/latex thii/platex build example.tex

などのコマンドでtexファイルをビルドしてpdfファイルが得られます。

つぎにmarkdowntexという変換をするrubyスクリプトはこれ

md2tex.rb · GitHub

例えばmarkdownのほうに

あ


# はじめに
## はじめに1
### はじめに2

enumerate
- 粒子の速度から粒子を移動する
- 粒子の衝突規則から値のみを変更する
- 速度ベクトルの平均を求める
- 二次元平面に全てのベクトルをプロットする
\enumerate

![包含判定アルゴリズムのフローチャート](img/flow.png) w=9 l=aa

というふうに書くと、出力は

\documentclass[onecolumn, a4paper, dvipdfmx, 12pt]{jsarticle}
\usepackage{listings}
\usepackage{color}
%\usepackage{pdfcolparallel}
\usepackage{layout}
\usepackage[dvipdfmx]{graphicx}
\usepackage[margin=2cm, bottom=3cm, footskip=1.5cm]{geometry}
\usepackage{url}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{here}
\usepackage[caption=false]{subfig}

\begin{document}
  \definecolor{OliveGreen}{cmyk}{0.64,0,0.95,0.40}
  \definecolor{colFunc}{rgb}{1,0.07,0.54}
  \definecolor{CadetBlue}{cmyk}{0.62,0.57,0.23,0}
  \definecolor{Brown}{cmyk}{0,0.81,1,0.60}
  \definecolor{colID}{rgb}{0.63,0.44,0}

  \lstset{
      breaklines=true,%折り返し
  }

\title{あ}
\author{おなまえ}
\maketitle



\section{はじめに}
\subsection{はじめに1}
\subsubsection{はじめに2}

\begin{enumerate}
\item 粒子の速度から粒子を移動する
\item 粒子の衝突規則から値のみを変更する
\item 速度ベクトルの平均を求める
\item 二次元平面に全てのベクトルをプロットする
\end{enumerate}

\begin{figure}[H]
\centering
  \includegraphics[width=9.0cm]{./img/flow.png}
  \caption{包含判定アルゴリズムのフローチャート}
  \label{aa}
\end{figure}

\end{document}

これを先ほどのdockerコマンドでビルドして f:id:sasamijp:20170330215811p:plain 簡単な置き換えをしてるだけですが結構楽になりました。

最後にmarkdowntex ➔ pdfの流れをシェルスクリプトで自動化します。

ruby /path/to/main.rb report.md > main.tex
docker run --rm -v `pwd`:/latex thii/platex build main.tex
open main.pdf

3行だけですがこれで完了です。rubyスクリプトシェルスクリプトは自分で書いてみると自分好みにできて楽しいと思います。

p.s. 画像を貼り付けるとき、pngファイルに対応するxbbファイルが生成できないエラーが出ることがありますが

cd img
for f in *.png; do
  docker run --rm -v `pwd`:/latex thii/platex extractbb -x $f
done
cd ../

こういう感じに、platexイメージ内にあるextractbbコマンドを使って無理やり生成するワザがあります。

Krile Advent Calendar 2016 21日目

www.adventar.org

今日はフリップフラッパーズというアニメについて紹介します。毎週観てる人も多いんじゃないでしょうか?

TVアニメ「フリップフラッパーズ」公式サイト

ではあらすじをみてみましょう。

あなたには、世界はどう見えているんだろう 扉をひらくカギを手にした二人のヒロイン、パピカとココナ。 少女と少女は出会い、そして別の時間、 異なる空間「ピュアイリュージョン」での冒険が始まる。 願いを叶えてくれるという”ミミの欠片“を求め、 ピュアイリュージョンを巡る二人の前に様々な困難が立ちふさがる。 二人に危機が迫ったとき“ミミの欠片”が輝き、 そして彼女たちは変身するのだった。 STORY | TVアニメ「フリップフラッパーズ」公式サイト

ざっくり言えば異世界バトルものです。二人のヒロインの気持ちがシンクロすることで強い力が生まれ、全てが解決する....。素晴らしいですね。これはもう完全に百合で、 Krile Advent Calendar 2016 7日目 - NTTrfでした。 の分類で言えば精神的百合にあたります。

手書きイラストで説明します。 f:id:sasamijp:20161220230649p:plain 基本の型を導入しました。ヒロインの性格がそれぞれ「明るく活発」「慎重」であることから、この関係は自明です。性格の違う二人が惹かれあうストーリー、完全に百合です。

f:id:sasamijp:20161220225622p:plain RSフリップフロップ回路とその真理値表です。この回路には前の状態を保持するという機能があります。以前に入力された値に依存して出力が決まる回路、完全に順序回路です。

f:id:sasamijp:20161221182708p:plain RSフリップフロップ回路を写像と捉えます。以前の入力値に依存する性質はこの際無視します。

f:id:sasamijp:20161221212314p:plain:w300

つぎに色とビットの一対一対応 { \displaystyle \phi } を準備します。

f:id:sasamijp:20161221212715p:plain 組み合わせるとこうです。変身すると髪の色が入れ替わります。

f:id:sasamijp:20161221213858p:plain 異世界でしか変身ができないんですね。

f:id:sasamijp:20161221214133p:plain 図からフリップフラッピング演算が導かれます。それはそうとして本当にいいアニメなのでぜひ観てください。

jQueryで投げやりなアニメーション

この記事は www.adventar.org

の12/19の記事です

はじめに

amaoto_live http://www2121uo.sakura.ne.jp/amaoto_live/ というサービスを作ったときの話を書こうと思います。

一番言いたいこと

amaoto_liveは気象センサの値から雨とか風の音を再現するサービスですが、そんなことは割とどうでもよくて、 f:id:sasamijp:20161218154850g:plain トップページの、マウスオーバーしたらニュッとセンサの情報が出て来るアニメーションがかっこいいので、これだけについて解説していこうと思います。

ライブラリ

DOMの透明度を変更したりマウスオーバーのイベントをとったりするのにjQueryを使います。 jquery.com

文字自体ををパタパタ表示させていくのにshuffleLetters.jsを使います。これを使うだけでSF感が出ます。 tutorialzine.com

アルゴリズム

センサの情報を表示するDOMの透明度が元々1.0に設定されていて、マウスオーバーイベントが発火したら透明度を0.0にします。 f:id:sasamijp:20161218162654g:plain ソースコードの一部をみてみると下のような感じになっていて、

gist.github.com

hover以下の処理がマウスオーバーで実行されます。ものすごく汚い書き方ですが、HTMLの仕組みだとこれだけで一応動く仕組みができて楽です。

おわりに

jQueryで雑にアニメーションが書けるのが楽しいぜ!という話でした。Webの仕組みで動いてくれると他の計算ロジックと連携して色々できてとてもいいです。ちなみに同じような仕組みでこういうのも作れます。 http://www2121uo.sakura.ne.jp/industrial/ f:id:sasamijp:20161218163513g:plain

産業革命の風を感じる...

最近読んだ本を紹介するぜ!

これはすごい

これもいい

これはかなりすごい

これはつらい

これはすごくいい

以上だ!