@@ -14,7 +14,7 @@ class Diffraction_object():
1414 def __init__ (self , name = '' , wavelength = None ):
1515 self .name = name
1616 self .wavelength = wavelength
17- self .scat_quantities = {}
17+ self .scat_quantity = ""
1818 self .on_q = [np .empty (1 ), np .empty (1 )]
1919 self .on_tth = [np .empty (1 ), np .empty (1 )]
2020 self .on_d = [np .empty (1 ), np .empty (1 )]
@@ -401,3 +401,21 @@ def on_xtype(self, xtype):
401401 elif xtype .lower () in DQUANTITIES :
402402 return self .on_d
403403 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