代码里计算微带线的阻抗值有两种,一种是边沿馈电方式,利用公式计算阻抗值,还有一种是嵌入式馈电,直接假设一个阻抗值。根据情况进行选择。
public static void main(String[] args) {
// 光速
double C=3*Math.pow(10,8);
// 变量number1保证单位为mm,变量number2保证频率单位为HZ。
double number1=Math.pow(10,3);
double number2=Math.pow(10,9);
// 工作频率取8GHZ,介质基片选择Rogers4350B 基板,介电常数 Er= 3.48,基板厚度为 h = 0.508mm
System.out.println("请输入频率,介电常数以及厚度");
Scanner scanner=new Scanner(System.in);
float f=scanner.nextFloat();
float Er=scanner.nextFloat();
float h=scanner.nextFloat();
System.out.println("频率为"+f+"GHZ"+"\n"+"介电常数为"+Er+"\n"+"厚度为"+h+"mm");
// 辐射贴片的宽度为w
float w=(float)((C*number1/(2*f*number2)*Math.pow((Er+1)/2,-1.0/2)));
System.out.println("辐射贴片的宽度为"+w+"mm");
// 有效介电常数为Ee
float Ee=(float)((Er+1)/2+(Er-1)*Math.pow(1+12*h/w,-1.0/2)/2);
System.out.println("有效介电常数为"+Ee);
// 等效辐射缝隙长度为DL
float DL=(float)(0.412*h*(Ee+0.3)*(w/h+0.264)/((Ee-0.258)*(w/h+0.8)));
System.out.println("等效辐射缝隙长度为"+DL+"mm");
// 介质内的导波波长
float lambda_g=(float)(C*number1/(f*number2*Math.sqrt(Ee)));
float lambda_gi=lambda_g/4;
System.out.println("介质内的波导波长为"+lambda_g+"mm");
System.out.println("线阵单个阻抗的长度为"+lambda_gi+"mm");
// 辐射贴片的长度为l
float l=lambda_g/2-2*DL;
System.out.println("辐射贴片的长度为"+l+"mm");
// 真空中的波长
double lambda_0=C*number1/(f*number2);
System.out.println("波长为"+lambda_0+"mm");
/*// 辐射电导G
float G=0;
if (w<=lambda_0){
G=(float)(w*w/(90*lambda_0*lambda_0));
}
else{
G=(float)(w*w/(120*lambda_0*lambda_0));
}
// 输入导纳Yin
float Yin=2*G;
System.out.println("输入导纳为"+Yin);
// 输入阻抗Rin
// 边缘馈电的阻抗
float Rin=1/Yin;*/
//嵌入式阻抗
double Rin=100;
System.out.println("输入阻抗为"+Rin);
// 1/4波长变换器的阻抗ZT0
double ZT0=Math.sqrt(Rin*50);
System.out.println("1/4波长变换器的阻抗"+ZT0);
}