2013年7月27日土曜日

レガシー

最近、実行速度を気にしているせいか、コンパイル言語を触ることが多いですが、
書いてて、「最近の言語ならもっとスマートに書けるのに」と思います。

でも、FORTRANとかCでエレガントに書くのが、真のプログラマーかなとも思います。

結局プログラムは「どのようなツールで作るか」の選択であり、成果品の本質ではないはずです(ユーザーからしたら、やりたいことがやれれば何でも良い)。

ただプログラマーはプロフェッショナルなので、速さとか、管理とかいろいろ考えた上で選択したいですね。

だから、昔の言語を知っておくのは大事ですし、今の言語を知るのも大事です。
その上で、なぜこのようなやり方を選択したのか、を明確に説明できるようなロジックを持っていたいですね。

2013年7月26日金曜日

無題


Real Basicのファイル出力です。
変数iと配列f、f_exactをストリングで繋いでラインで出力する。
fは計算値、f_exactは厳密解です。

  'ファイル出力用
  fout=GetFolderItem("output.txt")
  txtout=fout.CreateTextFile
  txtout.delimiter =Chr(13)
  txtout.WriteLine "i,f"
  for i =1 to ixmx
    outs = str(i*dx)+","+str(f_exact(i))+","+str(f(i))
    txtout.WriteLine outs
  next i
  txtout.Close
  'ファイル出力用終わり

2013年7月23日火曜日

Vim

vi/vimを使ってます。
しかたなく。
でも覚えると速いですね。プログラムを書く時のインデント周りの設定が出来ればもっと良くなりますね。


2013年7月22日月曜日

C wtith Classes

c++の書き方は色々あると思います。
better C
C with classes
ジェネリック

速度優先だとBetter Cがやりやすいと思います。
最適化が書けやすいみたいです。

でも、保守性も大事です。

このバランスが一番大事だし、解析屋がご飯食べられるのはこの究極の答えが、Case By Caseだからだと思ってます。

今日はDEMでツールを作れそうだったので、構想だけ考えました。
可視化とかがちょっとめんどくさいです。

でも教養として知っておきたいです。

2013年7月21日日曜日

CentOS

インストールが楽ですね。ウィンドウズよりも。

慣れれば、おそらく一番速いですね。
yum install ・・・で全部行けますし。

GUIは使ってないので分りませんが、Qtとか使えるのか試してみたいです。
GUIが必要な訳じゃないですが、作ることができる環境は整えておきたいです。

Apache,PHPはインストールできたのですが、wikiが巧く行きません。
もう少しなんだけどなぁ。

ポメラ2

キーボードはCapsとCtrlを入れ替えられるといいですね。
エディタはEmacsとか使えるといいです。

もう、テキストエディタで突っ走って欲しいです。
乾電池で動くテキストエディタ。
そんな尖った商品、ぜひKING JIMさんには作り続けてほしいです。

2013年7月20日土曜日

ポメラ

ポメラのシャア版を買った。

カレンダー機能は便利だ。コンパイラ入れなくても良いけど、コードのインデントを自動に入れてくれるとプログラム書き放題なのに。

2013年7月18日木曜日

cent os

intelとか入れました。
ゼロから入れるとvi使えないと話にならないですね。

でも非常に楽しい。
オープンスースの方が、可能性が大きいですね。

GPUも入れて、CUDAとかで解析もやりたいです。

CentOSについては備忘録を残したいですね。
ゴールデンウィークにやりっ放しになってるのでなんとかやってみます。

経験者の方から、「これは読め!」みたいなのがあれば教えていただきたいです。

やること

今日はやることがたくさんある。

Linuxの設定。
エミュレータの設定。
物理モデルの確率モデルへの落とし込み。
ネットワークの設定。
シェルによるデータ整理スクリプト作成。
VisualStudioの設定。
業務データの確認。

ちょっときついな。

2013年7月15日月曜日

QUICK

等間隔格子です。
XOJOです。

必要とあればTVD化のソースや不等間隔TVD-QUICKもあります。

'以下ソース

  dim f1 as double
   if u >= 0 then
    f1 = f-u*dt*(3*fdn1+3*f-7*fup1+fup2)/(8*dx)
  else
    f1 = f-u*dt*(3*fup1+3*f-7*fdn1+fdn2)/(8*dx)
  end if
  return f1

2013年7月14日日曜日

Linux

今、CentOSとUbuntuの勉強中です。

RHELとDebianで二つです。

いやー、面白い。ついでにPHPも勉強中。はじめてのPHPとプログラミングPHPの2冊をポイントでゲットしました。ファイル操作関係を巧くできるといいなと思ってます。

情報工学を学んだ方は当然かもしれませんが、
ニュートン力学を基礎とした工学がベースの人間からしたら、コンピュータはツールでしかないんです。ただ、こだわりたいですね。

XOJOは全部同じだから非常に優秀だと思います。
でも、なんかですね。オープンソース使えないとだめだという脅迫観念があります。

皆さんはどうしてるのか気になります。

もっと、解析のソースを公開したいです。

流体が基本ですが、もっと基本の移流、拡散、ラプラス、ポアソン等々、いろんな言語で公開して、みんなで勉強できたら良いなと思ってます。

よろしくお願いいたしますね。


2013年7月7日日曜日

コロケート格子

なんか難しい。。。
巧くイキマセン。。

うまくいったらソース晒すぞ!

無題

なんか、ゾージョーって書くとアクセス増えるので、書かないことにします。

もう限界に近いのか?

①やりたいこと。
②やらなきゃならないこと。
③やることを求められていること。

多分、最低限②、③が社会人の優先順位。
自分は①が一番です。

だから苦しい。

世界を変えるのはゼネラリストじゃない。
一部のスペシャリストだ。
俺はスペシャリストになりたいんだ!

2013年7月4日木曜日

ソース

なるべく公開したいですが、出来てなくてすみません。

勉強したいときに何から手をつけたら良いのか分らないことが多いと思います。

ざっくばらんですが、話題提供を出来れば良いと思ってます。

勉強大好きな人間の成果を世の中に反映し、勉強してる人に対してちゃんとペイできる世の中が本来、日本のあるべき姿な気がします。


dam break

河道地形を踏まえたSource Termの修正がが分ってきた。

後は摩擦ですね。

2013年7月3日水曜日

ダムブレイク4

スタッガードスキームはあまり好きではありません。

なんで、定義場所変えんねん!



2013年7月1日月曜日

ダムブレイク3

いろいろ弄って、運動方程式の記述を間違っていることに気づいた。

修正したけど、急変するところでは、1次風上を使っても、振動が残ります。
ただ、ベースは出来たので、ようやくFDSの人工粘性を入れられます。

Leap Frog、1st_Order_upwind、人工粘性でスーパーロバストにしてやる予定。