电路综合-基于简化实频的SRFT集总参数切比雪夫低通滤波器设计

news2024/11/17 1:50:27

电路综合-基于简化实频的SRFT集总参数切比雪夫低通滤波器设计

6、电路综合-基于简化实频的SRFT微带线切比雪夫低通滤波器设计中介绍了使用微带线进行切比雪夫滤波器的设计方法,在此对集总参数的切比雪夫响应进行分析。

SRFT集总参数切比雪夫低通滤波器综合不再需要查表,直接从底层原理进行设计。

0、基本理论

参考-Design of Ultra Wideband Power Transfer Networks第十章的推导过程

n 次切比雪夫多项式定义为:
在这里插入图片描述

n在1到5时的切比雪夫多项式表:
在这里插入图片描述
此表可以使用下面的代码计算得出:

clear
clc
syms x
%定义切比雪夫阶数
n=1;
for n=1:1:9
T=(simplify(cos(n*acos(x))));
disp('----------------------------------------------------')
disp([num2str(n),'th Chebyshev polynomials is:']);disp(T);
end

代码的运行结果为:
在这里插入图片描述

1、设计步骤

切比雪夫的增益函数如下所示(其中的希腊字符是纹波因子,解释见6、电路综合-基于简化实频的SRFT微带线切比雪夫低通滤波器设计):
在这里插入图片描述
增益函数实际上就是S21,由此可以得到其网络对应的S11参数(下面的F11代表的就是S11,p=jw是Laplace因子):
在这里插入图片描述
有公式S11=h( p)/g( p),因此只有求得h( p)和g( p)就可以进行策动点阻抗的综合了。h( p)的求解基于H(p)的零点pr:
在这里插入图片描述
同理,g( p)的求解基于G(p)的零点pr:
在这里插入图片描述
给出一个三阶的切比雪夫的gm的求解案例:

clear
clc
syms w
% p=jw
Gm=1+0.1*(4*(1j*w)^3-3*(1j*w))^2

simplify(Gm)
C = double(coeffs(Gm,w,"All"));
% 求Gm的根
roots(C)

syms lamda
g=(lamda+0.3320+1j*1.0395)*(lamda+0.3320-1j*1.0395)*(lamda+0.6639);
simplify(g);
% 求gm的系数
gm = double(coeffs(g,lamda,"All"))

在这里插入图片描述

在这里插入图片描述

求到S11就可以计算出Zin,在此基础上使用梯形结构进行综合,一般的结构如下,其具体结构由h§前面的sign的符号决定,sign=1对应先电感,sign=-1对应先电容:
在这里插入图片描述
使用长除法进行综合:
在这里插入图片描述

1、综合Matlab代码

主函数的代码,使用次代码不再需要查插入损耗表了

close all
clear
clc

% 设定通带波纹db
ILR=0.3;
% 设定切比雪夫滤波器阶数
n=3;
% 设定第一个元器件的类型+1和-1分别为电感和电容
sign=1;
% 设定端口阻抗
z0 = 50;	% set not to use normalization
% 设定截止频率
fc = 0.1e9;

eps_sq=10^(ILR/10)-1;
eps=sqrt(eps_sq);
beta=asinh(1/eps);
% Step 1: Generates the Explicit roots of Gm(p).
n2=2*n;
i=1;
j=sqrt(-1);
for k=0:(n2-1)
    x(k+1)=k;
    sig(k+1)=sin(pi*(2*k+1)/2/n)*sinh(beta/n);%Real{pk}
    omega(k+1)=cos(pi*(2*k+1)/2/n)*cosh(beta/n);%imag{pk}
    if(sig(k+1)<0) 
        p(i)=sig(k+1)+j*omega(k+1);%roots of g(p)
        i=i+1;
    end 
end
% Step 2: Construct gm(p)
gm=real(poly(p));%polynomial g(p)
%Step 3: Computation of hm(p)
for k=0:(n2-1)
x(k+1)=k;
    omega(k+1)=j*cos(pi*(2*k+1)/2/n);
end
for k=1:n
    ph(k)=omega(k);% Roots of hm(p)
end
hm=real(poly(-ph));%polynomial h(p)
hm=sign*hm;% h(p) with eps*Tn(1)

% Step 4: 求解TPG
NUM=gm+hm;
DEN=gm-hm;
syms w real
syms p
Zin=poly2sym(NUM,p)/poly2sym(DEN,p);
Zin=subs(Zin,p,1j*w);
R=real(Zin);X=imag(Zin);
TPG=4*R/((R+1)^2+X^2);

w_data=(0.01:0.01:2);
TPG=double(subs(TPG,w,w_data));
plot(w_data*fc/1e6,10*log10(TPG))
title("S21")
ylabel('S21')
xlabel('频率MHz')

% Step 4: 基于gm和hm进行综合
f0 = fc*2*pi;	% set not to use normalization
repcount = 0;	% synthesize all function
spi = 1;	% include poles at zero to synthesis
in_node = 1;	% define circuit input node
gr_node = 0;	% define circuit ground node
tol = 0.01;	% relative tolerance;
[CVal,CType,Eleman,node,pay2,payda2]=Synthesis_LongDiv(NUM,DEN,z0,f0,repcount,spi,in_node,gr_node,tol);
Plot_Circuit(CType,CVal);

此处给出的是三阶的设计案例,得到的结果如下所示:
在这里插入图片描述

2、ADS进行验证

ADS进行验证:
在这里插入图片描述
在这里插入图片描述

3、更多案例

当然,也可以设计7阶数的,简单修改一下参数即可:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1200802.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C语言——打印1000年到2000年之间的闰年

闰年&#xff1a; 1、能被4整除不能被100整除 2、能被400整除 #define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h> int main() {int year;for(year 1000; year < 2000; year){if((year%4 0) && (year%100!0) || (year%400 0)){printf("%d ",ye…

算法之双指针

双指针算法的作用 双指针算法是一种使用2个变量对线性结构(逻辑线性/物理线性)&#xff0c;进行操作的算法&#xff0c;双指针可以对线性结构进行时间复杂度优化&#xff0c;可以对空间进行记忆或达到某种目的。 双指针算法的分类 1.快慢指针 2.滑动窗口 3.左右指针 4.前后指…

Keil文本对齐

摘要&#xff1a;通常我们写代码的时候&#xff0c;尤其是缩进和{}的使用&#xff0c;很多都需要自己手动去调整&#xff0c;如果有一个自动格式化代码的工具&#xff0c;每次编辑完代码&#xff0c;然后一键给将代码格式化&#xff0c;即省时又美观。为了解决这个问题&#xf…

红黑树,AVLTree树(平衡二叉树)迭代器原理讲解

红黑树&#xff0c;AVLTree树底层实现逻辑都是平衡二叉树&#xff08;AVLTree高度平衡&#xff0c;红黑树以某种规则平衡&#xff09;&#xff0c;但终究不像链表的迭代器那样逻辑简单。 简单叙述以下&#xff0c;二叉树上面迭代器的运行逻辑&#xff0c;根据下面的图&#xff…

洛谷 P3842 [TJOI2007] 线段 python解析

P3842 [TJOI2007] 线段 时间&#xff1a;2023.11.7 题目地址&#xff1a;[TJOI2007] 线段 题目分析 这题就是练一下动态规划的。 首先确定dp数组: d p [ i ] [ 0 / 1 ] dp[i][0/1] dp[i][0/1]&#xff0c; i i i代表第几行&#xff0c;然后每行 d p [ i ] [ 0 ] dp[i][0] d…

Leetcode—20.有效的括号【简单】

2023每日刷题&#xff08;二十七&#xff09; Leetcode—20.有效的括号 C实现代码 class Solution { public:bool isValid(string s) {stack<char> arr;int len s.size();if(len 1) {return false;}for(int i 0; i < len; i) {if(s[i] ( || s[i] [ || s[i] {)…

Lambertian模型(完美漫反射)

这里使用相乘的方式组合光照色和纹理色。根据这个模型,面朝光源的区域光照强度高,纹理色也相应增强。面背光源的区域光照弱,纹理色也被抑制。这样通过光照和纹理的结合,可以合成出具有照明效果的面部颜色,而不仅仅是固定的纹理本身的颜色。相乘方式可以近似实现不同光照方向下面…

浙大恩特客户资源管理系统 fileupload.jsp 任意文件上传

一、漏洞描述 杭州恩软信息技术有限公司&#xff08;浙大恩特&#xff09;提供外贸管理软件、外贸客户管理软件等外贸软件&#xff0c;是一家专注于外贸客户资源管理及订单管理产品及服务的综合性公司。 浙大恩特客户资源管理系统中的fileupload.jsp接口存在安全漏洞&#xf…

DevChat智能编程助手:小白也能轻松上手的开发利器

DevChat智能编程助手&#xff1a;小白也能轻松上手的开发利器 一、DevChat介绍1.1 DevChat简介1.2 DevChat特点1.3 DevChat官网 二、注册DevChat账号2.1 访问DevChat官网2.2 注册账号2.3 复制Access Key2.4 登录DevChat 三、安装DevChat3.1 打开VS Code软件3.2 安装DevChat3.3 …

