Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  OpenFOAM
  BC: Dichteabhängiger Massenstrom

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  BC: Dichteabhängiger Massenstrom (735 mal gelesen)
Rummelsdorf
Mitglied
Dipl.-Ing.


Sehen Sie sich das Profil von Rummelsdorf an!   Senden Sie eine Private Message an Rummelsdorf  Schreiben Sie einen Gästebucheintrag für Rummelsdorf

Beiträge: 73
Registriert: 18.10.2006

SWx2016SP5.0, EPDM2016SP5.0
OpenFOAM.org 7

erstellt am: 04. Mai. 2018 08:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Guten Morgen,
ich arbeite gerade an einem neuen Solver auf Basis von rhoSimpleFoam. Der läuft auch schon, nur hat er noch einen kleinen Fehler.
Ich gebe am Inlet eine Velocity an. Da ich als Parameter immer den Massenstrom habe, rechne ich das händisch über die Kontinuitätsgleichung um in die Einlassgeschwindigkeit (Massenstrom = rho*Querschnittsfläche*Geschwindigkeit). Das rho ist bei mir aber eine Feldgröße die sich errechnet während der Simulation. Wenn ich am Inlet also die Einlassgeschwindigkeit mit einer konstanten Dichte berechne, dann stimmt das noch nicht. Mein Ziel ist eine eigene Boundarycondition, ich möchte die Einlassquerschnittsfläche, den Massenstrom und eine Anfangsdichte für die ersten Iterationen vorgeben.
Ich habe schon eine ähnliche BC (Boundary Condition) gefunden, die ist aber für incompressible Solver:

https://www.openfoam.com/documentation/cpp-guide/html/classFoam_1_1flowRateInletVelocityFvPatchVectorField.html
Da steht:
Example of the boundary condition specification for a mass flow rate:
    <patchName>
    {
        type                flowRateInletVelocity;
        massFlowRate        0.2;
        extrapolateProfile  yes;
        rho                rho;
        rhoInlet            1.0;
        value              uniform (0 0 0);
    }


Und ich hab hier einen eigenen Solver auf Basis von rhoSimpleFoam. Hat jemand eine Idee, wie man das Thema angeht?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Shor-ty
Moderator





Sehen Sie sich das Profil von Shor-ty an!   Senden Sie eine Private Message an Shor-ty  Schreiben Sie einen Gästebucheintrag für Shor-ty

Beiträge: 2463
Registriert: 27.08.2010

OpenFOAM-dev (Foundation)
OpenFOAM-xxxx (ESI)

erstellt am: 04. Mai. 2018 14:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Rummelsdorf 10 Unities + Antwort hilfreich

Entweder mit groovyBC oder du programmierst dir selber eine Randbedingung mithilfe von codedMixed oder codedFixed value. Je nach dem was du machen willst.

------------------
Viele Grüße,
Dr. mont. Tobias Holzmann

OpenFOAM® Tutorials | Training | Publikationen | Für Anfänger wiki.openfoam.com

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Rummelsdorf
Mitglied
Dipl.-Ing.


Sehen Sie sich das Profil von Rummelsdorf an!   Senden Sie eine Private Message an Rummelsdorf  Schreiben Sie einen Gästebucheintrag für Rummelsdorf

Beiträge: 73
Registriert: 18.10.2006

erstellt am: 07. Mai. 2018 14:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Bin jetzt mit codedFixed dran, danke für den Hinweis in die richtige Richtung. Ich werde das Ergebnis (hoffentlich bis Ende nächste Woche) gerne hier posten. Derzeit ist noch ein Fehler drin, der Solver divergiert. Aber das werde ich schon lösen, danke jedenfalls.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Ingenieur, Physiker, Mathematiker - CFD-Simulation im Fahrzeugumfeld (m/w/d)

Wir bewerben uns bei dir. Diese Formulierung überrascht dich vielleicht, da du dich gerade mit deiner eigenen Bewerbung beschäftigst? Als Teaser nennen wir dir 5 Argumente. Den Blockbuster zeigen wir im Bewerbungsprozess. Die Sequels erlebst du bei TWT. Find's raus!

  • Themen am Puls der Zeit. Artificial Intelligence, Autonomous Driving, E-Mobility, Model Based Systems Engineering oder Virtual Experience....
Anzeige ansehenMathematik
Rummelsdorf
Mitglied
Dipl.-Ing.


Sehen Sie sich das Profil von Rummelsdorf an!   Senden Sie eine Private Message an Rummelsdorf  Schreiben Sie einen Gästebucheintrag für Rummelsdorf

Beiträge: 73
Registriert: 18.10.2006

SWx2016SP5.0, EPDM2016SP5.0
OpenFOAM.org 7

erstellt am: 24. Mai. 2018 19:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
ich bin fertig, hier ist der Code:

/*--------------------------------*- C++ -*----------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  plus                                |
|  \\  /    A nd          | Web:      www.OpenFOAM.com                      |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version    2.0;
    format      ascii;
    class      volVectorField;
    object      U;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

dimensions      [0 1 -1 0 0 0 0];

internalField  uniform (0 0 0);

boundaryField
{
    inlet
    {   
        type            codedFixedValue;
        value          uniform (0 0 0.011449586); //5kg/h in +Z-Direction vom inlet aus;
        redirectType    rho_corrected;
    code
    #{
        const fvPatch& boundaryPatch = this->patch();
        vectorField& U = *this;
        const vectorField& Cf = boundaryPatch.Cf();
        scalar patchArea = gSum(boundaryPatch.magSf());
        const volScalarField& rhop = this->db().lookupObject<volScalarField>("rho");
        const scalar m_dot = 5.0/3600.0; // 5 kg/h Massflowrate
        fixedValueFvPatchVectorField myPatch(*this);
        forAll(this->patch().Cf(),i)
        {
            myPatch[i]=vector(0,0, (m_dot/(rhop[2]*patchArea))); //Kontinuitätsgleichung
        }
        operator==(myPatch);
    #};
    }
    outlet
    {
        type        zeroGradient;
    }

    wall
    {
        type        noSlip;
    }
    defaultFaces
    {
        type        fixedValue;
        value        uniform (0 0 0);
    }
}

// ************************************************************************* //

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz