11 </colgroup> |
11 </colgroup> |
12 <thead> |
12 <thead> |
13 <tr><th scope="col" class="right">Time</th><th scope="col" class="left">Speaker</th><th scope="col" class="left">Title</th></tr> |
13 <tr><th scope="col" class="right">Time</th><th scope="col" class="left">Speaker</th><th scope="col" class="left">Title</th></tr> |
14 </thead> |
14 </thead> |
15 <tbody> |
15 <tbody> |
16 <tr><td class="right">09:00-09:30</td><td class="left"></td><td class="left">Inauguration</td></tr> |
16 <tr><td class="right">09:00-09:15</td><td class="left"></td><td class="left">Inauguration</td></tr> |
17 <tr><td class="right">09:30-10:30</td><td class="left">Perry Greenfield</td><td class="left"><b>Keynote</b>: <a href="#sec-3_1">How Python Slithered into Astronomy</a></td></tr> |
17 <tr><td class="right">09:15-10:15</td><td class="left">[Invited Speaker] Eric Jones</td><td class="left"><b>Keynote: What Matters in Scientific Software Projects? 10 Years of Success and Failure Distilled</b></td></tr> |
18 <tr><td class="right">10:30-10:45</td><td class="left"></td><td class="left">Tea Break</td></tr> |
18 <tr><td class="right">10:15-10:45</td><td class="left"></td><td class="left">Tea Break</td></tr> |
19 <tr><td class="right">10:45-11:30</td><td class="left">Fernando Perez</td><td class="left"><b>Special Talk</b>: <a href="#sec-3_2">IPython : Beyond the Simple Shell</a></td></tr> |
19 <tr><td class="right">10:45-11:05</td><td class="left">Ankur Gupta</td><td class="left"><a href="#sec2.2">Multiprocessing module and Gearman</a></td></tr> |
20 <tr><td class="right">11:30-11:50</td><td class="left">Farhat Habib</td><td class="left"><a href="#sec-4_1">Python as a Platform for Scientific Computing Literacy for 10+2 Students: Weighing the Balance</a></td></tr> |
20 <tr><td class="right">11:05-11:35</td><td class="left">Kunal Puri</td><td class="left"><a href="#sec2.9">Smoothed Particle Hydrodynamics with Python</a></td></tr> |
21 <tr><td class="right">11:50-12:10</td><td class="left">Jayesh Gandhi</td><td class="left"><a href="#sec-4_14">Microcontroller experiment and its simulation using Python</a></td></tr> |
21 <tr><td class="right">11:35-12:20</td><td class="left">[Invited Speaker] Mateusz Paprocki</td><td class="left"><b><a href = "#sec2.26">Understanding importance of automated software testing</b></a></td></tr> |
22 <tr><td class="right">12:10-12:40</td><td class="left">Vaidhy Mayilrangam</td><td class="left"><a href="#sec-4_17">Natural Language Processing Using Python</a></td></tr> |
22 <tr><td class="right">12:20-13:20</td><td class="left"></td><td class="left"><b>Lunch</b></td></tr> |
23 <tr><td class="right">12:40-13:10</td><td class="left">Georges Khaznadar</td><td class="left"><a href="#sec-4_10">Live media for training in experimental sciences</a></td></tr> |
23 <tr><td class="right">13:20-14:05</td><td class="left">[Invited Speaker] Ajith Kumar</td><td class="left"><b>Invited Talk</b></td></tr> |
24 <tr><td class="right">13:10-14:10</td><td class="left"></td><td class="left">Lunch</td></tr> |
24 <tr><td class="right">14:05-14:25</td><td class="left">Bala Subrahmanyam Varanasi</td><td class="left"><a href="#sec2.6">Sentiment Analysis</a></td></tr> |
25 <tr><td class="right">14:10-14:20</td><td class="left">Shubham Chakraborty</td><td class="left"><a href="#sec-4_11">Use of Python and Phoenix-M interface in Robotics</a></td></tr> |
25 <tr><td class="right">14:25-14:55</td><td class="left">Jayneil Dalal</td><td class="left"><a href="#sec2.8">Building Embedded Systems for Image Processing using Python</a></td></tr> |
26 <tr><td class="right">14:20-14:30</td><td class="left">Erroju Rama Krishna</td><td class="left"><a href="#sec-4_8">Simplified and effective Network Simulation using ns-3</a></td></tr> |
26 <tr><td class="right">14:55-15:05</td><td class="left">IITB Students[Changed to Day 2 lightning talk slot]</td><td class="left"><a href="#sec2.24">Project Presentation</a></td></tr> |
27 <tr><td class="right">14:30-14:40</td><td class="left"></td><td class="left">More Lightning Talks</td></tr> |
27 <tr><td class="right">15:05-15:35</td><td class="left"></td><td class="left"><b>Tea Break</b></td></tr> |
28 <tr><td class="right">14:40-15:10</td><td class="left">Asokan Pichai</td><td class="left"><b>Invited Talk</b>: <a href="#sec-3_3">Teaching Programming with Python</a></td></tr> |
28 <tr><td class="right">15:35-16:20</td><td class="left">[Invited Speaker] Prabhu Ramachandran</td><td class="left"><b>Invited Talk</b></td></tr> |
29 <tr><td class="right">15:10-15:30</td><td class="left">Hemanth Chandran</td><td class="left"><a href="#sec-4_19">Performance Evaluation of HYBRID MAC for 802.11ad: Next Generation Multi-Gbps Wi-Fi using SimPy</a></td></tr> |
29 |
30 <tr><td class="right">15:30-15:50</td><td class="left">Karthikeyan selvaraj</td><td class="left"><a href="#sec-4_9">PyCenter</a></td></tr> |
30 <tr><td class="right">16:20-16:40</td><td class="left">William Natharaj P.S</td><td class="left"><a href="#sec2.3">Automated Measurement of Magnetic properties of Ferro-Magnetic materials using Python</a></td></tr> |
31 <tr><td class="right">15:50-16:10</td><td class="left"></td><td class="left">Tea Break</td></tr> |
31 <tr><td class="right">16:40-17:00</td><td class="left">Nivedita Datta</td><td class="left"><a href="#sec2.10">Encryptedly yours : Python & Cryptography</a></td></tr> |
32 <tr><td class="right">16:10-16:40</td><td class="left">Satrajit Ghosh</td><td class="left"><b>Invited Talk</b>: <a href="#sec-3_6">Nipype: Opensource platform for unified and replicable interaction with existing neuroimaging tools</a></td></tr> |
32 <tr><td class="right">17:10-17:30</td><td class="left"></td><td class="left"><b>Lightning Talks</b></td></tr> |
33 <tr><td class="right">16:40-17:00</td><td class="left">Nek Sharan</td><td class="left"><a href="#sec-4_7">Parallel Computation of Axisymmetric Jets</a></td></tr> |
|
34 <tr><td class="right">17:00-17:20</td><td class="left">pankaj pandey</td><td class="left"><a href="#sec-4_20">PySPH: Smooth Particle Hydrodynamics with Python</a></td></tr> |
|
35 </tbody> |
33 </tbody> |
36 </table> |
34 </table> |
37 |
35 |
38 |
36 |
39 |
|
40 |
|
41 |
|
42 |
|
43 |
|
44 <h2 id="sec-2">Day 2 </h2> |
37 <h2 id="sec-2">Day 2 </h2> |
45 |
|
46 |
|
47 <table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> |
38 <table border="2" cellspacing="0" cellpadding="6" rules="groups" frame="hsides"> |
48 <caption></caption> |
39 <caption></caption> |
49 <colgroup><col class="right" /><col class="left" /><col class="left" /> |
40 <colgroup><col class="right" /><col class="left" /><col class="left" /> |
50 </colgroup> |
41 </colgroup> |
51 <thead> |
42 <thead> |
52 <tr><th scope="col" class="right">Time</th><th scope="col" class="left">Speaker</th><th scope="col" class="left">Title</th></tr> |
43 <tr><th scope="col" class="right">Time</th><th scope="col" class="left">Speaker</th><th scope="col" class="left">Title</th></tr> |
53 </thead> |
44 </thead> |
54 <tbody> |
45 <tbody> |
55 <tr><td class="right">09:00-10:00</td><td class="left">John Hunter</td><td class="left"><b>Special Talk</b>: <a href="#sec-3_4">matplotlib: Beyond the simple plot</a></td></tr> |
46 <tr><td class="right">09:00-09:45</td><td class="left">[Invited Speaker] Gaël Varoquaux</td><td class="left"><a href="#sec2.23"><b>Machine learning as a tool for Neuroscience</b></td></tr> |
56 <tr><td class="right">10:00-10:45</td><td class="left">Prabhu Ramachandran</td><td class="left"><b>Invited Talk</b>: <a href="#sec-3_5">Mayavi : Bringing Data to Life</a></td></tr> |
47 <tr><td class="right">09:45-10:15</td><td class="left">[Invited Speaker] Kannan Moudgalya</td><td class="left"><b>National Mission on Education Through ICT</b></td></tr> |
57 <tr><td class="right">10:45-11:00</td><td class="left"></td><td class="left">Tea</td></tr> |
48 <tr><td class="right">10:15-10:45</td><td class="left"></td><td class="left"><b>Tea</b></td></tr> |
58 <tr><td class="right">11:00-11:45</td><td class="left">Stéfan van der Walt</td><td class="left"><b>Invited Talk</b>: <a href="#sec-3_7">In Pursuit of a Pythonic PhD</a></td></tr> |
49 <tr><td class="right">10:45-11:05</td><td class="left">Hrishikesh Deshpande</td><td class="left"><a href="#sec2.14">Higher Order Statistics in Python</a></td></tr> |
59 <tr><td class="right">11:45-12:15</td><td class="left">Dharhas Pothina</td><td class="left"><a href="#sec-4_6">HyPy & HydroPic: Using python to analyze hydrographic survey data</a></td></tr> |
50 <tr><td class="right">11:05-11:25</td><td class="left">Jaidev Deshpande</td><td class="left"><a href="#sec2.18">A Python Toolbox for the Hilbert-Huang Transform</a></td></tr> |
60 <tr><td class="right">12:15-12:35</td><td class="left">Prashant Agrawal</td><td class="left"><a href="#sec-4_18">A Parallel 3D Flow Solver in Python Based on Vortex Methods</a></td></tr> |
51 <tr><td class="right">11:25-12:10</td><td class="left">[Invited Speaker] Emmanuelle Gouillart</td><td class="left"><a href="#sec2.27"><b>3-D image processing and visualization with the scientific-Python stack</b></a></td></tr> |
61 <tr><td class="right">12:35-13:05</td><td class="left">Ajith Kumar</td><td class="left"><a href="#sec-4_12">Python in Science Experiments using Phoenix</a></td></tr> |
52 <tr><td class="right">12:10-13:10</td><td class="left"></td><td class="left"><b>Lunch</b></td></tr> |
62 <tr><td class="right">13:05-14:05</td><td class="left"></td><td class="left">Lunch</td></tr> |
53 <tr><td class="right">13:10-13:50</td><td class="left">[Invited Speaker] Ole Nielsen/Panel Discussion with Invited Speakers</td><td class="left"><a href="#sec2.25"><b>7 Steps to Python Software That Works<a/> / Community Building in Open Source Projects</b></td></tr> |
63 <tr><td class="right">14:05-14:15</td><td class="left">Harikrishna</td><td class="left"><a href="#sec-4_23">Python based Galaxy workflow integration on GARUDA Grid</a></td></tr> |
54 <tr><td class="right">13:50-14:20</td><td class="left">Kunal Puri</td><td class="left"><a href="#sec2.21">GPU Accelerated Computational Fluid Dynamics with Python</a></td></tr> |
64 <tr><td class="right">14:15-14:25</td><td class="left">Arun C. H.</td><td class="left"><a href="#sec-4_3">Automation of an Optical Spectrometer</a></td></tr> |
55 <tr><td class="right">14:20-14:50</td><td class="left">Chetan Giridhar</td><td class="left"><a href="#sec2.19">Diving in to Byte-code optimization in Python</a></td></tr> |
65 <tr><td class="right">14:25-14:35</td><td class="left"></td><td class="left"><a href="#More==Lightning==Talks">More Lightning Talks</a></td></tr> |
56 <tr><td class="right">14:50-15:20</td><td class="left">Vishal Kanaujia</td><td class="left"><a href="#sec2.7">Exploiting the power of multicore for scientific computing in Python</a></td></tr> |
66 <tr><td class="right">14:35-14:55</td><td class="left">Krishnakant Mane</td><td class="left"><a href="#sec-4_22">Convincing Universities to include Python</a></td></tr> |
57 <tr><td class="right">15:20-15:50</td><td class="left"></td><td class="left"><b>Tea</b></td></tr> |
67 <tr><td class="right">14:55-15:15</td><td class="left">Shantanu Choudhary</td><td class="left"><a href="#sec-4_4">"Python" Swiss army knife for Prototyping, Research and Fun.</a></td></tr> |
58 <tr><td class="right">15:50-16:10</td><td class="left">Mahendra Naik</td><td class="left"><a href="#sec2.13">Large amounts of data downloading and processing in python with facebook data as reference</a></td></tr> |
68 <tr><td class="right">15:15-15:35</td><td class="left">Puneeth Chaganti</td><td class="left"><a href="#sec-4_21">Pictures, Songs and Python</a></td></tr> |
59 <tr><td class="right">16:10-16:20</td><td class="left">Sachin Shinde</td><td class="left"><a href="#sec2.22">Reverse Engineering and python</a></td></tr> |
69 <tr><td class="right">15:35-15:55</td><td class="left">Hrishikesh Deshpande</td><td class="left"><a href="#sec-4_5">Wavelet based denoising of ECG using Python</a></td></tr> |
60 <tr><td class="right">16:20-17:00</td><td class="left"></td><td class="left"><b>Lightning Talks</b></td></tr> |
70 <tr><td class="right">15:55-16:10</td><td class="left"></td><td class="left">Tea-Break</td></tr> |
|
71 <tr><td class="right">16:10-16:40</td><td class="left">Jarrod Millman</td><td class="left"><b>Invited Talk</b><a href="#sec-3_8">Building an open development community for neuroimaging analysis</a></td></tr> |
|
72 <tr><td class="right">16:40-17:00</td><td class="left">Ramakrishna Reddy Yekulla</td><td class="left"><a href="#sec-4_13">Building and Packaging your Scientific Python Application For Linux Distributions</a></td></tr> |
|
73 <tr><td class="right">17:00-17:20</td><td class="left">Yogesh Karpate</td><td class="left"><a href="#sec-4_16">Automatic Proteomic Finger Printing using Scipy</a></td></tr> |
|
74 <tr><td class="right">17:20-17:40</td><td class="left">Manjusha Joshi</td><td class="left"><a href="#sec-4_15">SAGE for Scientific computing and Education enhancement</a></td></tr> |
|
75 </tbody> |
61 </tbody> |
76 </table> |
62 </table> |
77 |
63 <br/><br/> |
78 |
64 |
79 |
65 <h2> Coverage</h2> |
80 |
66 <h3 id="sec2.2">Ankur Gupta : Multiprocessing module and Gearman</h3> |
81 |
67 <h4>Abstract</h4> |
82 |
68 <p class="abstract">Large Data Sets and Multi-Core computers are becoming a common place in today's world. |
83 |
69 Code that utilizes all cores at disposal is prerequisite to process large data sets. |
84 <h2 id="sec-3">Invited Talks </h2> |
70 Scaling over multiple machines/cluster allows for horizontal scaling. |
85 |
71 Drawing on experience of working with a Team at HP that created an near real time |
86 |
72 early warning software named OSSA. OSSA processed over 40TB+ compressed data at HP using 32 cores spread over |
87 |
73 a cluster of machine. Multiprocessing and Gearman ( a distributed job queue with Python bindings ) allows |
88 |
74 any simple python script to go distributed with minimal refactoring.</p> |
89 |
75 <h4>Slides</h4> |
90 |
76 <p>To be uploaded</p> |
91 <h3 id="sec-3_1">How Python Slithered into Astronomy </h3> |
77 |
92 |
78 <h3 id="sec2.3">William Natharaj P.S: Automated Measurement of Magnetic properties of Ferro-Magnetic materials using Python</h3> |
93 |
79 <h4>Abstract</h4> |
94 <p>Perry Greenfield |
80 <p>Hysterisis is basically a phenomenon where the behaviour of a system depends on the way the system moves. |
95 </p> |
81 On increasing the magnetizing field H applied to a magnetic material , |
96 |
82 the corresponding induction B traces a different path when it increases from that when the field |
97 |
83 decreases tracing a loop. It is often referred to as the B-H loop.</p> |
98 |
84 <p>A ferromagnetic specimen is placed co-axially in an applied magnetic field. |
99 <h4 id="sec-3_1_1">Talk/Paper Abstract </h4> |
85 The specimen gets magnetised and the magnetisation undergoes a variation due to the varying field . |
100 |
86 This variation is picked up by a pickup coil which is placed co-axially with the specimen. |
101 |
87 The dB/dt signal thus pickedup is propotional to dB/dt, which on integration gives the desired B. |
102 <p>I will talk about how Python was used to solve our problems for |
88 The H field is sampled as proportional to the energyzing current.</p> |
103 the Hubble Space Telescope. From humble beginnings as a glue |
89 <p>Data acquisition of H and dB/dt is done using a microcontroller |
104 element for our legacy software, it has become a cornerstone of |
90 based Data acquisition system which is implimented in Python. |
105 our scientific software for HST and the next large space |
91 The signal is acquired alternately choosing the H and the dB/dt. |
106 telescope, the James Webb Space Telescope, as well as many other |
92 The acquired data is nose reduced by averaging over various cycles. |
107 astronomy projects. The talk will also cover some of the history |
93 The processed signal dB/dt is integrated numerically making sure that |
108 of essential elements for scientific Python and where future |
94 the constant of integration chosen makes B swing equally on both sides of the H axis . |
109 work is needed, and why Python is so well suited for scientific |
95 The electronic circuitry used introduces an extra phase shift. |
110 software. |
96 This is nulled by running the experiment in air where B-H curve is only a straight line. |
111 </p> |
97 The retentivity, coercivity and the susceptibility of the specimen are calculated as the modulus |
112 |
98 of the X and the modulus of the Y intercepts . |
113 |
99 The result for steel agrees with reported values. |
114 |
100 This method also gives a way of calculating the hysterysis loss in the sample percycle. |
115 |
101 </p> |
116 |
102 <h4>Slides</h4> |
117 |
103 <p>To be uploaded</p> |
118 <h3 id="sec-3_2">IPython : Beyond the Simple Shell </h3> |
104 |
119 |
105 <h3 id="sec2.6">Bala Subrahmanyam Varanasi : Sentiment Analysis</h3> |
120 |
106 <h4>Abstract</h4> |
121 <p>Fernando Perez |
107 <p>This talk will start with a quick overview of my topic - Sentiment analysis, its |
122 </p> |
108 Applications, Opportunities and various Challenges involved in Sentiment Mining. |
123 |
109 Later, we present our machine learning experiments conducted using Natural Language Tool Kit |
124 |
110 (NLTK) with regard to sentiment analysis for the language "Telugu", where this work is less implemented.</p> |
125 |
111 <p>We have developed a Sentiment analyzer for Telugu Language. |
126 <h4 id="sec-3_2_1">Talk/Paper Abstract </h4> |
112 For that we developed movie review corpus from a popular website telugu.oneindia.com as our |
127 |
113 data set which is classified according to subjectivity/objectivity and negative/positive attitude. |
128 |
114 We used different approaches in extracting text features such as bag-of-words model, |
129 <p>IPython is a widely used system for interactive computing in |
115 using large movie reviews corpus, restricting to adjectives and adverbs, |
130 Python that extends the capabilities of the Python shell with |
116 handling negations and bounding word frequencies by a threshold. |
131 operating system access, powerful object introspection, |
117 We conclude our study with explanation of observed trends in accuracy rates and providing directions for future work.</p> |
132 customizable "magic" commands and many more features. It also |
118 <h4>Slides</h4> |
133 contains a set of tools to control parallel computations via |
119 <p>To be uploaded</p> |
134 high-level interfaces that can be used either interactively or |
120 <h3 id="sec2.7">Vishal Kanaujia : Exploiting the power of multicore for scientific computing in Python</h3> |
135 in long-running batch mode. In this talk I will outline some of |
121 <h4>Abstract</h4> |
136 the main features of IPython as it has been widely adopted by |
122 <p>Multicore systems offer abundant potential for parallel computing, |
137 the scientific Python user base, and will then focus on recent |
123 and Python developers are flocking to tap this power. |
138 developments. Using the high performance ZeroMQ networking |
124 Python is gaining popularity in high performance computing with rich set of libraries and frameworks.</p> |
139 library, we have recently restructured IPython to decouple the |
125 <p>Typically, scientific applications viz. modeling weather patterns, |
140 kernel executing user code from the control interface. This |
126 seismographic data, astronomical analysis etc, deal with huge data-set. |
141 allows us to expose multiple clients with different |
127 Processing of this raw data for further analysis is a highly CPU-intensive task. |
142 capabilities, including a terminal-based one, a rich Qt client |
128 Hence it is critical that design and development of these applications should |
143 and a web-based one with full matplotlib support. In conjunction |
129 look towards utilizing multiple CPU cores in an efficient manner for high performance.</p> |
144 with the new HTML5 matplotlib backend, this architecture opens |
130 |
145 the door for a rich web-based environment for interactive, |
131 <p>This talk discusses different methods to achieve parallelism in |
146 collaborative and parallel computing. There is much interesting |
132 Python applications and analyze these methods for effectiveness and suitability.</p> |
147 development to be done on this front, and I hope to encourage |
133 |
148 participants at the sprints during the conference to join this |
134 <h4>Agenda</h4> |
149 effort. |
135 <ul> |
150 </p> |
136 <li>Problem context: Big data problem</li> |
151 |
137 <li>Designing Python programs for multicores</li> |
152 |
138 <li>Achieving parallelism |
153 |
139 <ul> |
154 |
140 <li>Multithreading and the infamous GIL</li> |
155 |
141 <li>Exploring multiprocessing</li> |
156 |
142 <li>Jython concurrency</li> |
157 <h3 id="sec-3_3">Teaching Programming with Python </h3> |
143 </ul> |
158 |
144 </li> |
159 |
|
160 <p>Asokan Pichai |
|
161 </p> |
|
162 |
|
163 |
|
164 |
|
165 <h4 id="sec-3_3_1">Talk/Paper Abstract </h4> |
|
166 |
|
167 |
|
168 <p>As a trainer I have been engaged a lot for teaching fresh |
|
169 Software Engineers and software job aspirants. Before starting |
|
170 on the language, platform specific areas I teach a part I refer |
|
171 to as Problem Solving and Programming Logic. I have used Python |
|
172 for this portion of training in the last 12+years. In this talk |
|
173 I wish to share my experiences and approaches. This talk is |
|
174 intended at Teachers, Trainers, Python Evangelists, and HR |
|
175 Managers [if they lose their way and miraculously find |
|
176 themselves in SciPy :-)] |
|
177 </p> |
|
178 |
|
179 |
|
180 |
|
181 |
|
182 |
|
183 |
|
184 <h3 id="sec-3_4">matplotlib: Beyond the simple plot </h3> |
|
185 |
|
186 |
|
187 <p>John Hunter |
|
188 </p> |
|
189 |
|
190 |
|
191 |
|
192 <h4 id="sec-3_4_1">Talk/Paper Abstract </h4> |
|
193 |
|
194 |
|
195 <p>matplotlib, a python package for making sophisticated |
|
196 publication quality 2D graphics, and some 3D, has long supported |
|
197 a wide variety of basic plotting types such line graphs, bar |
|
198 charts, images, spectral plots, and more. In this talk, we will |
|
199 look at some of the new features and performance enhancements in |
|
200 matplotlib as well as some of the comparatively undiscovered |
|
201 features such as interacting with your data and graphics, and |
|
202 animating plot elements with the new animations API. We will |
|
203 explore the performance with large datasets utilizing the new |
|
204 path simplification algorithm, and discuss areas where |
|
205 performance improvements are still needed. Finally, we will |
|
206 demonstrate the new HTML5 backend, which in combination with the |
|
207 new HTML5 IPython front-end under development, will enable an |
|
208 interactive Python shell with interactive graphics in a web |
|
209 browser. |
|
210 </p> |
|
211 |
|
212 |
|
213 |
|
214 |
|
215 |
|
216 <h3 id="sec-3_5">Mayavi : Bringing Data to Life </h3> |
|
217 |
|
218 |
|
219 <p>Prabhu Ramachandran |
|
220 </p> |
|
221 |
|
222 |
|
223 |
|
224 <h4 id="sec-3_5_1">Talk/Paper Abstract </h4> |
|
225 |
|
226 |
|
227 <p>Mayavi is a powerful 3D plotting package implemented in |
|
228 Python. It includes both a standalone user interface along with |
|
229 a powerful yet simple scripting interface. The key feature of |
|
230 Mayavi though is that it allows a Python user to rapidly |
|
231 visualize data in the form of NumPy arrays. Apart from these |
|
232 basic features, Mayavi has some advanced features. These |
|
233 include, automatic script recording, embedding into a custom |
|
234 user dialog and application. Mayavi can also be run in an |
|
235 offscreen mode and be embedded in a sage notebook |
|
236 (<a href="http://www.sagemath.org">http://www.sagemath.org</a>). We will first rapidly demonstrate |
|
237 these key features of Mayavi. We will then discuss some of the |
|
238 underlying technologies like enthought.traits, traitsUI and TVTK |
|
239 that form the basis of Mayavi. The objective of this is to |
|
240 demonstrate the wide range of capabilities that both Mayavi and |
|
241 its underlying technologies provide the Python programmer. |
|
242 </p> |
|
243 |
|
244 |
|
245 |
|
246 |
|
247 |
|
248 <h3 id="sec-3_6">Nipype: Opensource platform for unified and replicable interaction with existing neuroimaging tools </h3> |
|
249 |
|
250 |
|
251 <p>Satrajit Ghosh |
|
252 </p> |
|
253 |
|
254 |
|
255 |
|
256 <h4 id="sec-3_6_1">Talk/Paper Abstract </h4> |
|
257 |
|
258 |
|
259 <p>Current neuroimaging software offer users an incredible |
|
260 opportunity to analyze their data in different ways, with |
|
261 different underlying assumptions. However, this has resulted in |
|
262 a heterogeneous collection of specialized applications without |
|
263 transparent interoperability or a uniform operating |
|
264 interface. Nipype, an open-source, community-developed |
|
265 initiative under the umbrella of Nipy, is a Python project that |
|
266 solves these issues by providing a uniform interface to existing |
|
267 neuroimaging software and by facilitating interaction between |
|
268 these packages within a single workflow. Nipype provides an |
|
269 environment that encourages interactive exploration of |
|
270 neuroimaging algorithms from different packages, eases the |
|
271 design of workflows within and between packages, and reduces the |
|
272 learning curve necessary to use different packages. Nipype is |
|
273 creating a collaborative platform for neuroimaging software |
|
274 development in a high-level language and addressing limitations |
|
275 of existing pipeline systems. |
|
276 </p> |
|
277 |
|
278 |
|
279 |
|
280 |
|
281 |
|
282 |
|
283 |
|
284 |
|
285 |
|
286 <h3 id="sec-3_7">In Pursuit of a Pythonic PhD </h3> |
|
287 |
|
288 |
|
289 <p>Stéfan van der Walt |
|
290 </p> |
|
291 |
|
292 |
|
293 |
|
294 <h4 id="sec-3_7_1">Talk/Paper Abstract </h4> |
|
295 |
|
296 |
|
297 <p>In May of 2005, I started a pilgrimage to transform myself into |
|
298 a doctor of engineering. Little did I know, then, that my |
|
299 journey would bring me in touch with some of the most creative, |
|
300 vibrant and inspiring minds in the open source world, and that |
|
301 an opportunity would arise to help realise their (and now my) |
|
302 dream: a completely free and open environment for performing |
|
303 cutting edge science. In this talk, I take you on my journey, |
|
304 and along the way introduce the NumPy and SciPy projects, our |
|
305 community, the early days of packaging, our documentation |
|
306 project, the publication of conference proceedings as well as |
|
307 work-shops and sprints around the world. I may even tell you a |
|
308 bit about my PhD on super-resolution imaging! |
|
309 </p> |
|
310 |
|
311 |
|
312 |
|
313 |
|
314 |
|
315 |
|
316 <h3 id="sec-3_8">Building an open development community for neuroimaging analysis</h3> |
|
317 |
|
318 |
|
319 <p>Jarrod Millman |
|
320 </p> |
|
321 |
|
322 |
|
323 |
|
324 <h4 id="sec-3_8_1">Talk/Paper Abstract </h4> |
|
325 |
|
326 |
|
327 <p>Programming is becoming increasingly important to scientific activity. As its |
|
328 importance grows, the need for better software tools becomes more and more |
|
329 central to scientific practice. However, many fields of science rely on |
|
330 badly written, poorly documented, and insufficiently tested codebases. |
|
331 Moreover, scientific software packages often implement only the approaches |
|
332 and algorithms needed or promoted by the specific lab where the software |
|
333 was written.</p> |
|
334 |
|
335 <p>In this talk, I will illustrate this situation by discussing some of the |
|
336 weaknesses of the software ecosystem for neuroimaging analysis circa 2004. |
|
337 I will then describe how several of my colleagues and I are attempting |
|
338 to rectify this situation with a project called Neuroimaging in Python |
|
339 (http://nipy.org). Specifically, I will discuss the approach we've taken |
|
340 (e.g., using Python) and the lessons we've learned. |
|
341 </p> |
|
342 |
|
343 |
|
344 |
|
345 |
|
346 |
|
347 |
|
348 |
|
349 |
|
350 <h2 id="sec-4">Submitted Talks </h2> |
|
351 |
|
352 |
|
353 |
|
354 |
|
355 |
|
356 |
|
357 <h3 id="sec-4_1">Python as a Platform for Scientific Computing Literacy for 10+2 Students: Weighing the Balance </h3> |
|
358 |
|
359 |
|
360 <p>Farhat Habib |
|
361 </p> |
|
362 |
|
363 |
|
364 |
|
365 <h4 id="sec-4_1_1">Talk/Paper Abstract </h4> |
|
366 |
|
367 |
|
368 <p>The use of Python as a language for introducing computing is |
|
369 becoming increasingly widespread. Here we report out findings |
|
370 from two years of running an introduction to computing course |
|
371 with Python as the programming language, and building upon it, |
|
372 using SciPy as a scientific computing language in a course on |
|
373 scientific computing. |
|
374 </p> |
|
375 |
|
376 <p> |
|
377 The course is designed as a general computing course for |
|
378 introducing computing to first year undergraduate students of |
|
379 science. We find that a large majority of our incoming students |
|
380 have no prior exposure to programming and none of the students |
|
381 had any exposure to Python. Thus, the design of the course is |
|
382 such that it allows everybody to be brought up to speed with |
|
383 general programming concepts. Later, the students will later |
|
384 specialize in varied topics from Biology to pure Mathematics, |
|
385 thus, the course emphasizes general computing concepts over |
|
386 specialized techniques. At a second course in Scien- tific |
|
387 Computing numerical methods are introduced with the aid of |
|
388 Scipy. The introduction to computing course has been taught |
|
389 twice in Fall 2009 and 2010 to batches of around 100 students |
|
390 each. In this paper we report our experience with teaching |
|
391 Python and student and faculty feedback related to the course. |
|
392 </p> |
|
393 |
|
394 |
|
395 |
|
396 |
|
397 |
|
398 |
|
399 <h3 id="sec-4_2">Usb Connectivity Using Python </h3> |
|
400 |
|
401 |
|
402 <p>Arun C. H. |
|
403 </p> |
|
404 |
|
405 |
|
406 |
|
407 <h4 id="sec-4_2_1">Talk/Paper Abstract </h4> |
|
408 |
|
409 |
|
410 <p>Host software using Python interpreter language to communicate |
|
411 with the USB Mass Storage class device is developed and |
|
412 tested. The <sub>usic18F4550</sub>.pyd module encapsulating all the |
|
413 functions needed to configure USB is developed. The Python |
|
414 extension .pyd using C/C++ functions compatible for Windows make |
|
415 use of SWIG, distutils and MinGW. SWIG gives the flexibility to |
|
416 access lower level C/C++ code through more convenient and higher |
|
417 level languages such as Python, Java, etc. Simplified Wrapper and |
|
418 Interface Generator (SWIG) is a middle interface between Python |
|
419 and C/C++. The purpose of the Python interface is to allow the |
|
420 user to initialize and configure USB through a convenient |
|
421 scripting layer. The module is built around libusb which can |
|
422 control an USB device with just a few lines. Libusb-win32 is a |
|
423 port of the USB library to the Windows operating system. The |
|
424 library allows user space applications to access any USB device on |
|
425 Windows in a generic way without writing any line of kernel driver |
|
426 code. A simple data acquisition system for measuring analog |
|
427 voltage, setting and reading the status of a particular pin of the |
|
428 micro controller is fabricated. It is interfaced to PC using USB |
|
429 port that confirms to library USB win32 device. The USB DAQ |
|
430 hardware consists of a PIC18F4550 micro-controller and the |
|
431 essential components needed for USB configuration. |
|
432 </p> |
|
433 |
|
434 |
|
435 |
|
436 |
|
437 |
|
438 |
|
439 |
|
440 |
|
441 <h3 id="sec-4_3">Automation of an Optical Spectrometer </h3> |
|
442 |
|
443 |
|
444 <p>Arun C. H. |
|
445 </p> |
|
446 |
|
447 |
|
448 |
|
449 <h4 id="sec-4_3_1">Talk/Paper Abstract </h4> |
|
450 |
|
451 |
|
452 <p>This paper describes the automation performed for an Optical |
|
453 Spectrometer in order to precisely monitor angles, change |
|
454 dispersing angle and hence measure wave length of light using a |
|
455 data logger, necessary hardware and Python. Automating instruments |
|
456 through programs provides great deal of power, flexibility and |
|
457 precision. Optical Spectrometers are devices which analyze the |
|
458 wave length of light, and are typically used to identify |
|
459 materials, and study their optical properties. A broad spectrum of |
|
460 light is dispersed using a grating and the dispersed light is |
|
461 measured using a photo transistor. The signal is processed and |
|
462 acquired using a data logger. Transfer of data, changing angle of |
|
463 diffraction are all done using the Python. The angle of |
|
464 diffraction is varied by rotating the detector to pick up lines |
|
465 using a stepper motor. The Stepper motor has 180 steps or 2 |
|
466 degrees per step. A resolution of 0.1 degree is achieved in the |
|
467 spectrometer by using the proper gear ratio. The data logger is |
|
468 interfaced to the computer through a serial port. The stepper |
|
469 motor is also interfaced to the computer through another serial |
|
470 port. Python is chosen here for its succinct notation and is |
|
471 implemented in a Linux environment. |
|
472 </p> |
|
473 |
|
474 |
|
475 |
|
476 |
|
477 |
|
478 |
|
479 |
|
480 |
|
481 <h3 id="sec-4_4">"Python" Swiss army knife for Prototyping, Research and Fun. </h3> |
|
482 |
|
483 |
|
484 <p>Shantanu Choudhary |
|
485 </p> |
|
486 |
|
487 |
|
488 |
|
489 <h4 id="sec-4_4_1">Talk/Paper Abstract </h4> |
|
490 |
|
491 |
|
492 <p>This talk would be covering usage of Python in different scenarios which helped me through my work: |
|
493 </p><ul> |
|
494 <li> |
|
495 Small mlab(Mayavi) scripts which helped in better understanding |
|
496 of problem statement. |
|
497 </li> |
|
498 <li> |
|
499 Python3.0 and its blender API's for writing plugins which are |
|
500 used for Open Source Animation movie project |
|
501 Tube(tube.freefac.org) |
|
502 </li> |
|
503 <li> |
|
504 PyOpenCL Python's interfacing for OpenCL which helped in |
|
505 prototyping and speed up of application. |
|
506 </li> |
|
507 </ul> |
145 </ul> |
508 |
146 <h4>Slides</h4> |
509 |
147 <p>To be uploaded</p> |
510 |
148 |
511 |
149 <h3 id="sec2.8">Jayneil Dalal : Building Embedded Systems for Image Processing using Python</h3> |
512 |
150 <h4>Abstract</h4> |
513 |
151 <p>I plan to teach everyone how to import the very popular and powerful |
514 |
152 OpenCV library to Python and use it for image processing. |
515 |
153 I will also cover the installation of the same as it is a very |
516 <h3 id="sec-4_5">Wavelet based denoising of ECG using Python </h3> |
154 cumbersome and a bit difficult task. Then we will do basic image processing programs . |
517 |
155 Then I will teach how to interact with an embedded system(Arduino) using Pyserial |
518 |
156 module and carry out different actions(Turn on LED etc.) |
519 <p>Hrishikesh Deshpande |
157 So finally we will develop a full fledged embedded system. |
520 </p> |
158 For e.g.: We will do image processing to detect a certain object in a given |
521 |
159 image and based on the output of that, the embedded system will do a certain task. |
522 |
160 If in a given image using facial recognition, a face is detected then an LED will be turned ON! All using python. |
523 |
161 </p> |
524 <h4 id="sec-4_5_1">Talk/Paper Abstract </h4> |
162 <h4>Slides</h4> |
525 |
163 <p>To be uploaded</p> |
526 |
164 |
527 <p>The python module "RemNoise" is presented. It allows user to |
165 |
528 automatically denoise one-dimensional signal using wavelet |
166 <h3 id="sec2.9">Kunal Puri : Smoothed Particle Hydrodynamics with Python</h3> |
529 transform. It also removes baseline wandering and motion |
167 <h4>Abstract</h4> |
530 artifacts. While RemNoise is developed primarily for biological |
168 <p>We present PySPH as a framework for smoothed particle hydrodynamics simulations in Python. |
531 signals like ECG, its design is generic enough that it should be |
169 PySPH can be used for a wide class of problems including fluid dynamics, solid mechanics and |
532 useful to applications involving one-dimensional signals. The |
170 compressible gas dynamics. We demonstrate how to run simulations and view the results with PySPH from the end-user's perspective. |
533 basic idea behind this work is to use multi-resolution property of |
171 </p> |
534 wavelet transform that allows to study non-stationary signals in |
172 |
535 greater depth. Any signal can be decomposed into detail and |
173 <p>Note: This is intended to be a magazine-style article as the PySPH architecture is discussed elsewhere.</p> |
536 approximation coefficients, which can further be decomposed into |
174 <h4>Slides</h4> |
537 higher levels and this approach can be used to analyze the signal |
175 <p>To be uploaded</p> |
538 in time-frequency domain. The very first step in any |
176 |
539 data-processing application is to pre-process the data to make it |
177 <h3 id="sec2.10">Nivedita Datta : Encryptedly yours : Python & Cryptography</h3> |
540 noise-free. Removing noise using wavelet transform involves |
178 <h4>Abstract</h4> |
541 transforming the dataset into wavelet domain, zero out all |
179 <p>In today's world, the hard truth about protecting electronic messages and |
542 transform coefficients using suitable thresholding method and |
180 transactions is that no matter how advanced the technology being used, |
543 reconstruct the data by taking its inverse wavelet transform. This |
181 there is no guarantee of absolute security. As quickly as researchers develop |
544 module makes use of PyWavelets, Numpy and Matplotlib libraries in |
182 ever-more-rigorous methods for keeping private information private, |
545 Python, and involves thresholding wavelet coefficients of the data |
183 others figure out how to skirt those safeguards. That's particularly worrisome as our |
546 using one of the several thresholding methods. It also allows |
184 society becomes more and more dependent on e-commerce. Scientists say that even measures |
547 multiplicative threshold rescaling to take into consideration |
185 now considered virtually 'unbreakable' might someday be broken, by either mathematicians or |
548 detail coefficients in each level of wavelet decomposition. The |
186 computers that develop new algorithms to crack the protective code. |
549 user can select wavelet family and level of decompositions as |
187 </p> |
550 required. To evaluate the module, we experimented with several |
188 |
551 complex one-dimensional signals and compared the results with |
189 <h4>Agenda</h4> |
552 equivalent procedures in MATLAB. The results showed that RemNoise |
|
553 is excellent module to preprocess data for noise-removal. |
|
554 </p> |
|
555 |
|
556 |
|
557 |
|
558 |
|
559 |
|
560 |
|
561 |
|
562 |
|
563 <h3 id="sec-4_6">HyPy & HydroPic: Using python to analyze hydrographic survey data </h3> |
|
564 |
|
565 |
|
566 <p>Dharhas Pothina |
|
567 </p> |
|
568 |
|
569 |
|
570 |
|
571 <h4 id="sec-4_6_1">Talk/Paper Abstract </h4> |
|
572 |
|
573 |
|
574 |
|
575 <p> |
|
576 The Texas Water Development Board(TWDB) collects hydrographic |
|
577 survey data in lakes, rivers and estuaries. The data collected |
|
578 includes single, dual and tri-frequency echo sounder data |
|
579 collected in conjunction with survey grade GPS systems. This raw |
|
580 data is processed to develop accurate representations of |
|
581 bathymetry and sedimentation in the water bodies surveyed. |
|
582 </p> |
|
583 <p> |
|
584 This talk provides an overview of how the Texas Water Development |
|
585 Board (TWDB) is using python to streamline and automate the |
|
586 process of converting raw hydrographic survey data to finished |
|
587 products that can then be used in other engineering applications |
|
588 such as hydrodynamic models, determining lake |
|
589 elevation-area-capacity relationships and sediment contour maps, |
|
590 etc. |
|
591 </p> |
|
592 <p> |
|
593 The first part of this talk will present HyPy, a python module |
|
594 (i.e. function library) for hydrographic survey data |
|
595 analysis. This module contains functions to read in data from |
|
596 several brands of depth sounders, conduct anisotropic |
|
597 interpolations along river channels, apply tidal and elevation |
|
598 corrections, apply corrections to boat path due to loss of GPS |
|
599 signals as well as a variety of convenience functions for dealing |
|
600 with spatial data. |
|
601 </p> |
|
602 <p> |
|
603 In the second part of the talk we present HydroPic, a simple |
|
604 Traits based application built of top of HyPy. HydroPic is |
|
605 designed to semi-automate the determination of sediment volume in |
|
606 a lake. Current techniques require the visual inspection of images |
|
607 of echo sounder returns along each individual profile. We show |
|
608 that this current methodology is slow and subject to high human |
|
609 variability. We present a new technique that uses computer vision |
|
610 edge detection algorithms available in python to semi-automate |
|
611 this process. HydroPic wraps these algorithms into a easy to use |
|
612 interface that allows efficient processing of data for an entire |
|
613 lake. |
|
614 </p> |
|
615 |
|
616 |
|
617 |
|
618 |
|
619 |
|
620 |
|
621 <h3 id="sec-4_7">Parallel Computation of Axisymmetric Jets </h3> |
|
622 |
|
623 |
|
624 <p>Nek Sharan |
|
625 </p> |
|
626 |
|
627 |
|
628 |
|
629 <h4 id="sec-4_7_1">Talk/Paper Abstract </h4> |
|
630 |
|
631 |
|
632 <p>Flow field for imperfectly expanded jet has been simulated using |
|
633 Python for prediction of jet screech frequency. This plays an |
|
634 important role in the design of advanced aircraft engine nozzle, |
|
635 since screech could cause sonic fatigue failure. For computation, |
|
636 unsteady axisymmetric Navier-Stokes equation is solved using fifth |
|
637 order Weighted Essentially Non-Oscillatory (WENO) scheme with a |
|
638 subgrid scale Large-Eddy Simulation (LES) model. Smagorinsky’s |
|
639 eddy viscosity model is used for subgrid scale modeling with |
|
640 second order (Total Variation Diminishing) TVD Runge Kutta time |
|
641 stepping. The performance of Python code is enhanced by using |
|
642 different Cython constructs like declaration of variables and |
|
643 numpy arrays, switching off bound check and wrap around etc. Speed |
|
644 up obtained from these methods have been individually clocked and |
|
645 compared with the Python code as well as an existing in-house C |
|
646 code. Profiling was used to highlight and eliminate the expensive |
|
647 sections of the code. |
|
648 </p> |
|
649 <p> |
|
650 Further, both shared and distributed memory architectures have |
|
651 been employed for parallelization. Shared memory parallel |
|
652 processing is implemented through a thread based model by manual |
|
653 release of Global Interpreter Lock (GIL). GIL ensures safe and |
|
654 exclusive access of Python interpreter internals to running |
|
655 thread. Hence while one thread is running with GIL the other |
|
656 threads are put on hold until the running thread ends or is forced |
|
657 to wait. Therefore to run two threads simultaneously, GIL was |
|
658 manually released using "with nogil" statement. The relative |
|
659 independence of radial and axial spatial derivative computation |
|
660 provides an option of putting them in parallel threads. On the |
|
661 other hand, distributed memory parallel processing is through MPI |
|
662 based domain decomposition, where the domain is split radially |
|
663 with an interface of three grid points. Each sub-domain is |
|
664 delegated to a different processor and communication, in the form |
|
665 of message transmission, ensures update of interface grid |
|
666 points. Performance analyses with increase in number of processors |
|
667 indicate a trade-off between computation and communication. A |
|
668 combined thread and MPI based model is attempted to harness the |
|
669 benefits from both forms of architectures. |
|
670 </p> |
|
671 |
|
672 |
|
673 |
|
674 |
|
675 |
|
676 |
|
677 |
|
678 |
|
679 <h3 id="sec-4_8">Simplified and effective Network Simulation using ns-3 </h3> |
|
680 |
|
681 |
|
682 <p>Erroju Rama Krishna |
|
683 </p> |
|
684 |
|
685 |
|
686 |
|
687 <h4 id="sec-4_8_1">Talk/Paper Abstract </h4> |
|
688 |
|
689 |
|
690 |
|
691 <p> |
|
692 Network simulation has great significance in the research areas of |
|
693 modern networks. The ns-2 is the popular simulation tool which |
|
694 proved this, in the successive path of ns-2 by maintaining the |
|
695 efficiency of the existing mechanism it has been explored with a |
|
696 new face and enhanced power of python scripting in ns-3. Python |
|
697 scripting can be added to legacy projects just as well as new |
|
698 ones, so developers don't have to abandon their old C/C++ code |
|
699 libraries, but in the ns-2 it is not possible to run a simulation |
|
700 purely from C++ (i.e., as a main() program without any OTcl), ns-3 |
|
701 does have new capabilities (such as handling multiple interfaces |
|
702 on nodes correctly, use of IP addressing and more alignment with |
|
703 Internet protocols and designs, more detailed 802.11 models, etc.) |
|
704 </p> |
|
705 <p> |
|
706 In ns-3, the simulator is written entirely in C++, with optional |
|
707 Python bindings. Simulation scripts can therefore be written in |
|
708 C++ or in Python. The results of some simulations can be |
|
709 visualized by nam, but new animators are under development. Since |
|
710 ns-3 generates pcap packet trace files, other utilities can be |
|
711 used to analyze traces as well. |
|
712 </p> |
|
713 <p> |
|
714 In this paper the efficiency and effectiveness of IP addressing |
|
715 simulation model of ns-3 is compared with the ns-2 simulation |
|
716 model,ns-3 model consisting of the scripts written in Python which |
|
717 makes the modeling simpler and effective |
|
718 </p> |
|
719 |
|
720 |
|
721 |
|
722 |
|
723 |
|
724 |
|
725 |
|
726 <h3 id="sec-4_9">PyCenter </h3> |
|
727 |
|
728 |
|
729 <p>Karthikeyan selvaraj |
|
730 </p> |
|
731 |
|
732 |
|
733 |
|
734 <h4 id="sec-4_9_1">Talk/Paper Abstract </h4> |
|
735 |
|
736 |
|
737 <p>The primary objective is defining a centralized testing |
|
738 environment and a model of testing framework which integrates all |
|
739 projects in testing in a single unit. |
|
740 </p> |
|
741 <p> |
|
742 The implementation of concurrent processing systems and adopting |
|
743 client server architecture and with partitioned server zones for |
|
744 environment manipulation, allows the server to run test requests |
|
745 from different projects with different environment and testing |
|
746 requests. The implementation provides features of auto-test |
|
747 generation, scheduled job run from server, thin and thick clients. |
|
748 </p> |
|
749 |
|
750 <p> |
|
751 The core engine facilitates the management of tests from all the |
|
752 clients with priority and remote scheduling. It has an extended |
|
753 configuration utility to manipulate test parameters and watch |
|
754 dynamic changes. It not only acts as a request pre-preprocessor |
|
755 but also a sophisticated test bed by its implementation. It is |
|
756 provided with storage and manipulation segment for every |
|
757 registered project in the server zone. The system schedules and |
|
758 records events and user activities thereby the results can be |
|
759 drilled and examined to core code level with activates and system |
|
760 states at the test event point. |
|
761 </p> |
|
762 <p> |
|
763 The system generates test cases both in human readable as well as |
|
764 executable system formats. The generated tests are based on a |
|
765 pre-defined logic in the system which can be extended to adopt new |
|
766 cases based on user requests. These are facilitated by a template |
|
767 system which has a predefined set of cases for various test types |
|
768 like compatibility, load, performance, code coverage, dependency |
|
769 and compliance testing. It is also extended with capabilities like |
|
770 centralized directory systems for user management with roles and |
|
771 privileges for authentication and authorization, global mailer |
|
772 utilities, Result consolidator and Visualizer. |
|
773 </p> |
|
774 <p> |
|
775 With the effective implementation of the system with its minimal |
|
776 requirements, the entire testing procedure can be automated with |
|
777 the testers being effectively used for configuring, ideating and |
|
778 managing the test system and scenarios. The overhead of managing |
|
779 the test procedures like environment pre-processing, test |
|
780 execution, results collection and presentation are completely |
|
781 evaded from the testing life cycle. |
|
782 </p> |
|
783 |
|
784 |
|
785 |
|
786 |
|
787 |
|
788 |
|
789 |
|
790 |
|
791 <h3 id="sec-4_10">Live media for training in experimental sciences </h3> |
|
792 |
|
793 |
|
794 <p>Georges Khaznadar |
|
795 </p> |
|
796 |
|
797 |
|
798 |
|
799 <h4 id="sec-4_10_1">Talk/Paper Abstract </h4> |
|
800 |
|
801 |
|
802 <p>A system for distance learning in the field of Physics and |
|
803 Electricity has been used for three years with some success for 15 |
|
804 years old students. The students are given a little case |
|
805 containing a PHOENIX box (see |
|
806 <a href="http://www.iuac.res.in/~elab/phoenix/">http://www.iuac.res.in/~elab/phoenix/</a>) featuring electric analog |
|
807 and digital I/O interfaces, some unexpensive discrete components |
|
808 and a live (bootable) USB stick. |
|
809 </p> |
|
810 <p> |
|
811 The PHOENIX project was started by Inter University Accelerator |
|
812 Centre in New Delhi, with the objective of improving the |
|
813 laboratory facilities at Indian Universities, and growing with the |
|
814 support of the user community. PHOENIX depends heavily on Python |
|
815 language. The data acquisition, analysis and writing simulation |
|
816 programs to teach science and computation. |
|
817 </p> |
|
818 <p> |
|
819 The hardware design of PHOENIX box is freely available. |
|
820 </p> |
|
821 <p> |
|
822 The live bootable stick provides a free/libre operating system, |
|
823 and a few dozens educational applications, including applications |
|
824 developed with Scipy to drive the PHOENIX box and manage the |
|
825 acquired measurements. The user interface has been made as |
|
826 intuitive as possible: the main window shows a photo of the front |
|
827 face of the PHOENIX acquisition device, its connections behaving |
|
828 like widgets to express their states, and a subwindow displays in |
|
829 real time the signals connected to it. A booklet gives |
|
830 general-purpose hints for the usage of the acquisition device. The |
|
831 educational interaction is done with a free learning management |
|
832 system. |
|
833 </p> |
|
834 <p> |
|
835 The talk will show how such live media can be used as powerful |
|
836 training systems, allowing students to access at home exactly the |
|
837 same environment they can find in the school, and providing them a |
|
838 lot of structured examples. |
|
839 </p> |
|
840 <p> |
|
841 This talk addresses people who are involved in education and |
|
842 training in scientific fields. It describes one method which |
|
843 allows distance learning (however requiring a few initial lessons |
|
844 to be given non-remotely), and enables students to become fluent |
|
845 with Python and its scientific extensions, while learning physics |
|
846 and electricity. This method uses Internet connections to allow |
|
847 remote interactions, but does not rely on a wide bandwidth, as the |
|
848 complete learning environment is provided by the live medium, |
|
849 which is shared by teacher and students after their beginning |
|
850 lessons. |
|
851 </p> |
|
852 |
|
853 |
|
854 |
|
855 |
|
856 |
|
857 |
|
858 |
|
859 <h3 id="sec-4_11">Use of Python and Phoenix-M interface in Robotics </h3> |
|
860 |
|
861 |
|
862 <p>Shubham Chakraborty |
|
863 </p> |
|
864 |
|
865 |
|
866 |
|
867 <h4 id="sec-4_11_1">Talk/Paper Abstract </h4> |
|
868 |
|
869 |
|
870 <p>In this paper I will show how to use Python programming with a |
|
871 computer interface such as Phoenix-M to drive simple robots. In my |
|
872 quest towards Artificial Intelligence (AI) I am experimenting with |
|
873 a lot of different possibilities in Robotics. This one is trying |
|
874 to mimic the working of a simple insect's autonomous nervous |
|
875 system using hard wiring and some minimal software usage. This is |
|
876 the precursor to my advanced robotics and AI integration where I |
|
877 plan to use an new paradigm of AI based on Machine Learning and |
|
878 Self Consciousness via Knowledge Feedback and Update process. |
|
879 </p> |
|
880 |
|
881 |
|
882 |
|
883 |
|
884 |
|
885 |
|
886 |
|
887 |
|
888 <h3 id="sec-4_12">Python in Science Experiments using Phoenix </h3> |
|
889 |
|
890 |
|
891 <p>Ajith Kumar |
|
892 </p> |
|
893 |
|
894 |
|
895 |
|
896 <h4 id="sec-4_12_1">Talk/Paper Abstract </h4> |
|
897 |
|
898 |
|
899 <p>Phoenix is a hardware plus software framework for developing |
|
900 computer interfaced science experiments. Sensor and control |
|
901 elements connected to Phoenix can be accessed using Python. Text |
|
902 based and GUI programs are available for several |
|
903 experiments. Python programming language is used as a tool for |
|
904 data acquisition, analysis and visualization. |
|
905 </p> |
|
906 <p> |
|
907 Objective of the project is to improve the laboratory facilities |
|
908 at the Universities and also to utilize computers in a better |
|
909 manner to teach science. The hardware design is freely |
|
910 available. The project is based on Free Software tools and the |
|
911 code is distributed under GNU General Public License. |
|
912 </p> |
|
913 |
|
914 |
|
915 |
|
916 |
|
917 |
|
918 |
|
919 <h3 id="sec-4_13">Building and Packaging your Scientific Python Application For Linux Distributions </h3> |
|
920 |
|
921 |
|
922 <p>Ramakrishna Reddy Yekulla |
|
923 </p> |
|
924 |
|
925 |
|
926 |
|
927 <h4 id="sec-4_13_1">Talk/Paper Abstract </h4> |
|
928 |
|
929 |
|
930 <p>If you are an Independent Researcher, Academic Project or an |
|
931 Enterprise software Company building large scale scientific python |
|
932 applications, there is a huge community of packagers who look at |
|
933 upstream python projects to get those packages into upstream |
|
934 distributions. This talk focuses on practices, making your |
|
935 applications easy to package so that they can be bundled with |
|
936 Linux distributions. Additionally this talk would be more hands |
|
937 on, more like a workshop. The audience are encouraged to bring as |
|
938 many python applications possible, using the techniques showed in |
|
939 the talk and help them package it for fedora. |
|
940 </p> |
|
941 |
|
942 |
|
943 |
|
944 |
|
945 |
|
946 |
|
947 |
|
948 |
|
949 <h3 id="sec-4_14">Microcontroller experiment and its simulation using Python </h3> |
|
950 |
|
951 |
|
952 <p>Jayesh Gandhi |
|
953 </p> |
|
954 |
|
955 |
|
956 |
|
957 <h4 id="sec-4_14_1">Talk/Paper Abstract </h4> |
|
958 |
|
959 |
|
960 <p>Electronics in industrial has been passing through revolution due |
|
961 to extensive use of Microcontroller. These electronic devices are |
|
962 having a high capability to handle multiple events. Their |
|
963 capability to communicate with the computers has made the |
|
964 revolution possible. Therefore it is very important to have |
|
965 trained Personnel in Microcontroller. In the present work |
|
966 experiments for study of Microcontrollers and its peripherals with |
|
967 Simulation using Python is carried out. This facilitates the |
|
968 teachers to demonstrate the experiments in the classroom sessions |
|
969 using simulations. Then the same experiments can be carried out in |
|
970 the labs (using the same simulation setup) and the microcontroller |
|
971 hardware to visualize and understand the experiments. Python is |
|
972 selected due to its versatility and also to promote the use of |
|
973 open source software in the education. |
|
974 </p> |
|
975 <p> |
|
976 Here we demonstrate the experiment of driving seven segment |
|
977 displays by microcontroller. Four seven segment displays are |
|
978 interfaced with the microcontroller through a single BCD to seven |
|
979 segments Display Decoder/Driver (74LS47) and switching |
|
980 transistors. The microcontroller switches on the first transistor |
|
981 connected to the first display and puts the number to be displayed |
|
982 on 74LS47. Then it pause a while, switches off the first display |
|
983 and puts the number to be displayed on the second display and |
|
984 switches it on. A similar action is carried out for all the |
|
985 display and the cycle is repeated again and again. Now we can |
|
986 control the microcontroller action using the serial port of the |
|
987 computer through python. Simulating the seven segment display |
|
988 using VPYTHON module and communicating the same action to the |
|
989 microcontroller, we can demonstrate the switching action of the |
|
990 display at a very slow rate. It is possible to actually see each |
|
991 display glowing individually one after another. Now we can |
|
992 gradually increase the rate of switching the display. You see each |
|
993 display glowing for a few milliseconds. Finally the refresh rate |
|
994 is taken very high to around more than 25 times a second we see |
|
995 that all the display glowing simultaneously. |
|
996 </p> |
|
997 <p> |
|
998 Hence it is possible to simulate and demonstrate experiments and |
|
999 understand the capabilities of the microcontroller with a lot of |
|
1000 ease and at a very low cost. |
|
1001 </p> |
|
1002 |
|
1003 |
|
1004 |
|
1005 |
|
1006 |
|
1007 |
|
1008 |
|
1009 <h3 id="sec-4_15">SAGE for Scientific computing and Education enhancement </h3> |
|
1010 |
|
1011 |
|
1012 <p>Manjusha Joshi |
|
1013 </p> |
|
1014 |
|
1015 |
|
1016 |
|
1017 <h4 id="sec-4_15_1">Talk/Paper Abstract </h4> |
|
1018 |
|
1019 |
|
1020 |
|
1021 <p> |
|
1022 Sage is Free open source software for Mathematics. |
|
1023 </p> |
|
1024 <p> |
|
1025 Sage can handle long integer computations, symbolic computing, |
|
1026 Matrices etc. Sage is used for Cryptography, Number Theory, Graph |
|
1027 Theory in education field. Note book feature in Sage, allow user |
|
1028 to record all work on worksheet for future use. These worksheets |
|
1029 can be publish for information sharing, students and trainer can |
|
1030 exchange knowledge, share, experiment through worksheets. |
|
1031 </p> |
|
1032 <p> |
|
1033 Sage is an advanced computing tool which can enhance education in |
|
1034 India. |
|
1035 </p> |
|
1036 |
|
1037 |
|
1038 |
|
1039 |
|
1040 |
|
1041 |
|
1042 |
|
1043 |
|
1044 |
|
1045 <h3 id="sec-4_16">Automatic Proteomic Finger Printing using Scipy </h3> |
|
1046 |
|
1047 |
|
1048 <p>Yogesh Karpate |
|
1049 </p> |
|
1050 |
|
1051 |
|
1052 |
|
1053 <h4 id="sec-4_16_1">Talk/Paper Abstract </h4> |
|
1054 |
|
1055 |
|
1056 <p>The idea is to demonstrate the PyProt (Python Proteomics), an |
|
1057 approach to classify mass spectrometry data and efficient use of |
|
1058 statistical methods to look for the potential prevalent disease |
|
1059 markers and proteomic pattern diagnostics. Serum proteomic pattern |
|
1060 diagnostics can be used to differentiate samples from the patients |
|
1061 with and without disease. Profile patterns are generated using |
|
1062 surface-enhanced laser desorption and ionization (SELDI) protein |
|
1063 mass spectrometry. This technology has the potential to improve |
|
1064 clinical diagnostic tests for cancer pathologies. There are two |
|
1065 datasets used in this study which are taken from the FDA-NCI |
|
1066 Clinical Proteomics Program Databank. First data is of ovarian |
|
1067 cancer and second is of Premalignant Pancreatic Cancer .The Pyprot |
|
1068 uses the high-resolution ovarian cancer data set that was |
|
1069 generated using the WCX2 protein array. The ovarian cancer dataset |
|
1070 includes 95 controls and 121 ovarian cancer sets, where as |
|
1071 pancreatic cancer dataset has 101 controls and 80 pancreatic |
|
1072 cancer sets. There are two modules designed and implemented in |
|
1073 python using Numpy , Scipy and Matplotlib. There are two different |
|
1074 kinds of classifications implemented here, first to classify the |
|
1075 ovarian cancer data set. Second type focuses on randomly |
|
1076 commingled study set of murine sera. it explores the ability of |
|
1077 the low molecular weight information archive to classify and |
|
1078 discriminate premalignant pancreatic cancer compared to the |
|
1079 control animals. |
|
1080 </p> |
|
1081 <p> |
|
1082 A crucial issue for classification is feature selection which |
|
1083 selects the relevant features in order to focus the learning |
|
1084 search. A relaxed setting for feature selection is known as |
|
1085 feature ranking, which ranks the features with respect to their |
|
1086 relevance. Pyprot comprises of two modules; First includes |
|
1087 implementation of feature ranking in Python using fisher ratio and |
|
1088 t square statistical test to avoid large feature space. In second |
|
1089 module, Multilayer perceptron (MLP) feed forward neural network |
|
1090 model with static back propagation algorithm is used to classify |
|
1091 .The results are excellent and matched with databank results and |
|
1092 concludes that PyProt is useful tool for proteomic finger |
|
1093 printing. |
|
1094 </p> |
|
1095 |
|
1096 |
|
1097 |
|
1098 |
|
1099 |
|
1100 |
|
1101 |
|
1102 |
|
1103 |
|
1104 |
|
1105 <h3 id="sec-4_17">Natural Language Processing Using Python </h3> |
|
1106 |
|
1107 |
|
1108 <p>Vaidhy Mayilrangam |
|
1109 </p> |
|
1110 |
|
1111 |
|
1112 |
|
1113 <h4 id="sec-4_17_1">Talk/Paper Abstract </h4> |
|
1114 |
|
1115 |
|
1116 <p>The purpose of this talk is to give a high-level overview of |
|
1117 various text mining techniques, the statistical approaches and the |
|
1118 interesting problems. |
|
1119 </p> |
|
1120 <p> |
|
1121 The talk will start with a short summary of two key areas – namely |
|
1122 information retrieval (IR) and information extraction (IE). We |
|
1123 will then discuss how to use the knowledge gained for |
|
1124 summarization and translation. We will talk about how to measure |
|
1125 the correctness of results. As part of measuring the correctness, |
|
1126 we will discuss about different kinds of statistical approaches |
|
1127 for classifying and clustering data. |
|
1128 </p> |
|
1129 <p> |
|
1130 We will do a short dive into NLP specific problems - identifying |
|
1131 sentence boundaries, parts of speech, noun and verb phrases and |
|
1132 named entities. We will also have a sample session on how to use |
|
1133 Python’s NLTK to accomplish these tasks. |
|
1134 </p> |
|
1135 |
|
1136 |
|
1137 |
|
1138 |
|
1139 |
|
1140 |
|
1141 |
|
1142 <h3 id="sec-4_18">A Parallel 3D Flow Solver in Python Based on Vortex Methods </h3> |
|
1143 |
|
1144 |
|
1145 <p>Prashant Agrawal |
|
1146 </p> |
|
1147 |
|
1148 |
|
1149 |
|
1150 <h4 id="sec-4_18_1">Talk/Paper Abstract </h4> |
|
1151 |
|
1152 |
|
1153 <p>A 3D flow solver for incompressible flow around arbitrary 3D |
|
1154 bodies is developed. The solver is based on vortex methods whose |
|
1155 grid-free nature makes it very general. It uses vortex particles |
|
1156 to represent the flow-field. Vortex particles (or blobs) are |
|
1157 released from the boundary, and these advect, stretch and diffuse |
|
1158 according to the Navier-Stokes equations. |
|
1159 </p> |
|
1160 <p> |
|
1161 The solver is based on a generic and extensible design. This has |
|
1162 been made possible mainly by following a universal theme of using |
|
1163 blobs in every component of the solver. Advection of the |
|
1164 particles is implemented using a parallel fast multipole |
|
1165 method. Diffusion is simulated using the Vorticity Redistribution |
|
1166 Technique (VRT). To control the number of blobs, merging of nearby |
|
1167 blobs is also performed. |
|
1168 </p> |
|
1169 <p> |
|
1170 Each component of the solver is parallelized. The boundary, |
|
1171 advection and stretching algorithms are based on the same parallel |
|
1172 velocity algorithm. Domain decomposition for parallel velocity |
|
1173 calculator is performed using Space Filling Curves. Diffusion, |
|
1174 which requires knowledge of each particle's neighbours, uses a |
|
1175 parallelized fast neighbour finder which is based on a bin data |
|
1176 structure. The same neighbour finder is used in merging also. |
|
1177 </p> |
|
1178 <p> |
|
1179 The code is written completely in Python. It is well-documented |
|
1180 and well-tested. The code base is around 4500 lines long. The |
|
1181 design follows an object oriented approach which makes it |
|
1182 extensible enough to add new features and alternate algorithms to |
|
1183 perform specific tasks. |
|
1184 </p> |
|
1185 <p> |
|
1186 The solver is also designed to run in a parallel environment |
|
1187 involving multiple processors. This parallel implementation is |
|
1188 written using mpi4py, an MPI implementation in Python. |
|
1189 </p> |
|
1190 <p> |
|
1191 Rigorous testing is performed using Python's unittest module. Some |
|
1192 standard example cases are also solved using the present solver. |
|
1193 </p> |
|
1194 <p> |
|
1195 In this talk we will outline the overall design of the solver and |
|
1196 the algorithms used. We discuss the benefits of Python and also |
|
1197 some of the current limitations with respect to parallel testing. |
|
1198 </p> |
|
1199 |
|
1200 |
|
1201 |
|
1202 |
|
1203 |
|
1204 |
|
1205 |
|
1206 <h3 id="sec-4_19">Performance Evaluation of HYBRID MAC for 802.11ad: Next Generation Multi-Gbps Wi-Fi using SimPy </h3> |
|
1207 |
|
1208 |
|
1209 <p>Hemanth Chandran |
|
1210 </p> |
|
1211 |
|
1212 |
|
1213 |
|
1214 <h4 id="sec-4_19_1">Talk/Paper Abstract </h4> |
|
1215 |
|
1216 |
|
1217 <p>Next generation Wireless Local Area Networks (WLAN) is targeting |
|
1218 at multi giga bits per second throughput by utilizing the |
|
1219 unlicensed spectrum available at 60 GHz, millimeter wavelength |
|
1220 (mmwave).Towards achieving the above goal a new standard namely |
|
1221 the 802.11ad is under consideration. Due to the limited range and |
|
1222 other typical characteristics like high path loss etc., of these |
|
1223 mmwave radios the requirement of the Medium Access Control (MAC) |
|
1224 are totally different. |
|
1225 </p> |
|
1226 <p> |
|
1227 The conventional MAC protocols tend to achieve different |
|
1228 objectives under different conditions. For example, the (Carrier |
|
1229 Sense Multiple Access / Collision Avoidance) CSMA/CA technique is |
|
1230 robust and simple and works well in overlapping network |
|
1231 scenarios. It is also suitable for bursty type of traffic. On the |
|
1232 other hand CSMA/CA is not suitable for power management since it |
|
1233 needs the stations to be awake always. Moreover it requires an |
|
1234 omni directional antenna pattern for the receiver which is |
|
1235 practically not feasible in 60 GHz band. |
|
1236 </p> |
|
1237 <p> |
|
1238 A Time Division Multiple Access (TDMA) based MAC is efficient for |
|
1239 Quality of Service (QoS) sensitive traffic. It is also useful for |
|
1240 power saving since the station knows their schedule and can |
|
1241 therefore power down in non scheduled periods. |
|
1242 </p> |
|
1243 <p> |
|
1244 For 60 GHz usages especially applications like wireless display, |
|
1245 sync and go, and large file transfer, TDMA appears to be a |
|
1246 suitable choice. Whereas for applications that require low latency |
|
1247 channel access (e.g. Internet access etc.)TDMA appears to be |
|
1248 inefficient due to the latency involved in bandwidth reservation. |
|
1249 </p> |
|
1250 <p> |
|
1251 Another choice is the polling MAC which is highly efficient for |
|
1252 the directional communication in the 60 GHz band. This provides an |
|
1253 improved data rates with directional communication as well as acts |
|
1254 as an interference mitigation scheme. On the contrary polling may |
|
1255 not be efficient for power saving and also not efficient to take |
|
1256 advantage of statistical traffic multiplexing. This technique also |
|
1257 leads to wastage of power due to polling the stations without |
|
1258 traffic to transmit. |
|
1259 </p> |
|
1260 <p> |
|
1261 Having the above facts in mind and considering the variety of |
|
1262 applications involved in the next generation WLAN systems |
|
1263 operating at 60 GHz, it can be concluded that no individual MAC |
|
1264 scheme can support the traffic requirements. |
|
1265 </p> |
|
1266 <p> |
|
1267 In this paper we use SimPy to do a Discrete Event Simulation |
|
1268 modeling of a proposed hybrid MAC protocol which dynamically |
|
1269 adjusts the channel times between contention and reservation based |
|
1270 MAC schemes, based on the traffic demand in the network. |
|
1271 </p> |
|
1272 <p> |
|
1273 We plan to model the problem of admission control and scheduling |
|
1274 using DES using SimPy. SimPy v2.1.0 is being used for the |
|
1275 simulation purposes of the proposed Hybrid MAC. We are new to |
|
1276 using Python for scientific purposes and have just begun using |
|
1277 this powerful tool to get meaningful and useful results. We plan |
|
1278 to share our learning experience and how SimPy is increasingly |
|
1279 becoming a useful tool (apart from regular modeling tools like |
|
1280 Opnet / NS2). |
|
1281 </p> |
|
1282 |
|
1283 |
|
1284 |
|
1285 |
|
1286 |
|
1287 |
|
1288 |
|
1289 |
|
1290 |
|
1291 <h3 id="sec-4_20">PySPH: Smooth Particle Hydrodynamics with Python </h3> |
|
1292 |
|
1293 |
|
1294 <p>pankaj pandey |
|
1295 </p> |
|
1296 |
|
1297 |
|
1298 |
|
1299 <h4 id="sec-4_20_1">Talk/Paper Abstract </h4> |
|
1300 |
|
1301 |
|
1302 |
|
1303 <p> |
|
1304 We present a python/cython implementation of an SPH framework |
|
1305 called PySPH. SPH (Smooth Particle Hydrodynamics) is a numerical |
|
1306 technique for the solution of the continuum equations of fluid and |
|
1307 solid mechanics. |
|
1308 </p> |
|
1309 <p> |
|
1310 PySPH was written to be a tool which requires only a basic working |
|
1311 knowledge of python. Although PySPH may be run on distributed |
|
1312 memory machines, no working knowledge of parallelism is required |
|
1313 of the user as the same code may be run either in serial or in |
|
1314 parallel only by proper invocation of the mpirun command. |
|
1315 </p> |
|
1316 <p> |
|
1317 In PySPH, we follow the message passing paradigm, using the mpi4py |
|
1318 python binding. The performance critical aspects of the SPH |
|
1319 algorithm are optimized with cython which provides the look and |
|
1320 feel of python but the performance near to that of a C/C++ |
|
1321 implementation. |
|
1322 </p> |
|
1323 <p> |
|
1324 PySPH is divided into three main modules. The base module provides |
|
1325 the data structures for the particles, and algorithms for nearest |
|
1326 neighbor retrieval. The sph module builds on this to describe the |
|
1327 interactions between particles and defines classes to manage this |
|
1328 interaction. These two modules provide the basic functionality as |
|
1329 dictated by the SPH algorithm and of these, a developer would most |
|
1330 likely be working with the sph module to enhance the functionality |
|
1331 of PySPH. The solver module typically manages the simulation being |
|
1332 run. Most of the functions and classes in this module are written |
|
1333 in pure python which makes is relatively easy to write new solvers |
|
1334 based on the provided functionality. |
|
1335 </p> |
|
1336 <p> |
|
1337 We use PySPH to solve the shock tube problem in gas dynamics and |
|
1338 the classical dam break problem for incompressible fluids. We also |
|
1339 demonstrate how to extend PySPH to solve a problem in solid |
|
1340 mechanics which requires additions to the sph module. |
|
1341 </p> |
|
1342 |
|
1343 |
|
1344 |
|
1345 |
|
1346 |
|
1347 |
|
1348 <h3 id="sec-4_21">Pictures, Songs and Python </h3> |
|
1349 |
|
1350 |
|
1351 <p>Puneeth Chaganti |
|
1352 </p> |
|
1353 |
|
1354 |
|
1355 |
|
1356 <h4 id="sec-4_21_1">Talk/Paper Abstract </h4> |
|
1357 |
|
1358 |
|
1359 <p>The aim of this talk is to get students, specially undergrads |
|
1360 excited about Python. Most of what will be shown, is out there on |
|
1361 the Open web. We just wish to draw attention of the students and |
|
1362 get them excited about Python and possibly image processing and |
|
1363 may be even cognition. We hope that this talk will help retain |
|
1364 more participants for the tutorials and sprint sessions. |
|
1365 </p> |
|
1366 <p> |
|
1367 The talk will have two parts. The talk will not consist of any |
|
1368 deep research or amazing code. It's a mash-up of some weekend |
|
1369 hacks, if they could be called so. We reiterate that the idea is |
|
1370 not to show the algorithms or the code and ideas. It is, to show |
|
1371 the power that Python gives. |
|
1372 </p> |
|
1373 <p> |
|
1374 The first part of the talk will deal with the colour Blue. We'll |
|
1375 show some code to illustrate how our eyes suck at blue (1), if |
|
1376 they really do. But, ironically, a statistical analysis that we |
|
1377 did on "Rolling Stones Magazine's Top 500 Songs of All time" (2), |
|
1378 revealed that the occurrences of blue are more than twice the |
|
1379 number of occurrences of red and green! We'll show the code used |
|
1380 to fetch the lyrics and count the occurrences. |
|
1381 </p> |
|
1382 <p> |
|
1383 The second part of the talk will show some simple hacks with |
|
1384 images. First, a simple script that converts images into ASCII |
|
1385 art. We hacked up a very rudimentary algo to convert images to |
|
1386 ASCII and it works well for "machine generated images." Next, a |
|
1387 sample program that uses OpenCV (3) that can detect faces. We wish |
|
1388 to show OpenCV since it has some really powerful stuff for image |
|
1389 processing. |
|
1390 </p> |
|
1391 <p> |
|
1392 (1) <a href="http://nfggames.com/games/ntsc/visual.shtm">http://nfggames.com/games/ntsc/visual.shtm</a> |
|
1393 (2) <a href="http://web.archive.org/web/20080622145429/www.rollingstone.com/news/coverstory/500songs">http://web.archive.org/web/20080622145429/www.rollingstone.com/news/coverstory/500songs</a> |
|
1394 (3) <a href="http://en.wikipedia.org/wiki/OpenCV">http://en.wikipedia.org/wiki/OpenCV</a> |
|
1395 </p> |
|
1396 |
|
1397 |
|
1398 |
|
1399 |
|
1400 |
|
1401 |
|
1402 |
|
1403 |
|
1404 |
|
1405 <h3 id="sec-4_22">Convincing Universities to include Python </h3> |
|
1406 |
|
1407 |
|
1408 <p>Krishnakant Mane |
|
1409 </p> |
|
1410 |
|
1411 |
|
1412 |
|
1413 <h4 id="sec-4_22_1">Talk/Paper Abstract </h4> |
|
1414 |
|
1415 |
|
1416 <p>Python has been around for a long enough time now that it needs |
|
1417 serious attention from the educational institutes which teach |
|
1418 computer science. Today Python is known for its simple syntax |
|
1419 yet powerful performance (if not the fastest performance which |
|
1420 is any ways not needed all the time ). From Scientific computing |
|
1421 till graphical user interfaces and from system administration |
|
1422 till web application development, it is used in many |
|
1423 domains. However due to Industrial propaganda leading to |
|
1424 promotion of other interpreted languages (free or proprietary)? |
|
1425 Python has not got the justice in educational sector which it |
|
1426 deserves. This paper will talk on methodologies which can be |
|
1427 adopted to convince the universities for including Python in |
|
1428 their curriculum. The speaker will provide an insight into his |
|
1429 experience on success in getting Python included in some |
|
1430 Universities. A case of SNDT University will be discussed where |
|
1431 the curriculum designers have decided to have Python in their |
|
1432 courses from the next year. The speaker will share his ideas |
|
1433 which led to this inclusion. these will include, |
|
1434 </p> |
|
1435 <ul> |
190 <ul> |
1436 <li> |
191 <li>What is cryptography</li> |
1437 Begin by doing series of Python workshops |
192 <li>Why cryptography</li> |
1438 </li> |
193 <li>Basic terminologies</li> |
1439 <li> |
194 <li> |
1440 Provide information and opportunities for python based projects |
195 Classification of cryptographic algorithms |
1441 </li> |
196 <ul> |
1442 <li> |
197 <li>Stream cipher and block ciphers</li> |
1443 make the faculties aware of teaching ease |
198 <li>Public key and private key algorithms</li> |
1444 </li> |
199 </ul> |
1445 <li> |
200 </li> |
1446 clear the FUD regarding jobs |
201 <li>Introduction to hashing</li> |
1447 </li> |
202 <li>Introduction to pycrypto module</li> |
|
203 <li>pycrypto installation steps</li> |
|
204 <li>Code for few cryptographic and hashing algorithms</li> |
1448 </ul> |
205 </ul> |
1449 |
206 |
1450 |
207 <h4>Slides</h4> |
1451 |
208 <p>To be uploaded</p> |
1452 |
209 |
1453 |
210 <h3 id="sec2.13">Mahendra Naik : Large amounts of data downloading and processing in python with facebook data as reference</h3> |
1454 |
211 <p>Python is an easy to learn language which helps for rapid development of applications. |
1455 |
212 The only visbile hindrance to python is the speed of processing ,primarily because it is a scripting language. |
1456 |
213 Scientific computing involves processing large amounts of data in a very short period of time. |
1457 <h3 id="sec-4_23">Python based Galaxy workflow integration on GARUDA Grid </h3> |
214 This paper talks about an efficient algorithm to process massive(GB's) textual data in time interval of less than a second. |
1458 |
215 There will not be any changes to core python. |
1459 |
216 The existing python libraries will be used to process this data. |
1460 <p>Harikrishna |
217 The main aspect of the project is that we will not be dealing with the old data stored in the filesystem . |
1461 </p> |
218 We will be downloading data from the internet and the processing will happen in real-time. |
1462 |
219 So, an effective caching , if any used should be implemented. |
1463 |
220 A database like MYSQL will be used to store the data.</p> |
1464 |
221 <p>Pythreads will be used for parallel downloading and processing of data. |
1465 <h4 id="sec-4_23_1">Talk/Paper Abstract </h4> |
222 So a constant stream of huge data will be downloaded and later processed for the required data. |
1466 |
223 This algorithm can find use in scientific applications where a large data needs to processes in real-time. |
1467 |
224 And this will be achieved without making any changes to core python. |
1468 <p>Bioinformatics applications being complex problem involving |
225 The data we will be processing on would be retrieved from facebook. |
1469 multiple comparisons, alignment, mapping and analysis can be |
226 Facebook was choosen because of its massive userbase and the massive data stored for almost every user. |
1470 managed better using workflow solutions. Galaxy is an open web |
227 Another reason for choosing facebook was the availability of api's to access data. |
1471 based platform developed in Python for genomic research. Python |
228 Facebook exposes its data to developers through facebook platform. |
1472 is a light weight dynamic language making Galaxy to be modular |
229 We will be using facebook's graph api to download data from facebook. |
1473 and expandable. Bioinformatics applications being compute and |
230 Graph api stores each and every element from facebook as an id. |
1474 data intensive scale well in grid computing environments. In |
231 The data from all the id's from 1 to a very huge number (eg:10 billion) |
1475 this paper we describe bringing the Galaxy workflow to the |
232 will be extracted from facebook and will be processed to retrieve the required data. |
1476 Garuda Grid computing infrastructure for enabling bioinformatics |
233 The main intention of the project is to implement an algorithm to process massive amounts of data in real time using python . |
1477 applications. GAURDA grid is an aggregation of heterogeneous |
234 As explained above we will take facebook as the reference data.</p> |
1478 resources and advanced capabilities for scientific |
235 <h4>Slides</h4> |
1479 applications. Here we present the integration of galaxy workflow |
236 <p>To be uploaded</p> |
1480 tool with GARUDA grid middleware to enable computational |
237 |
1481 biologists to perform complex problems on the grid environment |
238 <h3 id="sec2.14">Hrishikesh Deshpande : Higher Order Statistics in Python</h3> |
1482 through a web browser. |
239 <h4>Abstract</h4> |
1483 </p> |
240 <p>In many signal and image processing applications, correlation and power spectrum have been used as primary tools; the information contained in the power spectrum is provided by auto-correlation and is sufficient for complete statistical descriptions of Gaussian signals of known means. However, there exist some practical situations where one needs to look beyond auto-correlation operation to extract information pertaining to deviation from Gaussianity and the presence of phase relations. Higher Order Statistics (HOS) are the extensions of second order measures to higher orders and have proven to be useful in problems where non-gaussianity, non-minimal phase or non-linearity has some role to play. In recent years, the field of HOS has continued its expansion, and applications have been found in fields as diverse as economics, speech, medical, seismic data processing, plasma physics and optics. In this paper, we present a module named PyHOS, which provides elementary higher order statistics functions in Python and further discuss an application of HOS for biomedical signals. This module makes use of SciPy, Numpy and Matplotlib libraries in Python. To evaluate the module, we experimented with several complex signals and compared the results with equivalent procedures in MATLAB. The results showed that PyHOS is excellent module to analyze or study signals using their higher order statistics features.</p> |
|
241 <h4>Slides</h4> |
|
242 <p>To be uploaded</p> |
|
243 |
|
244 |
|
245 <h3 id="sec2.18">Jaidev Deshpande : A Python Toolbox for the Hilbert-Huang Transform</h3> |
|
246 <h4>Abstract</h4> |
|
247 <p>This paper introduces the PyHHT project. The aim of the project is to develop a Python toolbox for the Hilbert-Huang Transform (HHT) for nonlinear and nonstationary data analysis. The HHT is an algorithmic tool particularly useful for the time-frequency analysis of nonlinear and nonstationary data. It uses an iterative algorithm called Empirical Mode Decomposition (EMD) to break a signal down into so-called Intrinsic Mode Functions (IMFs). These IMFs are characterized by being piecewise narrowband and amplitude/frequency modulated, thus making them suitable for Hilbert spectral analysis.</p> |
|
248 |
|
249 <p>HHT is primarily an algorithmic tool and is relatively simple to implement. Therefore, even a crude implementation of the HHT is quite powerful for a given class of signals. Thus, one of the motivations for building a toolbox is to sustain the power of HHT across a variety of applications. This can be achieved by bringing together different heuristics associated with HHT on one programming platform (since HHT is largely algorithmic, there are a great many heuristics). It is thus the purpose of the toolbox to provide those implementations of the HHT that are popular in the literature. Along with making the application of HHT more dexterous and flexible, the toolbox will also be a good research tool as it provides a platform for comparison of different HHT implementations. It also supports comparison with conventional data analysis tools like Fourier and Wavelets.</p> |
|
250 |
|
251 <p>Most of the existing implementations of the HHT have functions that are drawn from different numerical computing packages, and hence are generalized, not optimized particularly for HHT. PyHHT includes functions that are optimized specifically for analysis with HHT. They are designed to operate at the least possible computational complexity, thus greatly increasing the performance of the analysis. The paper includes examples of such components of EMD which have been optimized to operate at the least possible expense – in comparison with conventional implementations. This optimization can be done in a number of ways. One example of optimizing conventional algorithms for PyHHT discussed in the paper is that of cubic spline interpolation. It is a major bottleneck in the EMD method (needs to be performed twice over the entire range of the signal in a single iteration). Most implementations for cubic splines involve the use of Gaussian elimination, whereas for PyHHT the much simpler tridiagonal system of equations will suffice. Furthermore, it can be improved using many different methods like using NumPy vectorization, the weave and blitz functions in SciPy, or by using the Python-C/C++ API. Thus, the portability of Python comes in handy when optimizing the algorithm on so many different levels. The paper also discusses the possibility of further improving such functions that are the biggest bottlenecks in the EMD algorithm.</p> |
|
252 |
|
253 <p>Other heuristics of the HHT include imposing different stopping conditions for the iterative EMD process. Once the IMFs of the original signal are obtained, their time-frequency-energy distributions can be obtained. PyHHT uses Matplotlib to visualize the distributions. The IMFs can further be used in computer vision and machine learning applications. PyHHT uses a number of statistical and information theoretic screening tools to detect the useful IMFs from among the decomposed data.</p> |
|
254 |
|
255 <p>Finally we perform HHT on a few test signals and compare it with the corresponding Fourier and Wavelet analyses. We comment on the advantages and limitations of the HHT method and discuss future improvements in the PyHHT project.</p> |
|
256 <h4>Slides</h4> |
|
257 <p>To be uploaded</p> |
|
258 |
|
259 <h3 id="sec2.19">Chetan Giridhar : Diving in to Byte-code optimization in Python</h3> |
|
260 <h4>Abstract</h4> |
|
261 <p>The rapid development cycle and performance makes Python as a preferred choice for HPC applications. Python is an interpreted language , running on Python Virtual Machine. Python VM then translates and executes byte-code on native platform. A Python application follows classical phases of compilation and byte-code generation is very similar to intermediate code. The byte-codes are platform neutral and enables Python applications with the power of portability. Performance of a Python application could factored on: |
|
262 <ul> |
|
263 <li>Quality of generated byte-code</li> |
|
264 <li>Efficiency of Python VM</li> |
|
265 </ul> |
|
266 </p> |
|
267 <p>This talk discusses the internals of Python byte code, generation and potential optimization to improve run time performance of applications.</p> |
|
268 |
|
269 <h4>Agenda</h4> |
|
270 <ul>Python Virtual Machine: internals |
|
271 <li>Reverse engineering: Python byte code ("pyc" files) |
|
272 <ul><li>Exploring Python dis-assembler for pyc</li></ul></li> |
|
273 <li>Optimizing python byte code for time-efficiency |
|
274 <ul><li>Peephole optimization</li> |
|
275 <li>Tweaking the Python VM</li></ul></li> |
|
276 <li>Does PyPy helps?</li> |
|
277 </ul> |
|
278 <h4>Slides</h4> |
|
279 <p>To be uploaded</p> |
|
280 |
|
281 <h3 id="sec2.21">Kunal puri : GPU Accelerated Computational Fluid Dynamics with Python</h3> |
|
282 <h4>Abstract</h4> |
|
283 <p>Computational fluid dynamics (CFD) is a field dominated by code that |
|
284 is written in either Fortran or C/C++. An example is the well known |
|
285 open source CFD tool, OpenFOAM, that adopts C++ as the language of |
|
286 implementation.\newline A language like Python would be the ideal |
|
287 choice but for the performance penalty incurred. Indeed, equivalent |
|
288 Python code is at least an order of magnitude slower than C/C++ or |
|
289 Fortran.</p> |
|
290 |
|
291 <p>A common approach is to combine the best of both worlds wherein the |
|
292 computationally expensive routines that form a small core is written |
|
293 in a high performance language and the rest of the software framework |
|
294 is built around this core using Python. We adopt such a model to |
|
295 develop a code for the incompressible Navier Stokes equations using |
|
296 OpenCL as the underlying language and target graphics processing units |
|
297 (GPUs) as the execution device. |
|
298 </p> |
|
299 <p> |
|
300 The data-parallel nature of most CFD algorithms renders them ideal for |
|
301 execution on the highly parallel GPU architectures, which are designed |
|
302 to run tens of thousands of light-weight threads simultaneously. The |
|
303 result is that well designed GPU code can outperform it's CPU |
|
304 counterpart by an order of magnitude in terms of speed. |
|
305 </p> |
|
306 |
|
307 <p> |
|
308 We use the Python binding for OpenCL, PyOpenCL to run the code on the |
|
309 GPU. The result is an almost pure Python CFD code that is faster than |
|
310 it's CPU counterpart and is relatively easy to extend to more |
|
311 complicated problems. We consider only two dimensional domains with |
|
312 structured Cartesian meshes for simplicity. We focus on GPU specific |
|
313 optimizations of the code like memory coalescing, cache utilization |
|
314 and memory transfer bandwidth which are essential for good |
|
315 performance. Our target platform is a system with four Tesla c2050 |
|
316 Nvidia GPUs, each having 3 Gigabytes of global memory.\newline The |
|
317 code is validated against solutions from an equivalent CPU version and |
|
318 we present results for the transient incompressible flow past an |
|
319 impulsively started cylinder. |
|
320 </p> |
|
321 |
|
322 <h4>Slides</h4> |
|
323 <p>To be uploaded</p> |
|
324 |
|
325 <h3 id="sec2.22">Sachin Shinde : Reverse Engineering and python</h3> |
|
326 <h4>Abstract</h4> |
|
327 <p>The paper is about how we can use python for writing tools for reverse engineering and assembly code analysis it will talk about basic and modules those are available for doing reverse engineering. </p> |
|
328 <h4>Slides</h4> |
|
329 <p>To be uploaded</p> |
|
330 |
|
331 <h3 id="sec2.23">Gael Varoquaux(Affiliation: INRIA Parietal, Neurospin, Saclay, France): Machine learning as a tool for Neuroscience</h3> |
|
332 <h4>Abstract</h4> |
|
333 <p>For now two decades, functional brain imaging has provided a tool for |
|
334 building models of cognitive processes. However, these models are |
|
335 ultimately introduced without a formal data analysis step. Indeed, |
|
336 cognition arise from the interplay of many elementary functions. There |
|
337 are an exponential amount of competing possible models, that cannot be |
|
338 discriminated with a finite amount of data. This data analysis problem is |
|
339 common in many experimental science settings, although seldom diagnosed. |
|
340 In statistics, it is known as the <b>curse of dimensionality</b>, and can be |
|
341 tackled efficiently with machine learning tools.</p> |
|
342 <p> |
|
343 For these reasons, imaging neuroscience has recently seen a |
|
344 multiplication of complex data analysis methods. Yet, machine learning is |
|
345 a rapidly-evolving research field, often leading to impenetrable |
|
346 publication and challenging algorithms, of which neuroscience data |
|
347 analysts only scratch the surface. |
|
348 </p> |
|
349 <p> |
|
350 I will present our efforts to foster a general-purpose machine-learning |
|
351 Python module, <b>scikit-learn</b>, for scientific data analysis. As it aims |
|
352 to bridge the gap between machine-learning researchers and end-users, the |
|
353 package is focused on ease of use and high-quality documentation while |
|
354 maintaining state-of-the-art performance. It is enjoying a growing |
|
355 success in research laboratories, but also in communities with strong |
|
356 industrial links such as web-analytics or natural language processing. |
|
357 </p> |
|
358 <p> |
|
359 We combine this module with high-end interactive |
|
360 visualization using <b>Mayavi</b> and neuroimaging-specific tools in <b>nipy</b> to |
|
361 apply state of the art machine learning techniques to neuroscience: |
|
362 learning from the data new models of brain activity, focused on |
|
363 predictive or descriptive power. These models can be used to perform |
|
364 "brain reading": predicting behavior our thoughts from brain images. This |
|
365 is a well-posed <b>supervised learning</b> problem. In <b>unsupervised</b> |
|
366 settings, that is in the absence of behavioral observations, we focus on |
|
367 learning probabilistic models of the signal. For instance, interaction |
|
368 graphs between brain regions at rest reveal structures well-known to be |
|
369 recruited in tasks. |
|
370 </p> |
|
371 <p> |
|
372 Optimal use of the data available from a brain imaging session raises |
|
373 computational challenges that are well-known in large data analytics. The |
|
374 <b>scipy</b> stack, including <b>Cython</b> and <b>scikit-learn</b>, used with care, can |
|
375 provide a high-performance environment, matching dedicated solutions. I |
|
376 will highlight how the <b>scikit-learn</b> performs efficient data analysis in |
|
377 Python. |
|
378 </p> |
|
379 <p> |
|
380 The challenges discussed here go beyond neuroscience. Imaging |
|
381 neuroscience is a test bed for advanced data analysis in science, as it |
|
382 faces the challenge of integrating new data without relying on |
|
383 well-established fundamental laws. However, with the data available in |
|
384 experimental sciences growing rapidly, high-dimensional statistical |
|
385 inference and data processing are becoming key in many other fields. |
|
386 Python is set to provide a thriving ecosystem for these tasks, as it |
|
387 unites scientific communities and web-based industries. |
|
388 </p> |
|
389 <h4>Slides</h4> |
|
390 <p>To be uploaded</p> |
|
391 |
|
392 <h3 id="sec2.24">IITB Students : Project Presentation</h3> |
|
393 <h4>Abstract</h4> |
|
394 <p> |
|
395 The following 2 projects(part of the <a href="http://fossee.in/sdes">SDES</a> course) which obtained the highest marks; |
|
396 would be presented by respective project members. |
|
397 </p> |
|
398 <li>Digital Logic circuit simulator</li> |
|
399 <li>Analysis and modelling of cellular systems</li> |
|
400 <h4>Slides</h4> |
|
401 <p>To be uploaded</p> |
|
402 |
|
403 <h3 id="sec2.25">Dr Ole Nielsen : 7 Steps to Python Software That Works</h3> |
|
404 <h4>Abstract</h4> |
|
405 <p> |
|
406 I will give an overview of Python projects I have been leading over |
|
407 the past decade in academia, science agencies and government. These |
|
408 include large scale datamining, parallel computing, hydrodynamic |
|
409 modelling of tsunami impact and analysis of impact from natural |
|
410 disasters. All projects are based on Python (and numpy). The purpose |
|
411 of this talk is to summarise the practices I have come to see as |
|
412 essential to produce software that works robustly and sensibly |
|
413 is user and developer friendly, i.e. can be used and developed by a |
|
414 diverse and changing team eventually takes on a life of its own |
|
415 without input from the core development team. |
|
416 </p> |
|
417 <p> |
|
418 Much of this will be known to many of you, but having worked in this |
|
419 field for some time now and seen much software it is my view that |
|
420 there is still a lot of Python code that could really shine if |
|
421 testing, source control, style guides, exception handling etc were |
|
422 observed more generally. To keep it real, I'll show real examples where appropriate. |
|
423 </p> |
|
424 <h4>Slides</h4> |
|
425 <p>To be uploaded</p> |
|
426 |
|
427 |
|
428 <h3 id="sec2.26">Mateusz Paprocki : Understanding importance of automated software testing</h3> |
|
429 <h4>Abstract</h4> |
|
430 <p> |
|
431 Development of scientific programs isn't much different than development of computer programs of any other kind. One of the key characteristic of computer programs is correctness. No matter whether we create programs for our own purpose or for other parties, we do not want to spent hours or days waiting for results of computations that will be flawed from the very beginning. As long as programs consist of few lines of code, we may be able to verify correctness of all cases in those programs manually after every change or even try to prove their correctness. However, real life programs consist of thousands, hundred thousands or even millions of lines of code, and even more states. In such a setup we need tools and methods that would allow to automate the process of software testing. |
|
432 </p> |
|
433 <p> |
|
434 Python, a programming language with a weak dynamic type system, makes the use of automated software testing even more important because in this case test suites and the testing framework of choice have to accommodate for the weaknesses of the language. Also, agile software development techniques may intrinsically require automated testing as their core component to guarantee effectiveness of those methods. |
|
435 </p> |
|
436 <p> |
|
437 In this talk I will show how to do automated testing of programs written in Python. Test automation tools will be described and common issues and pitfalls outlined. I will also discuss the notion of code coverage with tests and testing via examples (doctests). |
|
438 </p> |
|
439 <h4>Slides</h4> |
|
440 <p>To be uploaded</p> |
|
441 |
|
442 <h3 id="sec2.27">Emmanuelle Gouillart (joint laboratory CNRS/Saint-Gobain UMR 125, |
|
443 39 quai Lucien Lefranc 93303 Aubervilliers, France): 3-D image processing and visualization with the scientific-Python stack</h3> |
|
444 <h4>Abstract</h4> |
|
445 <p> |
|
446 |
|
447 Synchrotron X-ray tomography images the inner 3-D micro-structure of |
|
448 objects. Recent progress bringing acquisition rates down to a few seconds |
|
449 have opened the door to in-situ monitoring of material transformations |
|
450 during, e.g., mechanical or heat treatments. However, this powerful |
|
451 imaging technique presents many challenges, such as the huge size of |
|
452 typical datasets, or the poor signal over noise ratio. In this talk, we |
|
453 will present how the standard modules of the scientific Python stack, |
|
454 combined with a few additional developments, are used to process and |
|
455 visualize such 3-D tomography images for research purposes. The data |
|
456 presented in this talk consist of 3-D images of window-glass raw |
|
457 materials, that react together at high temperature to form liquids, and |
|
458 images of glasses undergoing phase separation.3 |
|
459 </p> |
|
460 <p> |
|
461 |
|
462 Using the Traits module, it was possible to write at minimal cost a |
|
463 custom graphical application with an embedded Mayavi scene to perform |
|
464 "4-D visualization", that is, to display cuts through a 3-D volume that |
|
465 can be updated with the next or previous image of the dataset. Easy |
|
466 interaction with the data (placing markers) could also be added at |
|
467 minimal cost. Efficient state-of-the-art algorithms for denoising images |
|
468 and segmenting (extracting) objects were implemented using scipy, and |
|
469 PyAMG for multigrid resolution of linear systems. |
|
470 </p> |
|
471 <p> |
|
472 |
|
473 Finally, we will show how this work led us "naturally" to take part in |
|
474 development efforts of open-source Scientific-python packages. Improving |
|
475 the documentation of scipy.ndimage on the documentation wiki was a first |
|
476 easy contribution. Then, one segmentation algorithm as well as one |
|
477 denoising algorithm were contributed to the scikits-image package. We |
|
478 will finish the talk by a brief overview of scikits-image and its |
|
479 development process. |
|
480 </p> |
|
481 <p> |
|
482 |
|
483 <h4>Slides</h4> |
|
484 <p>To be uploaded</p> |
|
485 |
1484 |
486 |
1485 {% endblock content %} |
487 {% endblock content %} |
|
488 |