Blame view

src/idl/dustem_write_mix.pro 1.04 KB
427f1205   Jean-Michel Glorian   version 4.2 merged
1
2
PRO dustem_write_mix,dir,st

37b5d8a7   Jean-Philippe Bernard   fixed to adapt gr...
3
4
;stop

68d2f391   Jean-Philippe Bernard   modified to cope ...
5
6
7
8
9
10
IF ptr_valid(st[0]) THEN BEGIN
  comments=(*st[0]).comments
  Ncomments=n_elements(comments)
ENDIF ELSE BEGIN
  Ncomments=0L
ENDELSE
427f1205   Jean-Michel Glorian   version 4.2 merged
11
  
68d2f391   Jean-Philippe Bernard   modified to cope ...
12
Nst=n_elements(st)
427f1205   Jean-Michel Glorian   version 4.2 merged
13
  
68d2f391   Jean-Philippe Bernard   modified to cope ...
14
15
16
17
18
19
20

frmts=[ $
         '(A)', $
         '(A)', $
         '(A)', $
         '(A)', $
         '(A)']
427f1205   Jean-Michel Glorian   version 4.2 merged
21
22

;Start loop over type of grain
68d2f391   Jean-Philippe Bernard   modified to cope ...
23
24
25
FOR i=0L,Nst-1 DO BEGIN
  ;Test if the pointer is pointing to something
  IF ptr_valid(st(i)) THEN BEGIN
37b5d8a7   Jean-Philippe Bernard   fixed to adapt gr...
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
    frmts=replicate('(A)',n_elements((*st(i)).fmix))
    ;Get filename
    ffile=(*st(i)).file
    fv=str_sep(ffile,'/')
    file=dir+fv(n_elements(fv)-1)
    ;Open file
    message,'Will write MIX file '+file,/continue
    openw,unit,file,/get_lun
    ;Print comments
    IF Ncomments NE 0 THEN BEGIN
      FOR ii=0,Ncomments-1 DO BEGIN
        printf,unit,comments[ii]
      ENDFOR
    ENDIF
    ;Print FMIX
    ;stop
    FOR k=0L,n_elements((*st(i)).fmix)-1 DO BEGIN
      printf,unit,((*st(i)).fmix)(k),format=frmts[k]
    ENDFOR
    close,unit
    free_lun,unit
  ENDIF ELSE BEGIN
    ;left blank intentionally
  ENDELSE
68d2f391   Jean-Philippe Bernard   modified to cope ...
50
ENDFOR
427f1205   Jean-Michel Glorian   version 4.2 merged
51
52

END