Skip to content

Latest commit

 

History

History
43 lines (33 loc) · 3.17 KB

README.md

File metadata and controls

43 lines (33 loc) · 3.17 KB

Pole Zero Response Plotter using HTML, CSS, JavaScript and ChartJS

You can run the HTML (index.html) directly to reach the app by using one of following browsers:

  • Chrome
  • Edge
  • Firefox
  • Safari

Special thanks to https://github.com/chrispahm/chartjs-plugin-dragdata

Last updates

Some additions:

  • Now negative symmetric of the response can be avoided by draw_negative variable and default is updated as do not draw (convertion between draw and do not draw is only available in the source/code part as a boolean).

Note: Since main purpose is to create a filter for real world applications, each point has a conjugate at the opposite part of the chart according to x axis; resultantly, positive and negative parts of the x axis are symmetric to each other in the response chart. By updating default to do not draw, I aimed to remove the negative part of the symmetric response chart since it is nonsense to keep it.

  • Points created/moved that are too close to x axis (with a threshold of 0.25 by default) counts to be as one point WITH y=0 VALUE (only in calculation part, user still sees them as two points).

Bug fix:

  • Case of points to be separated from their conjugates when mouse slides from +y to -y or -y to +y without releasing the point is fixed.
  • Indexings of response chart are corrected (still limited with 15 for laplace(s) plane, 3.14(pi) for discrete laplace(z) plane).

Illustration

To obtain 's response graph, split s^2(s) into s(s) as , and find the poles and the zeros as following:

At the end, you must put the poles and the zeros as following:

General View & Options

s-plane Magnitude Response

s-plane Phase Response

z-plane Magnitude Response

z-plane Phase Response