Visual Studio 2008でQtの開発環境を作る

最近,諸般の事情からVisual Studio 2008という古い処理系でQtの開発環境を構築することになったのですが,幾らかの事情でつっかえたのでメモとして残しておくことにします.今回必要だったのはQT 4系だったので大雑把な手順としては以下です. Qt 4.8.4のイ…

Eigenの特異値分解を利用した主成分分析

今日はEigenを利用してデータ分析の手法として良く知られた主成分分析を実装してみます.基本的な部分は以下の記事と同じで,C言語やVBAから利用可能なDLLをビルドしようというものです. EigenのMapオブジェクトを使ってC言語の配列を操作する さて,主成分…

FreeBSD 9.1-RC2 公開

FreeBSD 9.1 Releaseに向けたRC2が昨日よりソースコードの形で入手可能になっていたようです(SVNWebのnewvers.sh).前回のRC1はRelease AnnouncementでCVSにエクスポートしないという方針が取られるとのことでした. With both the doc and ports repositori…

am-utilsを使ったUDF形式のDVDのマウント

今日はFreeBSDでUDF形式のDVDをマウントする際,どのような設定をするのが便利かと言うことについて考えてみます.ここでの論点は以下です. root権限を用いないマウント操作は可能か DVDをマウントする際にudf,cd9660のいずれを用いるか 日本語ファイル名…

findを使った再帰的なファイル属性変更

CD-Rなどの読み出し専用のメディアからコピーしたファイルや,FreeBSDとは異なる処理系で作成されたもので実行属性がついてしまっているファイルの属性を変更したい場合があります.こうした場合はchmodを利用することになるのですが,数が多い場合やディレ…

rsyncによる文字コード変換を伴うファイル同期

ファイル同期に良く用いられるrsyncにはiconvを利用してファイルの文字コードを変換する機能があります.今日はFreeBSD上でこの機能を利用してみます.さて,rsyncはFreeBSDのportsに取り込まれており,net/rsyncからインストール可能なのですが,件のオプシ…

Excel VBAのインターフェース継承を試す

Excel VBAには一応クラスの機能がありオブジェクト志向でプログラムを作成することもできます.さて,今日はImplementsキーワードを利用したインターフェース継承を試してみます.インターフェース継承をざっくりと説明すると,クラスモジュールを「扱う側」…

FreeBSD 9.1-RC1 公開

FreeBSD 9.1-Releaseに向けたBETA1が公開されてから,およそ一月が経過しましたが,先日より9.1-RC1がソースコードの形で入手可能になっていたようです(SVNWebのnewvers.sh).ソースコードを取得するには以下のようにします. svn co svn://svn.freebsd.org/…

subversionを使ってportsを管理する

先頃FreeBSDのportsツリーの版管理がsubversionに移行しました.ユーザーレベルの一般的な用途ではこの移行による影響はあまりないのですが,以下のような状況では利点があるものと思われます. ネットワークの都合でcsupが使えない portsツリーの特定の版を…

Spearmanの順序相関係数の計算とその検定

あるn組のデータセット,,について,その値に相関があるかどうかを調べる場合,Pearsonの積率相関係数を利用するのが最も標準的な手続きです.とはいえ,,が非線型な関数で記述される場合,または外れ点が存在する場合などはSpearmanの順序相関係数を用い…

DCDFLIBを用いたAnderson-Darlingの正規性検定

データを統計処理する場合にサンプルが特定の分布から生じたものかどうかを検定によって調査する場合があります.Anderson-Darling検定はこのような目的で使用されます.今日はデータが正規分布から生じたものかどうかを調べる方法としてAnderson-Darling検…

DCDFLIBで累積分布関数の値を計算する

DCDFLIBはTexas大学,M. D. Anderson Cancer CenterのBarry W. Brown,James Lovato,Kathy Russell氏らによって実装された,種々の確率分布の累積分布関数の値を計算するためのライブラリです.確率分布の密度関数の負の無限大からある値までの積分値を関数…

SandyBridge対応のOpenBLAS 0.2.2を試す

以前の記事でGotoBLASの後継として開発が進められているOpenBLASをFreeBSDで利用する方法を記述しました. FreeBSDでOpenBLAS 0.1.0を試す ところで,当該記事の公開時点ではSandyBridgeと呼ばれるマイクロアーキテクチャはサポートされず,Nehalemマイクロ…

FreeBSD 9.0-Stableの起動ディスクを作成する

FreeBSDをインストールするための起動ディスクイメージはReleaseが行われるごとにFTPで公開されますが,時折,開発版やセキュリティパッチ,または自身で作成したパッチを適用した状態のインストールディスクが必要になることがあります.今日はその作成方法…

EigenのMapオブジェクトを使ってC言語の配列を操作する

先頃Excelで固有値分解を行う必要があったのですが,さすがにVBAでこの処理を記述するのは面倒だったので,C++で記述された線型代数テンプレートライブラリであるEigenを利用したDLLを利用する方針を取りました.Eigenを用いたのは以下の理由によります. 依…

FreeBSDのFlash Playerの色が変わる問題

