LincolnMA / vna_communication

0 stars 1 forks source link

Melhorar o método extract #4

Open LincolnMA opened 4 months ago

LincolnMA commented 4 months ago

Levar parte dos cálculos que estão sendo feitos em testlib.py para dentro do módulo.

LincolnMA commented 4 months ago

Gabriel, a ideia de usar uma função extract apenas para obter os dados de amplitude e frequência é para facilitar o uso da biblioteca. Não consegui tempo de colocar indicação no código sobre isso, mas a ideia é que possamos usar outros parâmetros além do S11 e S21 no futuro, sem que seja necessário criar outra função de extração para quem for apenas usar a biblioteca. Na figura em anexo tem vários gráficos gerados pelo nanovnasaver, que discutimos no nosso último encontro.. vna

El-Tomaz commented 4 months ago

Entendi professor, vou corrijir!!! O que acha de criar um dicionário com os parâmetros que vamos puxar, por exemplo:

parameters = {
 S11:  (23,30j),
 S21: (100, 5j),
 ABS_S11: xxx,
ABS_S21: xxx,
PHASE_S11: yyy,
PHASE_S21: YYY,
IMPEDANCE
...
}

A partír disso poderia ou retornar o dicionário todo, ou colocar pra a função retornar os parâmetros pedidos (podia usar até parâmetros variáveis), ai ficaria tipo:

impedance, abs_S11, S11 = vna.extract("Z","ABS_S11","S11")

ou então

parameters = vna.extract()
S11 = parameters["S11"]
LincolnMA commented 4 months ago

Acho que não será necessário. Seria melhor usar as strings para chavear, dentro do método extract, qual o método de processamento de dados brutos será chamado/usado. S11, S21, PHASE, SMITH, e outros que poderemos discutir na semana que vem. Acho que dessa forma vai ficar mais fácil adicionar outras futuramente.

El-Tomaz commented 4 months ago

Tudo certo. Então só pra ver se eu entendi seria algo na linha de mandar um: vna.extract("PHASE") e aí só nesse momento que a função iria calcular a fase com _S11 e as outras variáveis e retornar o valor.

LincolnMA commented 4 months ago

Isso mesmo.