ソフトウェア開発したい日記

「面白い!」と思った頭の体操や、数学の問題を載せていきます
その他ロードバイクででかけた先の写真や、ソフト開発のメモ等

NetBeansでフォームの描画中に例外が発生した

2011年12月26日 18時11分40秒 | ソフト開発日記
原因はまるで不明ですが、
NetBeansを終了→翌朝起動→デザイナ画面
と移ったら

「フォームの描画中に次の例外が発生しました。「インスペクタ」ウィンドウを使用して、問題のあるコンポーネントを修正または削除して下さい。」

というメッセージが。
例外はデザイナ上に書かれており、そのせいで他のコンポーネントが見えない状態に。
ちなみにNullPointerExceptionで、ButtonStateがどうのこうの書かれてました。

そして色々探っていたら、ラジオボタンのプロパティに問題が。
ボタングループに登録してあるラジオボタンの1つのプロパティを見ると、
selectedとactionCommandプロパティが、赤字で「Error getting property value」となってました。

その後色々試してみるも、本質的な原因や根本的な解決策は見出せませんでしたが、
とりあえずプロパティにエラーのあるコンポーネントを一度削除して、再び配置したら例外が消えました。
ただ、このままでは再発しそうです。

救急車で運ばれた

2011年12月24日 19時47分20秒 | 独り言
控えようと決めてたはずだったのに、疲れと仕事が溜まっていたせいか、
飲み会で飲み過ぎて気が付いたら病院で寝てました。

アルコールが抜いて点滴うって尿道カテーテルで排尿して、
先生が来て親が来て、色んな人に謝ってものすごく疲弊しました。

もう懲りました。

3次元FEMソフトできた!

2011年12月16日 16時35分35秒 | ソフト開発日記
2次元FEMソフトが完成してから苦節1週間。
ついに3次元への拡張ができました。

(↓2次元FEMの画像)


ある程度高い精度を出せるように、
2次元ではアイソパラメトリック四辺形一次要素、
3次元ではアイソパラメトリック六面体一次要素を採用。
積分は8点の2次積分を(2次元では4点)。

[B]マトリクスが煩雑すぎてデバッグで吐きそうになったりしましたが、
懲りずに書いてなんとか動いたときは感動しました。

現状は単純な図形に対してのみの有限要素解析ですが、それっぽい結果の生成が嬉しかったので記念記録。

また、六面体要素1つの要素剛性マトリクスが24×24の行列で、
全体剛性マトリクスは要素の頂点数×3とかなり膨大な行列になってしまうので、
すぐヒープ領域が足りなくなってしまう現状。
起動時にメモリ確保の命令入れても要素数2000くらいでが限界でした。

これからまた、連立一次方程式のメモリに優しい解法アルゴリズムを書く作業がはじまります。
それができたらメッシュ分割アルゴリズムを勉強して、UI整えてそれっぽいもの作りたいです。

大学の研究進めずに何やってるんだろう。

NetBeansでApache Commons Mathを使いたい

2011年12月05日 00時54分07秒 | ソフト開発日記
これまでひたすらシコシコと全部1からソースコードを書いてきたけど、
最近作業が全然追いつかなくなってしまったため、今更ながら数値計算ライブラリに手をつけることに。
数値計算ライブラリ「Apache Commons Math」をNetBeansで使うまでのメモ書き。

①公式サイトから最新版のBinaries(2011年12月5日時点でver2.2)をダウンロードし、適当な場所に解凍。
http://commons.apache.org/math/

②NetBeansを起動して、[ツール]→[ライブラリ]と進みライブラリマネージャーを起動。

③[新規ライブラリ]ボタンを押して、「ApacheCommonsMath」を追加。

④[JAR/フォルダを追加]ボタンを押して、先程解凍したフォルダから
「commons-math-2.2.jar」と[commons-math-2.2-sources.jar]の2つのファイルを追加。

⑤プロジェクトウィンドウで、目的のプロジェクトの[ライブラリ]を右クリックし、[ライブラリを追加]をクリック。
「ApacheCommonsMath」ライブラリを追加する。

これでライブラリのクラスとJavadocが表示されるようになりました。