Help Large_array [message #52623] |
Mon, 19 February 2007 13:49  |
wx_f
Messages: 2 Registered: February 2007
|
Junior Member |
|
|
IDL> b=dblarr(36000,500,25)
% Array has too many elements.
% Execution halted at: $MAIN$
IDL> print,memory()
733498 41843 41483 769514
IDL> b=dblarr(20000,500,25)
IDL> help,b
B DOUBLE = Array[20000, 500, 25]
IDL> print,memory()
2000733631 41848 41484 2000733631
=====
[root@localhost wxf]# free -m
total used free shared buffers cached
Mem: 1011 1008 2 0 1 45
-/+ buffers
/cache: 961 49
Swap: 8809 1211 7597
=======
[root@localhost wxf]# cat /proc/swaps
Filename Type Size Used Priority
/dev/hda7 partition 514040 514040 -1
/dev/hda9 partition 8506376(!!) 726310 -2
=============
First step:
I need to build a ut=dblarr(36000,500,25) in IDL's pro---sfit.pro.
And then continue:
==================
;kk = invert(ut#transpose(ut))#ut ==>
kk=transpose(ut)
kk=ut#temporary(kk)
kk=invert(temporary(kk))
kk=temporary(kk)#ut
kx=float(temporary(kk)#reform(irreg?zz:z,m,1))
if max_deg eq 0 then kx = reform(kx, degree+1, degree+1)
return, irreg ? reform(reform(kx,n2) # ut, m):
reform(reform(kx,n2) # ut, nx, ny)
==============================================
Who can help me?
Under Mark's help,I already changed my swap.But it seems that IDL does
not see /dev/hda9 having enough space and gives up its working.
my email:
wxf@bao.ac.cn
|
|
|