導航:首頁 > 源碼編譯 > 引力勢能matlab演算法

引力勢能matlab演算法

發布時間:2022-07-31 23:21:06

❶ 求大神告訴我這個matlab程序的演算法基本原理

在回答之前,我覺得有必要說明下自己的情況,本人剛接觸圖形處理不久(業余愛好),對圖像有一定了解,因此只能算是新手,另外我有使用過matlab的經驗,在這個基礎上嘗試回答下,希望幫助到你。

就這個程序而言,用imread函數讀入的是一個顏色圖(相較於灰階圖),得到的是一個M-by-N-by-3的矩陣,可以這樣理解,這個圖有M-by-N個像素點,每個點的顏色由R,G,B三個通道的值決定,或說每個像素點對應三個通道值。接著程序選擇了兩個像素點P1(1,1)和P2(1,2),即上下相鄰的兩個像素點,然後用這兩個像素點的通道值產生了兩對常量(K1,K2),(L1,L2),可以看到這兩對值用於後邊的變換。具體來說可以這樣看,如果我們認為1通道表示R通道(紅色通道),2通道表示G通道(綠色通道),3通道表示B通道(藍色通道),例如(1,1,1)、(1,1,2)、(1,1,3)分別表示像素點(1,1)rgb通道的值,那麼K1=(G1-G2)/(R1-R2),K2=G1-K1*R1,L1=(G1-G2)/(B1-B2),L2=G1-L1*B1,到這里似乎清楚了,for循環中的三個語句就是對原來r通道的值用(K1,K2)做個線性變換,g通道的值保持不變,b通道的值用(L1,L2)做個線性變換,至於為何這樣就色彩平衡了,看看K1,K2的定義(L1,L2類似),K1表示變化率,K1越大,相鄰像素r通道的差值越大,g通道也就相差越大(或相反,是K1正否),K2明顯就是截距,同時注意到兩個變換都基於g通道,在變換中g通道保持不變,這樣的話使得rb通道的值均接近g通道?網路給出的色彩平衡的含義如下:色彩平衡是圖像處理(PHOTOSHOP)軟體中一個重要環節。通過對圖像的色彩平衡處理,可以校正圖像色偏,過飽和或飽和度不足的情況,也可以根據自己的喜好和製作需要,調制需要的色彩,更好的完成畫面效果,應用於多種軟體和圖像、視頻製作中。注意裡面有一句調制自己想要的色彩這一句,或許可以回到之前的疑問,因為我隨便選用了一個圖像得到了如下結果:

以上或許只是個思路。

❷ matlab計算石墨烯能帶結構的演算法是什麼

這個程序是初步優化後的matlab版本,主要思路是先生成體系的格點坐標,再運用坐標生成體系的哈密頓量,然後進行對角化計算能帶,能帶的計算使用一維體系超原胞的處理方法。可以進一步優化

主程序

nx=3; %

ny=100; % 體系寬度(y方向的長度)

[x,y]=zigzag_graphene(nx,ny);

%plot(x,y,'.','MarkerSize',20)

t1=-2.7;

t2=0.0038/3/sqrt(3);

H=Hamiltonian_NN_graphene(x,y,t1);

Hsp=Hamiltonian_Haldane(x,y,sqrt(3),t2);

H=H+Hsp;

N=length(H);

HDL=H(N/3+1:N*2/3,1:N/3);

HD=H(N/3+1:N*2/3,N/3+1:N*2/3);

HDR=H(N/3+1:N*2/3,N*2/3+1:N);

n = length(HD);

dk = 0.01;

kx=0:dk:2*pi; % k空間路徑

Ek=band_calculate(kx,HD,HDL,HDR);

plot(kx,Ek,'.')

set(gca,'YLim',[-0.5 0.5]);%X軸的數據顯示範圍

坐標生成函數

function [x,y]=zigzag_graphene(nx,ny)

x1=zeros(4,1);

y1=zeros(4,1);

x1(1,1)=sqrt(3)/2;

x1(2,1)=0;

x1(3,1)=0;

x1(4,1)=sqrt(3)/2;

y1(1,1)=0;

y1(2,1)=0.5;

y1(3,1)=1.5;

y1(4,1)=2;

x2=x1;

y2=y1;

for i=1:ny-1

x2=[x2;x1];

y2=[y2;y1+i*ones(4,1)*3];

end

x=x2;

y=y2;

n=length(x2);

for i=1:nx-1

x=[x;x2+i*ones(n,1)*sqrt(3)];

y=[y;y2];

end

最近鄰相互作用哈密頓量的生成

function H=Hamiltonian_NN_graphene(x,y,t)

