[Nek5000-users] Reading binary data
nek5000-users at lists.mcs.anl.gov
nek5000-users at lists.mcs.anl.gov
Fri Aug 13 16:28:50 CDT 2010
Hi Mike,
I was able to track this down by
cd nek5_svn/trunk/nek
edit prepost.f
search for ifxyo
Near one of these I find:
call mfo_outv(xm1,ym1,zm1,nout,nxo,nyo,nzo)
and looking at the mfo_outv() [ multifile-output,
output a vector ] routine, I find:
j = 0
if (wdsizo.eq.4) then ! 32-bit output
do iel = 1,nel
call copyx4 (u4(j+1),u(1,iel),nxyz)
j = j + nxyz
call copyx4 (u4(j+1),v(1,iel),nxyz)
j = j + nxyz
if(if3d) then
call copyx4 (u4(j+1),w(1,iel),nxyz)
j = j + nxyz
which indicates that the vector fields are output a
vx(:,:,:,1) nxyz points (32 bits/pt)
vy(:,:,:,1) nxyz points
vz(:,:,:,1) nxyz points
vx(:,:,:,2) nxyz points
vy(:,:,:,2) nxyz points
vz(:,:,:,2) nxyz points
:
vx(:,:,:,nel) nxyz points
vy(:,:,:,nel) nxyz points
vz(:,:,:,nel) nxyz points
etc.
So, you would likely see,
xyz (interleaved, as above)
uvw (interleaved, as above)
p (entire field)
T (entire field)
PS1 (entire field)
PS2 (entire field)
etc.
Note that the order of the elements will likely not be
sequential unless you are running on one processor. It
will instead be ordered according to the header info.
Paul
On Fri, 13 Aug 2010, nek5000-users at lists.mcs.anl.gov wrote:
> Stefan,
>
> I'm still having some problems reading the field data properly. So, please consider a field file that has BOTH mesh data and field data, and assume there are three fields stored (u,v,w,p).
>
> After the initial file data (header: 132 bytes, endian 4 bytes, mapping: nel* 4 bytes), does the mesh data come in single chunk before field data (as discussed in your message below):
>
> LOOP over all elements
> LOOP i = {x,y,z}
> i for all GLL points (internal element points)
> ENDLOOP
> ENDLOOP
>
> If that is indeed all before the field data, is the field data then organized as
>
> LOOP over all elements
> LOOP i = three fields
> i for all GLL points (internal element points)
> ENDLOOP
> ENDLOOP
>
> or, is it
>
> LOOP over all elements
> LOOP i = GLL points
> i for all fields
> ENDLOOP
> ENDLOOP
>
> ??
>
> Is there by chance a detailed description for the format of the field file somewhere that I am missing?
>
> --Mike
>
> On Aug 11, 2010, at 3:50 PM, <nek5000-users at lists.mcs.anl.gov> <nek5000-users at lists.mcs.anl.gov> wrote:
>
>> Hi Mike,
>>
>> vector fields (e.g. mesh coordinates) are stored in the following way:
>>
>> LOOP over all elements
>> LOOP i = {x,y,z}
>> i for all GLL points (internal element points)
>> ENDLOOP
>> ENDLOOP
>>
>> 2D example with (E=2,N=2):
>> x1_1 x2_1 x3_1 y1_1 y2_1 y3_1 x1_1 x2_2 x3_2 y1_2 y2_2 y3_2
>>
>> where x2_1 means the x-coordinate of the 2nd GLL point of element 1.
>>
>> hth,
>> Stefan
>>
>> On Aug 11, 2010, at 11:34 PM, <nek5000-users at lists.mcs.anl.gov> wrote:
>>
>>>
>>> Hello All. I found this helpful message from Stefan regarding the structure of a binary field file. Could someone please tell me what the structure is when the geometry info is also contained?
>>>
>>> Thanks!
>>> --Mike
>>>
>>> nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
>>>> Thu May 6 07:18:03 CDT 2010
>>>> Previous message: [Nek5000-users] Reading binary data
>>>> Next message: [Nek5000-users] History points
>>>> Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
>>>> Hi Fred,
>>>>
>>>> header: 132 bytes
>>>> endian test tag: 4 bytes
>>>> element mapping: nel* 4 bytes
>>>> data: nfields*nxyz*nel* wdsizo (where wdsizo is 4 or 8 bytes)
>>>> metadata (min/max values): nfields*2*nel * 4 bytes
>>>>
>>>> Stefan
>>>>
>>>
>>> _______________________________________________
>>> Nek5000-users mailing list
>>> Nek5000-users at lists.mcs.anl.gov
>>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>>
>> _______________________________________________
>> Nek5000-users mailing list
>> Nek5000-users at lists.mcs.anl.gov
>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>
> _______________________________________________
> Nek5000-users mailing list
> Nek5000-users at lists.mcs.anl.gov
> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>
More information about the Nek5000-users
mailing list