My Project  0.0.16
QUCS Mapping
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
qf_cauer.h
Go to the documentation of this file.
1 /***************************************************************************
2  qf_cauer.h
3  --------------
4  begin : Mon Jan 02 2006
5  copyright : (C) 2006 by Vincent Habchi, F5RCS
6  email : 10.50@free.fr
7  ***************************************************************************/
8 
9 /***************************************************************************
10  * *
11  * This program is free software; you can redistribute it and/or modify *
12  * it under the terms of the GNU General Public License as published by *
13  * the Free Software Foundation; either version 2 of the License, or *
14  * (at your option) any later version. *
15  * *
16  ***************************************************************************/
17 
18 #ifndef _QF_CAUER_H
19 #define _QF_CAUER_H
20 
21 const qf_double_t SN_ACC = 1e-5; // Accuracy of sn(x) is SN_ACC^2
22 const qf_double_t K_ERR1 = 1e-8; // Accuracy of K(k)
23 const qf_double_t K_ERR2 = 1e-20; // Accuracy of K(k)
24 const qf_double_t K_ERR3 = 1e-6; // Accuracy of K(k)
25 const qf_double_t K_ERR = 4e-16; // Accuracy of K (k)
26 const qf_double_t SK_ERR = sqrt (K_ERR); // Accuracy of sn (u, k)
27 
28 class qf_cauer : public qf_filter
29 {
30  private:
31 
32  // Standard parameters
33  qf_double_t rho; // Reflection coeff.
34  qf_double_t th; // Modular angle
35 
36  // Zeros of transmission
37  qf_double_t * a;
38 
39 public:
40  qf_cauer (unsigned, qf_double_t, qf_double_t);
42  qf_double_t, qft);
43  virtual ~qf_cauer (void);
44 
45  // Elliptic functions
46  static qf_double_t K (qf_double_t);
47  static qf_double_t Kp (qf_double_t);
54 
55  // Computes standard form
57 
58  void xfer (void); // Computes xfer fctn
59  void values (void); // Computes norm values
60  virtual void synth (qft); // Standard -> Actual form
61  void dump (void); // Dumps to cout
62 };
63 
64 #endif // _QF_CAUER_H