Note: This discussion is about an older version of the COMSOL Multiphysics® software. The information provided may be out of date.
Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.
Comsol - Matlab - FFT
Posted 2010年12月22日 GMT-5 18:22 LiveLink for MATLAB, Studies & Solvers Version 3.5a 3 Replies
Please login with a confirmed email address before reporting spam
Bonjour à tous,
J'utilise COMSOL depuis 1 an et je me suis mise à utiliser Matlab depuis quelques mois interfacé avec COMSOL.
J'ai utilisé l'interface graphique de COMSOL pour déterminer dans un premier temps la solution d'une équation intégrale. Le résultat est une fonction Ez(x,y,z) qui dépend des trois variables d'espace. Jusque là aucun problème. J'enregistre ensuite mon travail pour obtenir le fichier M-file que j'ouvre ensuite dans Matlab. Je retrouve alors dans ce fichier l'ensemble des procédures que j'ai utilisées dans l'interface graphique de COMSOL sous forme de ligne de code. A l'aide de Matlab, je souhaiterais maintenant déterminer la transformée de Fourier suivant z (z--->q) de Ez(x,y,z) (--->Ez(x,y,q)) puis visualiser le résultat. Voici donc comment je procède :
A la suite du M-file généré par COMSOL j'écris :
>> Eq = int(Ez*exp(i*z*q) , z , -inf , +inf); % afin de calculer cette intégrale i.e. la TF de Ez suivant z
>>postplot(fem , 'tridata', 'Eq');
Malheureusement, un long message d'erreur me fait comprendre que ces lignes de code sont fausses...c'est pourtant ce que j'écrirais si j'avais à utiliser Matlab indépendamment de comsol !
Je suis un peu perdue avec la documentation de COMSOL à propos de Matlab...très peu d'exemples sont traités et je ne peux donc pas me faire la main pour comprendre un peu mieux comment se fait le couplage matlab-comsol.
Quelqu'un a t-il une idée pour déterminer cette transformée de Fourier et visualiser le résultat ? Je continue à chercher mais je commence un peu à perdre espoir d'y arriver...
Stéphanie
J'utilise COMSOL depuis 1 an et je me suis mise à utiliser Matlab depuis quelques mois interfacé avec COMSOL.
J'ai utilisé l'interface graphique de COMSOL pour déterminer dans un premier temps la solution d'une équation intégrale. Le résultat est une fonction Ez(x,y,z) qui dépend des trois variables d'espace. Jusque là aucun problème. J'enregistre ensuite mon travail pour obtenir le fichier M-file que j'ouvre ensuite dans Matlab. Je retrouve alors dans ce fichier l'ensemble des procédures que j'ai utilisées dans l'interface graphique de COMSOL sous forme de ligne de code. A l'aide de Matlab, je souhaiterais maintenant déterminer la transformée de Fourier suivant z (z--->q) de Ez(x,y,z) (--->Ez(x,y,q)) puis visualiser le résultat. Voici donc comment je procède :
A la suite du M-file généré par COMSOL j'écris :
>> Eq = int(Ez*exp(i*z*q) , z , -inf , +inf); % afin de calculer cette intégrale i.e. la TF de Ez suivant z
>>postplot(fem , 'tridata', 'Eq');
Malheureusement, un long message d'erreur me fait comprendre que ces lignes de code sont fausses...c'est pourtant ce que j'écrirais si j'avais à utiliser Matlab indépendamment de comsol !
Je suis un peu perdue avec la documentation de COMSOL à propos de Matlab...très peu d'exemples sont traités et je ne peux donc pas me faire la main pour comprendre un peu mieux comment se fait le couplage matlab-comsol.
Quelqu'un a t-il une idée pour déterminer cette transformée de Fourier et visualiser le résultat ? Je continue à chercher mais je commence un peu à perdre espoir d'y arriver...
Stéphanie
3 Replies Last Post 2010年12月23日 GMT-5 12:18