Beispiel #1
0
    def _static_pfd_entry(self, bw=0, is_gso=False):
        m = self.model

        if is_gso:
            retval = m.peak_pf_at_geo_dbw_per_m2
        else:
            retval = m.peak_pf_dbw_per_m2

        pfd_per_hz = retval - m.required_rx_bw_dbhz
        if bw:
            retval = pfd_per_hz + min(utils.to_db(bw), m.required_rx_bw_dbhz)
            (
                bw,
                bw_unit,
            ) = utils.human_hz(bw)
            if is_gso:
                label = 'Peak PFD at GSO per %.2g%s' % (bw, bw_unit)
            elif m.is_downlink:
                label = 'Peak PFD at Surface per %.2g%s' % (bw, bw_unit)
            else:
                label = 'Peak PFD at Receiver per %.2g%s' % (bw, bw_unit)
            unit = 'dBW/m^2/%.2g%s' % (bw, bw_unit)
        else:
            if is_gso:
                label = 'Peak PFD at GSO'
            else:
                if m.is_downlink:
                    label = 'Peak PFD at Surface'
                else:
                    label = 'Peak PFD at Receiver'
            unit = 'dBW/m^2'
        return (
            label,
            retval,
            unit,
        )
Beispiel #2
0
 def fname(self):
     return 'pfd-expected-%d%s.png' % utils.human_hz(self.bw)
Beispiel #3
0
 def _humanize_hz(self, label, val):
     return (label, ) + utils.human_hz(val)
Beispiel #4
0
 def ylabel(self):
     return 'Expected PFD (dBW/m^2/%d%s)' % utils.human_hz(self.bw)
Beispiel #5
0
 def label(self):
     return 'pfd-expected-%d%s' % utils.human_hz(self.bw)
Beispiel #6
0
 def ylabel(self):
     return 'Boresight PFD (dBW/m^2/%d%s)' % utils.human_hz(self.bw)
Beispiel #7
0
 def fname(self):
     return 'pfd-canonical-%d%s.png' % utils.human_hz(self.bw)
Beispiel #8
0
 def label(self):
     return 'pfd-canonical-%d%s' % utils.human_hz(self.bw)