Sanjay R. Kharche: student projects and teaching.
Students are always welcome to work within the lab. at any time. A systematic and growing programme of training is in place.
The training is designed to effect progress over the time period of your project, as well as assist in your student career, as well as
future career aspirations. As Einstein realised later in his life, open minded appreciation of nature, patience, persistence, elbow grease,
a bit of luck, combined with your inherent talent is going to bring you success in this line of work.
Currently, the experience you can expect to gain in the lab. is:
- Disease mechanisms: clinical.
- Disease mechanisms: experimental basis.
- Computer Science.
- Applied Mathematics.
- Learn to think like a scientist, and find out about new science that might just excite you a lot.
- Be mentored by experienced mentored and supervisors, both in the physical sciences and medical sciences.
- Soft skills: presentations, writing, scientific language skills.
- Development of inter-personal skills.
In 2019, all students should strongly consider submitting a 4 page or longer paper to IEEE EMBC. Submissions
of the full papers may open in August 2019, and close in February 2020. Acceptance may be available in April 2020. The meeting is
in our Montreal, between the dates of 21-25 July, 2020. You should also look at above website, and see if you can become a student member.
- Cardiac function in dialysis patients: imaging based assessment tool.
- ECG analysis.
- Fibrosis in sinoatrial node
- FFR from CT data and 1D calculations.
- Human cell to 3D wedge ischemia: effects of dialysis
- Simulating CT in kidneys, part 1
- Simulating CT in liver and heart, part 1
- Simulating CT in kidneys, part 2 (integrative)
- Simulating CT in liver and heart, part 2 (integrative)
Secondary school student projects
School students and outreach proposals welcome.
I currently teach a focused 12 lecture course designed to introduce assist my undergrad/masters students to: a) cardiac electrophysiology; b) CT image
processing; c) PM3 use; d) Neural networks and tensorflow.
Student handbook: skills development, organisation of work, reporting.
Before starting projects, get into the swing of things - read this for inspiration: Orientation paper.
To assist with effective progress and workforce welfare, a code of conduct policy is enforced. A document outlining the policy can be found at: Code of conduct
Before you start, try to get as much information about your project as possible. Make a day by day plan, week by week plan, and start to end plan. Make sure you know what you are starting with, what the success metrics are, and how to reach there. Science is not about being successful in mediocre tasks. Science is about trying, failing many times, and yet trying again. Remember, research is double edged: there is plenty of freedom (and therefore potential procrastination) within the scope of your project, but the stakes are also higher than taught courses and therefore you must be well organised.
Software you might need
I work on Fedora, which is the free version of Red Hat Enterprise. I use a windows device for typing word and ppt documents. You may wish to
organise yourselves with the following, which is mostly open source. If not open source, try the UWO ITS repository, or your own university's software service.
On a linux computer you may want:
- Gnuplot: for quickly drawing line diagrams (Linux) (Windows)
- GNU C, gcc: for compiling C codes (Linux) (Windows)
- InkScape - this is the linux equivalent of Windows photoshop, use for making composite figures (Linux) (Windows)
- ImageMagic - my choice for composite figures (Linux) (Windows)
- ParaView - use this for semi-serious and serious visualisations (Linux) (Windows)
- MATLAB - rapid prototyping, use of inbuilt functions (Linux) (Windows)
- OCTAVE - is free MATLAB, codes need minor tweaking (Linux) (Windows)
- LaTeX - please use one of the many freely available versions for math editing. You can also write complete thesis in LaTeX. (Linux, Windows).
- MatplotLib - a versatile software, free of cost of course, for line diagrams, also gives surfaces and 3D viz to a certain extent.
- Libreoffice - if you stick to just linux, and you do not like LaTex, use Libreoffice at your own risk (Linux) (Windows)
- BitVise Tunnerlier (Windows)
- MS office (Linux) (Windows)
- Sundials (specialist - I will help) (Linux only)
- PetSc (specialist - I will help) (Linux only)
- If needed, parMETIS but by this time you dont need to install it yourself, it probably comes with the machine.
- PM3 codes. PM3 codes will work only on Linux. I will give you the codes, make sure the simulation works, after which you do experiments.
All our work (thesis, papers, posters, presentations) are stories in images. Three types of figures may constitute how you present data: line diagrams, 2D figures, and 3D visualisations. For line diagrams use one of the many MATLAB scripts knocking about the lab. Ask me for the standard template, which you might find here.
Line diagrams should be drawn to uniform specification throughout your work. That means the diagram must have 4 point line thickness, should be 1100 points wide, and 450 points tall. Fontsize must be 18 points and the font should be Arial or Times New Roman. Multiple lines in the same diagram should be colour coded, coded with dashs and dash-dots.
UWO provides MATLAB which is the preferred method for line diagram drawing. You may also use matplotlib or gnuplot as they are free and give presentation quality diagrams with a bit of patience.
Some simple 2D diagrams may be managed using gnuplot, matplotlib, and MATLAB. Try this before you go to stronger medicine.
2D and 3D
Most of PM3 output is VTK files. These files can be postprocessed using ParaView (interactively or non-interactively), or with PM3 postproc codes. PM3 post proc extracts information that can be made into a figure as a line diagram, e.g. computed ECG. Make sure you practice use of VTK with me before attempting viz.
Useful Linux commands
- Use the at command to schedule jobs at a later time/date. e.g. (at 21:00), then (your command or script), then (ctrl-D) to run a job at 9 pm tonight.
How to make research posters
Here is a powerpoint template for your poster: (if there is no link, make a template and give it to me)
Use PowerPoint, InkScape, or LaTex. Set up the power point slide to the size that it will be printed in. The size of your poster will also depend on what your printing service can handle - do not go over the size - a normal size always works. Do not make a "small" poster and then try to stretch it - does not work.
Fonts of choice is Arial or New Roman in that order. Title font is 56 pt, authors and affiliations 40 point, text 28 point, references, acknowledgements are 20 point or less. Logos for Western, Western Biophysics, and Lawson at the top. Funding logos at bottom. You can make a left and right side using a thick divider line in the middle. Sections: Intro, Methods, Results, Conclusions, References, Acknowlegements, figures, figure legends. Background should be white, margins are 2 cm on each side. Separate each section using a dotted horizontal line, or better using a figure. Line thickness around 10 point. Print your poster in UWO Pathology, or at: Mercury. MAKE SURE ALL CORRECT AFTER PRINTING - We can read over your final artwork together!
How to write a conference proceedings paper
In our group, this is usually the first output just as a study is around the finishing mark and we have most of the results to hand.
Conferences sometimes will provide word and LaTex templates that should be used to write the manuscripts. Otherwise, it is
useful to follow the journal manuscript instructions.
How to write a journal manuscript
- As you work, make a figure of your result - this is your draft figure that you will use to construct some draft text. Repeat till acceptable quality.
- Once you get all the figures, you can write the methods which are still fresh in your mind. Then write the results, followed by Intro and Discussion, limitations, abstract.
- Make sure to use simple language - your readers should be left with some interest to understand the few technical words you use.
- Limit the number of acronyms.
- Use simple but correct language - you want people to read the few sophisticated words that you might/will use.
- Break down your manuscript into as many sections and sub-sections as required. A sub-section will usually deal with 1 specific issue in your paper.
- Use a reference managing software that keeps track of your citations and figures.
- Do not embed figures - write them in a separate document with their legends: there is a lot of communication/email sending among authors as the paper develops - help your authors to be able to edit your paper easily.
- Always proof read before sending to anyone.
- Make sure your submission pdf prints well before submitting to the journal.
Examples and templates: DOC, PDF
A talk about how to write manuscripts: YouTube how to write paper, Physoc.
How to prepare a 10 minute presentation
All your slides must be numbered, dated, and have Lawson and UWO logos. A footer with your name and affiliation will help with communication.
A template can be found here: PPTX template.
- Use uniform font (Arial or Times New Roman) throughout, number and date your slides in footer, and header with your name on all slides.
- Describe all figures in each slide (Figure 1. Shows abc, Figure 2. Describes xyz, ...).
- Slides organized as title, objectives, introduction, methods, expected results, significance and acknowledgements.
- Title slide: Project title, name, supervisor name, lab name and URL, name of program, student number, some diagram representing project.
- In all slides, there is a title, 1 or 2 figures, and some (not a lot) text. Each figure must have a legend at bottom aligned with figure. If more than one figure in slide, then use Figure 1, Figure 2, ...
- You should have 4 or 5 slides, and not too many. Plan to spend 1 or 2 minutes on each slide.
Skills to rapidly get going
- Linux: Read manuals for using the terminal for compiling, running, writing bash
- GNU Auto Tools (most basic will be sufficient)
- MATLAB, Octave if you want. Make sure you know mcc.
- ParaView in parallel: make a pvsm visualisation, then take the python script from the trace generator, and run the whole data set at command line/non-interactively on local, Graham, Orca.
- Compile matlab using: mcc -mv matlabCodeName.m
- Run compiled matlab: ./run_matlabCodeName.sh /usr/local/MATLAB/R2017a
- Some programming: C, C++, Python, R. Object oriented is preferred.
- Use of scientific visualisation packages: ParaView (interactive), VTK library (parallel run time).
- Image manipulation: ImageMagic, ImageJ, GIMP
- Specific software: PM3 codes familiarity, PetSc, Sundials, parMETIS.
- Fanatic deligence (as told by the doctors!)
ou can install tcc which will allow you to run C source code as a script without first compiling it. Using the interpreter:
...with C code in your shell scripts will make the C code be executed like shell code.
Alternately, if you are asking about just running a C binary from a shell script, you are more than welcome to do this. Just create an alias to the binary and you are done. Similarly, you can run shell code directly in C source code by defining a macro and calling it with the system() function. I've provided a way to do this on stackoverflow asking the same question.
See that method here: https://stackoverflow.com/a/45521377/5443139
- Practice writing short paragraphs in word often: format, line spacing, spelling. Readability score of your document must be less than 8.
- Practice making powerpoint slides, make powerpoint slides as you get a result
- Write down everything
- Use a lab book (paper or electronic). Keep a record of what you did every day.
- Make sure your work is organised into folders (directories), your file names are intuitive which give an idea what the file is about, and DO NOT use spaces in file names.
- Maintain a word document, where you write everyday. At the top of this document should be a work task table showing date, task, time allocated (start and end dates), and if that is finished or not.
- Undergraduates should have weekly meetings with supervisors. Always have a writeup of what you did last week, and what you will do next week.
- Postgraduates should have monthly meetings with supervisors. Always have a writeup of what you did last month, and what you will do next month.
- When you finish and leave LHSC, you should set up an email autoresponder with your working non-LHSC email address.
Use this to make a movie:
convert -delay 20 F_*.png -loop 0 movie.gif
Current members (2019)
- Jermiah Joseph. (third year InterScience program UWO). Project title: Development of ECG acquisition devices' prototypes.
- Kairavi Desai (second year) Cardiomyocyte and tissue level experimental data for renal failure and dialysis induced arrhythmia.
- Xinjian Lou (third year undergrad, MITACS Global link funded). Project title: Analysis of echocardiographic images: Moving towards AI part 2.
- Baran Sarajelahi (post-doc). Oxygen distribution in tissue using Gauss method.
Past members (2018)
- Andrea Kassay. (fourth year) Project title: Simulation of hypertension in a neonate (submitted to Frontiers in Physiology, December 2018)
- Jermiah Joseph. (second year) Project title: Analysis of echocardiographic images: Moving towards AI
- Kierra McDougall. (first year, McMaster Engineering.) Project title: CT data analysis to assist clinical therapy assessment.
Please read the code of conduct thoroughly.
Data and models
Teaching and for Students
10th April 2021. Sanjay R. Kharche. Ph.D.