ラベル 数学 の投稿を表示しています。 すべての投稿を表示
ラベル 数学 の投稿を表示しています。 すべての投稿を表示

2014年8月30日土曜日

Octaveで行列の各要素に対する計算をしたら warning: product: automatic broadcasting operation applied が出る

Octaveでは、行列の各要素に対して処理を行う場合、以下の用に 「.」を使って表現出来る。

すべての要素に3をかける

> A .* 3

でもこれやると、warning: product: automatic broadcasting operation applied と出るのだ。

以下の、bsxfun を使うと良い。

bsxfun(fun,A,B)

http://www.mathworks.co.jp/jp/help/matlab/ref/bsxfun.html

たとえば A .* 3 を書き直すと


> bsxfun(@times, A, 3)

となる。

2013年7月3日水曜日

sage 基礎編

数理処理システム sage 


Mathmatica や Matlab の代わりを目指すオープンソース。

変数宣言

変数宣言しておくことで、以降の数式に利用出来る。
var('変数名')

複数宣言の場合、スペース区切り

var('変数名 変数名 …')

関数の宣言

[関数名] = [式]

ex)

f = (x - 3) * (4x - 5)

関数の計算

変数に値を代入して、関数を計算する。

[関数名]([変数] = [値])

ex)

f(x = 5)
戻り値は計算結果。


lambda式を使って関数を定義する

lambda 変数のリスト: 式

ex)

f = lambda x: x^3
f(2)
sageは 8 を出力する。


規則を代入する

定義した関数の一部を新たな関数で置き換えるなど

f6 = x^2 + 1;
f6

ここで、x^2 を y とすると、は以下の様に表現。

var('y')
f6.subs_expr(x^2 == y)


次は 図形 について、そして API についても早めにとりかかる。






数理処理システム sage の local sign in ができなくて困った

admin sage だった。 この情報がわかりづら!!

2013年4月22日月曜日

数式処理システム

おもしろく素晴らしい処理システム。
実用にいたるには、利用出来るところまでデータを取得、整理する必要がある。
認識技術を駆使して到達出来ないか。


・SAGE

http://www.sagemath.org/


・MATHMATICAのWEB版

http://www.wolframalpha.com/



2013年3月13日水曜日

2013年1月19日土曜日

アフィン変換行列を求めるのに必要な連立方程式をphpで解く

結構めんどくさいんですが、一度書いてやれば使いまわせます。

$pointには0~2までx1→x2、y1→y2という座標点の対応を入れる前提です。