Skip to main content
engineering

Transfer Function Calculator

Analyze transfer functions: compute poles, zeros, DC gain, system order, system type, and stability from numerator/denominator coefficients

By Christopher FloiedPublished Updated

Enter polynomial coefficients from highest to lowest power (space or comma separated). For G(s) = (b₀sⁿ + b₁sⁿ⁻¹ + ...)/(a₀sᵐ + a₁sᵐ⁻¹ + ...)

System Order
2
System Type
0
DC Gain G(0)
0.5
Stability
Stable

Poles (roots of denominator) — 2 poles

p1 = -1(LHP)
p2 = -2(LHP)

Pole-Zero Plot (s-plane)

Green dot = LHP (stable pole) · Red dot = RHP (unstable pole) · Yellow = on the jω axis (marginally stable if simple, unstable if repeated)

How to Use This Calculator

1

Enter your input values

Fill in all required input fields for the Transfer Function Calculator. Follow the units and input format printed next to each field. Where a unit selector is available, choose the units that match your data.

2

Review your inputs

Double-check that all values are correct and match the units or format shown for each field. Incorrect units are the most common source of calculation errors and can produce results that are off by factors of 2, 10, or more.

3

Read the results

The Transfer Function Calculator computes the output in your browser and displays the results, with units clearly labeled, as soon as they are ready — no data sent to a server.

4

Explore parameter sensitivity

Try adjusting individual input values to see how the output changes. This is a quick and effective way to develop intuition about how different parameters influence the result and to identify which inputs have the largest effect.

Formula Reference

Rational Transfer Function, Poles and Zeros

G(s) = N(s)/D(s) = (b₀·sᵐ + b₁·sᵐ⁻¹ + … + bₘ) / (a₀·sⁿ + a₁·sⁿ⁻¹ + … + aₙ) | D(pᵢ) = 0 → poles pᵢ | N(zⱼ) = 0 → zeros zⱼ | system order = n

Variables: G(s) = transfer function (output units per input unit), s = complex frequency σ + jω (rad/s), b₀…bₘ = numerator coefficients entered highest power first (units of the numerator quantity multiplied by sᵐ⁻ᵏ, i.e. by (rad/s)^(m−k) for the k-th entry), a₀…aₙ = denominator coefficients entered highest power first (units of the denominator quantity multiplied by (rad/s)^(n−k)), m = numerator degree (dimensionless count), n = denominator degree after any exact leading zeros are removed (dimensionless count), pᵢ = i-th pole (rad/s), zⱼ = j-th zero (rad/s). Roots come from an Aberth–Ehrlich iteration (closed form for n ≤ 2) refined against the original polynomial; repeated roots are recognised and listed once with their multiplicity, e.g. −1 (×3); poles, zeros and the DC gain are shown to 6 significant figures. Exact leading zeros are ignored, so '0 1 3 2' is analysed as s² + 3s + 2. Source: Ogata, Modern Control Engineering, 5th ed., Ch. 2 (Mathematical Modeling of Control Systems — transfer function definition)

DC Gain (Zero-Frequency Gain)

G(0) = bₘ / aₙ | if the system is stable, a unit step gives y(∞) = lim(s→0) s·G(s)·(1/s) = G(0)

Variables: G(0) = DC (zero-frequency) gain (output units per input unit), bₘ = constant term (last entry) of the numerator, units = numerator quantity units, aₙ = constant term (last entry) of the denominator, units = denominator quantity units, y(∞) = steady-state step response (output units). The ratio is formed from the two constant terms directly, with no pole-zero cancellation: G = s/(s² + 3s) is reported as ∞ rather than 1/3, and a genuine integrator (aₙ = 0) is likewise reported as ∞. The final-value step result holds only when every pole satisfies Re(pᵢ) < 0; for an unstable system G(0) is still displayed but y(∞) does not exist. Source: Ogata, Modern Control Engineering, 5th ed. (Laplace transform — final value theorem)

Stability Classification from Pole Location

Asymptotically stable ⇔ Re(pᵢ) < 0 for every pole | unstable ⇔ Re(pᵢ) > 0 for at least one pole, or repeated poles on the jω axis | marginally stable ⇔ no pole with Re(pᵢ) > 0 and one or more simple poles with Re(pᵢ) = 0. | This tool treats a pole as on the jω axis when |Re(pᵢ)| ≤ 1×10⁻⁹·|pᵢ|

Variables: pᵢ = i-th system pole (rad/s), Re(pᵢ) = real part of the pole (rad/s; for a complex pair Re(pᵢ) = −ζ·ωn, where ζ = damping ratio (dimensionless) and ωn = undamped natural frequency (rad/s)), Im(pᵢ) = imaginary part (rad/s), count of poles with Re(pᵢ) > 0 = number of right-half-plane poles (dimensionless). Simple poles on the jω axis (s² + 1, a single free integrator s) are reported 'Marginally stable'; repeated ones (s², (s² + 1)²) are reported 'Unstable', because their response grows without bound. Such poles are marked '(Im axis)' and drawn in yellow on the s-plane plot. Source: Nise, Control Systems Engineering, 7th ed., Ch. 6 (Stability)

System Type (Number of Free Integrators)

Type N = number of poles at s = 0 | G(s) = K · Π(s − zⱼ) / [ sᴺ · Π(s − pᵢ) ]

