From Open Source@Seneca
School of Information and Communications Technology
|Phone||416.491.5050 ext 33364|
|ICT Home Page||https://scs.senecac.on.ca/~chris.szalwinski/|
|chris dot szalwinski at senecacollege dot ca|
Chris Szalwinski is a Professor at the School of Information and Communications Technology (ICT) of Seneca College and a scientific researcher in his own right. He teaches C, C++, Game Programming (DirectX), Parallel Programming (CUDA) and Human Computer Interaction and has published comprehensive web sites that contain his course materials. He currently leads the programming faculty in updating its course material for the C and C++, diploma and degree subjects. He works on soft matter mechanics in his spare time.
This fall (2012), Chris introduced an ICT course in parallel programming on heterogeneous computers using Nvidia's CUDA technology; that is, a course on how to use your desktop as your very own supercomputer. He teaches ICT students to harness the processing power available on today's desktop graphics cards for computing tasks that benefit from high performance hardware. Students who finish this course should find themselves well-positioned to assist employers and clients in parallel programming of their day-to-day desktop operations.
This winter (2013), Chris will repeat this introductory course to the next batch of ICT students who are interested in this field of heterogeneous computing. He will start preparing an advanced successor course for those students who wish to specialize in this field. The new course will integrate computation with visualization in real time.
Chris is seeking applied research initiatives in data-parallel programming to provide students who have completed his course with opportunities to apply and refine their skill set by working as research assistants on applications that benefit from heterogeneous design. He is interested in joint collaboration with academia, business, and industry on research projects that will advance the state of this technology and better prepare his students for the challenges and opportunities that are arising from the democratization of high performance computing.
Before joining Seneca College, Chris incorporated cutting-edge software within engineering firms and government departments and introduced cutting-edge technology into graduate programs at several top-tier academic institutions.
Chris maintains a personal interest, outside his Seneca College duties, in developing and modelling constitutive relations for soft granular matter. He believes that this is an emerging field, which will present numerous opportunities for innovative post-modern programming in the coming decade.
ICT Courses Taught
OOP244 - Introduction to Object-Oriented Programming
- Further information: OOP244 Web Site
BTP200 - The Object-Oriented Paradigm using C++
- Further information: BTP200 Web Site
BTP300 - Object-Oriented Software Development I - C++
BTH740 - Human Computer Interaction
GAM666, DPS901 - Introduction to 3D Game Programming
GAM670, DPS905 - 3D Game Programming Techniques
GPU610, DPS915 - Introduction to Parallel Programming
- heterogeneous computing (CPU + GPU) for scientific applications
- joint collaborations with academia, business, and industry
- mathematical applications
- numerical methods
- direct solution techniques (frontal)
- scientific and engineering applications
- non-linear finite elements
- elasto-plastic constitutive relations
- friction and partial-slip in contact problems
- game programming
- instructional frameworks
- ---- (2011). Intermediate C++. Seneca College 889000191877.
- Anastasiade, J., and ---- (2010). Building Computer-Based Tutors to Help Learners Solve Ill-Structured Problems. In Proceedings of the World Conference on Educational Multimedia, Hypermedia and Telecommunications 2010. Toronto, Ontario, Canada: Association for the Advancement of Computing in Education. pp.3726-3732.
- ---- (2010). Introduction to C++ for C Programmers. Seneca College 889000191647.
- ---- (1983). Flexibility of a contact area of an isotropic elastic body, Journal of Applied Mechanics 52, 62.
- ---- (1983). The particle stress tensor, Geotechnique 33, 181.
- ---- (1984). The Frontal Solution Technique - University of Cambridge, England
- ---- (1976). Engineering Approximations: the finite element method in structural mechanics - University of Toronto
For Structural Engineers
- ---- (1989). TIMECOST - Time-keeping, job-costing, client-billing accounting package - dBase IV
- ---- (1987). SLABDESN - Reinforced concrete slab analysis and design program
- ---- (1985). FRANV4 - Elastic analysis of hi-rise structures with many degrees of freedom
- ---- (1976). PRSN - Properties of irregular sections with shear center
- ---- (1975). LLOAD - Live load reduction program for structural engineers
- ---- (1974). CONCBM - Analysis, design and detailing of reinforced concrete beams
- ---- (1972). EARQ - Earthquake analysis for structural engineers
- ---- (1972). DEFLCTN - Long-term deflections of reinforced concrete beams
For Research Engineers and Academia
- ---- (1974). FRONTAL - A software library for efficient solution of symmetric systems of element based simultaneous equations
- ---- (1976). FEASVOMO - Finite Element Framework for developing and testing new and innovative elements
- ---- (1983). FEASAS - Finite Element System for the analysis of reinforced earth embankments