亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? main.cpp

?? 用于集成電路輔助設計的一寫算法
?? CPP
字號:
#include "stdio.h"
#include "iostream.h"
#include "stdlib.h"
#include "lu.h"
const int arraysize=500;                            //定義總長為500
float wmatrix[arraysize]={0};                       //混合方程等號右邊的列向量                        
float mixedmatrix[arraysize][arraysize]={0};		//混合方程矩陣                        

struct circuitmap{                                 //建立一個結(jié)構(gòu)體,保存每條支路的信息
	int branchnumber;                  
	int startpoint;
	int endpoint;
    int type;
	float value;
};
struct coninform{
	int connumber;
	float gm;
};
struct current{
	int mark;
	float value;
};
struct voltage{
	int mark;
	float value;
};
coninform control[arraysize]={0};
circuitmap circuit[arraysize]={0}; 
current  currentfor[arraysize]={0};
voltage  voltagefor[arraysize]={0};                                    //為結(jié)構(gòu)體數(shù)組申請空間
int b;                                           //全局變量b為支路數(shù)
int n;                                            //全局變量n為節(jié)點數(shù) 
int out=0;
void showcircuit();                             //顯示輸入電路的拓樸結(jié)構(gòu)
char cindata();                               //輸入電路數(shù)據(jù)
void cleardata();                             //清除結(jié)構(gòu)體數(shù)組釋放空間
void moreinform();                            //為受控源申請更多的信息
void buildmixed();                            //建立混合方程
void showmixed();                             //顯示混合方程
void typevccs(int);                           //當受控源為第一類VCCS時的處理


void main()
{  
  char key;
  cout<<"=============直流分析程序=============\n";
  key=cindata();                                         //輸入電路數(shù)據(jù)
  if(key=='y')                                           //檢查輸入是否有誤    
	{
	  cleardata();                                       //用戶重新輸入數(shù)據(jù),要清理之前的數(shù)據(jù)輸入
	  cindata();
    }
  else													//確認輸入數(shù)據(jù)后就建立相關(guān)矩陣
    moreinform();
    buildmixed();
    showmixed();
	cout<<"要通過LU分解求解方程么?(y/n)\n";
	cin>>key;
	if(key=='y')
	{
		int order=n+out-1;
		float *lmatrix = new float[order*order];
		float *umatrix=new float[order*order];
		float *ans=new float[order];
		float *temp=new float[order];
		LU_decompose(mixedmatrix,lmatrix,umatrix,wmatrix,order);
		solve_L(lmatrix,wmatrix,temp,order);
		solve_U(umatrix,temp,ans,order);
		cout<<"計算結(jié)果如下:";
		for(int i=0;i<order;i++)
		{
			if(i/10==0) cout<<endl;
			cout<<ans[i]<<"    ";
		}
	}
	else exit(0);
}
void showcircuit()                             
{   cout<<"您輸入的數(shù)據(jù)如下:\n";
    cout<<"支路號(1->b)  起始節(jié)點(0->n-1)  終止節(jié)點(0->n-1)  類型(1-10)  大小\n"; 
	 for(int k=1;k<=b;k++)
	 {
     cout<<circuit[k].branchnumber<<"\t\t";
     cout<<circuit[k].startpoint<<"\t\t";
	 cout<<circuit[k].endpoint<<"\t\t ";
	 cout<<circuit[k].type<<"\t\t";
	 cout<<circuit[k].value<<"\t\t";
	 cout<<"\n";
	 }
}


