summaryrefslogtreecommitdiff
path: root/929/CH8/EX8.13/Example8_13.sce
blob: f460b6bfbbf04b6a7128e4b557b7c80b2dbf69e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
//Example 8.13

clear;

clc;

a0=10^5;

f1=1*10^3;

f2=100*10^3;

f3=5*10^6;

A0=20;

R1=1.05*10^3;

R2=20*10^3;

b0=1/(1+(R2/R1));

a0b0=a0*b0;

f=700*10^3;

T=a0b0/[(1+((%i*f)/f1))*(1+((%i*f)/f2))*(1+((%i*f)/f3))];

Tang=-(180-(180/%pi)*atan(imag(T)/real(T)));

PM=180+Tang;

printf("(a) PM=%.1f degrees indicating a circuit in bad need of compensation.",PM);

amod=sqrt(20);

aang=-192.3;

fx=1.46*10^6;

Cf=sqrt(1+(R2/R1))/(2*%pi*R2*fx);

PM1=180+aang-(90-(2*(180/%pi)*atan(sqrt(1+(R2/R1)))));

printf("\n\n(b) PM after compensation=%.1f degrees",PM1);

f3dB=(1/(2*%pi*R2*Cf))+1000;

printf("\n\n(c) f-3dB=%.f kHz",f3dB*10^(-3));