ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

Size: px
Start display at page:

Download "ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University"

Transcription

1 ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University Prof. Sunil P. Khatri Lab exercise created and tested by: Abbas Fairouz, Ramu Endluri, He Zhou, Andrew Douglass and Sunil P. Khatri Laboratory Exercise #5 Introduction to Kernel Modules on Zynq Linux System Objective The objective of this week s lab is to cross compile a simple Hello World! kernel module on the CentOS 7 workstations, and load the module into the Linux kernel on the ZYBO Z7-10 board. You will then create a kernel module, which prints messages to the kernel s message buffer. However, this kernel module will also moderate kernel access to the multiplication peripheral created in Lab 3. System Overview The hardware system you will use this week is identical to the one built in Lab 4. The Linux kernel, will be utilized to allow dynamic loading of kernel modules. Procedure 1. If you have not already done so, make a copy of your lab4 directory and name it lab5. This directory should include the Linux kernel source. Boot Linux on the ZYBO Z7-10 board and mount the SD card so we can read and write files to it. 1

2 2 Laboratory Exercise #5 (a) From within the ZYBO Z7-10 Linux serial console (i.e. PICOCOM on the CentOS machine), run the following command: >mount /dev/mmcb1k0p1 /mnt/ (b) The above command mounts the SD card to this location. There might be some warnings saying that the device is not properly unmounted. (c) Test out the mount operation by running the following commands in PICOCOM: >cd /mnt/ >ls -la The first command changes the current directory to the SD card mount point. The next command lists the contents of the current directory. Do the files in the /mnt directory look familiar? (d) Now test the write capabilities of the SD card by creating a directory within the /mnt directory. Run the following commands in PICOCOM: >mkdir test >ls -lae Note the date stamp on the test directory. Demonstrate your progress to the TA. (e) We can now use the SD card to transfer files between the CentOS workstation where we will compile our kernel modules and the ZYBO Z7-10 board where we will run our kernel modules. Before removing the SD card from the ZYBO Z7-10 Linux system, we must un-mount the FAT partition on the SD card to avoid corrupting the file system. Run the following commands in PICOCOM: >cd / >umount /mnt The first command changes the current directory to the root directory. The purpose of this command is to move out of the mount point prior to un-mounting. The second command unmounts the FAT partition. (f) Change the current directory to /mnt using cd and examine the contents of the directory using ls. What do you see? 2. At this point in lab, the ZYBO Z7-10 board has read/write access to a removable non-volatile file system. We will now cross-compile a simple kernel module on the CentOS machine and load it onto the SD card. (a) Without turning off the power to the ZYBO Z7-10 board, remove the SD card and insert it into the CentOS machine. Examine the contents of the SD card. Note that the CentOS machine automatically mounts the SD card when inserted. 2 ECEN 449

3 Laboratory Exercise #5 3 (b) Create a directory under lab5 called modules and copy the text below into a file called hello.c. / h e l l o. c H e l l o World k e r n e l module D e m o n s t r a t e s module i n i t i a l i z a t i o n, module r e l e a s e and p r i n t k. ( Adapted from v a r i o u s example modules i n c l u d i n g t h o s e found i n t h e Linux K e r n e l Programming Guide, Linux Device D r i v e r s book and FSM s d e v i c e d r i v e r t u t o r i a l ) / # i n c l u d e <l i n u x / module. h> / Needed by a l l modules / # i n c l u d e <l i n u x / k e r n e l. h> / Needed f o r KERN and p r i n t k / # i n c l u d e <l i n u x / i n i t. h> / Needed f o r i n i t and e x i t macros / / T h i s f u n c t i o n i s run upon module load. T h i s i s where you s e t u p data s t r u c t u r e s and r e s e r v e r e s o u r c e s used by t h e module. / s t a t i c i n t i n i t m y i n i t ( void ) / Linux k e r n e l s v e r s i o n o f p r i n t f / p r i n t k ( KERN INFO H e l l o world!\ n ) ; / / A non 0 r e t u r n means i n i t m o d u l e f a i l e d ; module can t be loaded. return 0 ; / T h i s f u n c t i o n i s run j u s t p r i o r t o t h e module s removal from t h e s y s t e m. You s h o u l d r e l e a s e ALL r e s o u r c e s used by your module h ere ( o t h e r w i s e be p r e p a r e d f o r a r e b o o t ). / s t a t i c void e x i t m y e x i t ( void ) p r i n t k (KERN ALERT Goodbye world!\ n ) ; / These d e f i n e i n f o t h a t can be d i s p l a y e d by modinfo / MODULE LICENSE( GPL ) ; MODULE AUTHOR( ECEN449 S t u d e n t ( and o t h e r s ) ) ; MODULE DESCRIPTION( Simple H e l l o World Module ) ; / Here we d e f i n e which f u n c t i o n s we want t o use f o r i n i t i a l i z a t i o n and c l e a n u p / m o d u l e i n i t ( m y i n i t ) ; m o d u l e e x i t ( m y e x i t ) ; ECEN 449 3

4 4 Laboratory Exercise #5 (c) Now we need to create a Makefile. In your modules directory, create a file called Makefile and fill it with the text below where <kernel source directory> is the root directory of the Linux kernel source code for lab 5. Make sure you use a tab before the make keywords. Note: When compiling the kernel module, information about the original kernel configuration must be known because the kernel module will become an integral part of the kernel when installed. Thus, we must provide the Makefile with a path to the original kernel source. Do not forget to source settings64.sh obj m += h e l l o. o a l l : make C <k e r n e l s o u r c e d i r e c t o r y > M=$ (PWD) modules c l e a n : make C <k e r n e l s o u r c e d i r e c t o r y > M=$ (PWD) c l e a n (d) Then type the following command in the terminal window under the modules directory: >make ARCH=arm CROSS COMPILE=arm-xilinx-linux-gnueabi- (e) If successful, you should see a hello.ko file appear in your modules directory. Copy this file to the SD card. (f) Properly remove the SD card from the CentOS machine and insert the card into the ZYBO Z7-10 board. Do not power cycle the the ZYBO Z7-10 board. (g) From picocom, execute the command >mount /dev/mmcb1k0p1 /mnt/ (h) At this point, we have cross-compiled our Linux kernel module and provided access to it via the ZYBO Z7-10 board. It is now time to load the module into the Linux kernel on the ZYBO Z7-10 board. This is done with the following command: >insmod hello.ko (i) To see the output of the printk statement that is called when the kernel module is loaded run the following command in the terminal: >dmesg tail Demonstrate this output to the TA. (j) We can see what modules are loaded by running lsmod in the terminal window. Do this and ensure the hello module is listed. 4 ECEN 449

