PSI sics-cvs-psi_pre-ansto
This commit is contained in:
52
tcl/fit.tcl
Normal file
52
tcl/fit.tcl
Normal file
@@ -0,0 +1,52 @@
|
||||
#-----------------------------------------------------------------------------
|
||||
# This is an implementation for a fit command for SICS. It uses a separate
|
||||
# fit program retrieved from the vast spaces of the net for this purpose.
|
||||
# The scheme is as follows: Data is written to a file, the fit program is
|
||||
# executed and the data retrieved at need.
|
||||
#
|
||||
# Mark Koennecke, October 1997
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
#----- Initialise this to match your setup
|
||||
set fithome /data/koenneck/src/sics/fit
|
||||
set scancom xxxscan
|
||||
set IIcentervar ""
|
||||
|
||||
proc fit__run { } {
|
||||
global fithome
|
||||
global scancom
|
||||
global IIcentervar
|
||||
#---------------
|
||||
set cp [$scancom getcounts]
|
||||
set cp2 [split $cp =]
|
||||
set Counts [lindex $cp2 1]
|
||||
set fp [$scancom getvardata 0]
|
||||
set fp2 [split $fp = ]
|
||||
set fitpar [lindex $fp2 1]
|
||||
#----- set center variable
|
||||
set bg [lindex $fp2 1]
|
||||
set bg2 [split $bg .]
|
||||
set IIcentervar [lindex $bg2 1]
|
||||
unset cp
|
||||
unset cp2
|
||||
unset fp
|
||||
unset fp2
|
||||
unset bg
|
||||
unset bg2
|
||||
#---- write fit input file
|
||||
set fd [open $fithome/sicsin.dat w]
|
||||
set length [llength $Counts]
|
||||
for {set i 0 } { $i < $length } { incr i} {
|
||||
puts $fd [format " %f %d" [lindex $fitpar $i] \
|
||||
[lindex $Counts $i] ]
|
||||
}
|
||||
close $fd
|
||||
|
||||
}
|
||||
|
||||
proc fit args {
|
||||
set l [llength $args]
|
||||
if { $l < 1} {
|
||||
fit__run
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user