Obvodové rovnice a počáteční podmínky

rovnice={-(Subscript[C, 1]) (Subscript[u, 1])'[t]==(((Subscript[u, 2])[t])/(Subscript[R, 2]))+(Subscript[C, 2]) (Subscript[u, 2])'[t],(Subscript[u, 1])[t]==(Subscript[u, 2])[t]-(Subscript[R, 1]) (Subscript[C, 1])(Subscript[u, 1])'[t],(Subscript[u, 1])[0]==(Subscript[U, c]),(Subscript[u, 2])[0]==0};

Řešení obvodových rovnic

reseni=DSolve[rovnice,{(Subscript[u, 1])[t],(Subscript[u, 2])[t]},t];

u=(Subscript[u, 2])[t]/.reseni;

Vliv parametrů RG na průběh výstupního napětí

ti=Partition[Riffle[Range[0,2*(10^(-4)),5*(10^(-5))],Range[0,2*(10^(-4)),5*(10^(-5))]*1000],2]//N;

tabplot=Flatten[{{Table[u,{(Subscript[R, 1]),400,2100,400}]/.{(Subscript[U, c])->1,(Subscript[R, 2])->3000,(Subscript[C, 1])->15*(10^(-9)),(Subscript[C, 2])->10*(10^(-9))}},
{Table[u,{(Subscript[R, 2]),3000,6000,1000}]/.{(Subscript[U, c])->1,(Subscript[R, 1])->800,(Subscript[C, 1])->15*(10^(-9)),(Subscript[C, 2])->10*(10^(-9))}},
{Table[u,{(Subscript[C, 1]),10*(10^(-9)),30*(10^(-9)),5*(10^(-9))}]/.{(Subscript[U, c])->1,(Subscript[R, 1])->800,(Subscript[R, 2])->3000,(Subscript[C, 2])->10*(10^(-9))}}
,{Table[u,{(Subscript[C, 2]),1*(10^(-9)),10*(10^(-9)),3*(10^(-9))}]/.{(Subscript[U, c])->1,(Subscript[R, 1])->800,(Subscript[R, 2])->3000,(Subscript[C, 1])->10*(10^(-9))}}},1];

g=GridGraph Plot[Evaluate@tabplot[[#]],{t,0,0.0002},PlotStyle->Thick,Ticks->{ti,Automatic},TicksStyle->Thick,AxesLabel->{"t (ms)","(Subscript[u, 2]) (V)"},LabelStyle->Directive[12,Bold],AxesStyle->Thick]&/@Range[Length[tabplot]]

Účinnost RG

rovniceparam=k (Subscript[U, c])(Exp[(Subscript[α, 1]) t]-Exp[(Subscript[α, 2]) t]);

tmax=Solve[D[rovniceparam,t]==0,t,Reals][[1]]

ucinnost=rovniceparam/(Subscript[U, c])/.tmax

Návrh RG - Angelini

ηu=((α (Subscript[U, c]))/(Sqrt[(α^2)-1]))((E^((-(α-(Sqrt[(α^2)-1]))t)/θ))-(E^((-(α+(Sqrt[(α^2)-1]))t)/θ)));

obr1=Plot[Evaluate[ηu//.{α->#,(Subscript[U, c])->1,t/θ->th}&/@Range[2,12]],{th,0,7},PlotStyle->Thick,Frame->True,GridLines->Automatic,FrameLabel->{"(t/θ)","ηu"},LabelStyle->Directive[24],FrameStyle->Thick,ImageSize->600,PlotLegends->Placed["α="<>ToString[#]&/@Range[2,12],After]]

Export[NotebookDirectory[]<>"obr1.png",obr1, ImageResolution->300]

Stanovení doby čela (Subscript[T, 1]) a parametru ηUm z časových průběhů

(Subscript[T, 1])=Normal@(th/.Solve[D[ηu/.{t/θ->th},th]==0&&α>0,th,Reals]);

ηUm=First[ηu/.{t/θ->(Subscript[T, 1])}]//FullSimplify

Stanovení doby půltýlu (Subscript[T, 2]) a parametru (Subscript[T, 2])/(Subscript[T, 1]) z časových průběhů

(Subscript[T, 2])=th/.NSolve[ηu==ηUm/2//.{α->#,t/θ->th},th,Reals][[2]]&/@Range[2,12];
(Subscript[T, 11])=First[N[(Subscript[T, 1])/.{α->#}]]&/@Range[2,12];

podilT2T1=Interpolation[Partition[Riffle[Range[2,12],(Subscript[T, 2])/(Subscript[T, 11])],2]];

T2naalfa=Interpolation[Partition[Riffle[Range[2,12],(Subscript[T, 2])],2]];

Graf závislosti parametrů (Subscript[ηU, m]), (Subscript[T, 2])/(Subscript[T, 1]) a (Subscript[T, 2])/θ  na α pro návrh RG

g1=Plot[ηUm/(Subscript[U, c]),{α,1,12},PlotStyle->Thick,Frame->{True,True,True,False},FrameStyle->{{Thick,Black},{Thick,Blue},{Thick,Black},{Thick,Black}},FrameLabel->{"α","(Subscript[ηU, m])"},GridLines->Automatic,LabelStyle->Directive[24],PlotRange->{{0,12},{0,1}},ImagePadding->70,ImageSize->600];

g2=Plot[podilT2T1[α],{α,2,12},PlotStyle->{Thick,Red},Frame->{False,False,False,True},FrameStyle->{Automatic,Automatic,Automatic,{Thick,Red}},FrameTicks->{None,None,None,All},FrameLabel->{{"","(Subscript[T, 2])/(Subscript[T, 1])"},{"",""}},FrameStyle->Thick,LabelStyle->Directive[24],PlotRange->{{0,12},{0,100}},ImagePadding->70,ImageSize->600];

g3=Plot[T2naalfa[α],{α,2,12},PlotStyle->{Thick,Black},Axes->False,Frame->{False,False,False,False},FrameStyle->{Automatic,Automatic,Automatic,Black},PlotRange->{{0,12},{0,20}},ImagePadding->70, FrameTicks->{None,None,None,None},AxesOrigin->{-12,0},ImageSize->600];

g4=Plot[{α},{α,2,12},PlotStyle->White,Frame->{False,True,False,False},FrameLabel->{"","(Subscript[T, 2])/θ"},FrameStyle->Thick,LabelStyle->Directive[24],PlotRange->{{0,12},{0,20}},ImagePadding->70,ImageSize->600];

overg=Overlay[{Overlay[{g1,g2,g3},ImageMargins->{{70,10},{0,0}}],g4}]

Export[NotebookDirectory[]<>"obr2.png",overg, ImageResolution->300]

Návrh RG - Numerický výpočet

μs=(10^(-6));nF=(10^(-9));

Definování znamých parametrů RG (atmosférický impulz)

zname={(Subscript[T, 1])->1.2 μs,(Subscript[T, 2])->50 μs,(Subscript[C, 1])->40 nF,(Subscript[C, 2])->5 nF,(Subscript[U, c])->1};

Systém rovnic a nalezení neznámých parametrů

rovnice1=First[t/.Solve[D[u,t]==0&&(Subscript[C, 1])>0&&(Subscript[C, 2])>0&&(Subscript[R, 1])>0&&(Subscript[R, 2])>0,t,Reals]]==(Subscript[T, 1]);

rovnice2=First[Evaluate[u/.{t->(Subscript[T, 2])}]]==First[u/.Solve[D[u,t]==0&&(Subscript[C, 1])>0&&(Subscript[C, 2])>0&&(Subscript[R, 1])>0&&(Subscript[R, 2])>0,t,Reals][[1]]]/2;

rovnice={rovnice1[[1]],rovnice2[[1]]}/.zname;

vypparam=FindRoot[rovnice,{{(Subscript[R, 1]),100},{(Subscript[R, 2]),1000}}]

Výsledný průběh výstupního napětí

Plot[u/.zname/.vypparam,{t,0,100μs},Ticks->{N[Partition[Riffle[Range[0,100 μs,20μs],Range[0,100,20]],2]],Automatic},AxesLabel->{"μs","u"},LabelStyle->Directive[12,Bold],PlotStyle->Thick,AxesStyle->Thick]