# Path: skrf/constants.py
# INF = 1e99
# ALMOST_ZERO = 1e-12
# ZERO = 1e-4
# ONE = 1.0 + 1/1e14
# LOG_OF_NEG = -100
# K_BOLTZMANN = 1.38064852e-23
# T0 = 290.
# S_DEFINITIONS = ['power', 'pseudo', 'traveling']
# S_DEF_DEFAULT = 'power'
# def to_meters(d: NumberLike, unit: str = 'm', v_g: float = c) -> NumberLike:


from . frequency import Frequency
from . media import RectangularWaveguide, Freespace, DefinedGammaZ0
from .constants import mil
f_wm1295 = f_wr5p1
f_wm1092 = f_wr4p3
f_wm864  = f_wr3p4
f_wm710  = f_wr2p8
f_wm570  = f_wr2p2
f_wm470  = f_wr1p9
f_wm380  = f_wr1p5
f_wm310  = f_wr1p2
f_wm250  = f_wr1
f_wm200  = f_wr0p8
f_wm164  = f_wr0p65
f_wm130  = f_wr0p51
f_wm106  = Frequency(1700,2600,1001, 'ghz')
f_wm86   = Frequency(2200,3300,1001, 'ghz')


wr51  = RectangularWaveguide(f_wr51.copy(),a=510*mil,b=255*mil,z0=50)
wr42  = RectangularWaveguide(f_wr42.copy(),a=420*mil,b=170*mil,z0=50)
wr34  = RectangularWaveguide(f_wr34.copy(),a=340*mil,b=170*mil,z0=50)
wr28  = RectangularWaveguide(f_wr28.copy(),a=280*mil,b=140*mil,z0=50)
wr22p4  = RectangularWaveguide(f_wr22p4.copy(),a=224*mil,b=112*mil,z0=50)
wr18p8  = RectangularWaveguide(f_wr18p8.copy(),a=188*mil,b=94*mil,z0=50)
wr14p8  = RectangularWaveguide(f_wr14p8.copy(),a=148*mil,b=74*mil,z0=50)
wr12p2  = RectangularWaveguide(f_wr12p2.copy(),a=122*mil,b=61*mil,z0=50)
wr10  = RectangularWaveguide(f_wr10.copy(),a=100*mil,b=50*mil,z0=50)
wr8  = RectangularWaveguide(f_wr8.copy(),a=80*mil,b=40*mil,z0=50)
wr6p5  = RectangularWaveguide(f_wr6p5.copy(),a=65*mil,b=32.5*mil,z0=50)
wr5p1  = RectangularWaveguide(f_wr5p1.copy(),a=51*mil,b=25.5*mil,z0=50)
wr4p3  = RectangularWaveguide(f_wr4p3.copy(),a=43*mil,b=21.5*mil,z0=50)
wr3p4  = RectangularWaveguide(f_wr3p4.copy(),a=34*mil,b=17*mil,z0=50)

# Path: skrf/constants.py
# INF = 1e99
# ALMOST_ZERO = 1e-12
# ZERO = 1e-4
# ONE = 1.0 + 1/1e14
# LOG_OF_NEG = -100
# K_BOLTZMANN = 1.38064852e-23
# T0 = 290.
# S_DEFINITIONS = ['power', 'pseudo', 'traveling']
# S_DEF_DEFAULT = 'power'
# def to_meters(d: NumberLike, unit: str = 'm', v_g: float = c) -> NumberLike:


# Path: skrf/instances.py
from . frequency import Frequency
from . media import RectangularWaveguide, Freespace, DefinedGammaZ0
from .constants import mil

f_wm1295 = f_wr5p1
f_wm1092 = f_wr4p3
f_wm864  = f_wr3p4
f_wm710  = f_wr2p8
f_wm570  = f_wr2p2
f_wm470  = f_wr1p9
f_wm380  = f_wr1p5
f_wm310  = f_wr1p2
f_wm250  = f_wr1
f_wm200  = f_wr0p8
f_wm164  = f_wr0p65
f_wm130  = f_wr0p51
f_wm106  = Frequency(1700,2600,1001, 'ghz')
f_wm86   = Frequency(2200,3300,1001, 'ghz')


wr51  = RectangularWaveguide(f_wr51.copy(),a=510*mil,b=255*mil,z0=50)
wr42  = RectangularWaveguide(f_wr42.copy(),a=420*mil,b=170*mil,z0=50)
wr34  = RectangularWaveguide(f_wr34.copy(),a=340*mil,b=170*mil,z0=50)
wr28  = RectangularWaveguide(f_wr28.copy(),a=280*mil,b=140*mil,z0=50)
wr22p4  = RectangularWaveguide(f_wr22p4.copy(),a=224*mil,b=112*mil,z0=50)
wr18p8  = RectangularWaveguide(f_wr18p8.copy(),a=188*mil,b=94*mil,z0=50)
wr14p8  = RectangularWaveguide(f_wr14p8.copy(),a=148*mil,b=74*mil,z0=50)
wr12p2  = RectangularWaveguide(f_wr12p2.copy(),a=122*mil,b=61*mil,z0=50)
wr10  = RectangularWaveguide(f_wr10.copy(),a=100*mil,b=50*mil,z0=50)
wr8  = RectangularWaveguide(f_wr8.copy(),a=80*mil,b=40*mil,z0=50)
wr6p5  = RectangularWaveguide(f_wr6p5.copy(),a=65*mil,b=32.5*mil,z0=50)
wr5p1  = RectangularWaveguide(f_wr5p1.copy(),a=51*mil,b=25.5*mil,z0=50)
wr4p3  = RectangularWaveguide(f_wr4p3.copy(),a=43*mil,b=21.5*mil,z0=50)
wr3p4  = RectangularWaveguide(f_wr3p4.copy(),a=34*mil,b=17*mil,z0=50)

wr2p8 = RectangularWaveguide(f_wr2p8.copy(),a=28*mil,b=14*mil,z0=50)