%t=-2.7;

N=length(x);

H=zeros(N,N);

eps=0.01;

for i=1:N

for j=1:N

if abs(sqrt((x(i)-x(j))^2+(y(i)-y(j))^2)-1)

Haldane模型哈密頓量

function H=Hamiltonian_Haldane(x,y,a,t2)

N=length(x);

H=zeros(N,N);

for l=1:N

for j=1:N

if x(l)>x(j)&&y(l)==y(j)&&mod(j,2)==1&&abs(sqrt((x(j)-x(l))^2+(y(j)-y(l))^2)-a)<0.001

H(j,l)=-1i*t2;

end

if x(l)x(j)&&y(l)>y(j)&&mod(j,2)==1&&abs(sqrt((x(j)-x(l))^2+(y(j)-y(l))^2)-a)<0.001

H(j,l)=1i*t2;

end

if x(l)y(j)&&mod(j,2)==1&&abs(sqrt((x(j)-x(l))^2+(y(j)-y(l))^2)-a)<0.001

H(j,l)=-1i*t2;

end

if x(l)>x(j)&&y(l)x(j)&&y(l)==y(j)&&mod(j,2)==0&&abs(sqrt((x(j)-x(l))^2+(y(j)-y(l))^2)-a)<0.001

H(j,l)=1i*t2;

end

if x(l)x(j)&&y(l)>y(j)&&mod(j,2)==0&&abs(sqrt((x(j)-x(l))^2+(y(j)-y(l))^2)-a)<0.001

H(j,l)=-1i*t2;

end

if x(l)y(j)&&mod(j,2)==0&&abs(sqrt((x(j)-x(l))^2+(y(j)-y(l))^2)-a)<0.001

H(j,l)=1i*t2;

end

if x(l)>x(j)&&y(l)

能帶計算函數

function Ek=band_calculate(kx,HD,HDL,HDR)

dN = length(kx);

n = length(HD);

Ek = zeros(n,dN);

for i = 1:dN

Hk=HDL*exp(-1i*kx(i))+HD+HDR*exp(1i*kx(i));

[~,E]=eig(Hk);

Ek(:,i) = diag(E);

end

❸ 球殼內引力勢能

當然不一樣了。隨著與球心距離的縮小,勢能是不斷減小的。具體演算法要用到微積分了,如果你感興趣,可以自己找書學。

❹ matlab 演算法如何使用

遺傳演算法可以用來最優化計算,即計算一個東西的最大或最小的東西,或者最優解。不知道你想用來具體解決什麼問題,沒法仔細回答。你把具體想幹啥和原始數據發到郵箱[email protected],我可以幫你解答

❺ 分子間能量的問題 高分在線等

The potential energy between two atoms can be represented as follows:
V = − A/r+ B/r^10
兩個原子間勢能可表為:V = − A/r+ B/r^10。【其中前一項為引力勢能,後者為斥力勢能】

Where A and B are constants and r the interatomic separation distance.
上式中A、B為常量,r為原子間距。

Plot the potential energy verses distance relationships for these atoms when A= 8 x 10-30 J.m and B= 5 x 10-119 J.m^10.

當A、B分別取上述值時,繪制原子間勢能-原子間距關系曲線。

【解】

1 函數的具體形式已知,可用描點法繪制曲線。這個函數具有極小值點(其橫坐標r0,求導易得),該函數當r趨於無窮大時有漸近線(r軸),當r趨於零時,勢能趨於正無窮。上面描述了曲線的大致形狀。更准確描點,可取橫坐標r=0.1r0, 0.2r0,0.5r0,1.0r0,2.0r0,5.0r0,10.0r0等等。不過用r0計算工作量較大,也可取r=0.1*10^-10m,0.2*10^-10m,……等等。

2 上述曲線也可用專業軟體例如Matlab、Origin等繪制。

Determine the coefficient of thermal expansion (in m/moK) for the material over the following temperature ranges:
a) 0K to 0℃,
b) 0℃ to 820℃.
分別計算a) 0K to 0℃,b) 0℃ to 820℃范圍內,材料的熱脹系數(單位m m-1 K-1) 【註:此處的熱脹系數由單位知道是線脹系數,表示材料溫度升高1K時的伸長率】

assume that thermal energy of the system is 3kT/2 where k is Boltzman』s constant k = 1.381 x10-23 J/K。

假定系統熱能為3kT/2,其中k為玻茲曼常量。
【注;此處原文不夠准確,3kT/2為分子的平均平動能,對於分子不存在thermal energy。另該系統應為惰性氣體,單原子分子,否則條件不足無法計算】
這個題,比較復雜,你提問中未要求對此作答,這里就不解下去了,如果樓主需要解答可補充問題或在線交流。

