source: Sophya/trunk/SophyaLib/SkyT/squarefilt.cc@ 3851

Last change on this file since 3851 was 2615, checked in by cmv, 21 years ago

using namespace sophya enleve de machdefs.h, nouveau sopnamsp.h cmv 10/09/2004

File size: 1.7 KB
Line 
1//--------------------------------------------------------------------------
2// File and Version Information:
3// $Id: squarefilt.cc,v 1.8 2004-09-10 09:54:40 cmv Exp $
4//
5// Description:
6//
7// History (add to end):
8// Sophie Oct, 1999 - creation
9//
10//------------------------------------------------------------------------
11
12//---------------
13// C++ Headers --
14//---------------
15#include "sopnamsp.h"
16#include "machdefs.h"
17#include <iostream>
18
19#include "squarefilt.h"
20
21/*!
22 * \class SOPHYA::SquareFilter
23 \ingroup SkyT
24 * Square detector response
25 */
26
27//----------------
28// Constructor --
29//----------------
30SquareFilter::SquareFilter()
31 : SpectralResponse()
32{
33}
34
35SquareFilter::SquareFilter(double numin, double numax)
36 : SpectralResponse(numin, numax)
37{
38 _nuPeak = (numin+numax)/2.;
39 _peakTransmission = transmission(_nuPeak);
40}
41
42
43//--------------
44// Destructor --
45//--------------
46SquareFilter::~SquareFilter()
47{
48}
49
50// ---------------------------
51// -- Function Definitions --
52// ---------------------------
53
54
55/*! The transmission returns 1. for frequencies in the [numin,numax] range
56 and 0. outside */
57double
58SquareFilter::transmission(double nu) const
59{
60 if(nu < -1.e99) nu = -1.e99;
61 if(nu > 1.e99) nu = 1.e99;
62
63 if(nu>=_numin && nu<=_numax) return 1.;
64 return 0.;
65}
66
67double
68SquareFilter::peakFreq() const
69{
70return _nuPeak;
71}
72
73double
74SquareFilter::peakTransmission() const
75{
76 return _peakTransmission;
77}
78
79/*
80void
81SquareFilter::WriteSelf(POutPersist& s)
82{
83 s.PutR8(this->minFreq());
84 s.PutR8(this->maxFreq());
85}
86
87void
88SquareFilter::ReadSelf(PInPersist& s)
89{
90 double minFreq, maxFreq;
91 s.GetR8(_numin);
92 s.GetR8(_numax);
93 cout << "minFreq - maxFreq " << _numin << "-" << _numax << endl;
94}
95*/
Note: See TracBrowser for help on using the repository browser.