Thank you Oscar,
onestly I don't get the same resoult of yours, because I get 3 result  , 
not just one like you:
one solution for for τ/R ​=−i/(100πRi) , one solution for τ/R ​=i/(100πRi) 
and another is otherwise
Anyway, the otherwise seems to be possible to be simplified and become like 
your solution, so thank you very much for the help.
It should be nice to avoid the 3 solution and keep just the otherwise one 
and get it simplified, but I just want to thank you for your help.


Il giorno martedì 28 giugno 2022 alle 12:05:54 UTC+2 Oscar ha scritto:

> On Tuesday, 28 June 2022 at 08:03:05 UTC+1 federic...@gmail.com wrote:
>
>>
>> Hi Aaron, thank you for the reply.
>>
>> The code I have in my notebook (I'm using google colab) is this now (at 
>> the end of the post), but using w is not working anymore.
>> Anyway, if I move back to use the line w = 2 * sp.pi * 50 I still get a 
>> unreadble result.
>> The result should be something like  the nice wikipedia result I found 
>> there:
>>
>> https://it.wikipedia.org/wiki/Circuito_RC#Risposta_in_frequenza_del_circuito_RC
>> Is there a way to get the a readble result? (something like the following 
>> latex)
>> {\displaystyle v_{C}(t)=v_{C}(0)e^{-{\frac {t}{\tau }}}+K\cos(\omega 
>> t+\theta )}
>> The wikipedia result has tau=R*C, theta is an angle displacement,  and K 
>> don't know what is.
>>
>
> The result that I see is similar:
>
> In [13]: diffeq
> Out[13]: 
> d           vo⋅cos(100⋅π⋅t)   vc(t)
> ──(vc(t)) - ─────────────── + ─────
> dt                C⋅R          C⋅R
>
> In [12]: res
> Out[12]: 
>                                                                   -t       
>                                                                   ───      
>                                                                   C⋅R      
>         100⋅π⋅C⋅R⋅vo⋅sin(100⋅π⋅t)    vo⋅cos(100⋅π⋅t)          vo⋅ℯ         
> vc(t) = ───────────────────────── + ────────────────── - ──────────────────
>                    2  2  2                 2  2  2              2  2  2    
>             10000⋅π ⋅C ⋅R  + 1      10000⋅π ⋅C ⋅R  + 1   10000⋅π ⋅C ⋅R  + 1
>
> The main difference is that the constant K is given explicitly here in 
> terms of C, R and v0. If you want to substitute for tau and K you can do 
> something like:
>
> In [19]: tau, K = symbols('tau, K')
>
> In [20]: res.subs(C, tau/R).subs(vo, K*(1 + 10000*pi**2*tau**2))
> Out[20]: 
>                                                      -t 
>                                                      ───
>                                                       τ 
> vc(t) = 100⋅π⋅K⋅τ⋅sin(100⋅π⋅t) + K⋅cos(100⋅π⋅t) - K⋅ℯ  
>
> You can see now something more similar. The difference is that you have 
> sin and cos rather than cos with a phase shift theta but those are 
> equivalent under trigonometric identities. Another difference is the 
> constant K on the exponential term but the wikipedia solution is incorrect 
> there:
>  
>
>> In the italian wikipedia there's this piece (I try to translate) that I 
>> would like to reproduce in a notebook:
>>
>> Let's see how does the RC circuit works with a sine wave. We can use 
>> voltage Kirchhoff law:
>> {\displaystyle V_{0}\cos(\omega t)=R\cdot i(t)+v_{C}(t)} 
>>
>> we can rewrite the equation like:
>> {\displaystyle V_{0}\cos(\omega t)=RC{\frac {dv_{C}(t)}{dt}}+v_{C}(t)} 
>>
>> and then solve the differential equation with constant coefficients with 
>> a known therm:
>> {\displaystyle {\frac {dv_{C}(t)}{dt}}+{\frac {1}{\tau }}v_{C}(t)={\frac 
>> {V_{0}\cos(\omega t)}{\tau }}} 
>>
>> where \tau =RC is still the time constant of the circuit. 
>> The general solution come from the sum of the associated homogeneous 
>> solution:
>>
>>
>> v_{C}(t)=v_{C}(0)e^{-{\frac {t}{\tau }}}
>>
> It is incorrect to use v_C(0) here. There should be a constant there but 
> it is not generally equal to the initial condition.
>
>> and a particolar solution:
>> {\displaystyle K\cos(\omega t+\theta )\ } 
>>
>> where K is a constant. So:
>>
>>
>> {\displaystyle v_{C}(t)=v_{C}(0)e^{-{\frac {t}{\tau }}}+K\cos(\omega 
>> t+\theta )}
>>
> You can see that this is incorrect if you just substitute t=0.
>  
> --
> Oscar
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/a7fd850d-f680-457b-ac03-daa2ffdbf9cfn%40googlegroups.com.

Reply via email to