5 Laboratory Exercise #5 5 (k) Create a modules directory /lib/modules/`uname -r`using the following command. The`symbol can be found on the same key as the symbol. >mkdir -p /lib/modules/`uname -r` uname is a kernel command used to get the name and information about the current kernel. (l) To remove the module, run rmmod hello, and then run lsmod to ensure that the module was removed. Also run dmesg again to examine the output of the module during removal. 3. Compile a kernel module that reads and writes to the multiplication peripheral and prints the results to the kernel message buffer. (a) On the CentOS machine, create a lab5b directory and copy the modules directory from your lab5 directory to your lab5b directory. (b) Navigate to the modules directory and ensure that the Makefile points to the Linux kernel directory. (c) Create a new kernel module source file called multiply.c. (d) Copy the xparameters.h and xparameters ps.h files in to modules directory. These files should be located in your lab5/lab4.sdk/fsbl bsp folder. (e) Copy the following skeleton code into multiply.c : # i n c l u d e <l i n u x / module. h> / Needed by a l l modules / # i n c l u d e <l i n u x / k e r n e l. h> / Needed f o r KERN and p r i n t k / # i n c l u d e <l i n u x / i n i t. h> / Needed f o r i n i t and e x i t macros / # i n c l u d e <asm / i o. h> / Needed f o r IO r e a d s and w r i t e s / # i n c l u d e x p a r a m e t e r s. h / needed f o r p h y s i c a l a d d r e s s o f m u l t i p l i e r / / from x p a r a m e t e r s. h / # d e f i n e PHY ADDR XPAR MULTIPLY 0 S00 AXI BASEADDR / / p h y s i c a l a d d r e s s o f m u l t i p l i e r / s i z e o f p h y s i c a l a d d r e s s range f o r m u l t i p l y / # d e f i n e MEMSIZE XPAR MULTIPLY 0 S00 AXI HIGHADDR XPAR MULTIPLY 0 S00 AXI BASEADDR+1 void v i r t a d d r ; / / v i r t u a l a d d r e s s p o i n t i n g t o m u l t i p l i e r / T h i s f u n c t i o n i s run upon module load. T h i s i s where you s e t u p data s t r u c t u r e s and r e s e r v e r e s o u r c e s used by t h e module. / s t a t i c i n t i n i t m y i n i t ( void ) / Linux k e r n e l s v e r s i o n o f p r i n t f / p r i n t k ( KERN INFO Mapping v i r t u a l a d d r e s s... \ n ) ; / map v i r t u a l a d d r e s s t o m u l t i p l i e r p h y s i c a l a d d r e s s / ECEN 449 5

6 6 Laboratory Exercise #5 / / use ioremap / w r i t e 7 t o r e g i s t e r 0 / p r i n t k ( KERN INFO W r i t i n g a 7 t o r e g i s t e r 0\n ) ; i o w r i t e 3 2 ( 7, v i r t a d d r + 0 ) ; / / base a d d r e s s + o f f s e t / W r i t e 2 t o r e g i s t e r 1 / p r i n t k ( KERN INFO W r i t i n g a 2 t o r e g i s t e r 1\n ) ; / / use i o w r i t e 3 2 p r i n t k ( Read %d from r e g i s t e r 0\n, i o r e a d 3 2 ( v i r t a d d r + 0 ) ) ; p r i n t k ( Read %d from r e g i s t e r 1\n, \\ use i o r e a d 3 2 ) ; p r i n t k ( Read %d from r e g i s t e r 2\n, i o r e a d 3 2 ( v i r t a d d r + 8 ) ) ; / / A non 0 r e t u r n means i n i t m o d u l e f a i l e d ; module can t be loaded. return 0 ; / T h i s f u n c t i o n i s run j u s t p r i o r t o t h e module s removal from t h e s y s t e m. You s h o u l d r e l e a s e ALL r e s o u r c e s used by your module h ere ( o t h e r w i s e be p r e p a r e d f o r a r e b o o t ). / s t a t i c void e x i t m y e x i t ( void ) p r i n t k (KERN ALERT unmapping v i r t u a l a d d r e s s s p a c e.... \ n ) ; iounmap ( ( void ) v i r t a d d r ) ; / These d e f i n e i n f o t h a t can be d i s p l a y e d by modinfo / MODULE LICENSE( GPL ) ; MODULE AUTHOR( ECEN449 S t u d e n t ( and o t h e r s ) ) ; MODULE DESCRIPTION( Simple m u l t i p l i e r module ) ; / Here we d e f i n e which f u n c t i o n s we want t o use f o r i n i t i a l i z a t i o n and c l e a n u p / m o d u l e i n i t ( m y i n i t ) ; m o d u l e e x i t ( m y e x i t ) ; (f) Some required function calls have been left out of the code above. Fill in the necessary code. Consult Linux Device Drivers, 3rd Edition for help. Note: When running Linux on the ARM processor, your code is operating in virtual memory, and ioremap provides the physical to virtual address translation required to read and write to hardware from within virtual memory. iounmap reverses this mapping and is essentially the clean-up function for ioremap. (g) Add a printk statement to your initialization routine that prints the physical and virtual addresses of your multiplication peripheral to the kernel message buffer. (h) Edit your Makefile to compile multiply.c. Compile your kernel module. Do not forget to source the settings64.sh file. 6 ECEN 449

