Project

Symmetry vs wedge

clear all close all cic
% Generate blocmesh.dict for any wedge an gle for a pipe with
% diameter D and lenght L
%% input parameters
theta = 45; % Input wedge angle. just lik 
10 degree input 25 and 10 for results. Re = 2100; % reynolds number
D = 0.025;% Diameter of pipe in meters
L = 0.06*Re*D; % length of pipe in meters R = D/2; % radius
%% co-ordinates for the vertices will be as follows using trignometric
% relatiuons
c0 = [0 0 0]; % point of origin;
c1 = [0 R*(cosd(theta/2)) R*(sind(theta/ 2))];
c2 = [0 R*(cosd(theta/2)) -R*(sind(theta/ 2))];
c3 = [L 0 0];
c4 = [L R*(cosd(theta/2)) R*(sind(theta/ 2))];
c5 = [L R*(cosd(theta/2)) -R*(sind(theta/ 2))];
%%strings for blockMeshDict file
h1 = (\'/*	
*- C++ *	
--*\\\');
h2 = (\'I
I\');
h3 = (\'I \\\\	/ F ield	I Open
FOAM: The Open Source CFD Toolbox
I\');
h4 = CI \\\\	/	0 peration	1 Vers
ion:	4.1
I\');
h5 = (\'I	\\\\ /	A nd	1 Web:
www.OpenFOAM.org
I\');
h6 = (\'I	\\\\/	M anipulation
I\');
h7 = (\'\\*	
h8 = (,// * * * * * * * * * * * * * * * *
*	* * * * * * * * * * * * * * * * * * * *
/ / \' ) ;
%% Generating a blockMeshDict file
%Header
name = sprintf(\'blockMeshDict\');
fileID = fopen(name,\'w\'); fprintf(fileID,1%s\\n\',h1); fprintf(fileID,\'%s\\n\',h2); fprintf(fileID,1%s\\n\',h3); fprintf(fileID,1%s\\n\',h4); fprintf(fileID,1%s\\n\',h5); fprintf(fileID,1%s\\n\',h6); fprintf(fileID,1%s\\n\',h7); fprintf(fileID,1FoamFile\\nf\\ni); fprintf(fileID,\'%16s \\t 2.0;\\n\',1versio n\'),
fprintf(fileID,\'%16s \\t ascii;\\ni,\'forma t\');
fprintf(fileID,1%16s \\t dictionary;\\n\',1c lass\');
fprintf(fileID,\'%16s \\t blockMeshDict;\\n} \\nobjecr);
fprintf(fileID,1%s\\n\\ni,h8);
%vertices
fprintf(fileID,\'convertToMeters 1;\\n\\n\'); fprintf(fileID,ivertices\\n(\\ni); fprintf(fileID,1\\“%d %d %d)\\n\',c0(1),c0 (2),c0(3));
fprintf(fileID,1\\t(%d %d %d)\\n\',c1(1),c1 (2),c1(3));
fprintf(fileID,1\\“%d %d %d)\\n\',c2(1),c2 (2),c2(3));
fprintf(fileID,1\\“%d %d %d)\\n\',c3(1),c3 (2),c3(3));
fprintf(fileID,1\\“%d %d %d)\\n\',c4(1),c4 (2),c4(3));
fprintf(fileID,1\\t(%d %d %d)\\n);\\n\\n\',c5 (1),c5(2),c5(3));
fprintf(fileID,1blocks\\n(\\n\'); fprintf(fileID,\'\\t hex (0 3 5 2 0 3 4 1) (400 40 1) simplegrading (1 0.1 1)\\n\'); fprintf(fileID,\');\\n\'); fprintf(fileID,\'edges\\n(\\n\'); fprintf(fileID,\'\\t arc 1 2 (%d %d %d)\\ni, 0, R, 0);
fprintf(fileID,\'\\t arc 4 5 (%d %d %d)\\ni, L, R, 0);
fprintf(fileID,\');\\n\'); fprintf(fileID,\'boundary\\n(\\ni); fprintf(fileID,\'\\t Inlet\\n\'); fprintf(fileID,\'\\t {\\n\'); fprintf(fileID,\'\\t type patch;\\n\'); fprintf(fileID,\'\\t faces\\n\'); fprintf(fileID,\'\\t (\\n\'); fprintf(fileID,1\\t\\t (0 1 2 0)\\n1); fprintf(fileID,\'\\t );\\n\'); fprintf(fileID,\'\\t }\\n\\n\'); fprintf(fileID,\'\\t Outlet\\n\'); fprintf(fileID,\'\\t {\\n\'); fprintf(fileID,\'\\t type patch;\\n\'); fprintf(fileID,\'\\t faces\\n\'); fprintf(fileID,\'\\t (\\n\'); fprintf(fileID,1\\t\\t (3 4 5 3)\\n\'); fprintf(fileID,\'\\t );\\n\'); fprintf(fileID,\'\\t }\\n\'); fprintf(fileID,\'\\t Top\\n\'); fprintf(fileID,\'\\t {\\n\'); fprintf(fileID,\'\\t type patch;\\n\'); fprintf(fileID,\'\\t faces\\n\'); fprintf(fileID,\'\\t (\\n\'); fprintf(fileID,\'\\t\\t (1 2 5 4)\\n\'); fprintf(fileID,\'\\t );\\n\'); fprintf(fileID,\'\\t }\\n\'); fprintf(fileID,\'\\t symmetryback\\n\'); fprintf(fileID,\'\\t {\\n\'); fprintf(fileID,\'\\t type symmetry;\\n\'); fprintf(fileID,\'\\t faces\\n\'); fprintf(fileID,\'\\t (\\n\'); fprintf(fileID,\'\\t\\t (0 1 4 3)\\n\'); fprintf(fileID,\'\\t );\\n\'); fprintf(fileID,\'\\t }\\n\'); fprintf(fileID,\'\\t symmetryfront\\n\'); fprintf(fileID,\'\\t {\\n\'); fprintf(fileID,\'\\t type symmetry;\\n\'); fprintf(fileID,\'\\t faces\\n\'); fprintf(fileID,\'\\t (\\n\'); fprintf(fileID,\'\\t\\t (0 2 5 3)\\n\'); fprintf(fileID,\'\\t );\\n\'); fprintf(fileID,\'\\t }\\n\'); fprintf(fileID,\'\\t axis\\n\'); fprintf(fileID,\'\\t {\\n\'); fprintf(fileID,\'\\t type empty;\\n\'); fprintf(fileID,\'\\t faces\\n\'); fprintf(fileID,\'\\t (\\n\'); fprintf(fileID,\'\\t\\t (0 3 3 0)\\ni); fprintf(fileID,\'\\t );\\n\'); fprintf(fileID,\'\\t }\\n\'); fprintf(fileID,\');\\n\'); fprintf(fileID,imergePatchPairs\\n\'); fprintf(fileID,\'(\\n\'); fprintf(fileID,\');\\n\');
fprintf(filelD,h8);


Openfoam code
/*	* C++
*	*\\
1
1
1 \\\\	/ F ield	1 OpenFOAM: T
he Open Source CFD Toolbox	1
1	\\\\	/	0 peration	1 Version:
4.1	1
1	\\\\ /	A nd	1 Web:	w
ww.OpenFOAM.org	1
1	\\\\/	M anipulation 1
\\*
*/
FoamFile
f
version	2.0;
format	ascii;
class	dictionary;
object	blockMeshDict;
1
// * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * // convertToMeters 1;
vertices
(
(0 0 0)
(0 1.154849e-02 4.783543e-03)
(0 1.154849e-02 -4.783543e-03)
(3.150000e+00 0 0)
(3.150000e+00 1.154849e-02 4.783543e-
03)
(3.150000e+00 1.154849e-02 -4.783543e
-03)
),
blocks
(
hex (0 3 5 2 0 3 4 1) (400 40 1) sim
plegrading (1 0.1 1)
); edges
(
arc 1 2 (0 1.250000e-02 0)
arc 4 5 (3.150000e+00 1.250000e-02
0)
); boundary
(
Inlet
{
type patch;
faces
(
(0 1 2 0)
); 1 Outlet
{
type patch;
faces
(
(3 4 5 3)
); 1 Top
{
type patch;
faces
(
(1 2 5 4)
); 1 symmetryback
{
type symmetry;
faces
(
(0 1 4 3)
); 1 symmetryfront
{
type symmetry;
faces
(
(0 2 5 3)
); 1 axis
{
type empty; faces
(
(0 3 3 0)
); 1
); mergePatchPairs
(
);
II * * * * * * * * * * * * * * * * * * *
* * * * * * * * * * * * * * * * * * II
Your portfolio, next

Ship work like this
in your own course.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.