char cindata()
{  int i=1;
   char sure;
   cout<<"請輸入總的支路數(shù):\n";
   cin>>b;
   cout<<"請輸入總的節(jié)點數(shù):\n";
   cin>>n;
   cout<<"請按下列順序輸入相關(guān)數(shù)據(jù):\n支路號(1->b)  起始節(jié)點(0->n-1)  終止節(jié)點(0->n-1)  類型(1->10)  大小\n"; 
   cout<<"類型代號:\n 1-電阻\n 2-電導\n 3-電感\(zhòng)n 4-電容\n 5-VCCS\n 6-CCCS\n 7-VCVS\n 8-CCVS\n 9-獨立電壓源\n 10-獨立電流源\n";
while(i<=b)
	{ 
	 cin>>circuit[i].branchnumber;
     cin>>circuit[i].startpoint;
	 cin>>circuit[i].endpoint;
	 cin>>circuit[i].type;
	 cin>>circuit[i].value;
	 i++;
	 }

circuitmap temper;
	for(int k=1;k<=b-1;k++)
    {
	for(int j=1;j<=b-1;j++)
	{ if (circuit[j].branchnumber>circuit[j+1].branchnumber)
	   {
		temper=circuit[j];
	    circuit[j]=circuit[j+1];
        circuit[j+1]=temper;
	}
	   }
	}
    showcircuit();
	cout<<"需要修改數(shù)據(jù)么?Y/N \n";
    cin>>sure;
	return sure;
}

void cleardata()
{  for (int i=1;i<=b;i++)
  
	{    
	 circuit[i].branchnumber=0;
     circuit[i].startpoint=0;
	 circuit[i].endpoint=0;
	 circuit[i].type=0;
	 circuit[i].value=0;
	}
}
 


