-
function [R,k,b] = msc(A)
% 多元散射校正
% 輸入待處理矩陣,通過多元散射校正,求得校正后的矩陣
%% 獲得矩陣行列數
[m,n] = size(A);
%% 求平均光譜
M = mean(A,2);
%% 利用最小二乘法求每一列的斜率k和截距b
for i = 1:n
a = polyfit(M,A(:,i),1);
if i == 1
k = a(1);
b = a(2);
else
k = [k,a(1)];
b = [b,a(2)];
end
end
%% 求得結果
for i = 1:n
Ai = (A(:,i)-b(i))/k(i);
if i == 1
R = Ai;
else
R = [R,Ai];
end
end
標簽:
MSC
多元
散射
校正
上傳時間:
2020-03-12
上傳用戶:15275387185
-
function y=lagr(x0,y0,x)
%x0,y0為節點
%x是插值點
n=length(x0);
m=length(x);
for i=1:m
z=x(i);
s=0.0;
for k=1:n
p=1.0;
for j=1:n
if j~=k
p=p*(z-x0(j))/(x0(k)-x0(j));
end
end
s=p*y0(k)+s;
end
y(i)=s;
end
標簽:
lagr
上傳時間:
2020-06-09
上傳用戶:shiyc2020
-
#include <stdio.h>
#include <stdlib.h>
#define SMAX 100
typedef struct SPNode
{
int i,j,v;
}SPNode;
struct sparmatrix
{
int rows,cols,terms;
SPNode data [SMAX];
};
sparmatrix CreateSparmatrix()
{
sparmatrix A;
printf("\n\t\t請輸入稀疏矩陣的行數,列數和非零元素個數(用逗號隔開):");
scanf("%d,%d,%d",&A.cols,&A.terms);
for(int n=0;n<=A.terms-1;n++)
{
printf("\n\t\t輸入非零元素值(格式:行號,列號,值):");
scanf("%d,%d,%d",&A.data[n].i,&A.data[n].j,&A.data[n].v);
}
return A;
}
void ShowSparmatrix(sparmatrix A)
{
int k;
printf("\n\t\t");
for(int x=0;x<=A.rows-1;x++)
{
for(int y=0;y<=A.cols-1;y++)
{
k=0;
for(int n=0;n<=A.terms-1;n++)
{
if((A.data[n].i-1==x)&&(A.data[n].j-1==y))
{
printf("%8d",A.data[n].v);
k=1;
}
}
if(k==0)
printf("%8d",k);
}
printf("\n\t\t");
}
}
void sumsparmatrix(sparmatrix A)
{
SPNode *p;
p=(SPNode*)malloc(sizeof(SPNode));
p->v=0;
int k;
k=0;
printf("\n\t\t");
for(int x=0;x<=A.rows-1;x++)
{
for(int y=0;y<=A.cols-1;y++)
{
for(int n=0;n<=A.terms;n++)
{
if((A.data[n].i==x)&&(A.data[n].j==y)&&(x==y))
{
p->v=p->v+A.data[n].v;
k=1;
}
}
}
printf("\n\t\t");
}
if(k==1)
printf("\n\t\t對角線元素的和::%d\n",p->v);
else
printf("\n\t\t對角線元素的和為::0");
}
int main()
{
int ch=1,choice;
struct sparmatrix A;
A.terms=0;
while(ch)
{
printf("\n");
printf("\n\t\t 稀疏矩陣的三元組系統 ");
printf("\n\t\t*********************************");
printf("\n\t\t 1------------創建 ");
printf("\n\t\t 2------------顯示 ");
printf("\n\t\t 3------------求對角線元素和");
printf("\n\t\t 4------------返回 ");
printf("\n\t\t*********************************");
printf("\n\t\t請選擇菜單號(0-3):");
scanf("%d",&choice);
switch(choice)
{
case 1:
A=CreateSparmatrix();
break;
case 2:
ShowSparmatrix(A);
break;
case 3:
SumSparmatrix(A);
break;
default:
system("cls");
printf("\n\t\t輸入錯誤!請重新輸入!\n");
break;
}
if (choice==1||choice==2||choice==3)
{
printf("\n\t\t");
system("pause");
system("cls");
}
else
system("cls");
}
}
標簽:
數組
子系統
上傳時間:
2020-06-11
上傳用戶:ccccy
-
P P I I CK I I T T3 3 使用 說明--- - 連機 、 脫 機操作試用 MPLAB IDE 軟件一 、 P P I I C CK K I I T3 接 口說 明, , 硬 件 二 、 P P I I C CK K I I T3 連 接 電腦 MPL L AB I I DE 聯機三 、 聯機四 、聯機讀芯片程序五 、 脫機 燒寫 調試
標簽:
kit3
聯機
脫機
上傳時間:
2022-03-24
上傳用戶:
-
ADT串的實現:主要包括以下操作:§ copy(s1,s2)把串s1復制到s2 § concat(s,s1,s2)連接S1,S2,結果放在S中 § delete(s,i,j)將串s中從第i個字符開始的連續j個字符刪除,如果i+j>s.len則一直刪除到串尾 § insert(s,s1,i)將串S1插入串S的第i個字符后
標簽:
concat
copy
ADT
操作
上傳時間:
2013-12-11
上傳用戶:奇奇奔奔
-
算法ebook(10部算法經典著作的合集) 算法ebook> 10部算法經典著作的合集 chm格式 (1)Fundamentals of Data Structures by Ellis Horowitz and Sartaj Sahni (2)Data Structures, Algorithms and Program Style Using C by James F. Korsh and Leonard J. Garrett (3)Data Structures and Algorithm Analysis in C by Mark Allen Weiss (4)Data Structures: From Arrays to Priority Queues by Wayne Amsbury (5)Information Retrieval: Data Structures & Algorithms edited by William B. Frakes and Ricardo Baeza-Yates (6)Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest (7)Practical Data Structures in C++ by Bryan Flamig (8)Reliable Data Structures in C by Thomas Plum (9)Data Structures and Algorithms Alfred V. Aho, Bell Laboratories, Murray Hill, New Jersey John E. Hopcroft, Cornell University, Ithaca, New York Jeffrey D. Ullman, Stanford University, Stanford, California (10)DDJ Algorithms and Data Structures Articles
標簽:
ebook
Fundamentals
Structures
Ellis
上傳時間:
2015-04-04
上傳用戶:tfyt
-
This a very simple baseband simulator for SC-FDMA system. This simulator is part of the upcoming book “Single Carrier FDMA: A New Air Interface for Long Term Evolution” (Wiley, Nov. 2008) which I co-authored with professor David J. Goodman at Polytechnic University.
The purpose of this simulator is to give some concrete idea of how SC-FDMA system works. It does lack many realistic and sophisticated features such as channel coding, time-varying fading channel model, soft decision decoding, etc. Regardless, I am hoping that it will help you understand SC-FDMA which is a fairly new development in 3GPP LTE.
標簽:
simulator
This
baseband
upcoming
上傳時間:
2016-08-26
上傳用戶:小草123
-
Visual 開發 希望對你們有幫助
public static int Rom(int n, int m)//雙寄或雙偶
{
int count = 0 //第一排Y坐標上要幾個
if (n < m)
{
for (int i = 1 i <= n i = i + 2)
{
count++
}
}
else
{
for (int j = 1 j <= m j = j + 2)
{
count++
}
}
return count
}
標簽:
int
Visual
public
static
上傳時間:
2013-12-13
上傳用戶:懶龍1988
-
設某物質有m個產地,n個銷地,如果以 aij 表示由第 i 個產地銷往第 j 個銷地的數量,則這類物質的調運方案,可用一個數表表示如下
標簽:
上傳時間:
2013-12-21
上傳用戶:yuanyuan123
-
/*import java.util.Scanner;
//主類
public class student122 {
//主方法
public static void main(String[] args){
//定義7個元素的字符數組
String[] st = new String[7];
inputSt(st); //調用輸入方法
calculateSt(st); //調用計算方法
outputSt(st); //調用輸出方法
}
//其他方法
//輸入方法
private static void inputSt(String st[]){
System.out.println("輸入學生的信息:");
System.out.println("學號 姓名 成績1,2,3");
//創建鍵盤輸入類
Scanner ss = new Scanner(System.in);
for(int i=0; i<5; i++){
st[i] = ss.next(); //鍵盤輸入1個字符串
}
}
//計算方法
private static void calculateSt(String[] st){
int sum = 0; //總分賦初值
int ave = 0; //平均分賦初值
for(int i=2;i<5;i++) {
/計總分,字符變換成整數后進行計算
sum += Integer.parseInt(st[i]);
}
ave = sum/3; //計算平均分
//整數變換成字符后保存到數組里
st[5] = String.valueOf(sum);
st[6] = String.valueOf(ave);
}
//輸出方法
private static void outputSt(String[] st){
System.out.print("學號 姓名 "); //不換行
System.out.print("成績1 成績2 成績3 ");
System.out.println("總分 平均分");//換行
//輸出學生信息
for(int i=0; i<7; i++){
//按格式輸出,小于6個字符,補充空格
System.out.printf("%6s", st[i]);
}
System.out.println(); //輸出換行
}
}*/
import java.util.Scanner;
public class student122 {
public static void main(String[] args) {
// TODO 自動生成的方法存根
String[][] st = new String[3][8];
inputSt(st);
calculateSt(st);
outputSt(st);
}
//輸入方法
private static void inputSt(String st[][])
{
System.out.println("輸入學生信息:");
System.out.println("班級 學號 姓名 成績:數學 物理 化學");
//創建鍵盤輸入類
Scanner ss = new Scanner(System.in);
for(int j = 0; j < 3; j++)
{
for(int i = 0; i < 6; i++)
{
st[j][i] = ss.next();
}
}
}
//輸出方法
private static void outputSt(String st[][])
{
System.out.println("序號 班級 學號 姓名 成績:數學 物理 化學 總分 平均分");
//輸出學生信息
for(int j = 0; j < 3; j++)
{
System.out.print(j+1 + ":");
for(int i = 0; i < 8; i++)
{
System.out.printf("%6s", st[j][i]);
}
System.out.println();
}
}
//計算方法
private static void calculateSt(String[][] st)
{
int sum1 = 0;
int sum2 = 0;
int sum3 = 0;
int ave1 = 0;
int ave2 = 0;
int ave3 = 0;
for(int i = 3; i < 6; i++)
{
sum1 += Integer.parseInt(st[0][i]);
}
ave1 = sum1/3;
for(int i = 3; i < 6; i++)
{
sum2 += Integer.parseInt(st[1][i]);
}
ave2 = sum2/3;
for(int i = 3; i < 6; i++)
{
sum3 += Integer.parseInt(st[2][i]);
}
ave3 = sum3/3;
st[0][6] = String.valueOf(sum1);
st[1][6] = String.valueOf(sum2);
st[2][6] = String.valueOf(sum3);
st[0][7] = String.valueOf(ave1);
st[1][7] = String.valueOf(ave2);
st[2][7] = String.valueOf(ave3);
}
}
標簽:
java
數據庫
上傳時間:
2017-03-17
上傳用戶:simple