第一回目の非常勤講義,終了。こーゆー話をしたのだが,途中で放棄する学生さんもチラホラ。もっと沢山脱落させるべきという意見もありそうだが,せいぜい50名程度の受講者をこれ以上減らしてもなぁ。JABEEなんてのは教員からの悪評たらたらなものだが,受講者数制限については数少ない利点かなという気がする。まあ次回は高校レベル(つーても複素数の四則演算も怪しいという方々もいらっしゃるのでちょうどいいかも)になるので,ご勘弁を願いたいものである。GW後には全部テキスト完成を公言してしまったので,4月中はこれと某シンポジウムにかかりきりになる予定。ああ,のんびりぷちめれっていられた時間が懐かしい(でも現実逃避したくなったら書くかも)。
つーことで,講義終了後はやたらに疲れてしまったので,帰宅して風呂入ってすぐにバタンキュー。早めに寝過ぎてこんな時間に目が覚めてしまったので,手持ち豚さん((c)高橋なの)ついでにこれを書いているという次第。他にやることないのか>ワシ
ふーん,水月さんがそんなことを主張しているんだ・・・って,自分の歩んできた人生を正当化しようとすると,自然,そういう論になるんじゃないかな。ワシなんかは思い通りに歩めなかったことばっかしだし,エリート大学院に入った訳でもなかったので,20代後半には社会的要請と自分の学術的興味とのギャップをいかに小さくするか,ってことに悩み始めたもんだが,うかつに旧帝大に進んじゃうと,そーゆー構造主義的自己内省ができず,エリート的エゴむき出しになるモンなのかしらね。・・・ところで,水月さんは常勤職につけたのかしら? 結構話題になった新書も書いたことだし,他にも業績は結構ありそうなので,どっかに定着できても良さそうなモンなのだが。
さてもう一眠りするとしますか。
4/10(木) 掛川・?
うっひょ~,初回講義前日にようやっとテキストが4章分出来上がった~。一応公開済みの所に置いてあるけど,URIは全部完成してから公開予定。GW中には一通り完成させたいので,その辺かな~?
しっかし,講義前日の筈なのに,先方からは全く連絡nothing。これも凄いよな。明日初回ってのをご依頼のM先生から聞いてなかったらアウトだぜ? 年間スケジュールもWebに載ってないし,全く教員と学生は最高だが,事務体制は超ヘタレだなぁ>S大J部
で,初回はいきなり複素関数・関数近似・数値積分の概略を喋っちゃう予定なのだが,さーてどうなりますことやら・・・ちと不安であるが,まあ優秀なる学生さんのことであるから,何とかなるでありましょう・・・と人ごとモード。
で,C++標準の複素数計算機能を調べている内に,gcc(g++) Version 3.4.6の”complex”ヘッダファイルを覗いてみた。除算の中核部分はこーなっている。
// 26.2.5/15 // XXX: This is a grammar school implementation. templatetemplate complex<_Tp>& complex<_Tp>::operator/=(const complex<_Up>& __z) { const _Tp __r = _M_real * __z.real() \ + _M_imag * __z.imag(); const _Tp __n = std::norm(__z); _M_imag = (_M_imag * __z.real() - \ _M_real * __z.imag()) / __n; _M_real = __r / __n; return *this; }
こんなんだから,gccのライブラリは信用ならないって言われちゃうんだよなぁ。”grammer school implementation”って開き直られても・・・。ちなみに,Visual C++ 2003以上のものはかなりマトモでした。そろそろ数値計算にgccはステ,かな。どう計算すべきか,って話はワシの資料(大元は伊理センセの本)にも書いてある。
さて,明日はちょっと早めに出かける予定なので(何せ,出勤簿がどーなっているか,J学部の非常勤講師室がどこかもさっぱりワカランし),今日はこの辺で寝ます。
4/5(土) 掛川・?
うう,日を跨いでようやっとプログラミング環境の準備が出来たぁ~。っつってもこれをきちんと整えるのは一苦労なんだがな。
PNGwriterをVisual C++ 2003以降の環境で動かすにはこの説明通りにやるとうまくいく・・・のだが,同じVCでもExpressバージョンではmasmがなかったり(代わりにmasm32を利用),VC 2008では.ccファイルもC++ファイルとして認識してくれたりするので.cppへのリネームも不要だったりと,微妙に違うところがあって面倒だ。でもまあそれ以外のlibpng+zlibやFreeTypeはVCのプロジェクトファイルが最初から同梱されているので,コンパイルは楽チンだ。
で,動いた証拠品を貼り付けておく。
![]()
サンプルはこれ。TrueTypeフォントはWindowsのものを使っている。truetype.exeという名前でサンプルプログラムを生成したので,実行時には
truetype c:\windows\fonts\msmincho.ttf ..\text1.txt c:\windows\fonts\msmincho.ttf ..\text2.txt c:\windows\fonts\msmincho.ttf ..\text3.txt c:\windows\fonts\msmincho.ttf ..\text4.txt c:\windows\fonts\msmincho.ttf ..\text5.txt
とした(全部つなげて一行で実行)。
さて,ここまでくれば後はお絵かきだけだ・・・つーことで,杉浦先生の教科書のP.118の例(「の」ばっかしや)を書いてみる。ソースコードはもちっと整理&C++のお勉強をしてから公開する予定。
![]()
春なのでそれっぽい色にしてみました。かえって気持ち悪いかな?
ん~,この図を見ながらY博士が「桁数を増やすと絵が変わるんじゃない?」とか言っていたのを思い出すなぁ。計算桁数の影響が出るのはもっと細かい部分の配色だけで,大まかな外形には殆ど変化はないと思うけどね。
この辺で体力の限界なのでもう寝ます。
起きました。うー,部屋が広くなった分,掃除が面倒になったなぁ。乾燥機のない17年目の二層式洗濯機を使っているせいで,干す作業が加わったし,オマケに北向きだからベランダは全然日が差さず,一日かけても乾きゃしない。夏のボーナスではぜぇ~ったいにナナメドラム式洗濯機を買って広末涼子に入ってもらうのだ!(ちょっと妄想が入ってます)。
電気代,17日分だが請求書が届いた。ここで公開するが
![]()
うはー,たっけぇ~。オール電化生活は思いの外高く付くことを思い知る。まあエアコンを暖房モードにしてガンガン使ったせいもあるだろうが,このペースでいくと,月々1.3万円~1.5万円を中部電力に貢がねばならないことになる。以前のアパートではガス代が4千円,電気代は20A契約だったので夏の暑い盛りでも最高で8千円程度だったから,暖房用の灯油代を含めてもコストアップである。まあ広い部屋だし,温度を一定に維持するだけでも高くなるのは致し方ないが・・・うう,節約せねば。
電気代を噛みしめながら,休日を過ごします。
4/3(木) 掛川・?
むぅ,ゴミ出しについて,とうとうクレームが付いてしまった。PC用に組み立てたレンジ台の梱包材のうち,かさばるビニール類を燃えるゴミにして出したのだが,そーゆーものは資源ゴミにして出せ,ということらしい。わざわざ手書きの分別マニュアルまで頂く始末。いや,きちんと読んだつもりだったのだが,汚れのあるものを一緒くたにしていいのかと思ったし,そもそも資源ゴミ用の袋はパンパンで,無理に詰め込んだら破けそうになっていたのだ。・・・ま,言い訳ですがね。しかし,指摘する方もされる方もお互いイヤな気分である。次回から気を付けるしかないなぁ。そのうち以前のアパートのように,町内会から締め出しを食うかもしれず,それはそれで気楽でいいけど。
テキスト執筆,煮詰まる。つーか,全体方針が見えてきたのですっかりダレてしまったのである。で,サンプルプログラムなんぞをチマチマと触っていたりするのである。
お手本は大部分複素数計算が含まれるので,ライブラリとしては何がいいかな,と考えたが,やっぱり標準のC++ライブラリ(MSDNの解説)がいいな,ということになった。Visual C++とGCCで共通に使えるソースで,しかも余計な記述が少ないもの,となると必然的にそーなる・・・かな? ある程度出来たらライブラリ化しよっと(有言不実行の可能性大)。
で,ついでにお絵かきツールは何がいいかな・・・と捜していたら,PNGwriterなるものを見つける。まだ試していないが,Freetype(文字列埋め込み機能を使わないのなら不要)やzlib/libpngが揃っていれば,Windowsでもイケルらしい。C++なので用途的にもぴったり。どーせ2Dお絵かきしかしないので,ま,これでいいか。以前はOpenGLを使っていたが,2Dで使うにはちと道具立てが面倒なのである。うまくいけば半年遊べるかも。
なんで日本語の解説がちらとあるのかな,と思ったら,土台に使用された資料は日本人が書いたものだった。なるほど。フランス人が翻訳CGI使ってワシのページを読むぐらいだからな。こーして不完全ながらもBabelの塔が着々と建設されていくのであるなぁ。天から雷が落ちなきゃいいが。
・・・で,今日も下書き完成せず。明日こそ・・・って出来たためしがあったっけ?
ともかく頑張りマース。
4/2(水) 掛川・?
尻に~(しりにぃ~)
火がついた~(ひがついたぁ~)
燃えてるよぉ~(もえてるよぉ~)
ぼうぼうだよぉ~(ぼうぼうだよぉ~)
つーことで,FFTテキスト,一気に講義三回分書き下ろし。4回目で挫折。今日はここまで。
先日の年齢計算プログラム,
your_age = current_year – birth_year;
if(current_month < birth_month) your_age--; else if(current_month == birth_month) { if(current_day < birth_day) your_age--; }
の部分は,もっとシンプルに
age = (int)((current - birth) / 10000);
でいいじゃないかというご指摘をT君から頂く。うむ,確かにスマートだ。で,書き直したものをアップしておく。
明日も(今日か)頑張ります。今週中に何とか全体の下書きを書き上げるのだだだ。