Всеки, който знае как да код FDTD в matlab?

F

fungyong

Guest
Здравей ЗОП,
Аз съм нов за FDTD тази тема.Има за задача да напиша matlab код за 1 измерение.Аз наистина не знам как да стартирате тази кодиране.
Може ли някой да ми помогне?

Въпросът е:

Уравнението е в PDF файл.

Тези две уравнения са леснодостъпни, програмиран за разтвор от повторение.
За целите на стабилността Δx и Δt, трябва да бъдат избрани по подходящ начин.Поле стойности трябва да
засегнат близкия съседи само и консервативен избор е cΔt = 0.5Δx.

Използвайте геометрия с 512 пластове (или поне 400).Средносрочната е свободно пространство
(Ε0, ľ0, σ = 0) с изключение на слоя 250-309, които са някакъв вид диелектрични
(Εr, ľ0, σ).Всеки слой (Δx) е 1,5 мм, така че диелектрични е с дебелина 90 mm.

Напишете програма, която ще показва последователността на участъци на електричното поле срещу клетъчен
позиция за инцидент 400 PS (до 0.001amplitude) Gaussian пулса на различни
време стъпки.Изолационните плоча трябва да има диелектрични константа на 4 с = 0.
Покажи парцел на полето, като функция на позиция след време стъпки на (а) 50 път
стъпки (б) 175 път стъпки (C) 300 път стъпки (г) 425 път стъпки (д) 450 път стъпки
и (е) 550 път стъпки.

Ако се вземат Gaussian пулса ширина от 400 PS (W = 40) и да зададете XP = 0,2625,
а след това
време, след 50 стъпки инцидента област трябва да бъде най-слой 200 (само в предната част на
диелектрични).Това ще гарантира, че всички терени са еднакви за същия брой
време стъпки.
Съжаляваме, но трябва да имате за вход, за да видите тази закрепване

 
Опитах някои кодиране, но не разбирам част от нея.
Всеки знае какво е DX?
и DT?

nsteps = 550;% Брой на времето стъпки

m0 = 12.566E-7;% permability на свободно пространство
E0 = 8.854E-12;% диелектрична на свободно пространство
е = 4;% относителна диелектрична константа
C = 1/sqrt (E0 * m0);% скоростта на светлината
Z = 120 * пи;
W = 40;% Gaussian пулса ширина
DX =;
DT =;
XP = 0,2625;% оригинални местоположението на връх
сигма = 0;% проводимост на диелектрични

 
Уважаеми fungyong,

Отидете на matlabcentral.com и търсене за конкретен ToyFDTD matlab файл.

Надявам се това да помогне,
Уотсън

 
Моят приятел тук е matlab код SOF 1D, 2D и 3D програми, които могат лесно да разбере от команди какво се случва и промяна на програмите, както вие искате това IIS наистина добро начало и ти трябва да са щастливи от мен, като тези лесни кодове и от начина, по който ми е приятел, ако можете да finda добри ресурси за matalb ни информирате също така и във формата, ако търсенето е книгата като electromagnetics с matlab той ще бъде полезно за вас, както и вижте youu скоро

програмите са в следния линк
http://www.edaboard.com/viewtopic.php?p=298203 # 298203

 
Благодаря за помощта ви.
Аз се опитвам да се твърди, както и кода.
Има известен напредък, но все още трябва да се направи на вълната ход.

m0 = 12.566E-7;% permability на свободно пространство
E0 = 8.854E-12;% диелектрична на свободно пространство
е = 4;% относителна диелектрична константа
C = 1/sqrt (E0 * m0);% скоростта на светлината
Z0 = 120 * пи;
W = 40;% Gaussian пулса ширина
DX = 1.5e-3;% Всеки слой е с дебелина 1,5 мм, диелектрични е с дебелина 90 мм
DT = (0,5 * DX) / C;% време стъпка размер (а)
XP = 0,2625;% оригинални местоположението на връх
сигма = 0;% проводимост на диелектрични
E0 = 1;% амплитуда
I = 1;%, започвайки от нула слой
да = 0;% преброяване слой

EY (I) = E0 * EXP (Log (0,001 )*((( да-(XP / DX)) / W) ^ 2));

 
Скъп
Мисля, че трябва да прочетете fdtd Съливан book.It е много добра книга в fdtd.Тя съдържа отговори на всичките ви въпроси.Той съдържа и много кодове.
Ако нямате книгата ican го изпраща за вас или можете да търсите в edaboard.
с уважение

 
работя като луд, но има малък напредък.
Как мога да програма за разтвор от повторение???
Някой знае ли за N
1 / 2?

тази част от кода, не изглежда да работят.

в1 = E0. / (E0 (DT * сигма));
C2 = DT. / (DX .* (E0 (DT .* сигма)));
c3 = DT. / (DX .* m0);
% Определете източника и неговото местонахождение
NZ = 512;
PF = 20;
Ex = нули (1, NZ);
srcIndex = (NZ - 1) / 2;

за к = 2: nsteps
Ex (2: край-1) = С1 (2: край-1) .* Ex (2: края) - C2 (2: край-1) .* (Hy (2: край)-Hy (1: крайни 1));
% Ex (srcIndex) = Ex (srcIndex) - c3 (srcIndex) * srcJx (I);
Hy = Hy - (c3 .* (Ex (2: края) - Ex (1: край-1)));
ако (МО (I, PF) == 0)
парцел (бивш);
а = sprintf ( "стъпка номер =% г", и);
заглавие (а);
множество (GCF, "цвят", "бели");
xlabel ( "Решетка Точки -->');
ylabel ( "Величина -->');
% Оста ([1 1001 -1 1]);
пауза (0,2);
приключвам
приключвам

Благодарение engmfarhat, но аз не трябва книгата U споменават.

 
тя е качена някъде в edaboard, но АЗ didnt помня къде?
Добре ми изпратите имейл

 
Може да се използва по-компактен код, като "раз".

 
Здравей engmfarhat,

може ли да ми изпратите по добре?
Аз също insterested по този въпрос!
ми е-мейл: ngyusum99 (AT) msn.com

благодарности

 
Здравейте всички,
Ето някои matlab FDTD кодове от Съливан книгата.
http://www.edaboard.com/viewtopic.php?p=632945 # 632945
Надявам се да помогне.

 

Welcome to EDABoard.com

Sponsor

Back
Top