# Using codedFixedvalue to apply totalPressure Boundary Condition

 Register Blogs Members List Search Today's Posts Mark Forums Read

 June 12, 2013, 13:16 Using codedFixedvalue to apply totalPressure Boundary Condition #1 Member   Join Date: May 2013 Location: Canada Posts: 32 Rep Power: 13 Using OF 2.1.1, I'm trying to use the codedFixedValue boundary condition to apply a polynomial temperature distribution at my inlet. I can apply a static temperature distribution using the following code in my 0/P file: Code: ``` INLET { type codedFixedValue; value \$internalField; redirectType polyTemperatureInletDistribution; // name of generated BC code #{ vector dir=vector(0,0.866026,-0.5); // unit vector (30-deg CCW from Y) scalarField var=patch().Cf()&dir; scalarField value = -8508888.202118 * pow(var,4) - 76279.680124 * pow(var,3) + 5489.594313 * pow(var,2) + 639.763780 * var + 1200; operator==(value); #}; }``` This generates the following boundary condition: However, I want to define this temperature distribution as the totalTemperature at the inlet, not a static temperature. How can I modify my codedFixedValue BC to apply a totalTemperature? Alternatively, would setting the inlet velocity, U, as fixedValue uniform(0 0 0) force a total temperature condition at the inlet? I'm worried that this could cause adverse effects on the solution, though, so I'd rather code a totalTemperature if possible. Thanks for having a read, and for any help. Last edited by cdm; June 12, 2013 at 20:27.

 June 12, 2013, 20:41 #2 Member   Join Date: May 2013 Location: Canada Posts: 32 Rep Power: 13 Looking through the source code in src/finiteVolume/fields/fvPatchFields/derived/totalTemperature/ I implemented the equivalent calculation as shown below. I'm currently running my case to check whether this yields the desired results, and if anyone spots any potential issues I'd be grateful for the assistance; this is my first time analysing the source code and trying to understand it. However, the BC does compile properly. I'll update again later after running a number of iterations and checking the results. Code: ``` INLET { type codedFixedValue; value \$internalField; redirectType polyTempInletDistribution; // name of generated BC code #{ const scalar gamma_ = 1.34; const fvPatchVectorField& Up = patch().lookupPatchField("U"); const fvsPatchField& phip = patch().lookupPatchField("phi"); const fvPatchField& psip = patch().lookupPatchField("psi"); scalar gM1ByG = (gamma_ - 1.0)/gamma_; vector dir=vector(0,0.8660255047,-0.4999998252); scalarField var=patch().Cf()&dir; scalarField value = -8508888.202118 * pow(var,4) - 76279.680124 * pow(var,3) + 5489.594313 * pow(var,2) + 639.763780 * var + 1200; operator== ( value/(1.0 + 0.5*psip*gM1ByG*(1.0 - pos(phip))*magSqr(Up)) ); #}; }``` Pagoda and lpz456 like this.

 June 22, 2013, 14:10 #3 Member   Join Date: May 2013 Location: Canada Posts: 32 Rep Power: 13 This worked as needed. For anyone looking at this for their own work, please note that the direction vector must be specified as a unit vector (magnitude = 1) otherwise it will scale your temperatures on you. Here's a thread on implementing time in your BC: http://www.cfd-online.com/Forums/blo...condition.html

 Tags boundary conditions, codedfixedvalue, totalpressure