1 #include <../../nrnconf.h>
41 static char rcsid[] =
"zmatlab.c,v 1.1 1997/12/04 17:56:11 hines Exp";
66 fwrite(
"",
sizeof(
char),1,
fp);
70 #if ORDER == ROW_ORDER
71 for (
i = 0;
i <
A->m;
i++ )
72 for (
j = 0;
j <
A->n;
j++ )
73 fwrite(&(
A->me[
i][
j].re),
sizeof(
Real),1,
fp);
74 for (
i = 0;
i <
A->m;
i++ )
75 for (
j = 0;
j <
A->n;
j++ )
76 fwrite(&(
A->me[
i][
j].im),
sizeof(
Real),1,
fp);
78 for (
j = 0;
j <
A->n;
j++ )
79 for (
i = 0;
i <
A->m;
i++ )
80 fwrite(&(
A->me[
i][
j].re),
sizeof(
Real),1,
fp);
81 for (
j = 0;
j <
A->n;
j++ )
82 for (
i = 0;
i <
A->m;
i++ )
83 fwrite(&(
A->me[
i][
j].im),
sizeof(
Real),1,
fp);
114 fwrite(
"",
sizeof(
char),1,
fp);
118 for (
i = 0;
i < x->
dim;
i++ )
120 for (
i = 0;
i < x->
dim;
i++ )
145 fwrite(
"",
sizeof(
char),1,
fp);
164 int m_flag, o_flag, p_flag, t_flag;
169 if ( fread(&mat,
sizeof(
matlab),1,
fp) != 1 )
171 if ( mat.
type >= 10000 )
173 m_flag = (mat.
type/1000) % 10;
174 o_flag = (mat.
type/100) % 10;
175 p_flag = (mat.
type/10) % 10;
176 t_flag = (mat.
type) % 10;
183 *
name = (
char *)malloc((
unsigned)(mat.
namlen)+1);
184 if ( fread(*
name,
sizeof(
char),(unsigned)(mat.
namlen),
fp) == 0 )
186 A =
zm_get((
unsigned)(mat.
m),(
unsigned)(mat.
n));
187 for (
i = 0;
i <
A->m*
A->n;
i++ )
190 if (fread(&d_temp,
sizeof(
double),1,
fp) != 1) {
error(
E_INPUT,
"zm_load");}
192 if (fread(&f_temp,
sizeof(
float),1,
fp) != 1) {
error(
E_INPUT,
"zm_load");}
196 A->me[
i /
A->n][
i %
A->n].re = d_temp;
198 A->me[
i %
A->m][
i /
A->m].re = d_temp;
205 for (
i = 0;
i <
A->m*
A->n;
i++ )
208 if (fread(&d_temp,
sizeof(
double),1,
fp) != 1) {
error(
E_INPUT,
"zm_load");}
210 if (fread(&f_temp,
sizeof(
float),1,
fp) != 1) {
error(
E_INPUT,
"zm_load");}
214 A->me[
i /
A->n][
i %
A->n].im = d_temp;
216 A->me[
i %
A->m][
i /
A->m].im = d_temp;
#define error(err_num, fn_name)
complex z_save(FILE *fp, complex z, char *name)
ZMAT * zm_load(FILE *fp, char **name)
ZMAT * zm_save(FILE *fp, ZMAT *A, char *name)
ZVEC * zv_save(FILE *fp, ZVEC *x, char *name)
ZMAT * zm_get(int m, int n)