❻ 求KM演算法的matlab實現 急

這個演算法的函數matlab中本身就有,名稱為kmeans,你可以試試很好用。

❼ 請教時-能密度函數的matlab編程實現問題

最簡單的話,用ksdensity就可以咯。。。

己知y:

[f, x] = ksdensity(y);

plot(x, f);

補充:

pdf及其系列函數吧。。。help pdf試試吧

❽ 求matlab大神指教,如下方程(圖片中間的振動方程),怎麼用newmark法編程呀

你好

你也不提前告訴我,你用的newmark演算法,我之前都沒有接觸過。只好網路先學這個演算法,到很晚才給你調試完成,並與精確解進行了對比如下圖。

根據演算法,給你的程序進行了對應的修改,主要有以下4點錯誤。

  1. 你的質量矩陣輸入錯誤

  2. 初始速度沒有加入

  3. 不同時刻的載荷程序錯誤

  4. 沒有加速度的迭代方程

修改後程序如下:

clear;clc;
K=[6,-5;-5,5];
M=[1,0;01];%質量矩陣不能有錯誤
C=[2,-1;-1,1];
dt=pi/10;%dt-----時間步長
tend=10*pi;%tend---結束時間

%[n,n]=size(K);
%Newmark演算法
gama=0.5;
beta=0.25;
[n,m]=size(K);
Nalpha0=1/beta/dt^2;
Nalpha1=gama/beta/dt;
Nalpha2=1/beta/dt;
Nalpha3=1/2/beta-1;
Nalpha4=gama/beta-1;
Nalpha5=dt/2*(gama/beta-2);
Nalpha6=dt*(1-gama);
Nalpha7=gama*dt;
NK1=K+Nalpha0*M+Nalpha1*C;
Nd=zeros(n,floor(tend/dt)+1);
Nv=zeros(n,floor(tend/dt)+1);
Na=zeros(n,floor(tend/dt)+1);
f=zeros(n,floor(tend/dt)+1);
Nd(1,1)=-7/15;%初始位
Nd(2,1)=-3/5;
Nv(1,1)=-3/5;%速度初始值不能少
Nv(2,1)=-8/15;%
f(:,1)=0;%初始載荷
Na(:,1)=0;%初始加速度
t=0:dt:tend;

fori=2:1:length(t)
f(:,i)=[0;sin(t(i))];%不同時刻的載荷
f2=f(:,i)+M*(Nalpha0*Nd(:,i-1)+Nalpha2*Nv(:,i-1)+Nalpha3*Na(:,i-1))+C*(Nalpha1*Nd(:,i-1)+Nalpha4*Nv(:,i-1)+Nalpha5*Na(:,i-1));
Nd(:,i)=inv(NK1)*f2;
Na(:,i)=Nalpha0*(Nd(:,i)-Nd(:,i-1))-Nalpha2*Nv(:,i-1)-Nalpha3*Na(:,i-1);%加速度不能少
Nv(:,i)=Nv(:,i-1)+Nalpha6*Na(:,i-1)+Nalpha7*Na(:,i);
end
%disp(Nd);
XX=-1/15*[9;8]*sin(t)-1/15*[7;9]*cos(t);
plot(t,Nd(1,:),t,XX(1,:),'--')
holdon
plot(t,Nd(2,:),'k',t,XX(2,:),'k--')
legend('X1演算法值','X1精確解','X2演算法值','X2精確解');

對比結果如下:


希望對你有幫助

閱讀全文

與引力勢能matlab演算法相關的資料

熱點內容
如何學好編譯語言 瀏覽:591
平面編程和切削 瀏覽:704
phpemoji表情符號 瀏覽:778
IBM雲平台shor演算法 瀏覽:576
程序員當乙方 瀏覽:519
php商城設計與實現的 瀏覽:305
php自動列印 瀏覽:469
哪個app多年輕人 瀏覽:902
租的伺服器如何重裝 瀏覽:937
乾眼症程序員 瀏覽:239
樂動達人安卓版有什麼游戲 瀏覽:484
c523壓縮比 瀏覽:543
命令語氣的人什麼心態 瀏覽:435
程序員喜歡留指甲嗎 瀏覽:516
七牛雲伺服器收費標准 瀏覽:627
時光相冊加密空間密碼忘記 瀏覽:474
華為雲為用戶提供的服務雲伺服器 瀏覽:634
minecraftlinux伺服器搭建 瀏覽:377
linux命令新建文件 瀏覽:709
長線pdf 瀏覽:607