MATLAB: How to write a function with multiple out puts and inputs with varying times

matlab function

For my question I have to write a function that will calculate the outputs of Vr and Vc in a series circuit. Im not even to sure on the equations to calculate this but i believe they are Vr = V*exp(-t/R*C) Vc = V*(1-exp(-t/R*C))
I have written the function as:
function [Vr, Vc] = RC(V, R, C, t)
Vr = V*exp(-t/R*C);
Vc = V*(1-exp(-t/R*C));
end
I then created a new script 'testRC.m' and wrote:
clear;
clc;
V = 9;
R = 4.7;
C = 220;
t = 0:5;
[Vr, Vc] = RC(V, R, C, t);
When I run the function I do not get the expected answer. Any help on this would be extremely appreciated as I am very new to matlab and need help, thanks in advance

Best Answer

The problem is in the equation. The constant for the charge of the capacitor is R*C. Therefore, instead of writing
Vc = V*(1-exp(-t/R*C));
you should write
Vc = V*(1-exp(-t/ (R*C) ));
Notice the brackets around R*C.
Same thing in the other equations.
Hope this helps.
Related Question