Ha ilyen hibába ütközik a MATLAB használata közben, kövesse ezt az útmutatót, hogy megtudja, hogyan javíthatja ki.
Miért kapjuk azt a hibát a MATLAB-ban, hogy „A mátrixindex nincs törölhető tartományon kívül”?
Amikor egy részmátrixot törölnünk kell egy adott mátrixból vagy az adott mátrix bizonyos számú sorából vagy oszlopából, először mátrixindexeléssel hozzáférünk a törölni kívánt mátrixelemekhez, majd hozzárendeljük őket a [ ] operátor . De ha megadjuk azt a sorszámot vagy oszlopszámot, amely nagyobb, mint a mátrixindex korlátja, akkor a „ A Matrix Index a törlési tartományon kívül van “.
Hogyan javítsuk ki a MATLAB-ban „A mátrixindex a törlési tartományon kívül van” hibát
Ahogy korábban megbeszéltük, a hiba ' A Matrix Index a törlési tartományon kívül van ” olyan sor vagy oszlop törlése miatt történt, amely nem található a megadott mátrixban. Tehát ez a hiba javítható az adott mátrix azon sorának vagy oszlopának törlésével, amelynek a megadott mátrixban kell lennie. Most először generáljuk a hibát ' A Matrix Index a törlési tartományon kívül van ”, majd javítsa ki a megadott példákban.
1. példa: Hogyan lehet kijavítani, hogy a mátrixindex kívül esik a törlési tartományon, miközben mátrixsorokat töröl a MATLAB-ban?
Az alábbi MATLAB kód 10 sorból és 10 oszlopból álló négyzetmátrixot hoz létre. Ezután inicializál egy i változót úgy, hogy 5-ös értéket ad neki. Most a sorszámok kifejezésként való megemlítésével töröl egy részmátrixot az adott mátrixból. Ha ezt a kifejezést kiértékeljük az i változó megadott értékére, amely 5, akkor a 12-es sorszámot kapjuk. A kettőspont operátor (:) azt jelzi, hogy a megadott sorszámú összes oszlopot törölni akarjuk. Mivel azonban a mátrixnak csak 10 sora van, a 12-es sor kívül esik a tartományon, ami egy hibaüzenetet eredményez. A Matrix Index a törlési tartományon kívül van “.
A = varázslat ( 10 )
én = 5 ;
A ( ( én * 3 ) - 3 ,: ) = [ ]
Most kijavíthatjuk ezt a hibát a mátrixban található sorszám megemlítésével.
A = varázslat ( 10 )én = 10 ;
A ( 1 :én- 3 ,: ) = [ ]
A fenti kódban töröljük az adott A mátrix első 7 sorát.
2. példa: Hogyan lehet kijavítani, hogy a mátrixindex kívül esik a törlési tartományon, miközben egy részmátrixot töröl egy adott mátrixból a MATLAB-ban?
Ebben a példában 10 sorból és 10 oszlopból álló négyzetmátrixot hozunk létre. Ezt követően inicializálunk egy i változót úgy, hogy 5-ös értéket adunk neki. Most az adott mátrixból törölünk egy részmátrixot úgy, hogy az oszlopszámokat kifejezésként említjük. Ha kiértékeljük ezt a kifejezést az i változó megadott értékére, amely 5, akkor az oszlopok számát 7-től 15-ig kapjuk. A mátrixnak több oszlopa van 10, de a kapott oszlopszám-tartomány 7-től 15-ig terjed, ami nem hazudik. az adott mátrixban, így hibát kapunk „A Mátrix Index a törlési tartományon kívül van” .
A = varázslat ( 10 )i = 5 ;
A ( :, 7 :én * 3 ) = [ ]
Most kijavíthatjuk ezt a hibát, ha megemlítjük a mátrixban található oszloptartományt.
A = varázslat ( 10 )i = 5 ;
A ( :, 7 :én * 2 ) = [ ]
A fenti kódban töröljük az adott A mátrix utolsó 4 oszlopát.
Következtetés
A MATLAB-ban különböző mátrixműveletek végrehajtása során technikai hibákból eredő hibákat kapunk. Az egyik ilyen hiba a „ A Matrix Index a törlési tartományon kívül van ” ami egy adott mátrixból meghatározott számú sor és oszlop törlése miatt következik be. Ez a hiba az adott mátrixban található sorok vagy oszlopok törlésével javítható. Ez az útmutató példákat tartalmaz a hibák generálására és a javításukra szolgáló megoldásokra. Megértésük segít megoldani a problémákat, ha ilyen hiba lép fel az Ön esetében.