Bird
Raised Fist0
MATLABdata~5 mins

Numerical differentiation in MATLAB - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is numerical differentiation?
Numerical differentiation is a way to find the slope or rate of change of a function using numbers instead of formulas. It estimates the derivative by using values of the function at certain points.
Click to reveal answer
beginner
What is the forward difference formula for numerical differentiation?
The forward difference formula estimates the derivative at a point x by using the function values at x and a point slightly ahead, x + h: f'(x) ≈ (f(x + h) - f(x)) / h, where h is a small step size.
Click to reveal answer
intermediate
Why do we choose a small step size h in numerical differentiation?
A small step size h helps get a better estimate of the derivative because it measures the change over a tiny interval. But if h is too small, rounding errors can happen, so we balance between accuracy and errors.
Click to reveal answer
intermediate
What is the central difference formula and why is it better than forward difference?
The central difference formula uses points before and after x: f'(x) ≈ (f(x + h) - f(x - h)) / (2h). It is usually more accurate than forward difference because it balances the slope from both sides.
Click to reveal answer
beginner
Show a simple MATLAB code snippet to compute the numerical derivative of sin(x) at x = pi/4 using central difference.
h = 1e-5; x = pi/4; derivative = (sin(x + h) - sin(x - h)) / (2 * h); disp(derivative);
Click to reveal answer
Which formula uses points on both sides of x to estimate the derivative?
ACentral difference
BForward difference
CBackward difference
DEuler's method
In numerical differentiation, what happens if the step size h is too large?
ANo effect on accuracy
BThe estimate becomes more accurate
CThe estimate becomes less accurate
DThe function value becomes zero
What MATLAB command displays the value of a variable on the screen?
Aprint()
Becho()
Cshow()
Ddisp()
Which of these is NOT a common numerical differentiation method?
AForward difference
BIntegration by parts
CBackward difference
DCentral difference
Why might very small h cause problems in numerical differentiation?
ARounding errors increase
BFunction values become negative
CDerivative becomes zero
DStep size is ignored
Explain how to estimate the derivative of a function at a point using numerical differentiation.
Think about how you find slope using points close to the target point.
You got /4 concepts.
    Describe the difference between forward difference and central difference methods.
    Consider which points around x each method uses.
    You got /4 concepts.

      Practice

      (1/5)
      1. Which method in numerical differentiation uses points on both sides of the target point to estimate the derivative?
      easy
      A. Forward difference method
      B. Euler's method
      C. Backward difference method
      D. Central difference method

      Solution

      1. Step 1: Understand difference methods

        Forward difference uses the point and the next point; backward difference uses the point and the previous point.
      2. Step 2: Identify method using both sides

        Central difference uses points before and after the target point for better accuracy.
      3. Final Answer:

        Central difference method -> Option D
      4. Quick Check:

        Both sides points = Central difference [OK]
      Hint: Central difference uses points on both sides [OK]
      Common Mistakes:
      • Confusing forward with central difference
      • Thinking Euler's method is for differentiation
      • Assuming backward difference uses both sides
      2. Which of the following MATLAB code snippets correctly computes the forward difference approximation of the derivative of function f at point x with step size h?
      easy
      A. df = (f(x+h) - f(x)) / h;
      B. df = (f(x) - f(x-h)) / h;
      C. df = (f(x+h) - f(x-h)) / (2*h);
      D. df = (f(x) + f(x+h)) / h;

      Solution

      1. Step 1: Recall forward difference formula

        Forward difference formula is (f(x+h) - f(x)) / h.
      2. Step 2: Match code to formula

        df = (f(x+h) - f(x)) / h; matches this formula exactly.
      3. Final Answer:

        df = (f(x+h) - f(x)) / h; -> Option A
      4. Quick Check:

        Forward difference = (f(x+h)-f(x))/h [OK]
      Hint: Forward difference subtracts current from next point [OK]
      Common Mistakes:
      • Using backward difference formula instead
      • Dividing by 2*h instead of h
      • Adding function values instead of subtracting
      3. Consider the MATLAB code:
      f = @(x) x^2;
      x = 2;
      h = 0.01;
      df = (f(x+h) - f(x-h)) / (2*h);

      What is the value of df approximately?
      medium
      A. 5.00
      B. 2.00
      C. 4.00
      D. 3.99

      Solution

      1. Step 1: Calculate f(x+h) and f(x-h)

        f(2+0.01) = (2.01)^2 = 4.0401; f(2-0.01) = (1.99)^2 = 3.9601.
      2. Step 2: Compute central difference

        df = (4.0401 - 3.9601) / (2*0.01) = 0.08 / 0.02 = 4.00.
      3. Step 3: MATLAB precision

        In MATLAB, df is computed and displayed as 4.0000.
      4. Final Answer:

        4.00 -> Option C
      5. Quick Check:

        Central difference ≈ 4 [OK]
      Hint: Central difference approximates slope near x [OK]
      Common Mistakes:
      • Using forward difference formula instead
      • Forgetting to divide by 2*h
      • Incorrect function evaluation
      4. The following MATLAB code attempts to compute the derivative using forward difference but gives incorrect results:
      f = @(x) sin(x);
      x = pi/4;
      h = 0.001;
      df = (f(x) - f(x+h)) / h;

      What is the error in this code?
      medium
      A. Step size h is too large
      B. The subtraction order is reversed; should be f(x+h) - f(x)
      C. Function handle syntax is incorrect
      D. Variable x should be a vector

      Solution

      1. Step 1: Recall forward difference formula

        Forward difference is (f(x+h) - f(x)) / h, not (f(x) - f(x+h)) / h.
      2. Step 2: Identify error in code

        The code subtracts f(x+h) from f(x), reversing the order and causing incorrect sign.
      3. Final Answer:

        The subtraction order is reversed; should be f(x+h) - f(x) -> Option B
      4. Quick Check:

        Forward difference = (f(x+h)-f(x))/h [OK]
      Hint: Forward difference subtracts future minus current value [OK]
      Common Mistakes:
      • Reversing subtraction order
      • Using too large step size without reason
      • Misunderstanding function handle syntax
      5. You want to estimate the derivative of f(x) = exp(-x^2) at x = 1 using central difference in MATLAB. Which code snippet correctly implements this with step size h = 0.0001?
      hard
      A. f = @(x) exp(-x^2); x = 1; h = 0.0001; df = (f(x+h) - f(x-h)) / (2*h);
      B. f = @(x) exp(-x^2); x = 1; h = 0.0001; df = (f(x) - f(x-h)) / h;
      C. f = @(x) exp(-x^2); x = 1; h = 0.0001; df = (f(x+h) + f(x-h)) / (2*h);
      D. f = @(x) exp(-x^2); x = 1; h = 0.0001; df = (f(x+h) - f(x)) / h;

      Solution

      1. Step 1: Recall central difference formula

        Central difference formula is (f(x+h) - f(x-h)) / (2*h) for better accuracy.
      2. Step 2: Match code to formula

        f = @(x) exp(-x^2); x = 1; h = 0.0001; df = (f(x+h) - f(x-h)) / (2*h); matches the central difference formula exactly with correct function and step size.
      3. Final Answer:

        f = @(x) exp(-x^2); x = 1; h = 0.0001; df = (f(x+h) - f(x-h)) / (2*h); -> Option A
      4. Quick Check:

        Central difference = (f(x+h)-f(x-h))/(2*h) [OK]
      Hint: Central difference uses symmetric points around x [OK]
      Common Mistakes:
      • Using forward or backward difference instead
      • Adding function values instead of subtracting
      • Dividing by h instead of 2*h
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard