Dr. Mark A. Hopkins, Professor

loading Hopkins' picture ...

Dr. Hopkins in 2014.

E-Mail: mark.hopkins@rit.edu

PZGui Toolbox for Matlab     (Pole/Zero Graphical user interface)

This Semester's schedule

This Semester's Classes and Office Hours

Office: Gleason Bldg (09), Room 3021

Phone Number: (585) 475 - 6640

Education and Interests

Publications, Patents, etc.

Education and Interests:

Ph.D., 1988, Virginia Tech (Virginia Polytechnic Institute and State University), Blacksburg VA
System Identification
Control Systems
Research Interests:
Model identification of flexible structures: Typically, the order of the model to be identified is at least 600, because the system it represents has considerably more than 300 (often closely-spaced) lightly-damped vibrational modes that are distributed over a frequency range of at least 4.5 orders-of-magnitude, with a dynamic range of about 120 dB. The identified model ideally has bode magnitude error less than 2 dB and bode phase error less than 10 degrees at every frequency over the full range of interest (when compared to the empirical data from the real system). This is a very tough problem, particularly the very wide bandwidth, not only in terms of system identification, but also in terms of numerical stability. I made very good progress on this modelling problem in the late 1990's in work at Eastman Kodak Company, Commercial & Government Systems Division (now part of Harris Corp.), and developed a technique, called the Pick And Place Algorithm (P.A.P.A.), to create models this good.
Extending the P.A.P.A. modelling technique to MIMO systems: During a sabbatical (2001-02) at C&GS, I successfully extended P.A.P.A. to multiple-input, multiple-output (MIMO) systems. The crux of this problem is converting a matrix of transfer functions into a state-space model in modal-canonic form, by way of partial fraction expansions. Getting this to work involved creating a new algorithm, called Residue Rank Reduction (R-cubed), that iteratively reduces the rank of all the MIMO Cauchy-residue-arrays to rank one. That is necessary in order to avoid having any multiple poles at the same location in the state-space model. The feasibility proof of the method is a two-input, two-output, 850-pole state-space model of a large flexible structure. This model was created from four P.A.P.A. transfer functions, and has extremely good frequency response accuracy from 0.2 Hz to 10 kHz.
More recently (2009-13), I have solved the problem of creating very high-order discrete-time MIMO state-space models that agree quite well with empirical data over a very broad range of frequencies ( > 4.5 orders-of-magnitude). Over those years, and particularly during a 2011 sabbatical, I developed a method that successfully decouples individual modes, to the greatest extent possible, so that they can more easily be identified. This led to a very successful new modelling technique that I call FORCASTER (Frequency Observability Range Context And Subsystems To Estimate Residues). This new method relies on three fundamental tools, (1) The FORSE algorithm, published in 1996 by Liu, Jacques, and Miller in ASME JDSMC, (2) the mode-decoupling technique mentioned above, and (3) other linear model components that, collectively, comprise the "subsystems" that model the effects of non-modal poles, such as integration, ac-coupling, delay, and modes above the Nyquist frequency. Some colleagues at Harris have dubbed this method "FORSE-Fed P.A.P.A.", a name that has some merit. These results were published in 2013 at the SPIE International Symposium on Smart Structures and Materials, in San Diego, CA.
Control of flexible structures: Apply advanced control techniques to high-order models generated by the model identification. This problem involves model-order reduction techniques, as there are significant numerical problems involved in designing a controller from models larger than 600-th order, and no possibility of implementing in hardware a real-time controller of that size at fast sample rates. In the past several years, I have been developing a method that tunes an initial LQR-based controller/observer design to achieve damping, isolation, and robustness goals, for the class of infinite-dimensional, reasonably linear, flexible structures that are my main interest. This method relies on having excellent high-order as well as reduced-order models, and uses the Nelder-Mead Simplex Method, and other similar algorithms, to tune the two feedback matrices. It also depends upon distributed computing to make it feasible to achieve good results in a reasonable amount of time. The initial work was funded by ITT Geospatial Systems (now Harris Corp.).

Go back to the top

