Computer in Chemistry, BSc course The Computer in Chemistry course introduces essential computational tools and techniques for BSc Chemistry students, focusing on data analysis, reporting, and molecular modeling. Students will gain practical experience with software and programming relevant to interpreting laboratory data and presenting scientific findings. The course begins with foundational Python programming, then progresses to spreadsheet applications, molecular drawing, ternary phase diagrams, and molecular structure specifications. This course is designed to build computational proficiency with chemistry-relevant tools, empowering students to apply computational methods effectively in their academic and research pursuits.
Course Structure 1. Python ProgrammingThis section introduces the Python programming language, providing a foundation in basic programming concepts with a focus on applications relevant to chemistry. 1.1 Fundamental Ideas of Computer Science1.2 Primitive TypesVariables, Strings, Formatted strings, Variables Escape sequences, String methods, Numer functions, Type conversion, Falsy values 1.3 Control FlowConditional statements, Ternary operator, Boolean operators, Chaining comparison operators, For loops, While loops, Equality operators 1.4 FunctionsDefining functions, Keyword arguments, Variable number of arguments, Variable number of keyword arguments 1.5 ListsCreating lists, Accessing items, Slicing lists, Unpacking, Looping over lists, Adding items, Removing items, Finding items, Sorting lists, Custom sorting, Zip function, Unpacking operator 1.6 Tuples, Sets, and DictionariesTuples, Swapping variables, Arrays, Sets, Dictionaries 1.7 ComprehensionsList comprehensions, Set comprehensions, Dictionary comprehensions, Generator expressions 1.8 ExceptionsHandling Exceptions, Raising exceptions, The ‘with’ statement 1.9 ClassesCreating classes, Instance vs class attributes, Instance vs class methods, Magic methods, Private members, Properties, Inheritance, Multiple inheritance, Abstract base classes, Named tuples 2. SpreadsheetStudents will learn to utilize spreadsheet tools for data analysis and presentation, essential for interpreting laboratory results. 2.1 Drawing various types of charts (X-Y, column, line, pie,…) for data series2.2 Inserting more than one line in one graph2.3 Fitting data series into a first-order equation and then finding the equation for the best-fitted line2.4 Calculating the slope and intercept of a line2.5 Fitting a data series to exponential, logarithmic, and polynomial equations2.6 Drawing the first and second derivatives of a line2.7 Solving a polynomial equation using the Excel solverSoftware requirements: Open Office or Microsoft Excel 3. Molecular shapes3.1 Drawing molecular shapes and using them in Microsoft Office Word3.2 Drawing an organic reaction and showing its mechanismSoftware requirements: ChemDraw 4. Ternary phase diagram4.1 Triangular representation of a three-component phase diagramSoftware requirements: CHEMIX 5. Molecular Specification5.1 Introduction to Cartesian coordinates and the Z-matrix of a molecule5.2 Writing Cartesian coordinates and Z-matrix of a molecule5.3 Introduction to protein structures and PDB filesSoftware requirements: Rasmol, GaussView, ChemCraft, PyMol Access course resources via Google Drive. Course Schedule
|
Department of Chemistry, Faculty of Science, University of Kurdistan |
Mehdi Irani Teaching duties Methods |
Session |
Category |
Topics |
1 |
Python |
Fundamental Ideas of Computer Science |
2 |
|
Primitive Types |
3 |
|
Control Flow |
4 |
|
Functions |
5 |
|
Lists |
6 |
|
Tuples, Sets, and Dictionaries |
7 |
|
Comprehensions |
8 |
|
Exceptions |
9 |
|
Classes |
10 |
Spreadsheet |
Chart creation, multi-line graphs, data fitting, slope/intercept calculations |
11 |
|
Derivatives, polynomial equation solving |
12 |
Molecular Shapes |
Molecular drawing, reaction mechanisms |
13 |
Ternary Diagram |
Triangular representation of phase diagrams |
14 |
Molecular Spec. |
Cartesian coordinates, Z-matrix |
15 |
|
Protein structures, PDB files |