OSDN Git Service

Eos:Extensible object-oriented system for image analysis of electron micrographs
[eos/base.git] / src / Objects / General / Vector / doc / Vector.html
1 <H4> Update Time 07/12/10---17:50:48 </H4>
2 <ul>
3         <li>extern floatVector* floatVectorAdd(floatVector* v, floatVector* u, floatVector* w);
4         <li>extern floatVector* floatVectorMinus(floatVector* v, floatVector* u, floatVector* w);
5         <br>    v = u - w
6         <li>extern double lfloatVectorLength(floatVector* x);
7
8 </ul>
9 <HR>
10 <A NAME="Information">
11 <H2>Information from source codes</H2>
12 </A>
13 <PRE>
14 </PRE>
15 <HR>
16 <A NAME="include">
17 <H2>Vector.h</H2>
18 </A>
19 <PRE>
20 /*
21 # %M% %Y% %I%
22 # The latest update : %G% at %U%
23 #
24 #%Z% Vector.h ver %I%
25 #%Z% Created by 
26 #%Z%
27 #%Z% Usage : Vector.h 
28 #%Z% Attention
29 #%Z%
30 */
31
32 #ifndef VECTOR_H
33 #define VECTOR_H
34
35 /* struct begin */
36 typedef struct floatVector {
37         unsigned long size;
38         float*        data;
39 } floatVector;
40
41 typedef struct intVector {
42         unsigned long size;
43         int*        data;
44 } intVector;
45
46 /* struct end */
47
48 /* prototype begin */
49 extern floatVector* floatVectorInit(floatVector* v, long size);
50 extern floatVector* floatVectorFree(floatVector* v);
51
52 extern intVector* intVectorInit(intVector* v, long size);
53 extern intVector* intVectorFree(intVector* v);
54
55
56 extern floatVector* floatVectorAdd(floatVector* v, floatVector* u, floatVector* w);
57 extern floatVector* floatVectorMinus(floatVector* v, floatVector* u, floatVector* w);
58
59 extern double floatVectorScalarProduct(floatVector* x, floatVector* y);
60 extern double lfloatVectorLength(floatVector* x);
61
62 extern void lVectorSplineTableMake(floatVector* x, floatVector* y, floatVector* z);
63
64 extern double lVectorSpline(double t, floatVector* x, floatVector* y, floatVector* z);
65
66 extern void lVectorSplineTable2DMake(floatVector* p, floatVector* x, floatVector* y, floatVector* a, floatVector* b);
67 extern void lVectorSpline2D(double t, double* px, double* py, 
68 floatVector* p, floatVector* x, floatVector* y,
69 floatVector* a, floatVector* b);
70 /* prototype end */
71
72 /* struct begin */
73 typedef struct doubleVector {
74         unsigned long size;
75         double*        data;
76 } doubleVector;
77 /* struct end */
78
79 /* prototype begin */
80 extern doubleVector* doubleVectorInit(doubleVector* v, long size);
81 extern doubleVector* doubleVectorFree(doubleVector* v);
82 extern doubleVector* doubleVectorAdd(doubleVector* v, doubleVector* u, doubleVector* w);
83 extern doubleVector* doubleVectorMinus(doubleVector* v, doubleVector* u, doubleVector* w);
84
85 extern double doubleVectorScalarProduct(doubleVector* x, doubleVector* y);
86 extern double ldoubleVectorLength(doubleVector* x);
87
88 extern void ldoubleVectorSplineTableMake(doubleVector* x, doubleVector* y, doubleVector* z);
89
90 extern double ldoubleVectorSpline(double t, doubleVector* x, doubleVector* y, doubleVector* z);
91
92 extern void ldoubleVectorSplineTable2DMake(doubleVector* p, doubleVector* x, doubleVector* y, doubleVector* a, doubleVector* b);
93 extern void ldoubleVectorSpline2D(double t, double* px, double* py, 
94 doubleVector* p, doubleVector* x, doubleVector* y,
95 doubleVector* a, doubleVector* b);
96 /* prototype begin */
97
98 #endif /* VECTOR_H */
99 </PRE>