library(grid)
library(data.table)
library(png)
# Convert an angle from radians into degrees [arcsec].
arcsec <- function(x) {
  x * 180 / pi * 3600
}

Hofheim Instruments 12" travel dobson

image <- readPNG("Hofheim Instruments 12.png")
grid.raster(image)

Wavelength of maximum sensitivity of human vision in the dark

scotopic.vision.max <- 510 # nm

Telescope exit pupil

exit.pupil.max <- 7   # Limit by observer's max pupil diameter [mm]
exit.pupil.opt <- 2.4 # Optimum resolving power of the eye [mm]
exit.pupil.min <- 1   # Max resolving power of telescope [mm]

Read telescope data from file

telescope <- read.csv("Telescope.csv")
head(telescope)
##                     name   fl   d
## 1 Hofheim Instruments 12 1500 300

Telescope resolution at 510 nm

resolution <- (scotopic.vision.max * 1e-9) / (telescope$d * 1e-3) # rad
print(resolution)
## [1] 1.7e-06

Calculate some telescope parameters

telescope$n <- telescope$fl / telescope$d
telescope$magnification.min <- telescope$d / exit.pupil.max
telescope$magnification.opt <- telescope$d / exit.pupil.opt
telescope$magnification.max <- 1.5 * telescope$d / exit.pupil.min
telescope$star.limit <- 2 + 5 * log10(telescope$d) # mag
telescope$dawes.limit <- 1.03 * arcsec(resolution)  # [1] arcsec
telescope$rayleigh.limit = 2 * 1.22 * arcsec(resolution)  # arcsec
telescope$airy.disk.theta = 1.22 * arcsec(resolution)  # arcsec
telescope$airy.disk.r = 1.22 * resolution * (telescope$fl * 1e-3) * 1e6 # µm
print(t(telescope))
##                   [,1]                    
## name              "Hofheim Instruments 12"
## fl                "1500"                  
## d                 "300"                   
## n                 "5"                     
## magnification.min "42.85714"              
## magnification.opt "125"                   
## magnification.max "450"                   
## star.limit        "14.38561"              
## dawes.limit       "0.3611697"             
## rayleigh.limit    "0.8555864"             
## airy.disk.theta   "0.4277932"             
## airy.disk.r       "3.111"

Read eyepieces from file

eyepieces <- read.csv("Eyepieces.csv")
head(eyepieces)
##         name   fl afov
## 1    Kasai 5  5.0   45
## 2    Kasai 6  6.0   45
## 3    Kasai 7  7.0   45
## 4    Kasai 9  9.0   45
## 5 Kasai 12.5 12.5   45
## 6   Kasai 18 18.0   45

Caclulate parameters for telescope/eyepiece combinations

setup.all <- data.frame(eyepiece.name = eyepieces$name)
setup.all$magnification = telescope$fl / eyepieces$fl
setup.all$fov = 60 * eyepieces$afov * eyepieces$fl / telescope$fl # arcmin
print(data.table(setup.all), digits=1)
##       eyepiece.name magnification fov
##  1:         Kasai 5           300   9
##  2:         Kasai 6           250  11
##  3:         Kasai 7           214  13
##  4:         Kasai 9           167  16
##  5:      Kasai 12.5           120  22
##  6:        Kasai 18            83  32
##  7:        Kasai 25            60  45
##  8:     Meade MA 12           125  18
##  9:   Pentax XL 5.2           288  14
## 10:     Pentax XL 7           214  18
## 11:  Pentax XL 10.5           143  27
## 12:    Pentax XL 14           107  36
## 13:    Pentax XW 20            75  56
## 14:    Pentax XL 40            38 104
## 15: Widescan III 13           115  44
## 16: Widescan III 20            75  67
## 17: Widescan III 30            50 101

Filter usable magnifications only

min <- telescope$magnification.min
max <- telescope$magnification.max
setup.usable <- subset(setup.all, min < magnification & magnification < max)
print(data.table(setup.usable), digits=1)
##       eyepiece.name magnification fov
##  1:         Kasai 5           300   9
##  2:         Kasai 6           250  11
##  3:         Kasai 7           214  13
##  4:         Kasai 9           167  16
##  5:      Kasai 12.5           120  22
##  6:        Kasai 18            83  32
##  7:        Kasai 25            60  45
##  8:     Meade MA 12           125  18
##  9:   Pentax XL 5.2           288  14
## 10:     Pentax XL 7           214  18
## 11:  Pentax XL 10.5           143  27
## 12:    Pentax XL 14           107  36
## 13:    Pentax XW 20            75  56
## 14: Widescan III 13           115  44
## 15: Widescan III 20            75  67
## 16: Widescan III 30            50 101

[1] McKechnie, T. S. (2016). General Theory of Light Propagation and Imaging Through the Atmosphere (Vol. 196). Cham: Springer International Publishing. http://doi.org/10.1007/978-3-319-18209-4