[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dennou-ruby:000114] Re: reading binary files
��Ƿ��Ǥ���
��¼����>>
>> Ruby ���ܤ�ȯ�䤵�줿�Ȥ����� nmd_array ���Ƥߤ褦�Ȼפ�, ��Ϥ��
>> �ǡ��������ä��Х��ʥ�ե�����(�ȤϤ��äƤ�ñ�ʤ�ñ���٤ο��ͤθǤޤ�
>> �Ǥ���ʾ�ξ���������ʤ�)���ɤ߹���Ǥ���Τޤ� contour �������
>> �褦�Ȥ��ޤ���.
�ɤ���Ǥ���
>> ���Τ��ȼ��Τϲ���ͤ����ˤǤ����ΤǤ���, ����ͤ�����
>>
>> volt = PMDArray.new("Barotropic Volticity","1/s",londim,latdim)
>> for i in 0..nlat-1
>> for j in 0..nlon-1
>> volt[j,i] = file_data.read(4).unpack('f')
>> end
>> end
>>
>> �Ȥ����Τ��ؤȤʤä�, �ǡ������ɤ߹��ߤˤ�Τ��������֤������äƤ��ޤ�
>> �ޤ�. ������礭���� 256*128 ���٤ʤ��ԤƤʤ���ʤ��Ǥ���, 512*256 ��
>> �餤���礭���ˤʤ������(������Ǥ��뤯�餤)�Ԥ����줿�ꤷ�ޤ�.
���ˤ�ʬ����Ȥϻפ��ޤ�����volt[j,i] �Ȥ��ȡ�����ǥå���[i,j]����
������켡������ΰ��֤Ϥɤ������������Ƥ����ؤ�������Ԥ��ޤ����顢
�����٤��ʤ�ޤ�����Ȥ������ ruby �ǽ줿�饤�֥��Ǥ����顢��
�����Ƥ��٤��Ϥʤ�ޤ������⤷����դ������Ǥ�����ޤ��ˤϤʤ�Ǥ��礦��
�ȤϤ�����unpack('f') �Ȥ����ΤϤ��äȸ��̤˸Ƥ�ɬ�פ�����ΤǤ��͡���
��ʤ顢�����������פǤ���Τ���¼�����줿�褦�˺ǽ�ϰ켡������
���ɤ߹��र�餤�Ǥ��礦����
>> ����� NArray �������,
>>
>> tmp = NArray.new(nlon*nlat)
>> for i in 0..nlon*nlat-1
>> tmp[i] = file_data.read(4).unpack('f')
>> end
>>
>> �Ȥ����Ȥ�����®���ʤ�ޤ���, ���λ��� tmp ����Ȥ�,
>>
>> [1.0, 2.0, 3.0]
>>
>> �ߤ����Τ���Ԥ��Ƥ����Τ�,
>>
>> [[1.0],[2.0],[3.0]]
>>
>> �ȤʤäƤ��ޤ��Τ�, NMDArray �Υ�å� import1d �ΤޤȤ����Ȥ�
>> �Ǥ��ޤ���. �ޤ�, NMDArray �� 1 ��������ؤ������� 2 ���������Ʊ�ͤ�
>> ���֤�������ޤ�.
NArray �� ruby �� Array �ΤޤѾ����Ĥġ����ر黻�������Ⱥ������
�Ԥä���ΤǤ�����������ʬ�Ϥ����äƤʤ��Τ� Array ��Ʊ���Ϥ��Ǥ�������
�ơ����Τ褦�ˤʤäƤ��ޤ���ͳ�ϡ����դ�����ͤ������顼�Ǥʤ�Ĺ������
���������Ǥ��礦��NMDArray�Τۤ��ⶲ�餯�����Υǡ����ΰ�ˤ�
[[1.0],[2.0],[3.0]] �����äƤ�������Ȼפ��ޤ�(p volt����Ф狼��ޤ�)��
��������ˤ�
tmp[i] = file_data.read(4).unpack('f')[0]
�Ȥ�����ɤ��Ǥ��礦��NArray�Ǥ������κ�����Ϥ��Ƥʤ��Τǡ����Ԥ����
�����(���ͤΥ����顼�ʳ��Τ��٤�)����������Ƥ��뤫�ɤ����Υ����å���
���Ƥޤ���
�ʤ���unpack('f') ��������֤��Ȥ������Ȥϡ��¤�ʣ���Ĥ���ư��������
�ڤ�˽����Ǥ���ΤǤϤʤ��Ǥ���������ʤ���®���ʤ�Ϥ��Ǥ���
>> ¿��������ؤ������� C �Ǽ�
>> ���������(�ǽ�Ū�ˤϤ�������ɬ�פ�����Ȥϻפ��ΤǤ���)
�����Ǥ��͡������դ��Ư�˲ä�äƤ����ͤ��ߤ����ʤȻפ��ޤ���
>> ����, ���꤫���Υ��ޤ���, ���饯�ƥ��� Ruby(irb) ��Ȥ���, ��Ǿ
>> �饤�֥��⥤�饯�ƥ��֤˸Ƥ٤�Τ����Ȼפ��ޤ���. ����˴ط�
>> ���륤�ե������ޤ��ѰդǤ����, Ŭ���ʥǡ���������Ƥ��η��
>> �Ƥ���, ���˸�������Τ�Ƚ�Ǥ���, ����������Ȥ������Ȥ�������
>> �Ǥ��������ʵ������ޤ�.
����ѥ��뷿����ˤ���������٤�Ȥ�����������������ˤʤ�ޤ��͡���
�벽��ǽ��¿�����������������Ф�������� IDL ��Ʊ����ɶ�˾��ޤ���
�桹���ܻؤ��ΤϤ���˾�ǡ��ǡ�����¤�Υե쥭���֥�ƥ������������
�����ĤĶ��̲����뤳�Ȥˤ�äơ��������Τ��륽�եȥ������Υ���ե���
���� (�������Τ���ץ�����ब��ưŪ���Ĵ�ñ�˽���Ƥ��ޤ������ˤ�����)
�Ȥ������Ȥ���ǧ�����Ƥ���ޤ����㤨����¼����ؿ��饤�֥����
���С����Τޤ䤬��ϫ̵�������ѤǤ���Ȥ����ä����ȤǤ��͡�
>> ���Ƥ��������Ǥ��ߤޤ���.
������������ʤ��Ȥ���ޤ��ɤ���ͭ�������ޤ�����
��Ƿ�� �� horinout@xxxxxx
�������Ķ�������ȸ��楻�� 611-0011 �����Ըޥ���
phone:0774-38-3812 fax:0774-31-8463