Why does MATLAB hang when I attempt to use the impedance function?
6 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
MathWorks Support Team
il 19 Mar 2020
Modificato: MathWorks Support Team
il 7 Mag 2021
After creating a patchMicrostrip object, I am attempting to determine the input impedance of the antenna across a range of frequencies using the impedance function:
myPM = patchMicrostrip( ... );
impedance( myPM, linspace( 2e9, 6e9, 11) );
However, after executing this code, a progress bar appears saying "Calculating solution for 11 frequency points" , but it does not seem to make any progress (even after a long period of time). Why is this?
Risposta accettata
MathWorks Support Team
il 7 Mag 2021
Modificato: MathWorks Support Team
il 7 Mag 2021
The lack of progress for the frequency sweep is due to the large mesh. The structure is discretized into triangles (for the surfaces) and tetrahedra (for the volume) before being solved. Given the range of frequencies provided for the analysis, the mesher picks the highest frequency to discretize, in this case 6 GHz. If the mesh becomes very large, this will impact both the amount of memory (RAM) needed as well as time to compute the solution. To work around this, here are a couple of suggestions:
a) Prior to running any analysis, use the memoryEstimate function to get an estimate on the RAM needed for solving at a particular frequency. Use help to learn more about this function:
>> help memoryEstimate
b) Manual meshing is also an option. Please refer to the following documentation page for more information:
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Installed Antenna and Large Structures in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!