7 Laboratory Exercise #5 7 (i) Load the multiply.ko module onto the SD card and mount the card within the ZYBO Z7-10 Linux system using /mnt as the mount point. Consult step 1 if this is unclear. (j) Use insmod to load the multiply.ko kernel module into the ZYBO Z7-10 Linux kernel. Demonstrate your progress to the TA. Deliverables 1. [5 points.] Demo the working kernel module to the TA. Submit a lab report with the following items: 2. [5 points.] Correct format including an Introduction, Procedure, Results, and Conclusion. 3. [4 points.] The output of the terminal (picocom) for part 2 of lab. 4. [6 points.] Answers to the following questions: (a) If prior to step 2.f, we accidentally reset the ZYBO Z7-10 board, what additional steps would be needed in step 2.g? (b) What is the mount point for the SD card on the CentOS machine? Hint: Where does the SD card lie in the directory structure of the CentOS file system. (c) If we changed the name of our hello.c file, what would we have to change in the Makefile? Likewise, if in our Makefile, we specified the kernel directory from lab 4 rather than lab 5, what might be the consequences? ECEN 449 7

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University Prof. Sunil P Khatri (Lab exercise created and tested by Ramu Endluri, He Zhou and Sunil P

More information

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University Prof. Mi Lu TA: Ehsan Rohani Laboratory Exercise #4 MIPS Assembly and Simulation

More information

Laboratory Exercise #11 A Simple Digital Combination Lock

Laboratory Exercise #11 A Simple Digital Combination Lock Laboratory Exercise #11 A Simple Digital Combination Lock ECEN 248: Introduction to Digital Design Department of Electrical and Computer Engineering Texas A&M University 2 Laboratory Exercise #11 1 Introduction

More information

On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work

On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work Lab 5 : Linking Name: Sign the following statement: On my honor, as an Aggie, I have neither given nor received unauthorized aid on this academic work 1 Objective The main objective of this lab is to experiment

More information

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application

Administrivia. Course Objectives. Overview. Lecture Notes Week markem/cs333/ 2. Staff. 3. Prerequisites. 4. Grading. 1. Theory and application Administrivia 1. markem/cs333/ 2. Staff 3. Prerequisites 4. Grading Course Objectives 1. Theory and application 2. Benefits 3. Labs TAs Overview 1. What is a computer system? CPU PC ALU System bus Memory

More information

Laboratory Exercise #10 An Introduction to High-Speed Addition

Laboratory Exercise #10 An Introduction to High-Speed Addition Laboratory Exercise #10 An Introduction to High-Speed Addition ECEN 248: Introduction to Digital Design Department of Electrical and Computer Engineering Texas A&M University 2 Laboratory Exercise #10

More information

Laboratory Exercise #8 Introduction to Sequential Logic

Laboratory Exercise #8 Introduction to Sequential Logic Laboratory Exercise #8 Introduction to Sequential Logic ECEN 248: Introduction to Digital Design Department of Electrical and Computer Engineering Texas A&M University 2 Laboratory Exercise #8 1 Introduction

More information

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University

ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University Prof. Mi Lu TA: Ehsan Rohani Laboratory Exercise #2 Behavioral, Dataflow, and

More information

TitriSoft 2.5. Content

TitriSoft 2.5. Content Content TitriSoft 2.5... 1 Content... 2 General Remarks... 3 Requirements of TitriSoft 2.5... 4 Installation... 5 General Strategy... 7 Hardware Center... 10 Method Center... 13 Titration Center... 28

More information

M etodos Matem aticos e de Computa c ao I

M etodos Matem aticos e de Computa c ao I Métodos Matemáticos e de Computação I Complex Systems 01/16 General structure Microscopic scale Individual behavior Description of the constituents Model Macroscopic scale Collective behavior Emergence

More information

SuperCELL Data Programmer and ACTiSys IR Programmer User s Guide

SuperCELL Data Programmer and ACTiSys IR Programmer User s Guide SuperCELL Data Programmer and ACTiSys IR Programmer User s Guide This page is intentionally left blank. SuperCELL Data Programmer and ACTiSys IR Programmer User s Guide The ACTiSys IR Programmer and SuperCELL

More information

NINE CHOICE SERIAL REACTION TIME TASK

NINE CHOICE SERIAL REACTION TIME TASK instrumentation and software for research NINE CHOICE SERIAL REACTION TIME TASK MED-STATE NOTATION PROCEDURE SOF-700RA-8 USER S MANUAL DOC-025 Rev. 1.3 Copyright 2013 All Rights Reserved MED Associates

More information

Double Inverted Pendulum (DBIP)

Double Inverted Pendulum (DBIP) Linear Motion Servo Plant: IP01_2 Linear Experiment #15: LQR Control Double Inverted Pendulum (DBIP) All of Quanser s systems have an inherent open architecture design. It should be noted that the following

More information

High-Performance Scientific Computing

High-Performance Scientific Computing High-Performance Scientific Computing Instructor: Randy LeVeque TA: Grady Lemoine Applied Mathematics 483/583, Spring 2011 http://www.amath.washington.edu/~rjl/am583 World s fastest computers http://top500.org

More information

Quick Start Guide New Mountain Visit our Website to Register Your Copy (weatherview32.com)

Quick Start Guide New Mountain Visit our Website to Register Your Copy (weatherview32.com) Quick Start Guide New Mountain Visit our Website to Register Your Copy (weatherview32.com) Page 1 For the best results follow all of the instructions on the following pages to quickly access real-time

More information

ISSP User Guide CY3207ISSP. Revision C

ISSP User Guide CY3207ISSP. Revision C CY3207ISSP ISSP User Guide Revision C Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone (USA): 800.858.1810 Phone (Intnl): 408.943.2600 http://www.cypress.com Copyrights Copyrights

More information

MENA 9520 FME Modelling Tutorial 5 ( )

MENA 9520 FME Modelling Tutorial 5 ( ) MENA 9520 FME Modelling Tutorial 5 (25.02.2011) Task 5: Understanding type of bonding using charge-density plots Exercise 5.1: Visualizing charge density in Si: 1. mkdir charge 2. Copy a converged CTRL

More information

Lab 1-1-D Gradient Operator

Lab 1-1-D Gradient Operator Due Date: 17:00, Friday, October 7, 2011 TA: Yunyue Elita Li (yunyue.li@sep.stanford.edu) Lab 1-1-D Gradient Operator William of Orange 1 ABSTRACT The gradient of a continuous function of more than one

More information

BASIC TECHNOLOGY Pre K starts and shuts down computer, monitor, and printer E E D D P P P P P P P P P P

BASIC TECHNOLOGY Pre K starts and shuts down computer, monitor, and printer E E D D P P P P P P P P P P BASIC TECHNOLOGY Pre K 1 2 3 4 5 6 7 8 9 10 11 12 starts and shuts down computer, monitor, and printer P P P P P P practices responsible use and care of technology devices P P P P P P opens and quits an

More information

In-System Serial Programming (ISSP) Guide

In-System Serial Programming (ISSP) Guide CY3207ISSP In-System Serial Programming (ISSP) Guide Spec. # 001-15301 Rev. ** Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone (USA): 800.858.1810 Phone (Intnl): 408.943.2600 http://www.cypress.com

More information

Foundations of Computation

Foundations of Computation The Australian National University Semester 2, 2018 Research School of Computer Science Tutorial 1 Dirk Pattinson Foundations of Computation The tutorial contains a number of exercises designed for the

More information

Introduction to Python and its unit testing framework

Introduction to Python and its unit testing framework Introduction to Python and its unit testing framework Instructions These are self evaluation exercises. If you know no python then work through these exercises and it will prepare yourself for the lab.

More information

Creating Empirical Calibrations

Creating Empirical Calibrations 030.0023.01.0 Spreadsheet Manual Save Date: December 1, 2010 Table of Contents 1. Overview... 3 2. Enable S1 Calibration Macro... 4 3. Getting Ready... 4 4. Measuring the New Sample... 5 5. Adding New

More information

In-System Serial Programming (ISSP) Guide

In-System Serial Programming (ISSP) Guide CY3207ISSP In-System Serial Programming (ISSP) Guide Doc. # 001-15301 Rev. *A Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone (USA): 800.858.1810 Phone (Intnl): 408.943.2600 http://www.cypress.com

More information

Senior astrophysics Lab 2: Evolution of a 1 M star

Senior astrophysics Lab 2: Evolution of a 1 M star Senior astrophysics Lab 2: Evolution of a 1 M star Name: Checkpoints due: Friday 13 April 2018 1 Introduction This is the rst of two computer labs using existing software to investigate the internal structure

More information

In-System Serial Programming (ISSP) Guide

In-System Serial Programming (ISSP) Guide CY3207-ISSP In-System Serial Programming (ISSP) Guide Doc. # 001-15301 Rev. *E Cypress Semiconductor 198 Champion Court San Jose, CA 95134-1709 Phone (USA): 800.858.1810 Phone (Intnl): 408.943.2600 http://www.cypress.com

More information

Lab 6: Linear Algebra

Lab 6: Linear Algebra 6.1 Introduction Lab 6: Linear Algebra This lab is aimed at demonstrating Python s ability to solve linear algebra problems. At the end of the assignment, you should be able to write code that sets up

More information

This tutorial is intended to familiarize you with the Geomatica Toolbar and describe the basics of viewing data using Geomatica Focus.

This tutorial is intended to familiarize you with the Geomatica Toolbar and describe the basics of viewing data using Geomatica Focus. PCI GEOMATICS GEOMATICA QUICKSTART 1. Introduction This tutorial is intended to familiarize you with the Geomatica Toolbar and describe the basics of viewing data using Geomatica Focus. All data used in

More information

User's Guide. DISTO online. Leica Geosystems

User's Guide. DISTO online. Leica Geosystems User's Guide DISTO online Leica Geosystems Copyright 2001 by PMS Photo Mess Systeme AG. All rights reserved. This manual describes the versions 2.x of the program DISTO online. PMS PHOTO-MESS-SYSTEME AG

More information

LightWork Memo 18: Galactic Spectra Data Overview 1

LightWork Memo 18: Galactic Spectra Data Overview 1 LightWork Memo 18: Galactic Spectra Data Overview 1 Subject: Galactic Spectra Data Overview Memo: 18, revision 1 From: Glen Langston, Evan Smith and Sophie Knudsen Date: 2017 August 18 Summary: Examples

More information

CMSC 313 Lecture 16 Announcement: no office hours today. Good-bye Assembly Language Programming Overview of second half on Digital Logic DigSim Demo

CMSC 313 Lecture 16 Announcement: no office hours today. Good-bye Assembly Language Programming Overview of second half on Digital Logic DigSim Demo CMSC 33 Lecture 6 nnouncement: no office hours today. Good-bye ssembly Language Programming Overview of second half on Digital Logic DigSim Demo UMC, CMSC33, Richard Chang Good-bye ssembly

More information

CHEOPS Feasibility Checker Guidelines

CHEOPS Feasibility Checker Guidelines CHEOPS Feasibility Checker Guidelines Open a terminal and run the following commands (USERNAME as provided by the SOC - UNIGE): ssh X USERNAME@isdc-nx00.isdc.unige.ch ssh X USERNAME@tichpsmps00 /cheops_sw/mps_test/bin/mps_client

More information

Chem 253. Tutorial for Materials Studio

Chem 253. Tutorial for Materials Studio Chem 253 Tutorial for Materials Studio This tutorial is designed to introduce Materials Studio 7.0, which is a program used for modeling and simulating materials for predicting and rationalizing structure

More information

Lab Manual for ICEN 553/453 Cyber-Physical Systems Fall 2018

Lab Manual for ICEN 553/453 Cyber-Physical Systems Fall 2018 Lab Manual for ICEN 553/453 Cyber-Physical Systems Fall 2018 Prof. Dola Saha Assistant Professor Department of Electrical & Computer Engineering University at Albany, SUNY Chapter 1 Setup Headless Raspberry

More information

Lab 2 Worksheet. Problems. Problem 1: Geometry and Linear Equations

Lab 2 Worksheet. Problems. Problem 1: Geometry and Linear Equations Lab 2 Worksheet Problems Problem : Geometry and Linear Equations Linear algebra is, first and foremost, the study of systems of linear equations. You are going to encounter linear systems frequently in

More information

Laboratory 3 Measuring Capacitor Discharge with the MicroBLIP

Laboratory 3 Measuring Capacitor Discharge with the MicroBLIP Laboratory 3 page 1 of 6 Laboratory 3 Measuring Capacitor Discharge with the MicroBLIP Introduction In this lab, you will use the MicroBLIP in its Data Acquisition Mode to sample the voltage over time

More information

ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D

ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D ArcGIS Earth for Enterprises DARRON PUSTAM ARCGIS EARTH CHRIS ANDREWS 3D ArcGIS Earth is ArcGIS Earth is a lightweight globe desktop application that helps you explore any part of the world and investigate

More information

ECE3510 Lab #5 PID Control

ECE3510 Lab #5 PID Control ECE3510 Lab #5 ID Control Objectives The objective of this lab is to study basic design issues for proportionalintegral-derivative control laws. Emphasis is placed on transient responses and steady-state

More information

HOW TO USE MIKANA. 1. Decompress the zip file MATLAB.zip. This will create the directory MIKANA.

HOW TO USE MIKANA. 1. Decompress the zip file MATLAB.zip. This will create the directory MIKANA. HOW TO USE MIKANA MIKANA (Method to Infer Kinetics And Network Architecture) is a novel computational method to infer reaction mechanisms and estimate the kinetic parameters of biochemical pathways from

More information

Lab 5 - Capacitors and RC Circuits

Lab 5 - Capacitors and RC Circuits Lab 5 Capacitors and RC Circuits L51 Name Date Partners Lab 5 Capacitors and RC Circuits OBJECTIVES To define capacitance and to learn to measure it with a digital multimeter. To explore how the capacitance

More information

MAT 343 Laboratory 6 The SVD decomposition and Image Compression

MAT 343 Laboratory 6 The SVD decomposition and Image Compression MA 4 Laboratory 6 he SVD decomposition and Image Compression In this laboratory session we will learn how to Find the SVD decomposition of a matrix using MALAB Use the SVD to perform Image Compression

More information

OHW2013 workshop. An open source PCIe device virtualization framework

OHW2013 workshop. An open source PCIe device virtualization framework OHW2013 workshop An open source PCIe device virtualization framework Plan Context and objectives Design and implementation Future directions Questions Context - ESRF and the ISDD electronic laboratory

More information

DSP First Lab 11: PeZ - The z, n, and ωdomains

DSP First Lab 11: PeZ - The z, n, and ωdomains DSP First Lab : PeZ - The, n, and ωdomains The lab report/verification will be done by filling in the last page of this handout which addresses a list of observations to be made when using the PeZ GUI.

More information

BCMB/CHEM 8190 Lab Exercise Using Maple for NMR Data Processing and Pulse Sequence Design March 2012

BCMB/CHEM 8190 Lab Exercise Using Maple for NMR Data Processing and Pulse Sequence Design March 2012 BCMB/CHEM 8190 Lab Exercise Using Maple for NMR Data Processing and Pulse Sequence Design March 2012 Introduction Maple is a powerful collection of routines to aid in the solution of mathematical problems

More information

Rotary Motion Servo Plant: SRV02. Rotary Experiment #01: Modeling. SRV02 Modeling using QuaRC. Student Manual

Rotary Motion Servo Plant: SRV02. Rotary Experiment #01: Modeling. SRV02 Modeling using QuaRC. Student Manual Rotary Motion Servo Plant: SRV02 Rotary Experiment #01: Modeling SRV02 Modeling using QuaRC Student Manual SRV02 Modeling Laboratory Student Manual Table of Contents 1. INTRODUCTION...1 2. PREREQUISITES...1

More information

EXERCISE 12: IMPORTING LIDAR DATA INTO ARCGIS AND USING SPATIAL ANALYST TO MODEL FOREST STRUCTURE

EXERCISE 12: IMPORTING LIDAR DATA INTO ARCGIS AND USING SPATIAL ANALYST TO MODEL FOREST STRUCTURE EXERCISE 12: IMPORTING LIDAR DATA INTO ARCGIS AND USING SPATIAL ANALYST TO MODEL FOREST STRUCTURE Document Updated: December, 2007 Introduction This exercise is designed to provide you with possible silvicultural

More information

GPS Mapping with Esri s Collector App. What We ll Cover

GPS Mapping with Esri s Collector App. What We ll Cover GPS Mapping with Esri s Collector App Part 1: Overview What We ll Cover Part 1: Overview and requirements Part 2: Preparing the data in ArcGIS for Desktop Part 3: Build a web map in ArcGIS Online Part

More information

C101-E112. BioSpec-nano. Shimadzu Spectrophotometer for Life Science

C101-E112. BioSpec-nano. Shimadzu Spectrophotometer for Life Science C101-E112 BioSpec-nano Shimadzu Spectrophotometer for Life Science Power of small. BioSpec-nano BioSpec-nano Shimadzu Spectrophotometer for Life Science Quick and Simple Nucleic Acid Quantitation Drop-and-Click

More information

CS429: Computer Organization and Architecture

CS429: Computer Organization and Architecture CS429: Computer Organization and Architecture Warren Hunt, Jr. and Bill Young Department of Computer Sciences University of Texas at Austin Last updated: September 3, 2014 at 08:38 CS429 Slideset C: 1

More information

Reference Manual. Program Help for Electrophoretic Buffer Studies. Version 1.3. Copyright 2001 ANALIS sa/nv

Reference Manual. Program Help for Electrophoretic Buffer Studies. Version 1.3. Copyright 2001 ANALIS sa/nv PHoEBuS Version 1.3 Program Help for Electrophoretic Buffer Studies Reference Manual By Ph. Morin, E. Vangrevelinghe and S. Mayer, Orleans (France), 1996, 1997-2001. Recording Number: IDDN.FR.001.270019.00.R.P.1996.000.30625.

More information

CHEM 498Q / CHEM 630Q: Molecular Modeling of Proteins TUTORIAL #3a: Empirical force fields

CHEM 498Q / CHEM 630Q: Molecular Modeling of Proteins TUTORIAL #3a: Empirical force fields Department of Chemistry and Biochemistry, Concordia University! page 1 of 6 CHEM 498Q / CHEM 630Q: Molecular Modeling of Proteins TUTORIAL #3a: Empirical force fields INTRODUCTION The goal of this tutorial

More information

Environmental Systems Research Institute

Environmental Systems Research Institute Introduction to ArcGIS ESRI Environmental Systems Research Institute Redlands, California 2 ESRI GIS Development Arc/Info (coverage model) Versions 1-7 from 1980 1999 Arc Macro Language (AML) ArcView (shapefile

More information

Full Integration of GPS System on Arduino

Full Integration of GPS System on Arduino Full Integration of GPS System on Arduino Alex (Seong Hoon) Lee 1, Professor Robert Winglee 2, 1 Unviersity of Washington, Electrical Engineering Dept. 2 University of Washington, Earth and Space Sciences

More information

DISCRETE RANDOM VARIABLES EXCEL LAB #3

DISCRETE RANDOM VARIABLES EXCEL LAB #3 DISCRETE RANDOM VARIABLES EXCEL LAB #3 ECON/BUSN 180: Quantitative Methods for Economics and Business Department of Economics and Business Lake Forest College Lake Forest, IL 60045 Copyright, 2011 Overview

More information

Department of Chemical Engineering University of California, Santa Barbara Spring Exercise 2. Due: Thursday, 4/19/09

Department of Chemical Engineering University of California, Santa Barbara Spring Exercise 2. Due: Thursday, 4/19/09 Department of Chemical Engineering ChE 210D University of California, Santa Barbara Spring 2012 Exercise 2 Due: Thursday, 4/19/09 Objective: To learn how to compile Fortran libraries for Python, and to

More information

Lab 4 CAPACITORS & RC CIRCUITS

Lab 4 CAPACITORS & RC CIRCUITS 67 Name Date Partners Lab 4 CAPACITORS & RC CIRCUITS OBJECTIVES OVERVIEW To define capacitance and to learn to measure it with a digital multimeter. To explore how the capacitance of conducting parallel

More information

ww.padasalai.net

ww.padasalai.net t w w ADHITHYA TRB- TET COACHING CENTRE KANCHIPURAM SUNDER MATRIC SCHOOL - 9786851468 TEST - 2 COMPUTER SCIENC PG - TRB DATE : 17. 03. 2019 t et t et t t t t UNIT 1 COMPUTER SYSTEM ARCHITECTURE t t t t

More information

Temperature Measurement and First-Order Dynamic Response *

Temperature Measurement and First-Order Dynamic Response * OpenStax-CNX module: m13774 1 Temperature Measurement and First-Order Dynamic Response * Luke Graham This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 2.0

More information

Digital Systems EEE4084F. [30 marks]

Digital Systems EEE4084F. [30 marks] Digital Systems EEE4084F [30 marks] Practical 3: Simulation of Planet Vogela with its Moon and Vogel Spiral Star Formation using OpenGL, OpenMP, and MPI Introduction The objective of this assignment is

More information

Paramaters. Resolution 0.2 m (for measurements < 25 meas. / sec )

Paramaters. Resolution 0.2 m (for measurements < 25 meas. / sec ) Paramaters Method of altitude measurement: Measuring Range measurement of pressure changes 0-5500 m Resolution 0.2 m (for measurements < 25 meas. / sec ) Accuracy: Supply Voltage: Current consumption:

More information

MERGING (MERGE / MOSAIC) GEOSPATIAL DATA

MERGING (MERGE / MOSAIC) GEOSPATIAL DATA This help guide describes how to merge two or more feature classes (vector) or rasters into one single feature class or raster dataset. The Merge Tool The Merge Tool combines input features from input

More information

Lab 5 - Capacitors and RC Circuits

Lab 5 - Capacitors and RC Circuits Lab 5 Capacitors and RC Circuits L51 Name Date Partners Lab 5 Capacitors and RC Circuits OBJECTIVES To define capacitance and to learn to measure it with a digital multimeter. To explore how the capacitance

More information

Chemistry 14CL. Worksheet for the Molecular Modeling Workshop. (Revised FULL Version 2012 J.W. Pang) (Modified A. A. Russell)

Chemistry 14CL. Worksheet for the Molecular Modeling Workshop. (Revised FULL Version 2012 J.W. Pang) (Modified A. A. Russell) Chemistry 14CL Worksheet for the Molecular Modeling Workshop (Revised FULL Version 2012 J.W. Pang) (Modified A. A. Russell) Structure of the Molecular Modeling Assignment The molecular modeling assignment

More information

SOLUTION. Homework 1. Part(a) Due: 15 Mar, 2018, 11:55pm

SOLUTION. Homework 1. Part(a) Due: 15 Mar, 2018, 11:55pm ENGG1203: Introduction to Electrical and Electronic Engineering Second Semester, 2017 18 Homework 1 Due: 15 Mar, 2018, 11:55pm Instruction: Submit your answers electronically through Moodle. In Moodle,

More information

Orbit Support Pack for Excel. user manual

Orbit Support Pack for Excel. user manual Orbit Support Pack for Excel user manual Information in this document is subject to change without notice. Companies, names and data used in examples herein are fictitious unless noted otherwise. No part

More information

LandscapeDNDC: Getting started

LandscapeDNDC: Getting started LandscapeDNDC: Getting started ldndc-team Institute of Meteorology and Climate Research 1 2018-02-09 ldndc-team - Institute of Meteorology and Climate Research KIT University of the State of Baden-Wuerttemberg

More information

Comp 11 Lectures. Dr. Mike Shah. August 9, Tufts University. Dr. Mike Shah (Tufts University) Comp 11 Lectures August 9, / 34

Comp 11 Lectures. Dr. Mike Shah. August 9, Tufts University. Dr. Mike Shah (Tufts University) Comp 11 Lectures August 9, / 34 Comp 11 Lectures Dr. Mike Shah Tufts University August 9, 2017 Dr. Mike Shah (Tufts University) Comp 11 Lectures August 9, 2017 1 / 34 Please do not distribute or host these slides without prior permission.

More information

POC via CHEMnetBASE for Identifying Unknowns

POC via CHEMnetBASE for Identifying Unknowns Table of Contents A red arrow was used to identify where buttons and functions are located in CHEMnetBASE. Figure Description Page Entering the Properties of Organic Compounds (POC) Database 1 Swain Home

More information

1 Introduction. command intended for command prompt

1 Introduction. command intended for command prompt Guest Lecture, Smith College, CS 334, BioInformatics 21 October 2008 GROMACS, Position Restrained MD, Protein Catalytic Activity Filip Jagodzinski 1 Introduction GROMACS (GROningen MAchine for Chemistry

More information

IFM Chemistry Computational Chemistry 2010, 7.5 hp LAB2. Computer laboratory exercise 1 (LAB2): Quantum chemical calculations

IFM Chemistry Computational Chemistry 2010, 7.5 hp LAB2. Computer laboratory exercise 1 (LAB2): Quantum chemical calculations Computer laboratory exercise 1 (LAB2): Quantum chemical calculations Introduction: The objective of the second computer laboratory exercise is to get acquainted with a program for performing quantum chemical

More information

WeatherHawk Weather Station Protocol

WeatherHawk Weather Station Protocol WeatherHawk Weather Station Protocol Purpose To log atmosphere data using a WeatherHawk TM weather station Overview A weather station is setup to measure and record atmospheric measurements at 15 minute

More information

Sun SPOTs: A Great Solution for Small Device Development

Sun SPOTs: A Great Solution for Small Device Development Sun SPOTs: A Great Solution for Small Device Development Claudio M. Horvilleur Cromasoft, S.A. de C.V. México Agenda What is the Problem? What is a SunSPOT? Adding a New Sensor Hardware Development Issues

More information

SimpleDreamEQ2. Upgrade kit equatorial mounts Synta EQ2, Celestron CG3. User guide. Micro GoTo system. Micro GoTo system

SimpleDreamEQ2. Upgrade kit equatorial mounts Synta EQ2, Celestron CG3. User guide. Micro GoTo system. Micro GoTo system SimpleDreamEQ2 Upgrade kit equatorial mounts Synta EQ2, Celestron CG3 User guide Micro GoTo system Micro GoTo system AstroGadget 2017 1. DESCRIPTION The kit consists of a control unit and a set of drives

More information

Coulomb s Law Mini-Lab

Coulomb s Law Mini-Lab Setup Name Per Date Coulomb s Law Mini-Lab On a fresh piece of notebook paper, write the above title, name, date, and period. Be sure to put all headings, Roman numerals and regular numbers on your paper.

More information

TECDIS and TELchart ECS Weather Overlay Guide

TECDIS and TELchart ECS Weather Overlay Guide 1 of 24 TECDIS and TELchart ECS provides a very advanced weather overlay feature, using top quality commercial maritime weather forecast data available as a subscription service from Jeppesen Marine. The

More information

SRV02-Series Rotary Experiment # 7. Rotary Inverted Pendulum. Student Handout

SRV02-Series Rotary Experiment # 7. Rotary Inverted Pendulum. Student Handout SRV02-Series Rotary Experiment # 7 Rotary Inverted Pendulum Student Handout SRV02-Series Rotary Experiment # 7 Rotary Inverted Pendulum Student Handout 1. Objectives The objective in this experiment is

More information

Matrix Eigensystem Tutorial For Parallel Computation

Matrix Eigensystem Tutorial For Parallel Computation Matrix Eigensystem Tutorial For Parallel Computation High Performance Computing Center (HPC) http://www.hpc.unm.edu 5/21/2003 1 Topic Outline Slide Main purpose of this tutorial 5 The assumptions made

More information

Homework 1. Part(a) Due: 15 Mar, 2018, 11:55pm

Homework 1. Part(a) Due: 15 Mar, 2018, 11:55pm ENGG1203: Introduction to Electrical and Electronic Engineering Second Semester, 2017 18 Homework 1 Due: 15 Mar, 2018, 11:55pm Instruction: Submit your answers electronically through Moodle. In Moodle,

More information

Lab Exercise 6 CS 2334

Lab Exercise 6 CS 2334 Lab Exercise 6 CS 2334 September 28, 2017 Introduction In this lab, you will experiment with using inheritance in Java through the use of abstract classes and interfaces. You will implement a set of classes

More information

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering TIMING ANALYSIS Overview Circuits do not respond instantaneously to input changes

More information

MAE106 Laboratory Exercises Lab # 6 - Vibrating systems

MAE106 Laboratory Exercises Lab # 6 - Vibrating systems MAE106 Laboratory Exercises Lab # 6 - Vibrating systems Goals Understand how the oscillations in a mechanical system affect its behavior. Parts & equipment Qty Part/Equipment 1 Seeeduino board 1 Motor

More information

GIS Boot Camp for Education June th, 2011 Day 1. Instructor: Sabah Jabbouri Phone: (253) x 4854 Office: TC 136

GIS Boot Camp for Education June th, 2011 Day 1. Instructor: Sabah Jabbouri Phone: (253) x 4854 Office: TC 136 GIS Boot Camp for Education June 27-30 th, 2011 Day 1 Instructor: Sabah Jabbouri Phone: (253) 833-9111 x 4854 Office: TC 136 Email: sjabbouri@greenriver.edu http://www.instruction.greenriver.edu/gis/ Summer

More information

v Prerequisite Tutorials GSSHA WMS Basics Watershed Delineation using DEMs and 2D Grid Generation Time minutes

v Prerequisite Tutorials GSSHA WMS Basics Watershed Delineation using DEMs and 2D Grid Generation Time minutes v. 10.1 WMS 10.1 Tutorial GSSHA WMS Basics Creating Feature Objects and Mapping Attributes to the 2D Grid Populate hydrologic parameters in a GSSHA model using land use and soil data Objectives This tutorial

More information

An introduction to flash memory in Linux

An introduction to flash memory in Linux An introduction to flash memory in Linux Ezequiel Garcia Linux Developer Conference Brazil 2018 1/34 Agenda Flash memory: NAND and NOR Linux MTD subsystem Linux UBI/UBIFS systems

More information

Materials that you may find helpful when working through this exercise

Materials that you may find helpful when working through this exercise Detailed steps illustrating how to use VASP on the Suns in Fitz 177 For use in lab: 11/10/2009 (Original file by Dr. Rachel Getman, 11/18/2007. Editted for use by Dorrell McCalman 11/09/2009.) Note on

More information

LAST TIME..THE COMMAND LINE

LAST TIME..THE COMMAND LINE LAST TIME..THE COMMAND LINE Maybe slightly to fast.. Finder Applications Utilities Terminal The color can be adjusted and is simply a matter of taste. Per default it is black! Dr. Robert Kofler Introduction

More information

MEM04: Rotary Inverted Pendulum

MEM04: Rotary Inverted Pendulum MEM4: Rotary Inverted Pendulum Interdisciplinary Automatic Controls Laboratory - ME/ECE/CHE 389 April 8, 7 Contents Overview. Configure ELVIS and DC Motor................................ Goals..............................................3

More information

1D-HAM. Coupled Heat, Air and Moisture Transport in Multi-layered Wall Structures. Manual with brief theory and an example. Version 2.

1D-HAM. Coupled Heat, Air and Moisture Transport in Multi-layered Wall Structures. Manual with brief theory and an example. Version 2. 1D-HAM Coupled Heat, Air and Moisture Transport in Multi-layered Wall Structures. Manual with brief theory and an example. Version 2.0 30 t=70 days (1680 h) 100 Temperatures ( C) v (g/m³) 25 20 15 10 5

More information

Lab 5 CAPACITORS & RC CIRCUITS

Lab 5 CAPACITORS & RC CIRCUITS L051 Name Date Partners Lab 5 CAPACITORS & RC CIRCUITS OBJECTIVES OVERVIEW To define capacitance and to learn to measure it with a digital multimeter. To explore how the capacitance of conducting parallel

More information

Calculating Bond Enthalpies of the Hydrides

Calculating Bond Enthalpies of the Hydrides Proposed Exercise for the General Chemistry Section of the Teaching with Cache Workbook: Calculating Bond Enthalpies of the Hydrides Contributed by James Foresman, Rachel Fogle, and Jeremy Beck, York College

More information

Using the EartH2Observe data portal to analyse drought indicators. Lesson 4: Using Python Notebook to access and process data

Using the EartH2Observe data portal to analyse drought indicators. Lesson 4: Using Python Notebook to access and process data Using the EartH2Observe data portal to analyse drought indicators Lesson 4: Using Python Notebook to access and process data Preface In this fourth lesson you will again work with the Water Cycle Integrator

More information

CprE 281: Digital Logic

CprE 281: Digital Logic CprE 28: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Simple Processor CprE 28: Digital Logic Iowa State University, Ames, IA Copyright Alexander Stoytchev Digital

More information

Chapter: 22. Visualization: Making INPUT File and Processing of Output Results

Chapter: 22. Visualization: Making INPUT File and Processing of Output Results Chapter: 22 Visualization: Making INPUT File and Processing of Output Results Keywords: visualization, input and output structure, molecular orbital, electron density. In the previous chapters, we have

More information

CAS GE 365 Introduction to Geographical Information Systems. The Applications of GIS are endless

CAS GE 365 Introduction to Geographical Information Systems. The Applications of GIS are endless Spring 2007 CAS GE 365 Introduction to Geographical Information Systems Boston University Department of Geography and Environment The Applications of GIS are endless images from www.esri.com CAS GE 365

More information

Dynamics of the Atmosphere GEMPAK Lab 3. 3) In-class exercise about geostrophic balance in the real atmosphere.

Dynamics of the Atmosphere GEMPAK Lab 3. 3) In-class exercise about geostrophic balance in the real atmosphere. Dynamics of the Atmosphere GEMPAK Lab 3 Goals of this lab: 1) Learn about Linux scripts. 2) Learn how to combine levels in GEMPAK functions. 3) In-class exercise about geostrophic balance in the real atmosphere.

