@@ -14,7 +14,7 @@ class Diffraction_object():
14
14
def __init__ (self , name = '' , wavelength = None ):
15
15
self .name = name
16
16
self .wavelength = wavelength
17
- self .scat_quantities = {}
17
+ self .scat_quantity = ""
18
18
self .on_q = [np .empty (1 ), np .empty (1 )]
19
19
self .on_tth = [np .empty (1 ), np .empty (1 )]
20
20
self .on_d = [np .empty (1 ), np .empty (1 )]
@@ -401,3 +401,21 @@ def on_xtype(self, xtype):
401
401
elif xtype .lower () in DQUANTITIES :
402
402
return self .on_d
403
403
pass
404
+
405
+ def dump (self , filepath , xtype = None ):
406
+ if xtype is None :
407
+ xtype = " q"
408
+ if xtype == "q" :
409
+ data_to_save = np .column_stack ((self .on_q [0 ], self .on_q [1 ]))
410
+ elif xtype == "tth" :
411
+ data_to_save = np .column_stack ((self .on_tth [0 ], self .on_tth [1 ]))
412
+ else :
413
+ print (f"WARNING: cannot handle the xtype '{ xtype } '" )
414
+
415
+ with open (filepath , 'w' ) as f :
416
+ f .write (f"[Diffraction_object]\n name = { self .name } \n wavelength = { self .wavelength } \n "
417
+ f"scat_quantity = { self .scat_quantity } \n " )
418
+ for key , value in self .metadata .items ():
419
+ f .write (f"{ key } = { value } \n " )
420
+ f .write ("\n #### start data\n " )
421
+ np .savetxt (f , data_to_save , delimiter = " " )
0 commit comments