Main Page   Data Structures   File List   Data Fields   Globals  

save.c File Reference

#include <malloc.h>
#include "utilf.h"
#include "markers.h"
#include "save.h"
#include "inout.h"

Include dependency graph for save.c:

Include dependency graph

Go to the source code of this file.

Functions

void iniget (real2D u, real2D v, real2D c, real2D p, interface **inter, int *nin, real *po, real *vo, real *t, real *pext, real *tau, int nx, int ny, char *fname)
void save (real2D u, real2D v, real2D c, real2D p, interface *inter, int nin, real po, real vo, real t, real pext, real tau, int nx, int ny, char *fname)


Function Documentation

void iniget real2D    u,
real2D    v,
real2D    c,
real2D    p,
interface **    inter,
int *    nin,
real   po,
real   vo,
real   t,
real   pext,
real   tau,
int    nx,
int    ny,
char *    fname
 

Definition at line 11 of file save.c.

References real, and real2D.

Referenced by initialize().

00016 {
00017   int i;
00018   FILE *fptr;
00019   
00020   if (!(fptr = fopen(fname, "rb"))) {
00021     printf("iniget: can not open file `%s'\n", fname);
00022     exit(1);
00023   }
00024   fread(&(u[1][1]), sizeof(real), (nx + 1) * ny, fptr);
00025   fread(&(v[1][1]), sizeof(real), nx * (ny + 1), fptr);
00026   fread(&(c[1][1]), sizeof(real), nx * ny, fptr);     
00027   fread(&(p[1][1]), sizeof(real), nx * ny, fptr);
00028   fread(nin, sizeof(int), 1, fptr);
00029   *inter = (interface *)malloc(sizeof(interface) * *nin);
00030   for (i = 0; i < *nin; i++) {
00031     fread(&((*inter)[i].n), sizeof(int), 1, fptr);
00032     printf("%d: %d markers\n", i, (*inter)[i].n);
00033     (*inter)[i].x = (real *)malloc((*inter)[i].n * sizeof(real));
00034     (*inter)[i].y = (real *)malloc((*inter)[i].n * sizeof(real));
00035     (*inter)[i].t = (real *)malloc((*inter)[i].n * sizeof(real));
00036     (*inter)[i].spx = (polynom3 *)malloc(((*inter)[i].n - 1) 
00037                                          * sizeof(polynom3));
00038     (*inter)[i].spy = (polynom3 *)malloc(((*inter)[i].n - 1) 
00039                                          * sizeof(polynom3));
00040     fread((*inter)[i].x, sizeof(real), (*inter)[i].n, fptr);
00041     fread((*inter)[i].y, sizeof(real), (*inter)[i].n, fptr);
00042     fread(&((*inter[i]).bc), sizeof(char), 1, fptr);
00043   }
00044   fread(po, sizeof(real), 1, fptr);
00045   fread(vo, sizeof(real), 1, fptr);
00046   fread(t, sizeof(real), 1, fptr);
00047   fread(pext, sizeof(real), 1, fptr);
00048   fread(tau, sizeof(real), 1, fptr);
00049   fclose(fptr);
00050 }

void save real2D    u,
real2D    v,
real2D    c,
real2D    p,
interface   inter,
int    nin,
real    po,
real    vo,
real    t,
real    pext,
real    tau,
int    nx,
int    ny,
char *    fname
 

Definition at line 53 of file save.c.

References real, and real2D.

Referenced by main().

00057 {
00058   int i;
00059   FILE *fptr;
00060   
00061   if (!(fptr = fopen(fname, "wb"))) {
00062     printf("save: can not open file `%s'\n", fname);
00063     exit(1);
00064   }
00065   fwrite(&(u[1][1]), sizeof(real), (nx + 1) * ny, fptr);
00066   fwrite(&(v[1][1]), sizeof(real), nx * (ny + 1), fptr);
00067   fwrite(&(c[1][1]), sizeof(real), nx * ny, fptr);
00068   fwrite(&(p[1][1]), sizeof(real), nx * ny, fptr);
00069   fwrite(&nin, sizeof(int), 1, fptr);
00070   for (i = 0; i < nin; i++) {
00071     fwrite(&(inter[i].n), sizeof(int), 1, fptr);
00072     fwrite(inter[i].x, sizeof(real), inter[i].n, fptr);
00073     fwrite(inter[i].y, sizeof(real), inter[i].n, fptr);
00074     fwrite(&(inter[i].bc), sizeof(char), 1, fptr);    
00075   }
00076   fwrite(&po, sizeof(real), 1, fptr);
00077   fwrite(&vo, sizeof(real), 1, fptr);
00078   fwrite(&t, sizeof(real), 1, fptr);
00079   fwrite(&pext, sizeof(real), 1, fptr);
00080   fwrite(&tau, sizeof(real), 1, fptr);
00081   fclose(fptr);
00082 }


Generated on Wed Feb 19 22:28:23 2003 for Markers by doxygen1.2.18