3 from subprocess
import Popen, PIPE, STDOUT
6 fp = open(filename,
'r')
8 for j
in fp.readlines():
10 data = array(data,dtype = double)
17 print "about to run nlsl"
19 if os.name ==
'posix':
20 proc = Popen([
'./nlsl'],stdin = PIPE, stderr = STDOUT)
22 proc = Popen([
'nlsl'],stdin = PIPE, stderr = STDOUT)
23 fp = open(
'c16pc371e.run')
24 output = proc.communicate(input = fp.read())
26 print "output was:",output
29 experimental = data[:,1]
31 integral_of_spectrum = cumsum(experimental)
32 normalization = abs(sum(integral_of_spectrum))
33 fig = figure(figsize = (9,6))
34 fig.add_axes([0.1,0.1,0.6,0.8])
36 components = data[:,3:]
39 plot(fields,experimental/normalization,
'k',linewidth = 1,label =
'experimental')
40 plot(fields,fit/normalization,
'k',alpha = 0.5,linewidth = 2,label =
'fit')
41 max_of_fit = max(fit)/normalization
42 if components
is not None:
43 plot(fields,components/normalization,alpha = 0.3,linewidth = 1,label =
'component')
46 scale_integral = max_of_fit/max(integral_of_spectrum)
47 plot(fields,integral_of_spectrum * scale_integral,
'k:',alpha = 0.5,linewidth = 1,label =
'$\int \int$ (scaled by %0.2g)'%scale_integral)
48 legend(bbox_to_anchor=(1.05,0,0.5,1),
52 rms = mean((fit/normalization-experimental/normalization)**2)
53 ax.text(0.75, 0.75,
'rms = %0.2g'%rms,
54 horizontalalignment=
'left',
55 verticalalignment=
'top',
56 transform=ax.transAxes)
def read_column_data(filename)