Cocos开发

harmonyOS开发 在Cocos Creator中&#xff0c;场景是一个独立的文件资源&#xff0c;可以像打开PSD文件一样在编辑器中双击打开&#xff1b; 场景文件是数据驱动工作流的核心&#xff0c;场景中包括图像资源、动画、特效以及驱动游戏逻辑和表现的脚本&#xff1b; Cocos Crea…

PCA(主成分分析)数据降维技术代码详解

引言 随着大数据时代的到来&#xff0c;我们经常会面临处理高维数据的问题。高维数据不仅增加了计算复杂度&#xff0c;还可能引发“维度灾难”。为了解决这一问题&#xff0c;我们需要对数据进行降维处理&#xff0c;即在不损失太多信息的前提下&#xff0c;将数据从高维空间…

网络通讯基础

Socket Socket是应用层与TCP/IP协议簇通信的中间软件抽象层&#xff0c;它是一组接口。Socket通常用于实现客户端和服务器之间的通信。它允许客户端应用程序与服务器应用程序建立连接&#xff0c;并通过网络传输数据。 Socket包含了网络通讯必须的5种信息 Socket例子 { 协议: …

【0基础学Java第九课】-- 抽象类和接口

9. 抽象类和接口 9.1 抽象类9.1.1 抽象类概念9.1.2 抽象类语法9.1.3 抽象类的特性9.1.4 抽象类的作用 9.2 接口9.2.1 接口的概念9.2.2 语法规则9.2.3 接口使用9.2.4 接口特性9.2.5 实现多个接口9.2.6 接口的继承9.2.9 抽象类和接口的区别 9.3 Object类9.3.1 获取对象方法9.3.1 …

【论文精读】DMVSNet

今天读的是一篇发表在ICCV 2023上的文章&#xff0c;作者来自华中科技大学。 文章地址&#xff1a;点击前往 项目地址&#xff1a;Github 文章目录 Abstract1 Introduction2 Relative Work3 Motivation3.1 Estimated bias and interpolated bias3.2 One-sided V.S. Saddle-shap…

Leetcode154. Find Minimum in Rotated Sorted Array II

旋转数组找最小&#xff0c;这次值可以重复 不妨假设你已经做了上一题&#xff0c;题解 上一题的方法1肯定是用不了了&#xff0c;因为不再能完全分成2个不同的部分 所以我们沿着方法2走 如果 > n u m s [ r ] >nums[r] >nums[r]&#xff0c;我们依然可以找右半边 …

SpringBoot 自动配置原理

SpringBoot 自动配置原理 注: 本文使用的springboot版本为 2.7.11 1、SpringBootApplication 字面分析&#xff0c;这个注解是标注一个Spring Boot应用。 Target({ElementType.TYPE}) Retention(RetentionPolicy.RUNTIME) Documented Inherited SpringBootConfiguration En…

电路设计之36V 自动断电和防浪涌电路

1. 电路图纸 2. 解释防浪涌功能怎么实现的 1. 首先当电源上电的一瞬间是 电容C1 是相当于短路的。 &#xff08;电容的充电状态。电容充电相当于短路状态&#xff09; 2. 当上电的一瞬间是有 浪涌的。 3.当上电的瞬间有浪涌的&#xff0c;此时电容C1 相当于短路&#xff0c;所…

第一百七十一回 SearchBar组件

文章目录 1. 概念介绍2. 使用方法3. 代码与效果3.1 示例代码3.2 运行效果 4. 内容总结 我们在上一章回中介绍了"Material3中的IconButton"相关的内容&#xff0c;本章回中将 介绍SearchBar组件.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1. 概念介绍 我们在…

自定义类型:联合和枚举

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 目录 前言 1. 联合体 1.1 联合体类型的声明 1.2 联合体的特点 1.3 相同成员的结构体和联合体对比 1.4 联合体大小的计算 1.5 联合的一个练习 2. 枚举类型 2.1 枚举类型的声明…

MSF图形化工具Viper快速安装

简介 Viper(炫彩蛇)是一款图形化内网渗透工具,将内网渗透过程中常用的战术及技术进行模块化及武器化. Viper(炫彩蛇)集成杀软绕过,内网隧道,文件管理,命令行等基础功能. Viper(炫彩蛇)当前已集成70个模块,覆盖初始访问/持久化/权限提升/防御绕过/凭证访问/信息收集/横向移动等…