<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?action=history&amp;feed=atom&amp;title=Array%28API%29</id>
		<title>Array(API) - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?action=history&amp;feed=atom&amp;title=Array%28API%29"/>
		<link rel="alternate" type="text/html" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?title=Array(API)&amp;action=history"/>
		<updated>2026-05-04T18:09:40Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.6</generator>

	<entry>
		<id>http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?title=Array(API)&amp;diff=3867&amp;oldid=prev</id>
		<title>Kinoshita: Created page with &quot;General/'''Array''' is Object to express array. It can express general array (multiple dimension array).  == constant ==  ARRAY_MAX_DIMENSION: 5 (Maximum dimension of array)...&quot;</title>
		<link rel="alternate" type="text/html" href="http://www.yasunaga-lab.bio.kyutech.ac.jp/Eos/index.php?title=Array(API)&amp;diff=3867&amp;oldid=prev"/>
				<updated>2014-09-05T03:04:17Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;General/&amp;#039;&amp;#039;&amp;#039;Array&amp;#039;&amp;#039;&amp;#039; is Object to express array. It can express general array (multiple dimension array).  == constant ==  ARRAY_MAX_DIMENSION: 5 (Maximum dimension of array)...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;General/'''Array''' is Object to express array. It can express general array (multiple dimension array).&lt;br /&gt;
&lt;br /&gt;
== constant ==&lt;br /&gt;
 ARRAY_MAX_DIMENSION: 5 (Maximum dimension of array)&lt;br /&gt;
 ARRAY_MIN_DIMENSION: 1 (Minimum dimension of array)&lt;br /&gt;
&lt;br /&gt;
 ARRAY_SEPARATOR &amp;quot; \t\n,&amp;quot; (Separator of array)&lt;br /&gt;
&lt;br /&gt;
== struct ==&lt;br /&gt;
&lt;br /&gt;
  typedef unsigned long arrayParaTypeInteger;&lt;br /&gt;
  typedef float         arrayParaTypeReal;&lt;br /&gt;
  &lt;br /&gt;
  typedef struct Array {&lt;br /&gt;
      arrayParaTypeInteger dim;&lt;br /&gt;
      arrayParaTypeInteger n[ARRAY_MAX_DIMENSION];&lt;br /&gt;
      arrayParaTypeReal*   A;&lt;br /&gt;
  } Array;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 dim: dimension of array (2D: Matrix, 1D: Vector.)&lt;br /&gt;
 n: Number of elements at each dimension&lt;br /&gt;
 A: Linear vector which stores elements&lt;br /&gt;
&lt;br /&gt;
== API ==&lt;br /&gt;
===Initialize===&lt;br /&gt;
 extern void arrayInit(Array* a, char* message);&lt;br /&gt;
&lt;br /&gt;
===Free===&lt;br /&gt;
 extern void arrayFree(Array* a, char* message);&lt;br /&gt;
&lt;br /&gt;
===Output format details===&lt;br /&gt;
 extern void arrayFormatInfoPrint(FILE* fpt, int mode);&lt;br /&gt;
&lt;br /&gt;
===File Read===&lt;br /&gt;
 extern void arrayReadFromFile(FILE* fpt, Array* a, char* message);&lt;br /&gt;
&lt;br /&gt;
===File Write===&lt;br /&gt;
 extern void arrayWriteToFile(FILE* fpt, Array* a, char* message);&lt;br /&gt;
&lt;br /&gt;
===Principal Component Analysis===&lt;br /&gt;
 extern void arrayPCA(Array* u, Array* C, Array* lambda, Array* X, Array* ave, int mode);&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt; &lt;br /&gt;
		&amp;lt;th&amp;gt;Input&amp;lt;/th&amp;gt; &lt;br /&gt;
		&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt; &lt;br /&gt;
	&amp;lt;/tr&amp;gt; &lt;br /&gt;
	&amp;lt;tr&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;X&amp;lt;/td&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;Coordinates information in Contour level(number of components * number of elements)&amp;lt;/td&amp;gt; &lt;br /&gt;
	&amp;lt;/tr&amp;gt; &lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
	&amp;lt;tr&amp;gt; &lt;br /&gt;
		&amp;lt;th&amp;gt;Output&amp;lt;/th&amp;gt; &lt;br /&gt;
		&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt; &lt;br /&gt;
	&amp;lt;/tr&amp;gt; &lt;br /&gt;
	&amp;lt;tr&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;u&amp;lt;/td&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;Eigenvector of coordinates information(number of components * number of components)&amp;lt;/td&amp;gt; &lt;br /&gt;
	&amp;lt;/tr&amp;gt; &lt;br /&gt;
	&amp;lt;tr&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;C&amp;lt;/td&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;Covariance of coordinates information(number of components * number of components)&amp;lt;/td&amp;gt; &lt;br /&gt;
	&amp;lt;/tr&amp;gt; &lt;br /&gt;
	&amp;lt;tr&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;lambda&amp;lt;/td&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;Eigenvalue of coordinates information(number of components)&amp;lt;/td&amp;gt; &lt;br /&gt;
	&amp;lt;/tr&amp;gt; &lt;br /&gt;
	&amp;lt;tr&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;ave&amp;lt;/td&amp;gt; &lt;br /&gt;
		&amp;lt;td&amp;gt;Average coordinates of each component(number of components)&amp;lt;/td&amp;gt; &lt;br /&gt;
	&amp;lt;/tr&amp;gt; &lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Get and Set array element===&lt;br /&gt;
Get or set value of each element by the  following function. Caution that type is not automatically converted, since set by #define .&lt;br /&gt;
 &lt;br /&gt;
====Get====&lt;br /&gt;
 arrayDataGet1(a, i0)&lt;br /&gt;
 arrayDataGet2(a, i0, i1)&lt;br /&gt;
 arrayDataGet3(a, i0, i1, i2)&lt;br /&gt;
 arrayDataGet4(a, i0, i1, i2, i3)&lt;br /&gt;
 arrayDataGet5(a, i0, i1, i2, i3, i4)&lt;br /&gt;
&lt;br /&gt;
====Set====&lt;br /&gt;
 arrayDataSet1(a, i0, data)&lt;br /&gt;
 arrayDataSet2(a, i0, i1, data)&lt;br /&gt;
 arrayDataSet3(a, i0, i1, i2, data)&lt;br /&gt;
 arrayDataSet4(a, i0, i1, i2, i3, data)&lt;br /&gt;
 arrayDataSet5(a, i0, i1, i2, i3, i4, data)&lt;/div&gt;</summary>
		<author><name>Kinoshita</name></author>	</entry>

	</feed>