Dr. Hopkins will not be teaching in Fall Semester, 2016-2017. . (August 22, 2016 to December 9, 2016):

He will return in the Spring Semester, 2017.

Here are the courses Dr. Hopkins will be teaching in the Spring:

EEEE 414, Classical Control (8:00 - 9:15 am, Tu Th)
EEEE 766, Multivariable Modeling (5:00 - 6:15 pm, Tu Th)

Office hours in Spring Semester, 2016-2017 (January 23, 2017 to May 13, 2017), when Dr. Hopkins returns to campus:

  • Mondays           9:30-10:30 am and 3:00-4:00 pm
  • Tuesdays           9:30-10:30 am and 3:00-4:00 pm
  • Thursdays           9:30-10:30 am and 3:00-4:00 pm
  • or by appointment
Go back to the top

Publications, Patents, etc.



  • European Patent # EP0682294, Method of Controlling Print Quality for an Electrophotographic Printer, Inventor: Mark A. Hopkins, Assignee: Xerox Corp., issued June 23, 1999.
  • U.S. Patent # 5,760,812, Two-Input, Two-Output Fuzzy Logic Print Quality Controller for an Electrophotographic Printer, Inventor: Mark A. Hopkins, Assignee: Xerox Corp., issued June 2, 1998.
  • U.S. Patent # 5,390,004, Three-Input, Three-Output Fuzzy Logic Print Quality Controller for an Electrophotographic Printer, Inventor: Mark A. Hopkins, Assignee: Xerox Corp., issued February 14, 1995.
  • U.S. Patent # 5,355,197, Method and Apparatus for Predicting the Cycle-Down Behavior of a Photoreceptor, Inventor: Mark A. Hopkins, Assignee: Xerox Corp., issued October 11, 1994.

Professional Affiliations:

  • Senior Member Institute of Electrical and Electronics Engineers (IEEE)
  • Member American Society for Engineering Education
  • (ASEE)
  • Member Tau Beta Pi
  • Member Society for Industrial and Applied Mathematics
  • (SIAM)
  • Technical reviewer for the ASME Journal of Dynamic Systems, Measurement and Control
  • Technical reviewer for the ASME Journal of Vibration and Acoustics
  • Technical reviewer for the IEEE Transactions on Control Systems Technology
Go back to the top

MATLAB  Toolbox Shareware to Download

PZGui (Pole/Zero Graphical user interface)

A MATLAB Add-On Tool for the Study of Linear Systems and Control

This is the ultimate interactive tool for studying SISO transfer-functions.

60,000 lines of code developed over a period of 22 years.

Now includes "The Hopkins Demos", which cover topics from the voltage/current relationship in inductors to convolution (the world's best convolution demo).

It is Matlab 2014b+ Graphics Ready.

       Currently in Version 8.1.78   released January 8, 2017.

( Runs in ANY   MATLAB Version 2008a or later, the Student Version (it includes the Controls Toolbox), or the Professional Version with Controls Toolbox.

Go to download page for zipped PZGui M-files

    This highly interactive, GUI-based program helps students and engineers to comprehend the complicated relationships among the following:

  • Pole/zero maps
  • Open-loop and closed-loop bode plots
  • the Nichols chart, with phase-lead/phase-lag design tool, and PID design tool
  • the Nyquist contour and the corresponding Nyquist plot
  • Output sensitivity function
  • Root locus
  • Open-loop and closed-loop time responses, with a selection of standard inputs
  • Both continuous-time domain and discrete-time domain
  • Zero-Order Hold equivalent models, and bilinear/Tustin transform models

    Completely updated comprehensive 55-page User's Manual.

    Includes special tools to study PID and Lead-Lag design.

    All features are available both for continuous-time and discrete-time systems, enhancing the ability to study relationships between them.

    Correctly handles models that have hundreds of poles and zeros.

    New Feature: Generate large random "flexible-structure-like" models.

The program consists of more than 55,000 lines of code in 75 Matlab M-files,
with a 55-page PDF User's Guide.

            Click here for more info about PZGui (the User's Manual)
Go back to the top

e-mail Mark Hopkins: mark.hopkins@rit.edu

This page was updated 08-Jan-2017