Earn Higher Grades With Instant Assignment Help.Ask Question!

C Programming
(5/5)

You are allowed to use online resources to assist in this assignment and no collusion with other students of any kind is allowed

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

COMP1004 Semester 1, 2020 Home‐based Programming Assignment

Instructions (Read Carefully):

  1. This is an open book programming assignment. You are allowed to use online resources to assist in this assignment;

  2. This is an individual assignment and no collusion with other students of any kind is allowed;

  3. Your program has to work. That means it has to compile correctly, run according to specifications, and give correct results. The submitted assignment must also meet the following criteria:

    • Good design, including good pseudocode and algorithms; and

Adequate testing, especially the testing of data boundaries and special cases.

  1. You must observe good programming practices, including comment, documentation, and readability of your program;

  2. To facilitate program readability, you must include function calls in your program whenever possible;

  3. All names of constants, types, variables, functions, etc. must be "self‐documenting" and "self‐describing." For example, you should call a variable a name such as "total" if it is used to store a Give a function a name like "PrintList" if its job is to print a list;

Estimating the frictional pressure loss for fluid flow in straight pipes

 Background

Civil, mechanical, chemical and petroleum engineers all have to deal with the flow of fluids in pipes. For example, the Goldfields Pipeline from Perth to Kalgoorlie‐Boulder supplies around 14.1 billion litres of water per year over a distance of about 560 km. Piping alone can represent around 10% of the total capital cost of a typical chemical plant, amounting to many millions of dollars. Engineers who design and operate piping systems need to minimise the associated costs. Roughly speaking, a larger diameter pipe costs more to buy (capital cost), but is cheaper to run (operating cost) because it would have a lower frictional pressure loss. Estimating the frictional pressure loss for the flow of a gas or liquid in straight pipe is a common and important engineering task.

𝐷, 𝜖   Δ𝑝f𝑣𝜌, 𝜇𝐿

The frictional pressure loss in single‐phase, incompressible flow in a straight pipe may be found by:

fΔ𝑝 = 𝑓L 1 𝜌𝑣2 D 2

where Δ𝑝f is the frictional pressure loss (Pa), 𝑓 is the Moody friction factor (unitless), 𝐿 is the pipe length (m), 𝐷 is the pipe’s internal diameter (m), 𝜌 is the fluid density (kg/m3) and 𝑣 is the mean fluid velocity inside the pipe (m/s). The friction factor depends on a quantity called the Reynolds number, which characterizes the ratio of inertial to viscous forces in the flow, and the roughness of the pipe, which depends on the pipe’s material and method of fabrication. The Reynolds number for pipe flow is calculated using

𝑅𝑒 = Dvqµ

where 𝑅𝑒 is the Reynolds number (unitless) and 𝜇 is the fluid’s dynamic viscosity (Pa.s). When the Reynolds number is below about 2100 for pipes, the flow is laminar, while above about 4000, the flow is turbulent; in between, the flow regime is transitional: it could be laminar or turbulent, or swap randomly between them. Different equations for the friction factor are needed for the different flow regimes. One possible set of equations is  𝑓𝑜𝑟 𝑅𝑒 ≤ 2100 (𝑙𝑎𝑚𝑖𝑛𝑎𝑟)

Re𝑓 =𝑓  + (𝑓   — 𝑓 ) ( Re–2100 )  𝑓𝑜𝑟 2100 € 𝑅𝑒 ≤ 4000 (𝑡𝑟𝑎𝑛𝑠𝑖𝑡𝑖𝑜𝑛𝑎𝑙)

where 𝑓L is the laminar friction factor equation evaluated at 𝑅𝑒 = 2100, 𝑓T is the turbulent friction factor evaluated at 𝑅𝑒 = 4000 and 𝜖 is the pipe roughness (m). Some typical roughness values are:

Pipe material                                                                   Roughness (mm)

Commercial carbon or stainless steel                          0.045

Ordinary concrete                                                          1.0

Glass tube                                                                         0.0015

PVC / plastic                                                                     0.0060

Table 1 : Pipe materials and their associated roughness values. Note: These values are in mm and need to be converted to m before calculating 𝑓.

Programming Tasks

 

Your task is to develop a working C program 

  1. Read from an external file (name this file input.txt) which stores the input values for the pipe diameter, pipe length, fluid velocity, fluid density and fluid viscosity. Student can choose the format of the external file so long as it is a text file;

  2. Ask the user to select the pipe material (i.e. carbon/steel, concrete, glass or PVC/plastic) for which the program will assign the associated roughness value (in mm) according to Table 1;

  3. Calculate and print the Reynolds number, the frictional pressure loss and the flow regime (i.e. laminar, transitional or turbulent) onto the computer screen; and

  4. For a series of fluid velocity values, between 1m/s and 2m/s in step of 0.1m/s, calculate the resultant frictional pressure loss and write the pair of values (i.e. fluid velocity versus frictional pressure loss) onto an external excel spreadsheet (name this file output.csv) so that the data can be viewed and plotted on Microsoft Excel Spreadsheet.

To facilitate program readability, you must include function calls in your program whenever possible. To help with checking your program for part 3 above, you should get the following results for the following two test cases:

Inputs

Water in Goldfields Pipeline

Pipe diameter (m)

0.76

Pipe length (m)

560000.00

Fluid velocity (m/s)

1.00

Fluid density (kg/m3)

1000.00

Fluid viscosity (Pa.s)

0.001

Pipe roughness (mm)

0.045

Outputs

Reynolds number

7.60e+005

Frictional pressure loss (Pa)

4.82e+006

Flow regime

Turbulent

Test Case 1 : For water in the Goldfields pipeline

Inputs

Water in garden hose

Pipe diameter (m)

0.012

Pipe length (m)

5.00

Fluid velocity (m/s)

0.15

Fluid density (kg/m3)

1000.00

Fluid viscosity (Pa.s)

0.001

Pipe roughness (mm)

0.006

Outputs

Reynolds number

1.80e+003

Frictional pressure loss (Pa)

1.67e+002

Flow regime

Laminar

Test Case 2 : For water in a typical garden hose

What you have to submit

  1. The pseudo code documenting the design of the program. This should be submitted as a pdf naming it pdf (10%);

  2. A well‐documented, syntax‐free and correctly‐working C program source Name this file

program.c (60%);

  1. The txt and output.csv files (5%); and

  2. A report recording the set of tests (i.e. test cases) that you performed on your program to verify the correctness of the This should be submitted as a pdf naming it report.pdf (25%).

Attachments:
(5/5)

Related Questions

CSI 1420 Introduction to C Programming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two majorconstructs of the C programming language – Fu

The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Ask This Assignment To Be Done By Our ExpertsGet A+ Grade Solution Guaranteed

expert
joyComputer science
(4/5)
12 Answers Hire Me
expert
Robert DLaw
(4.8/5)
512 Answers Hire Me
expert
Dr Samuel BarberaStatistics
(5/5)
535 Answers Hire Me
expert
Tutor For YouEconomics
(5/5)
657 Answers Hire Me