Not finished (Work in progress)

# Passband

## What is a passband?

Defines the probability of an incoming photon of a particular wavelength being measured.

### Filters

The simplest example is that of a red filter on an optical telescope; in principle any red photon (~ 5^12Hz ?) arriving is let through, and any other photons are blocked.

In practice of course it's not that simple. No filter is perfect - in the above example, some red photons will be absorbed by the filter, and some other ones might get through. Also some photons are more red than others, and the filter will not be even handed; photons of one redness will be more or less likely to pass than a photon of another redness:

(Example red filter pasband).

### Instrument, Atmosphere

Other factors influence the probability of a photon being measured - the full chain is given in the Observation Data Model doc (2.8) - depending on where 'incoming' is defined. We can model this set of sequential passbands using a ChainedPassband

## How are we going to model it?

From two sides; the interface the Passband object presents to the models that use it, and separately how those objects might be defined.

## Assumptions

• The frequency/wavelength of a photon is fixed and exact, at least for the purposes of this part of the model.

## Public Interface

A passband presents the following to the world:

`getPassrate(wavelength)` - returns the probability (0-1) of an incoming photon of the given wavelength being measured.

`getMinWavelength()` - returns the wavelength below which no photons will be passed.

`getMaxWavelength()` - returns the wavelength above which no photons will be passed.

[Do people prefer working in wavelengths or frequencies? Of course the above methods can be duplicated for frequencies, or we can use a Wave datamodel that can be represented as wavelength of frequency - MCH]

`getUCD()` at least for the early days, as there are UCDs defined for some passbands

`getName()` for humans. Note that the implementation type will also give information and allow other specific

`getPassband(minWavelength, maxWavelength)` - returns a new Passband object based on the old. [Hmm not sure about this one - MCH]

## Implementations

• `SimplePassband` - a frequency range between which the passrate is 1, and outside of which the passrate is 0. [Has this any practical application? - MCH]
• `GraphPassband` - a set of points on a graph that are interpolated to give the passrates.
• `ChainedPassband`

We can then have passbands such as:

• `OpticalFilter` - probably a subclass of `GraphPassband` with added information such as manufacturer. A set of standard filter instances can be included in libraries
• `AtmosphericPassband` - give it your height in meters, windspeed and distance from the nearest pub, and it will work out an approximate passband. [Is this possible? useful? - MCH]

Edit | Attach | Print version |  | Backlinks | Raw View | Raw edit | More topic actions...
Topic revision: r1 - 2004-05-20 - MartinHill

Twiki Meta & Help
IVOA
Know
Main
Sandbox
TWiki

TWiki intro
TWiki tutorial
User registration
Notify me

Working Groups

Interest Groups

Committees

Copyright © 2008-2021 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback