File: PetscSynchronizedBinaryRead.html

package info (click to toggle)
petsc 2.1.3-1.woody.1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 70,272 kB
  • ctags: 310,869
  • sloc: ansic: 257,275; sh: 9,870; makefile: 7,622; fortran: 6,211; cpp: 1,026; python: 416; csh: 41; asm: 9
file content (61 lines) | stat: -rw-r--r-- 2,961 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML3.2 EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="DOCTEXT">
<TITLE>PetscSynchronizedBinaryRead</TITLE>
</HEAD>
<BODY BGCOLOR="FFFFFF">
<A NAME="PetscSynchronizedBinaryRead"><H1>PetscSynchronizedBinaryRead</H1></A>
Reads from a binary file. 
<H3><FONT COLOR="#CC3333">Synopsis</FONT></H3>
<PRE>
#include "petsc.h"    
int PetscSynchronizedBinaryRead(MPI_Comm comm,int fd,void *p,int n,PetscDataType type)
</PRE>
Collective on MPI_Comm
<P>
<H3><FONT COLOR="#CC3333">Input Parameters</FONT></H3>
<TABLE border="0" cellpadding="0" cellspacing="0">
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B><A HREF="../Sys/comm.html#comm">comm</A> </B></TD><TD>- the MPI communicator 
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>fd </B></TD><TD>- the file
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>n  </B></TD><TD>- the number of items to read 
</TD></TR>
<TR><TD WIDTH=40></TD><TD ALIGN=LEFT VALIGN=TOP><B>type </B></TD><TD>- the type of items to read (PETSC_INT, PETSC_DOUBLE or PETSC_SCALAR)
</TD></TR></TABLE>
<P>
<H3><FONT COLOR="#CC3333">Output Parameters</FONT></H3>
<DT><B>p </B> -the buffer
<br>
<P>
<H3><FONT COLOR="#CC3333">Options Database</FONT></H3>
<DT><B>-binary_longints </B> -indicates the file was generated on a Cray vector 
machine (not the T3E/D) and the ints are stored as 64 bit 
quantities, otherwise they are stored as 32 bit
<br>
<P>

<P>
<H3><FONT COLOR="#CC3333">Notes</FONT></H3>
Does a <A HREF="../Sys/PetscBinaryRead.html#PetscBinaryRead">PetscBinaryRead</A>() followed by an MPI_Bcast()
<P>
<A HREF="../Sys/PetscSynchronizedBinaryRead.html#PetscSynchronizedBinaryRead">PetscSynchronizedBinaryRead</A>() uses byte swapping to work on all machines.
Integers are stored on the file as 32 long, regardless of whether
they are stored in the machine as 32 or 64, this means the same
binary file may be read on any machine.
<P>
Note that Cray C90 and similar machines cannot generate files with
32 bit integers; use the flag -binary_longints to read files from the
C90 on non-C90 machines. Cray T3E/T3D are the same as other Unix
machines, not the same as the C90.
<P>
<P>
<H3><FONT COLOR="#CC3333">See Also</FONT></H3>
 <A HREF="../Sys/PetscBinaryWrite.html#PetscBinaryWrite">PetscBinaryWrite</A>(), <A HREF="../Sys/PetscBinaryOpen.html#PetscBinaryOpen">PetscBinaryOpen</A>(), <A HREF="../Sys/PetscBinaryClose.html#PetscBinaryClose">PetscBinaryClose</A>(), <A HREF="../Sys/PetscBinaryRead.html#PetscBinaryRead">PetscBinaryRead</A>()
<BR><P><B><P><B><FONT COLOR="#CC3333">Level:</FONT></B>developer
<BR><FONT COLOR="#CC3333">Location:</FONT></B><A HREF="../../../src/sys/src/fileio/sysio.c.html#PetscSynchronizedBinaryRead">src/sys/src/fileio/sysio.c</A>
<BR><A HREF="./index.html">Index of all Sys routines</A>
<BR><A HREF="../../index.html">Table of Contents for all manual pages</A>
<BR><A HREF="../singleindex.html">Index of all manual pages</A>
</BODY></HTML>