Variables: N = system type = number of poles exactly at s = 0, i.e. trailing zero coefficients of the denominator (dimensionless count), s = complex frequency (rad/s), K = leading gain constant of the factored form, equal to b₀/a₀ (output units per input unit, times (rad/s)^(n−m)), zⱼ = j-th finite zero (rad/s), pᵢ = i-th nonzero pole (rad/s). Factors are written (s − zⱼ) and (s − pᵢ) so that zⱼ and pᵢ are the root locations themselves, matching the poles and zeros listed above. Type governs steady-state error only for the open-loop function of a unity-feedback loop (Type 0 → finite position error, Type 1 → zero position error and finite velocity error, and so on); this tool counts origin poles of whatever G(s) is entered. Source: Nise, Control Systems Engineering, 7th ed., Ch. 7 (Steady-State Errors — system type and static error constants)

When to Use This Calculator

  • •Use the Transfer Function Calculator to check your hand calculations on homework or exam problems — comparing its result with your own working helps identify arithmetic errors before they propagate.
  • •Use it during the early design phase to rapidly iterate on parameters and narrow down feasible configurations before committing time to detailed finite element simulations or full design packages.
  • •Use it when reviewing a colleague's calculation or checking a vendor's data sheet for plausibility — a quick sanity check can prevent costly downstream errors.
  • •Use it to generate reference data for a technical report or presentation without manual computation, ensuring consistent, reproducible numbers throughout the document.
  • •Use it in the field when a quick estimate is needed and a full engineering software package is not available.

About This Calculator

The Transfer Function Calculator is a precision engineering calculation tool designed for students, engineers, and technical professionals. Analyze transfer functions: compute poles, zeros, DC gain, system order, system type, and stability from numerator/denominator coefficients All calculations are performed using established engineering formulas from the relevant scientific literature and standards. Follow the units printed beside each field. Where a unit selector is provided, the selected unit is converted internally. Results are computed in your browser without sending data to a server, which keeps your inputs private. This calculator is intended as a supplementary tool for learning and design exploration; always verify results against authoritative references for safety-critical applications.

The Theory Behind It

A transfer function G(s) = Y(s)/U(s) is the ratio of the Laplace transform of the output to the Laplace transform of the input for a linear time-invariant (LTI) system with zero initial conditions. It compactly represents the input-output relationship as a rational function of the complex frequency variable s = σ + jω. The roots of the numerator are zeros (where G(s) = 0); the roots of the denominator are poles (where G(s) → ∞). Pole locations determine system stability: poles with negative real parts are stable, poles with positive real parts are unstable, poles on the imaginary axis are marginally stable. Pole locations also determine transient response characteristics: real poles give exponential decay, complex conjugate pole pairs give damped oscillations. The DC gain G(0) = b₀/a₀ (ratio of constant terms) is the steady-state gain for a step input. System order is the order of the denominator polynomial. Common transfer function forms: first-order G(s) = K/(τs+1); second-order underdamped G(s) = ω_n²/(s² + 2ζω_n·s + ω_n²), where ω_n is natural frequency and ζ is damping ratio. Transfer functions enable frequency response analysis (Bode plots), stability analysis (Routh-Hurwitz, Nyquist), and controller design (root locus, loop shaping, state-space feedback). They are the foundation of classical control theory and remain essential for SISO (single-input single-output) system analysis.

Real-World Applications

  • •Process control loop analysis: model temperature, pressure, level, and flow control loops with transfer functions to predict stability and tune controllers.
  • •Motor speed control: DC and AC motor dynamics are well-represented by first- or second-order transfer functions for design of speed and position controllers.
  • •Filter design: analog filters (RC, RLC, active) are designed using transfer functions to achieve specific frequency response characteristics.
  • •Servo system design: position and velocity servos in robotics and machine tools use transfer function models for controller tuning and stability verification.
  • •Mechanical system dynamics: spring-mass-damper systems, rotating machinery, and structural vibration problems all have transfer function representations.

Frequently Asked Questions

What is a transfer function?

G(s) = Y(s)/U(s), the ratio of output to input in the Laplace domain for a linear time-invariant system. It compactly represents system dynamics without time-domain simulation. The transfer function is a rational function of s whose numerator zeros and denominator poles determine the response.

What do poles and zeros mean?

Poles are values of s where G(s) → ∞, determined by roots of the denominator polynomial. Poles control stability and transient response — stable systems have all poles with negative real parts. Zeros are values where G(s) = 0, determined by roots of the numerator. Zeros affect transient response shape but do not affect stability.

How do I find the DC gain?

DC gain K = G(0), obtained by substituting s = 0 into the transfer function. For G(s) = (2s+10)/(s²+5s+6), DC gain = 10/6 = 1.67. This is the steady-state output for a unit step input. If the input is a step of magnitude A, the steady-state output is K·A.

What makes a system stable?

All poles must have negative real parts (lie in the left half of the complex plane). If any pole has a positive real part, the system is unstable — a small disturbance grows without bound. Poles on the imaginary axis give marginally stable oscillations that neither grow nor decay. Routh-Hurwitz criterion checks stability without explicit pole calculation.

What's the difference between SISO and MIMO?

SISO (single-input single-output) systems have one input and one output and are represented by a single transfer function. MIMO (multi-input multi-output) systems have multiple inputs and outputs and require a matrix of transfer functions (transfer matrix) or a state-space representation. Most classical control theory is developed for SISO; modern control and multivariable systems use MIMO state-space methods.

Related Calculators

References & Further Reading

Add the live Transfer Function Calculator to your site. Free to embed, with a link back to MegaCalc.