MATLAB er en software miljø anvendes hyppigt i tekniske dataindsamling , modellering og analyse. En 3D vektor felt er en samling af vektorer , der hver lokaliseret til et punkt i det tredimensionale rum . Vector felter , især i tre dimensioner , er almindelige i fysik og teknik. Selvom MATLAB ikke indeholder en specialiseret funktion for vektor felter , er det nemt at erklære dem ved hjælp af basale MATLAB funktioner. Instruktioner
1
Erklær et sæt af punkter i tre dimensioner , hvor værdierne for din vektor felt der skal repræsenteres ved hjælp af " meshgrid ()" funktionen . Den meshgrid ( )-funktionen replikater en række vektorer til at skabe en matrix . For eksempel vil oprette et gitter fra -10 til 10 i trin på 1 i tre dimensioner , type : Hej
[X , Y, Z] = meshgrid ( -10:10 , -10:10 , -10 : . 10),
hver af matricerne x, Y og Z er af dimension 21 x 21 x 21 , der hver svarer til værdierne af x, y og z dimensioner på et bestemt indeks
< br > 2
Tildel værdi til x , y og z størrelsen af vektoren placeret ved hver af de tilsvarende punkter . Mens dette almindeligvis vil blive baseret på en formel, der kan beregnes ved hjælp af resultaterne af meshgrid () eller fra målte observationer, kan du bruge tilfældige værdier for dette eksempel
vec_x = rand ( størrelse ( X) ) . ; vec_y = rand ( størrelse ( Y )), vec_z = rand ( størrelse ( Z )),
3
Konverter de eksisterende separate matricer til en celle array for nem programmeringsmæssig adgang : < br >
my_temp_array = nuller ( [size (X) 6 ]) my_temp_array (: , : , : , 1) = X, my_temp_array (: , : , : , 2) = Y , my_temp_array (: , : , : , 3) = z; my_temp_array (: , : , : , 4) = vec_x , my_temp_array (: , : , : , 5) = vec_y , my_temp_array (: , : , : , 6) = vec_z , my_vector_field = num2cell ( my_temp_array , 4) , klare my_temp_array