主に高校~工学部生向けの数学の解説を行っています。 …
昔、gist にだけ置いてて、そういえばブログに書いてなかったものを思い出したので書いておくことに。 (一応、部分的には言及したことがあるんですけど、ちゃんとした話はしたことがなかったはず。) 決定論的ビルド 3年くらい前まで、C# コードをコンパイルすると、ソースコードを一切書き換えていなくても、生成結果の exe/dll や pdb のバイナリが変化していました(決定性(deteminism)がない)。 原因は以下の2つです。 バイナリ中に埋め込まれる GUID にタイムスタンプと乱数から生成される値を使っていた デバッグ用のファイル情報がフルパスで埋め込まれていた GUID の方はタイムスタンプと乱数なので本当に致命的で、ローカルで再コンパイルしても毎回バイナリが変化していました。 フルパスの方は基本的には pdb (デバッグ用シンボル情報)だけの問題なんですが、 exe/dll で
概要 「群とは」では算法を1つ持つ代数系の分類について説明しました。 ここでは、加法と乗法の2つを持つ代数系の分類について説明します。 このような代数系の分類として、環・体などがあります。 環・体とは ある代数系 ( A,{+, ×} ) に対して、以下の条件を考えます。 (+ を加法、× を乗法と呼びます。) 加法に関して「アーベル群」をなす。 加法と乗法の間に「分配法則」が成り立つ。 乗法に関して「半群」をなす。 加法に関する「単位元」(零元)を除いて、乗法に関して「群」をなす。 代数系Aが 1. 2. 3. を満たすとき、環(ring)とよび、 1. 2. 4. を満たすとき、体(field)と呼びます。 また、これらは、乗法に関して可換であるとき、可換環・可換体と呼びます。 (ただし、可換なもののみを体と呼び、非可換なものは斜体と呼ぶ流儀もあります。) 慣例的に、環は R で、体は
概要 まずは、算法を1つ持つ代数系の分類について説明します。 このような代数系の分類として、群・半群などがあります。 群とは ある代数系(G,・)に対して、以下の条件を考えます。 「結合法則」が成り立つ。 「単位元」が存在する。 「逆元」が存在する。 代数系Gが 1. を満たすとき、半群(semi-group)とよび、 1. 2. を満たすとき、モノイド(monoid)と呼びます。 また、1.~3. の全てを満たすとき、Gを群(group)と呼びます。 さらに、群(半群、モノイド)の中で、 「交換法則」を満たすものを可換群(可換半群、可換モノイド)と呼びます。 可換群はアーベル群(abelian group)もしくは加法群(additive group)とも呼ばれ、 その算法は、しばしば + を用いて表します。 (逆に言うと、+ を用いて表される算法は暗黙的に可換算法であると考えることが多
概要 「四元数と3次元空間中の回転」の付録。 四元数の数学的な側面について説明します。 はっきり言って、画像処理の分野では不要な知識。 画像処理(主に 3D CG)の分野では、とりあえず、 「四元数とは、回転の軸と角度を表わすために使うデータの形式」 とだけ覚えておけば OK。 ここで話す内容は要するに、 「なんでそれを四元数と呼ぶんだろう」という疑問に答えるものです。 ちなみに、「ハミルトンの四元数体」の内容の焼き直しだったりします。 より深く理解するためには、 「群」、 「環」、 「体」などについて調べることをお勧めします。 その前に・・・ 複素数についておさらい 四元数の説明に入る前に、 少し複素数についておさらいしておきます。 簡単に言うと、複素数ってのは以下のようなものです。 実数に、 i2 = −1 となる元iを追加したもの。 実数上の2次元ベクトルともみなせる。 曲形式 α
概要 2006年度前期輪講で発表した内容にそって説明を書く予定。 行列の、座標変換によって不変な性質を調べる。 座標変換によって不変な特徴量があるならば、その量こそが行列の本質を表す量なのではないか。 英語だとまさに、characteristic value、行列の“特性”値。 ちなみに、eigen はドイツ語起源の接頭語。 (英語だと own、「自分自身の」「自身に固有の」という感じの意味。 発音もドイツ語的にアイゲン。 というか、ドイツ語起源なので英語圏の人でも読めない場合があって、 エイジャンとかアイジャンとか読む人も。) 固有値の「固有」は「eigen」の訳語。 対角化、Jordan 標準形 行列の冪計算、指数計算 相似変換 「線形写像」で説明しましたが、 線形写像を行列で表すとき、 線形空間の座標系の取り方によって行列の形が変わります。 となると、線形写像の性質は、座標系の取り方
概要 フーリエ級数展開の基本となる概念は19世紀の前半にフランスの数学者 フーリエ(Fourier、1764-1830)が熱伝導問題の解析の過程で考え出したものです。 そして、その基本アイディアは「任意の周期関数は三角関数の和で表される」というものです。 フーリエ級数展開(および、フーリエ変換)について詳細に説明しようとすると、それだけで本が1冊書けるほどになってしまいます。 そのため、ディジタル信号処理などの工学的な応用に必要になる部分に絞って説明していきたいと思います。 基本アイディア フーリエは「任意の周期関数は三角関数の和で表される」という仮定の下で、 周期関数を三角関数を使って級数展開する方法(フーリエ級数展開と呼ばれています)を考案しました。 すなわち、周期Tの関数f(t)は
「Windows Presentation Foundation」 では、 これまでと同様の C# コードベースの GUI 構築もできますが、 それと同時に、 XAML と呼ばれるマークアップ言語による GUI 構築手段を提供しています。 XAML(eXtensible Application Markup Language、発音的には zamel と読んでくれとのこと)は、 GUI アプリケーションを記述するための XML フォーマットです。 例えば、以下のように記述します。 <Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Background="White" > <FlowDocum
using static System.Console; class Welcome { /// <summary> /// saying hello to all visitors and welcome. /// </summary> /// <param name="args">visitors</param> public static void Main(string[] args) { foreach(string visitor in args) { WriteLine($"Hello {visitor}."); } WriteLine("Welcome to my web page."); } } C# によるプログラミング入門 コンピュータの基礎知識 アルゴリズムとデータ構造 ブログ ようこそ ++C++; へ。 C#・情報工学を中心に勉強用ページとブログを載せています。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く