Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Bücher:

Mathematik am Computer

Fachkräfte:
weitere Angebote

Partner:


Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

FEM-Mesh Element-Größe lokal unterschiedlich einstellen

 

ueg
Forum-Anfänger

Forum-Anfänger


Beiträge: 44
Anmeldedatum: 15.08.19
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.01.2021, 12:15     Titel: FEM-Mesh Element-Größe lokal unterschiedlich einstellen
  Antworten mit Zitat      
Guten Tag,

ich habe folgendes Problem: Ich simuliere die Wärmeeinbringung in ein Werkstück durch einen eintreffenden Laserstrahl mit Matlab mittels FEM (PDE) in 2D.
Das funktioniert soweit auch einwandfrei, nur dauert die Berechnung doch relativ lange. Dadurch, dass die Wärmeleitung im Material sehr schlecht ist (die Wärme also lokal sehr begrenzt auftritt), müssten Bereiche die weite weg vom beschossenen Bereich nicht mehr so fein aufgelöst berechnet werden wie der direkte Auftreffbereich.

Für das Beispiel (s.u.) nehmen wir einfach folgenden Code, welcher ein Rechteck zeichnet auf welchem bei [0,0] der Mittelpunkt des Strahls auftreffen wird.
Nach dem Beispiel dazu wird das Recheck erstellt und ein Mesh darüber gelegt.
Nun kann ich zwar die Größe der Elemente angeben, ich habe es aber nicht geschafft, dass die Elemente von [0,0] nach außen hin (in x und y-Richtung) größer werden.
In der Dokumentation habe ich auch nichts dazu gefunden.
Kann mir hier jemand weiterhelfen?

Vielen Dank und viele Grüße
Tim


Code:


%Modell erstellen
Modell = createpde("Thermal", "transient");

%Abmessungen angeben
AbmessungRohrx= 10; %Länge des simulierten Bereichs in x-Richtung in mm
AbmessungRohrz = 2; %Länge des simulierten Bereichs in z-Richtung in mm
BereichxRohr = [-AbmessungRohrx/2 AbmessungRohrx/2 AbmessungRohrx/2 -AbmessungRohrx/2]/1000;
BereichyRohr = [0 0 AbmessungRohrz AbmessungRohrz]/1000;

%Geometrie erstellen
r1= BereichgesamtRohr;
r2 = BereichgesamtSpot;
gdm = [r1; r2]';
g = decsg(gdm,'R1-R2',['R1'; 'R2']');
geometryFromEdges(Modell,g);
%Edit: mit dem Spotbereich hatte ich noch vorher etwas getestet, der ist einfach ein Loch in der Geometrie, welches ich jetzt allerdings außerhalb des Rechtecks gelegt habe. Der hat somit also keinen Einfluss.


%Mesh darüberlegen
generateMesh(Modell, "Hmax", 0.01e-3, "GeometricOrder","quadratic", "Hgrad",2);

%Hier würde ich dann gerne eine veränderliche Größe der Elemente einstellen können..

 
Private Nachricht senden Benutzer-Profile anzeigen


Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.


goMatlab ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de


 Impressum  | Nutzungsbedingungen  | Datenschutz  | Werbung/Mediadaten | Studentenversion | FAQ | goMatlab RSS Button RSS


Copyright © 2007 - 2021 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
Partner: LabVIEWforum.de

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.