You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
✨ feat: adicionar diagramas de fluxo de sinal com componente React customizado
- Criar componente SignalFlowDiagram para processar sinais de streams
- Implementar blocos de processamento de sinais (integrador ∫, multiplicador ×, somador +)
- Implementar componentes eletrônicos (resistor, capacitor, indutor)
- Adicionar 4 diagramas para seções 3.5.3 e 3.5.4:
* rc-integrator: Integrador RC com loop de realimentação
* feedback-solver: Sistema para resolver dy/dt = f(y)
* differential-system: Sistema acoplado de equações diferenciais
* rlc-circuit: Circuito RLC em série
- Adicionar suporte a dark mode e design responsivo
- Figuras 3.53, 3.54, 3.78, 3.80
@@ -151,6 +152,10 @@ function integral(integrand, initial_value, dt) {
151
152
}
152
153
```
153
154
155
+
<SignalFlowDiagramtype="rc-integrator" />
156
+
157
+
**Figura 3.53:** Diagrama de fluxo de sinal para um integrador RC. O sinal de entrada `v` é multiplicado por `1/R`, integrado ao longo do tempo (∫dt), e então o resultado é multiplicado por `1/C` para produzir a corrente `i`. O loop de realimentação mostra como a saída do integrador influencia o estado do sistema.
158
+
154
159
A figura mostra um diagrama de processamento de sinal para o integrador. O diagrama mostra claramente como as operações de stream são combinadas para processar sinais. Este ponto de vista nos permite trabalhar com sistemas altamente complexos de uma maneira modular.
@@ -18,6 +19,10 @@ A capacidade do interpretador de lidar com tal definição implícita depende do
18
19
19
20
Infelizmente, modelos de stream de sistemas com loops podem exigir usos de atraso além do padrão de programação de stream visto até agora. Por exemplo, a figura mostra um sistema de processamento de sinais para resolver a equação diferencial $dy/dt = f(y)$ onde $f$ é uma função dada. A figura mostra um componente de mapeamento, que aplica $f$ ao seu sinal de entrada, ligado em um loop de realimentação a um integrador de maneira muito similar à dos circuitos de computador analógico que são realmente usados para resolver tais equações.
20
21
22
+
<SignalFlowDiagramtype="feedback-solver" />
23
+
24
+
**Figura 3.54:** Sistema de processamento de sinais com loop de realimentação para resolver $dy/dt = f(y)$. O sinal de entrada `dy/dt` é integrado para produzir `y`, que passa por uma função de ganho `f` (representando a função diferencial), e retorna ao somador através de um loop de realimentação tracejado.
25
+
21
26
Assumindo que nos é dado um valor inicial $y_0$ para $y$, poderíamos tentar modelar este sistema usando a função
22
27
23
28
```javascript
@@ -90,7 +95,13 @@ Considere o problema de projetar um sistema de processamento de sinais para estu
90
95
91
96
$$\frac{d^2y}{dt^2} - a\frac{dy}{dt} - by = 0$$
92
97
93
-
O stream de saída, modelando $y$, é gerado por uma rede que contém um loop. Isso ocorre porque o valor de $d^2y/dt^2$ depende dos valores de $y$ e $dy/dt$ e ambos são determinados integrando $d^2y/dt^2$. O diagrama que gostaríamos de codificar é mostrado na figura. Escreva uma função `solve_2nd` que recebe como argumentos as constantes $a$, $b$ e $dt$ e os valores iniciais $y_0$ e $dy_0$ para $y$ e $dy/dt$ e gera o stream de valores sucessivos de $y$.
98
+
O stream de saída, modelando $y$, é gerado por uma rede que contém um loop. Isso ocorre porque o valor de $d^2y/dt^2$ depende dos valores de $y$ e $dy/dt$ e ambos são determinados integrando $d^2y/dt^2$. O diagrama que gostaríamos de codificar é mostrado na figura.
99
+
100
+
<SignalFlowDiagramtype="differential-system" />
101
+
102
+
**Figura 3.78:** Sistema de processamento de sinais para resolver sistemas de equações diferenciais acopladas. Dois integradores processam `dy₁` e `dy₂` para produzir `y₁` e `y₂`, com multiplicadores de ganho `a` e `b`. Os loops de realimentação cruzados (tracejados) mostram como cada equação depende da solução da outra.
103
+
104
+
Escreva uma função `solve_2nd` que recebe como argumentos as constantes $a$, $b$ e $dt$ e os valores iniciais $y_0$ e $dy_0$ para $y$ e $dy/dt$ e gera o stream de valores sucessivos de $y$.
94
105
95
106
## Exercício 3.79
96
107
@@ -122,6 +133,10 @@ $$\begin{align*}
122
133
123
134
O diagrama de fluxo de sinal representando este sistema de equações diferenciais é mostrado na figura.
124
135
136
+
<SignalFlowDiagramtype="rlc-circuit" />
137
+
138
+
**Figura 3.80:** Circuito RLC em série mostrando resistor (R), indutor (L) e capacitor (C) conectados em série com uma fonte de tensão V(t). O circuito demonstra a relação entre voltagem e corrente nos três componentes passivos fundamentais da eletrônica.
139
+
125
140
Escreva uma função `RLC` que recebe como argumentos os parâmetros $R$, $L$ e $C$ do circuito e o incremento de tempo $dt$. De maneira similar à função `RC` do exercício 3.73, `RLC` deve produzir uma função que recebe os valores iniciais das variáveis de estado, $v_{C_0}$ e $i_{L_0}$, e produz um par (usando `pair`) dos streams de estados $v_C$ e $i_L$. Usando `RLC`, gere o par de streams que modela o comportamento de um circuito RLC em série com $R = 1$ ohm, $C = 0.2$ farad, $L = 1$ henry, $dt = 0.1$ segundo, e valores iniciais $i_{L_0} = 0$ amperes e $v_{C_0} = 10$ volts.
0 commit comments