1 import matplotlib
as mpl
2 import matplotlib
.mlab
as mlab
3 import matplotlib
.pyplot
as plt
4 import matplotlib
.axes
as axe
5 import matplotlib
.collections
as collections
9 from matplotlib
.pyplot
import *
13 ANGLE
.append("../rk_defangle.dat")
14 ANGLE
.append("../data/eu_defangle_t225.dat")
15 ANGLE
.append("../data/eu_defangle_t224.dat")
16 VELO
.append("../rk_bif_avg_velo.dat")
17 VELO
.append("../data/eu_defangle_velo_t255.dat")
18 VELO
.append("../data/eu_defangle_velo_t224.dat")
21 FOUT
= "../latex2/images/defangle.png"
24 ylabel
= r
'$\delta y$'
25 res
= (1024/80,768/80)
33 ######################################################################
38 for i
in range(len(ANGLE
)):
39 angle
.append(mlab
.csv2rec(ANGLE
[i
], delimiter
='\t', comments
='#'))
40 for i
in range(len(VELO
)):
41 velo
.append(mlab
.csv2rec(VELO
[i
], delimiter
='\t', comments
='#'))
47 for i
in range(len(angle
)):
49 psi
.append(angle
[i
].x
)
50 for i
in range(len(velo
)):
55 def mean_angle(param
,angle
):
56 unique_param
= unique(param
)
57 list_angles
= [ [] for DUMMYVAR
in range(len(unique_param
)) ]
59 for i
in range(len(unique_param
)):
60 for j
in range(len(angle
)):
61 #print j, len(param), i, len(unique_param)
62 if (param
[j
] == unique_param
[i
]):
63 list_angles
[i
].append(angle
[j
])
64 #print len(list_angles[i])
65 ret_avg
.append(abs(float(sum(list_angles
[i
])) /
96 left
, width
= 0.1, 0.8
98 rect1
= [left
, c
+0.1, width
, c
]
99 rect2
= [left
, 0.1, width
, c
]
101 rad_ac
= acangle
*(np
.pi
/180)
103 fig
= plt
.figure(figsize
=res
)
105 ax1
= fig
.add_axes(rect1
)
106 ax2
= fig
.add_axes(rect2
)
112 for i
in range(len(angle
)):
113 print "avg_angles[",i
,"]"
114 avg_angles
.append(mean_angle(r
[i
],psi
[i
]))
115 print "avg_velo[",i
,"]"
117 avg_velo
.append(mean_angle(r
[i
],vx
[i
]))
118 unique_r
.append(unique(r
[i
]))
120 for i
in range(len(angle
)):
121 ax1
.plot(unique_r
[i
], avg_angles
[i
], marker
=marker_list
[i
],
122 ms
=0, ls
=ls_list
[i
], color
=color_list
[i
])
123 for i
in range(len(velo
)):
124 ax2
.plot(unique_r
[i
], avg_velo
[i
], marker_list
[i
], ms
=0,
125 ls
=ls_list
[i
], color
=color_list
[i
])
127 xticks
= np
.arange(0,360+1,45)
128 yticks1
= np
.arange(0,360+1,45)
129 yticks2
= np
.arange(0,1.1,0.5)
131 ax1
.set_xlim(r
[0].min()-pad1
,r
[0].max()+pad1
)
132 ax1
.set_ylim(yticks1
.min(),yticks1
.max())
133 ax2
.set_xlim(r
[0].min()-pad2
,r
[0].max()+pad2
)
134 ax2
.set_ylim(0,vx
[i
].max()+pad2
)
136 ax2
.set_xticks(xticks
)
137 ax1
.set_yticks(yticks1
)
138 ax2
.set_yticks(yticks2
)
139 ax1
.axvline(acangle
, color
='black', ls
=":")
140 #ax1.axvline(acangle-45, color='black', ls="-.")
141 #ax1.axvline(acangle+45, color='black', ls="-.")
142 ax1
.axvline(acangle
+180, color
='black', ls
=":")
143 #ax1.axvline(acangle+180-45, color='black', ls="-.")
144 #ax1.axvline(acangle+180+45, color='black', ls="-.")
145 ax2
.axvline(acangle
, color
='black', ls
=":")
146 ax2
.axvline(acangle
+180, color
='black', ls
=":")
147 #ax2.axvline(acangle+180-45, color='black', ls="-.")
148 #ax2.axvline(acangle+180+45, color='black', ls="-.")
149 #ax2.axvline(acangle-45, color='black', ls="-.")
150 #ax2.axvline(acangle+45, color='black', ls="-.")
152 ax1
.set_ylabel(r
'$\psi$', size
=lsize
)
153 ax2
.set_ylabel(r
'$v_x$', size
=lsize
)
154 ax2
.set_xlabel(r
'$\phi$', size
=lsize
)
155 ax2
.set_xticklabels(ax2
.get_xticks(), size
=tsize
)
156 ax1
.set_yticklabels(ax1
.get_yticks(), size
=tsize
)
157 ax2
.set_yticklabels(ax2
.get_yticks(), size
=tsize
)