3D matice v MATLABu
MATLAB je jazyk používaný pro technické výpočty. Jak většina z nás bude souhlasit, snadno použitelné prostředí je nutností pro integraci úkolů výpočetní techniky, vizualizace a konečně programování. MATLAB dělá totéž tím, že poskytuje prostředí, které je nejen snadno použitelné, ale také řešení, která dostáváme, jsou zobrazena v podobě matematických zápisů, které většina z nás zná. V tomto tématu se dozvíme o 3D matici v MATLABu.
Použití MATLAB zahrnuje
- Výpočet
- Vývoj algoritmů
- Modelování
- Simulace
- Prototypování
- Analytika dat (analýza a vizualizace dat)
- Inženýrská a vědecká grafika
- Vývoj aplikací
V tomto článku porozumíme vícerozměrným polím v MATLABu a konkrétněji trojrozměrné matici v Matlabu.
Vícerozměrné pole
Je to pole v MATLABu, které má dvě nebo více dimenzí. Možná už víte, že rozměry 2D matice jsou představovány řádky a sloupci.
Každý prvek má dva odběry, jeden je index řádků a druhý je index sloupců.
např. (1, 1) prvek zde představuje číslo řádku 1 a číslo sloupce 1.
Co je to trojrozměrná matice?
3-D Matice je vícerozměrné pole, které je rozšířením dvourozměrných matic. Jak můžete uhodnout, budou mít 3 indexy, jeden index spolu s indexy řádků a sloupců jako pro 2D matici. Třetí index v 3D matici se používá k reprezentaci listů nebo stránek prvku.
např. zde prvek (2, 1, 1) představuje 'Řádek' číslo 2 'Sloupec' číslo jedna a 'Stránka' číslo 1.
Vytvoření 3D matice
Pojďme nyní pochopit, jak můžeme vytvořit 3D matici v MATLABu
U trojrozměrného pole nejprve vytvořte 2D matici a poté ji rozšířte na 3D matici.
- Vytvořte matici 3 x 3 jako první stránku v poli 3D (můžete jasně vidět, že nejprve vytváříme 2D matici)
A = (11 2 7; 4 1 0; 7 1 5)
- Přidejte druhou stránku. To lze provést přiřazením jedné další matice 3 x 3 s hodnotou indexu 2 ve třetí dimenzi
A (:, :, 2) = (1 2 5; 4 4 6; 2 8 1)
A (3 × 3)
A =
A (:, :, 1) = | 11 | 2 | 7 |
4 | 1 | 0 | |
7 | 1 | 5 |
A (:, :, 2) = | 1 | 2 | 5 |
4 | 4 | 6 | |
2 | 8 | 1 |
Můžeme také použít funkci zvanou cat Function k vytvoření vícerozměrných polí.
Například: Vytvořte 3D pole se 3 stránkami pomocí funkce cat
X = kočka (3, A, (3 7 1; 0 1 8; 2 5 4))
- Zde A je 3D pole vytvořené výše
- Argument na prvním místě (3) říká, kterým směrem musí být pole zřetězeno
- Zde se provádí zřetězení spolu se stránkami
X =
X (:, :, 1) = | 11 | 2 | 7 |
4 | 1 | 0 | |
7 | 1 | 5 |
X (:, :, 2) = | 1 | 2 | 3 |
4 | 4 | 6 | |
2 | 8 | 1 |
X (:, :, 3) = | 3 | 7 | 1 |
0 | 1 | 8 | |
2 | 5 | 4 |
Nyní, pokud potřebujeme toto pole dále rozšířit, můžeme jednoduše dát prvky 4. pole, které musíme přidat:
Abychom rozšířili náš výše uvedený příklad, jednoduše dáme,
B (:, :, 4) = (1 2 1; 3 9 1; 6 3 7) a výstup bude:
X =
X (:, :, 1) = | 11 | 2 | 7 |
4 | 1 | 0 | |
7 | 1 | 5 |
X (:, :, 2) = | 1 | 2 | 3 |
4 | 4 | 6 | |
2 | 8 | 1 |
X (:, :, 3) = | 3 | 7 | 1 |
0 | 1 | 8 | |
2 | 5 | 4 |
X (:, :, 4) = | 1 | 2 | 1 |
3 | 9 | 1 | |
6 | 3 | 7 |
Jak můžeme získat přístup k prvkům pole?
K tomu jednoduše použijte předplatné jako celá čísla. Takže 2, 3, 1 element 3D Matice bude prvkem přítomným ve 2. řádku, třetím sloupci první stránky
K prokázání toho použijeme 3D matici A, kterou jsme použili výše,
Nyní, access = A (2, 3, 1) nám dá 0 jako výstup
Funkce pro manipulaci s prvky vícerozměrného pole
MATLAB nám poskytuje několik funkcí pro manipulaci s prvky vícerozměrného pole.
- Přeměnit
- Obměňovat
Pojďme jim rozumět jeden po druhém:
1. Upravte tvar
To je užitečné zejména při vizualizaci dat
Příklad: Vytvořte matice 6 * 5 pomocí dvou matic 3 * 5
- A = (1 3 7 0 5; 2 0 4 1 3; 1 0 5 3 2);
- A (:, :, 2) = (1 7 2 5 0; 4 2 1 6 5; 1 1 4 5 0);
- B = přetvar (A, (6 5))
Tím se vytvoří 2D matice se 6 řádky a 5 sloupci:
B = 6 × 5
1 7 5 7 5
2 4 3 2 6
1 5 2 1 5
3 0 1 2 0
0 1 4 1 5
0 3 1 4 0
Jak si můžete všimnout, RESHAPE bude fungovat sloupcově, takže nejprve všechny prvky A vezmou sloupec pro první stránku. Totéž se provede pro 2. stránku
2. Povolit
Tuto funkci můžeme použít, pokud chceme změnit uspořádání matic. tj. změna řádků se sloupci nebo naopak.
Příklad povolení
- P (:, :, 1) = (3 5 3; 1 5 2; 0, 8 5);
- P (:, :, 2) = (0 1 3; 6 7 1; 4 2 1)
Nyní použijeme funkci PERMUTE na P:
- M = permut (P, (2 1 3))
Výstup, který dostaneme, bude mít zaměněné řádky a sloupce takto:
M1 =
M1 (:, :, 1) = | 3 | 1 | 0 |
5 | 5 | 8 | |
3 | 2 | 5 |
P1 (:, :, 2) = | 0 | 6 | 4 |
1 | 7 | 2 | |
3 | 1 | 1 |
Doporučené články
Toto je průvodce 3D maticí v MATLABu. Zde diskutujeme o použití MATLABu, co je to 3D Matrix? a jak vytvořit 3D pole v MATLABu a také nějaké manipulace s nimi. Další informace naleznete také v následujícím článku -
- Matrix v Matlabu
- Verze MATLAB
- Vektory v Matlabu
- Typy dat v MATLABu
- Typ dat úlu
- Datové typy PL / SQL