/* Copyright (c) 2019, Anthony Latorre * * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU General Public License as published by the Free * Software Foundation, either version 3 of the License, or (at your option) * any later version. * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * You should have received a copy of the GNU General Public License along with * this program. If not, see . */ #ifndef PMT_RESPONSE_H #define PMT_RESPONSE_H #include "dict.h" /* Global error string set when pmt_response_init() returns -1. */ extern char pmtr_err[256]; #define NUM_ANGLES 90 #define NUM_WAVELENGTHS 50 #define KPMTR_TRTI 0 #define KPMTR_DECA 1 #define KPMTR_SPRD 2 #define KPMTR_CERF 3 #define KPMTR_RESP 4 #define KPMTR_REFLEC 4504 double get_weighted_pmt_reflectivity(double cos_theta); double get_weighted_pmt_response(double cos_theta); double get_pmt_reflectivity(double wavelength, double theta); double get_pmt_response(double wavelength, double theta); int pmt_response_init(dict *db); void pmt_response_free(void); #endif