void buildmixed()
{  
   for(int i=1;i<=b;i++)
   {   
   if (circuit[i].type==1)
   {
   mixedmatrix[circuit[i].startpoint][circuit[i].startpoint]+=1/circuit[i].value;
   mixedmatrix[circuit[i].endpoint][circuit[i].endpoint]+=1/circuit[i].value;
   mixedmatrix[circuit[i].endpoint][circuit[i].startpoint]-=1/circuit[i].value;
   mixedmatrix[circuit[i].startpoint][circuit[i].endpoint]-=1/circuit[i].value;
   }
   else if (circuit[i].type==2)
   { mixedmatrix[circuit[i].startpoint][circuit[i].startpoint]+=circuit[i].value;
     mixedmatrix[circuit[i].endpoint][circuit[i].endpoint]+=circuit[i].value;
     mixedmatrix[circuit[i].endpoint][circuit[i].startpoint]-=circuit[i].value;
     mixedmatrix[circuit[i].startpoint][circuit[i].endpoint]-=circuit[i].value;
   }
 else if (circuit[i].type==3)
 {
	 voltagefor[i].value=0;
 }
 
 else if (circuit[i].type==4)
 {  
	 currentfor[i].value=0;
 }
 
 else if (circuit[i].type==5)
{ 
    typevccs(i);
 }

 else if (circuit[i].type==6)
{
   if(currentfor[control[i].connumber].value!=0)
{
   if (circuit[control[i].connumber].type==1)
   { 
   control[i].gm=control[i].gm/circuit[control[i].connumber].value;     //等效于VCCS的情況;
   typevccs(i);
   }
   else if (circuit[control[i].connumber].type==2)
   {   
	control[i].gm=control[i].gm*circuit[control[i].connumber].value;             //等效于VCCS的情況;
    typevccs(i);
   }
 } 
else if (currentfor[control[i].connumber].value==0)
 {
   mixedmatrix[circuit[control[i].connumber].startpoint][n+out]+=1;        //等效于一個四端元件
   mixedmatrix[circuit[control[i].connumber].endpoint][n+out]-=1;
   mixedmatrix[circuit[i].startpoint][n+out]+=control[i].gm;
   mixedmatrix[circuit[i].endpoint][n+out]-=control[i].gm;
   mixedmatrix[n+out][circuit[control[i].connumber].startpoint]+=1;
   mixedmatrix[n+out][circuit[control[i].connumber].endpoint]-=1;
   mixedmatrix[n+out+1][circuit[i].startpoint]+=1;
   mixedmatrix[n+out+1][circuit[i].endpoint]-=1;
   out++; 
   currentfor[control[i].connumber].mark=-1;
}
 }
else if (circuit[i].type==7)
 {   
	 mixedmatrix[circuit[i].startpoint][n+out]+=1;
     mixedmatrix[circuit[i].endpoint][n+out]-=1;
     mixedmatrix[n+out][circuit[control[i].connumber].startpoint]-=control[i].gm;
     mixedmatrix[n+out][circuit[control[i].connumber].endpoint]+=control[i].gm;
     mixedmatrix[n+out][circuit[i].startpoint]+=1;
     mixedmatrix[n+out][circuit[i].endpoint]-=1;
     out++;
	 currentfor[i].mark=-1;
}

else if (circuit[i].type==8)
{  
if(voltagefor[control[i].connumber].value!=0)
{	
	if (circuit[control[i].connumber].type==1)
 {   control[i].gm=control[i].gm/circuit[control[i].connumber].value;              //等效于VCVS處理;
     mixedmatrix[circuit[i].startpoint][n+out]+=1;
     mixedmatrix[circuit[i].endpoint][n+out]-=1;
     mixedmatrix[n+out][circuit[control[i].connumber].startpoint]-=control[i].gm;
     mixedmatrix[n+out][circuit[control[i].connumber].endpoint]+=control[i].gm;
     mixedmatrix[n+out][circuit[i].startpoint]+=1;
     mixedmatrix[n+out][circuit[i].endpoint]-=1;
     out++;
     currentfor[i].mark=-1;
   }
else if (circuit[control[i].connumber].type==2)
  {  control[i].gm=control[i].gm*circuit[control[i].connumber].value;                //等效于VCVS處理;
     mixedmatrix[circuit[i].startpoint][n+out]+=1;
     mixedmatrix[circuit[i].endpoint][n+out]-=1;
     mixedmatrix[n+out][circuit[control[i].connumber].startpoint]-=control[i].gm;
     mixedmatrix[n+out][circuit[control[i].connumber].endpoint]+=control[i].gm;
     mixedmatrix[n+out][circuit[i].startpoint]+=1;
     mixedmatrix[n+out][circuit[i].endpoint]-=1;
     out++;
     currentfor[i].mark=-1;
}
} 
else if (voltagefor[control[i].connumber].value==0)
  {  mixedmatrix[n+out][circuit[control[i].connumber].startpoint]+=1;             //等效于四端元件;
     mixedmatrix[n+out][circuit[control[i].connumber].endpoint]-=1;
     mixedmatrix[n+out+1][circuit[i].startpoint]+=1;
     mixedmatrix[n+out+1][circuit[i].endpoint]-=1;
     mixedmatrix[n+out+1][n+out]+=control[i].gm;
     mixedmatrix[circuit[control[i].connumber].startpoint][n+out]+=1;
     mixedmatrix[circuit[control[i].connumber].endpoint][n+out]-=1;
     mixedmatrix[circuit[i].startpoint][n+out+1]+=1;
     mixedmatrix[circuit[i].endpoint][n+out+1]-=1;
     out++; 
	 currentfor[control[i].connumber].mark=-1;
     currentfor[i].mark=-1;
  }
}
else if (circuit[i].type==9)
{ 
  mixedmatrix[circuit[i].startpoint][n+out]+=1;
  mixedmatrix[circuit[i].endpoint][n+out]-=1;
  mixedmatrix[n+out][circuit[i].startpoint]+=1;
  mixedmatrix[n+out][circuit[i].endpoint]-=1;
  out++;
  wmatrix[n+out]=circuit[i].value;
  currentfor[i].mark=-1;
}  
 else if (circuit[i].type==10) 
 { 
	 wmatrix[circuit[i].startpoint]+=circuit[i].value;
     wmatrix[circuit[i].endpoint]-=circuit[i].value;
 }
   }
 }

void moreinform()
{ 
	for(int i=1;i<=b;i++)
  { if((circuit[i].type==5)||(circuit[i].type==6)||(circuit[i].type==7)||(circuit[i].type==8))
	{ cout<<"第"<<i<<"條支路是受控源"<<"請按下列順序輸入相關(guān)信息:\n";
      cout<<"控制支路號(1->b) 控制系數(shù)\n";
      cin>>control[i].connumber;
      cin>>control[i].gm;
	}
	}	
}


void showmixed()
{    
	cout<<"下面是混合方程系數(shù)矩陣:\n"; 
	for(int i=1;i<=n-1+out;i++)
	{
		{ for(int j=1;j<=n-1+out;j++)
            
			cout<<mixedmatrix[i][j]<<"\t";
	}
	cout<<"\n";
	}
}