More information

Collisions and conservation laws

Collisions and conservation laws (ta initials) first name (print) last name (print) brock id (ab17cd) (lab date) Experiment 4 Collisions and conservation laws Prelab preparation Print a copy of this experiment to bring to your scheduled

More information

Flight Utilities Metar Reader version 3.1 by Umberto Degli Esposti

Flight Utilities  Metar Reader version 3.1 by Umberto Degli Esposti Flight Utilities http://www.flightutilities.com Metar Reader version 3.1 by Umberto Degli Esposti 1 Description The program allows inserting a Metar, to load it from a disk or from internet and to show

More information

Analyst Software. Automatic Optimization Tutorial

Analyst Software. Automatic Optimization Tutorial This document is provided to customers who have purchased AB Sciex equipment to use in the operation of such AB Sciex equipment. This document is copyright protected and any reproduction of this document

More information

arxiv:astro-ph/ v1 15 Sep 1999

arxiv:astro-ph/ v1 15 Sep 1999 Baltic Astronomy, vol.8, XXX XXX, 1999. THE ASTEROSEISMOLOGY METACOMPUTER arxiv:astro-ph/9909264v1 15 Sep 1999 T.S. Metcalfe and R.E. Nather Department of Astronomy, University of Texas, Austin, TX 78701

More information

Tutorial I: IQ MOL and Basic DFT and MP2 Calculations 1 / 30

Tutorial I: IQ MOL and Basic DFT and MP2 Calculations 1 / 30 Tutorial I: IQ MOL and Basic DFT and MP2 Calculations Q-Chem User Workshop, Denver March 21, 2015 1 / 30 2 / 30 Introduction to IQMOL DFT and MP2 Calculations 3 / 30 IQMOL and Q-CHEM IQMOL is an open-source

More information