5.3 misc

行列について、掛け算や転置、逆転 (逆行列) が出来る。

連想配列っぽいのも使える。
real[string] a;

a["tako"] = 8.0;
a["ika"] = 10.0;
a["tsuru"] = 2.0;
a["kame"] = 4.0;

配列は [] でくくって表せる。 代入出来るのはもちろん、初期化にも使える。
real[int] c=[1,2,3];
cout << c << endl;

real[int] d;
d=[1,2,3,4];
cout << d << endl;

配列はソート出来る。
a.sort;

定義と同時に初期化する場合、 MATLAB 風の a:ba:dx:b が使える (dx が非整数のときは a は整数にしないこと)。
real[int] a(2:8);
cout << a << endl;

real[int] b(2.0:0.3:10);
cout << b << endl;
[chronos:~/work] mk% FreeFem++ foobar.edp
 EXEC of the plot  : ffglut
-- FreeFem++ v  3.190000 (date Ven 20 avr 2012 08:49:54 CEST)
 Load: lg_fem lg_mesh lg_mesh3 eigenvalue 
    1 : real[int] a(2:8);
    2 : cout << a << endl;
    3 : 
    4 : real[int] b(2.0:0.3:10);
    5 : cout << b << endl; sizestack + 1024 =1136  ( 112 )

7	
	  2	  3	  4	  5	  6
	  7	  8	
27	
	  2	2.3	2.6	2.9	3.2
	3.5	3.8	4.1	4.4	4.7
	  5	5.3	5.6	5.9	6.2
	6.5	6.8	7.1	7.4	7.7
	  8	8.3	8.6	8.9	9.2
	9.5	9.8	
times: compile 0.005558s, execution 0.000107s,  mpirank:0
Err ReadOnePlot -1
 CodeAlloc : nb ptr  2330,  size :313288 mpirank: 0
Bien: On a fini Normalement
[chronos:~/work] mk%



桂田 祐史