calc.py 682 B

12345678910111213141516171819202122232425
  1. import numpy as np
  2. def prepare_data(freq, re, im):
  3. """the function takes raw data and gives vectors of eq (8)"""
  4. fl = freq[re.index(max(re))]
  5. # fl is the frequency of loaded resonance
  6. f0 = fl
  7. # f0 is the frequency of unloaded resonance
  8. e1, e2, e3, gamma, p = [], [], [], [], []
  9. for i in range(0, len(freq)):
  10. # filling vectors
  11. t = 2*(freq[i] - fl)/f0
  12. g = re[i] + im[i] * j
  13. e1.append(t)
  14. e2.append(1)
  15. e3.append(-t*g)
  16. gamma.append(g)
  17. p.append(1/(1 + t**2*(1 + re[i]**2 + im[i]**2)))
  18. data = np.array([e1, e2, e3, gamma, p], dtype=complex)
  19. return data
  20. def scalar_product ():
  21. pass