class CalcSat::Communication

Public Class Methods

new() click to toggle source

通信 p_sat: 衛星からの電波の電力 l_tr: 衛星からの電波が地上に届くまでのロス c_p: 搬送波電力 n_0: 雑音電力密度

# File lib/calc_sat.rb, line 68
def initialize()
  @c = 2.9979 * 10**6 # 電波の速さ 2.9979 * 10**6 [km/sec]
end

Public Instance Methods

fspl(d, f) click to toggle source
# File lib/calc_sat.rb, line 80
def fspl(d, f)
  #自由空間伝搬損失 Free Space Path Loss
  #電波が地上に届くまでに弱まってしまう割合

  l_d = (@c / 4*Math::PI*f*d)**2
  return l_d
end
line_establised?(p_sat, l_tr, n_0, cn_req) click to toggle source
# File lib/calc_sat.rb, line 72
def line_establised?(p_sat, l_tr, n_0, cn_req)
  # 通信回線が成立するか判定
  c_p = p_sat - l_tr
  cn = c_p / n_0
  cond = cn - cn_req > 3
  return cond
end
system_noise_temp(t_a,t_f,t_e,l_frk) click to toggle source
# File lib/calc_sat.rb, line 88
def system_noise_temp(t_a,t_f,t_e,l_frk)
  t_s = (t_a/l_frk) + (1 - (1/l_frk))*t_f + t_e
  return t_s
end