void typevccs(int i)
{ 
  
   if (circuit[control[i].connumber].endpoint!=0) 
   {   
	mixedmatrix[circuit[i].startpoint][circuit[control[i].connumber].startpoint]+=control[i].gm;
	mixedmatrix[circuit[i].endpoint][circuit[control[i].connumber].endpoint]+=control[i].gm;
    mixedmatrix[circuit[i].startpoint][circuit[control[i].connumber].endpoint]-=control[i].gm;
    mixedmatrix[circuit[i].endpoint][circuit[control[i].connumber].startpoint]-=control[i].gm;
   }
   else if((circuit[control[i].connumber].endpoint==0)&(circuit[i].endpoint!=0))
   {
	mixedmatrix[circuit[i].startpoint][circuit[control[i].connumber].startpoint]+=control[i].gm;
	mixedmatrix[circuit[i].endpoint][circuit[control[i].connumber].endpoint]=0;
    mixedmatrix[circuit[i].startpoint][circuit[control[i].connumber].endpoint]=0;
    mixedmatrix[circuit[i].endpoint][circuit[control[i].connumber].startpoint]-=control[i].gm;
   }
   else if((circuit[i].endpoint==0)&(circuit[control[i].connumber].endpoint==0))
   {
   	mixedmatrix[circuit[i].startpoint][circuit[control[i].connumber].startpoint]+=control[i].gm;
	mixedmatrix[circuit[i].endpoint][circuit[control[i].connumber].endpoint]=0;
    mixedmatrix[circuit[i].startpoint][circuit[control[i].connumber].endpoint]=0;
    mixedmatrix[circuit[i].endpoint][circuit[control[i].connumber].startpoint]=0;
   }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区二区三区四区中文字幕| 国产盗摄一区二区| 国产福利一区二区三区视频| 91啪亚洲精品| 2021国产精品久久精品| 亚洲午夜成aⅴ人片| 国产成人av影院| 日韩一区二区在线免费观看| 一区二区三区影院| 国产成人欧美日韩在线电影| 国产精品入口麻豆原神| 日韩电影免费一区| 日本二三区不卡| 欧美国产97人人爽人人喊| 青草av.久久免费一区| 91麻豆国产自产在线观看| 久久免费国产精品| 国内精品视频一区二区三区八戒| 欧美亚洲一区二区在线| 亚洲日本中文字幕区| 国产 欧美在线| 久久久亚洲欧洲日产国码αv| 天堂在线一区二区| 欧美亚洲精品一区| 亚洲愉拍自拍另类高清精品| 色综合天天性综合| 国产精品传媒在线| 风间由美一区二区av101| 久久久综合视频| 激情综合色播五月| 精品久久久久久久久久久久久久久| 亚洲国产wwwccc36天堂| 欧美亚洲日本国产| 婷婷开心激情综合| 欧美日韩综合在线| 日韩中文字幕91| 91精品国产麻豆| 蜜桃视频在线观看一区| 日韩精品一区二区三区中文不卡| 亚洲午夜激情网站| 717成人午夜免费福利电影| 婷婷国产v国产偷v亚洲高清| 制服丝袜亚洲播放| 久久精品国产999大香线蕉| 精品国产区一区| 国产福利一区二区| 中文字幕一区三区| 在线观看视频一区二区欧美日韩| 亚洲一区二区三区四区在线| 在线不卡a资源高清| 久久精品99久久久| 欧美精品一区二区三区蜜桃 | 国产亚洲精品超碰| 粉嫩aⅴ一区二区三区四区五区 | 亚洲国产精品视频| 日韩视频123| 大白屁股一区二区视频| 亚洲综合小说图片| 欧美成人精品二区三区99精品| 国产精品18久久久| 一区二区三区在线看| 欧美色图一区二区三区| 久久精品国产一区二区| 国产精品乱码妇女bbbb| 欧美三级视频在线播放| 狠狠色综合日日| 亚洲最快最全在线视频| 欧美岛国在线观看| 91香蕉视频污| 久久国产精品72免费观看| 亚洲视频资源在线| 日韩欧美一卡二卡| 色婷婷亚洲精品| 久久99精品久久只有精品| 精品一区二区三区在线观看国产 | 欧美大片顶级少妇| 91麻豆免费观看| 韩国理伦片一区二区三区在线播放| 国产精品嫩草99a| 欧美一级二级在线观看| 91在线国产福利| 美女国产一区二区| 亚洲精品乱码久久久久久久久| 日韩一级片网址| 在线欧美一区二区| 国产69精品久久777的优势| 五月天激情综合| 日韩一区在线免费观看| 久久影院午夜论| 欧美一区二区私人影院日本| 91在线视频18| 国产毛片一区二区| 日韩电影免费在线| 五月激情丁香一区二区三区| 亚洲色图19p| 国产婷婷色一区二区三区四区| 538在线一区二区精品国产| 91成人免费在线| 99r精品视频| 大白屁股一区二区视频| 精品一区二区免费在线观看| 午夜av一区二区| 亚洲一区二区三区中文字幕| 一区在线观看视频| 中文字幕久久午夜不卡| 久久精品这里都是精品| 国产亚洲精品中文字幕| 久久伊人中文字幕| 久久色在线观看| 久久欧美中文字幕| 久久午夜免费电影| xnxx国产精品| 精品国产三级电影在线观看| 欧美xfplay| 2020国产成人综合网| 久久一区二区三区四区| 欧美精品一区男女天堂| 久久精品欧美日韩精品| 国产婷婷色一区二区三区四区 | 欧美电影免费观看高清完整版在| 欧美久久免费观看| 555夜色666亚洲国产免| 日韩一区二区电影| 欧美一级艳片视频免费观看| 欧美一级黄色录像| 欧美成人激情免费网| 国产亚洲综合色| 国产精品人妖ts系列视频| 一区在线观看免费| 亚洲精品第一国产综合野| 亚洲一卡二卡三卡四卡| 日韩精品国产精品| 国模一区二区三区白浆| 国产a精品视频| 99re这里都是精品| 欧美日韩在线三区| 欧美一区二区在线观看| 国产喂奶挤奶一区二区三区| 亚洲免费av观看| 日韩在线卡一卡二| 国产精品亚洲第一| 色拍拍在线精品视频8848| 91精品国产综合久久久久久漫画 | 蓝色福利精品导航| 大胆亚洲人体视频| 欧美人xxxx| 亚洲午夜私人影院| 久久97超碰色| 91性感美女视频| 日韩一区二区三区在线视频| 国产精品污污网站在线观看| 亚洲国产综合在线| 国产在线播放一区三区四| 97久久精品人人做人人爽50路| 欧美视频精品在线观看| 久久嫩草精品久久久精品一| 亚洲精品日韩专区silk| 国产麻豆成人传媒免费观看| 色综合久久六月婷婷中文字幕| 欧美一激情一区二区三区| 综合久久综合久久| 日韩高清欧美激情| 91免费在线看| 久久久久国产成人精品亚洲午夜| 亚洲男人的天堂在线观看| 国内欧美视频一区二区| 在线观看日韩毛片| 国产精品美女久久福利网站| 日本成人中文字幕| 在线观看亚洲精品视频| 国产精品人成在线观看免费 | 欧美一区二区三区四区视频| 国产精品久久久久毛片软件| 蜜臀99久久精品久久久久久软件| 99国产精品久久久久| 2023国产一二三区日本精品2022| 亚洲制服丝袜在线| 99国产精品国产精品久久| 精品欧美一区二区三区精品久久| 一片黄亚洲嫩模| 99re在线视频这里只有精品| 国产清纯美女被跳蛋高潮一区二区久久w | 午夜精品免费在线观看| 91福利视频在线| 国产精品丝袜黑色高跟| 精品在线观看视频| 欧美一区二区三区免费在线看| 亚洲影视资源网| 在线观看国产一区二区| 亚洲码国产岛国毛片在线| 成人一级片网址| 中文字幕av资源一区| 国产高清久久久久| 久久精品亚洲精品国产欧美kt∨| 精品中文字幕一区二区小辣椒| 欧美人伦禁忌dvd放荡欲情| 亚洲国产欧美在线人成| 欧美在线小视频| 亚洲国产综合91精品麻豆| 欧美亚洲日本国产|