Youtubeの動画などをFreeBSDで試聴する場合,Linuxバイナリ互換機能を用いるAdobe Flash Playerを使うことになります.ところで,先頃気が付いたのですが,portsからインストールしたFlash Plugin 11を用いて動画を再生すると色がおかしくなる問題があるよう…

P8H67-VのBIOSを3603へ更新

IT

およそ一月ほど前に事故によるBIOSクラッシュの憂き目に会ったP8H67-Vですが,SPIPGMを用いての復旧後は特段の問題なく使えていました. P8H67-VのBIOSクラッシュ なのですが,5/24日に新たなBIOSである3603が公開されたこともあって,一昨日再びBIOS更新を…

GPTのディスクへWindows 7がインストールができない問題

IT

先日,古いコンピュータのディスクを交換し,Windows 7 (64bit版)をインストールしようとしたところ,以下のエラーメッセージによって処理を続行できないという問題に遭遇しました. このディスクに Windows をインストールすることはできません。このコンピ…

FreeBSDでOpenBLAS 0.1.0を試す

OpenBLASはGotoBLAS2に基づく最適化BLASで,現在Zhang Xianyi,Wang Qian,Zaheer Chothia氏らによって開発が進められています.後藤和茂氏によるGotoBLASは最速と名高い実装ではありましたが,ある時期より開発が停止し,そのライセンスがBSDライセンスに変…

Barracuda GreenとAdvanced Format

先日のファイルサーバー構築で特段の工夫もなく使ったSeagate社製Barracuda Green ST2000DL003ですが,このHDDの物理セクタ長について幾らか気になった点があるのでメモとして残しておきます. FreeBSDのgeliとgmirrorで暗号化RAID1を構成する 結論から述べ…

P8H67-VのBIOSクラッシュ

IT

昨日,普段使っているPCのマザーボードP8H67-VのBIOS updateに失敗し,BIOS起動不能なレベルでクラッシュさせてしまいました.こうした故障は復旧が困難な部類に入りますが,Web上に色々と情報を公開されている方々のおかげでBIOSを復旧できましたので,記事…

FreeBSD 9.0でxorg-server 1.10.6を試す

先頃FreeBSDのportsからインストール可能なxorg-serverの既定のバージョンが更新されました.この更新のついで(かどうかは分かりませんが)により新しいxorg-server 1.10.6をインストールするためのKNOBが追加されたとのことですので,今日はこれを試してみま…

FreeBSDのgeliとgmirrorで暗号化RAID1を構成する

FreeBSDのGEOMにはgmirrorというディスクのミラーリングを行う機構が備わっており,これを利用することでRAID1に相当する機能をソフトウェア的に実現できます.今日はこのgmirrorとgeliを利用して暗号化RAID1をソフトウェア的に実現してみます.ここでは,以…

Windows Media Playerのメディア情報の自動更新の無効化

IT

Windows 7に標準でインストールされるWindows Media Player 12は音楽や動画といったメディアファイルの情報をインターネットから自動で取得する機能があります.例えば,ある音楽ファイルにID3等の形でアルバム情報が付加されている場合,以下のようなファイ…

FreeBSD 8.3 Release公開

FreeBSD 8系の最新版であるFreeBSD 8.3 Releaseが本日付けで公開されたようです(CVS repositoryのログ).年始のFreeBSD 9.0 Release公開からしばらくしてリリースエンジニアリングプロセスに入っていた8系でありますが,8.3はこのブランチの最後のリリースと…

FreeBSD 9.0でCD-RWを書き込む

FreeBSD 9.0ではATAPIデバイス関係の既定の設定が変更されたようで,以前のようにburncdを用いてCD-RWを書き込むことはできないようです. Creating and Using Optical Media (CDs) CD-RWの書き込みにはsysutils/cdrtoolsからインストールできるcdrecordを使…

LAPACKE 3.4.0をVisual C++から利用する (1)――Rosser行列の固有値分解

先頃より,LAPACKをC言語から利用するためのインターフェースライブラリであるLAPACKEのビルド済みDLLが公開されています.LAPACKEはLAPACKをそのままC言語から使う場合に比べて以下のような利点があります. ポインタ渡しにする必要のない引数を値渡しにで…

LAPACK 3.4.0をVisual C++から利用する (5)――Rosser行列の固有値分解

これまで数回に渡ってLAPACKをVisual C++から使う方法について記事にしてきました.今日はRosser行列の固有値分解を扱います.Rosser行列は以下のような整数のみで構成された対称行列です. Rosser行列の固有値分布は以下のように非常に特徴的なものであるこ…

LAPACKとBLASを用いたMahalanobis距離の計算

共分散行列が与えられたとき,行列に関するMahalanobis距離はで与えられます.今日は正定値対称行列とベクタが与えられたときに,そのMahalanobis距離を計算するための関数を考えます.のCholesky分解の結果の上三角行列をとするとき,が成立します.の逆行…

FreeBSD 9.0でfusefs-sshfsを試す

今日はfusefs-sshfsを試してみます.これはSSHでログイン可能な計算機のファイルシステムを自分の計算機のファイルシステムとして利用する場合に有用です.まず,portsのsysutils/fusefs-sshfsからインストールを行います. cd /usr/pors/sysuilts/fusefs-ss…