module_network_synthesis.F90
3.62 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
! This file is part of SACAMOS, State of the Art CAble MOdels in Spice.
! It was developed by the University of Nottingham and the Netherlands Aerospace
! Centre (NLR) for ESA under contract number 4000112765/14/NL/HK.
!
! Copyright (C) 2016-2017 University of Nottingham
!
! SACAMOS 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.
!
! SACAMOS 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.
!
! A copy of the GNU General Public License version 3 can be found in the
! file GNU_GPL_v3 in the root or at <http://www.gnu.org/licenses/>.
!
! SACAMOS uses the EISPACK library (in /SRC/EISPACK). EISPACK is subject to
! the GNU Lesser General Public License. A copy of the GNU Lesser General Public
! License version can be found in the file GNU_LGPL in the root of EISPACK
! (/SRC/EISPACK ) or at <http://www.gnu.org/licenses/>.
!
! The University of Nottingham can be contacted at: ggiemr@nottingham.ac.uk
!
! FILE CONTAINS (within include files):
! SUBROUTINE BRUNE_test(H,type,CFtype,R,L1out,C,L2out,K,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE LC_test_BRUNE(H_PR,L,C,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE L_test_BRUNE(H_PR,L,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE C_test(H_PR,type,CFtype,R,L,C,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE LC_test(H_PR,type,CFtype,R,L,C,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE write_Sfilter_local(s1)
! SUBROUTINE write_CF_local(CFterm,CFtype,CF_dim,max_order)
! SUBROUTINE check_transfer_function(Z,stable)
! SUBROUTINE check_transfer_function_num_den(a,b,stable)
! SUBROUTINE pole_zero_cancel(H)
! SUBROUTINE L_test(H_PR,type,CFtype,R,L,C,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE calculate_min_resistance_value(H,R,w0)
! SUBROUTINE R2_test(H_PR,type,CFtype,R,L,C,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE RC_test(H_PR,type,CFtype,R,L,C,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE RLC_test(H_PR,type,CFtype,R,L,C,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE RL_test(H_PR,type,CFtype,R,L,C,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE R_test(H_PR,type,CFtype,R,L,C,found,HR,remainder_OK,remainder_zero)
! SUBROUTINE test_filter_positive_real(H,stable,local_verbose)
! SUBROUTINE write_ladder_network(Hname,gain,CFterm,CFtype,CF_dim,max_order,R_add,nw,wmin,wmax, &
! SUBROUTINE network_synthesis
!
! Name
! module_network_synthesis
!
! Description
! module which includes the subroutines relating to the equivalent circuit
! implementation of s-domain transfer functions
!
! Comments:
!
!
! History
!
! started 6/10/17 CJS
!
MODULE module_network_synthesis
USE type_specifications
USE general_module
USE constants
USE frequency_spec
USE filter_module
USE Sfilter_fit_module
IMPLICIT NONE
CONTAINS
include 'network_synthesis.F90'
include 'include_local_filter_subroutines.F90'
include 'include_test_positive_real.F90'
include 'include_write_spice_model.F90'
include 'include_minimum_resistance_function.F90'
include 'include_RLC_test.F90'
include 'include_LC_test.F90'
include 'include_RC_test.F90'
include 'include_RL_test.F90'
include 'include_C_test.F90'
include 'include_L_test.F90'
include 'include_R_test.F90'
include 'include_R2_test.F90'
include 'include_BRUNE_test.F90'
include 'include_pole_residue_test_functions.F90'
END MODULE module_network_synthesis