Write a program for simulating jet-powered car acceleration, C/C++ Programming

The absolute land-speed record of 763.035 MPH (Mach 1.02) was set in October 15 1997 by a jet-powered car called Thrust SSC in the Black Rock Desert of northern Nevada. The team that developed Thrust SSC is developing a new vehicle, Bloodhound SSC that is designed to achieve a top speed of 1050 MPH (Mach 1.4). This vehicle has a design weight of 14,200 lbs and a total installed thrust (both jet and rocket engines) of 47,600 lbs. The world record speed run must take place over a measured mile course. The course is run in both directions and the speed achieved is averaged over both runs. The speed measurement is taken only over the one-mile course. Obviously, the vehicle must accelerate to the target speed before reaching the one-mile course. Determining how much time and distance the vehicle needs to accelerate to the target speed is critical. Starting too close to the beginning of the course would result in the vehicle going too slow through the course. Starting too far from the course subjects the vehicle to extra stress by forcing it to maintain top speed for a longer period of time. 1) Write a C program to simulate the acceleration of the Bloodhound SSC car. The program should ask for the weight of the vehicle and the thrust of the vehicle. The output of the program should be the time for the vehicle to accelerate to the target speed of 1050 MPH and the distance covered while accelerating, in both feet and miles. Your program should use Euler's method to numerically solve the differential equations describing the motion of an accelerating object. In Euler's method, the state of the object at some small future time is calculated using the values at the present time. This small future time step is typically called delta time, or dt. Thus the position (p) and speed (v) of the object in the next time step t + dt is written as a simple function of the position and speed at the current time step t (a is the acceleration due to thrust):

V (t+dt) = v(t) + a * dt

P (t+dt) = p(t) + v(t+dt) * dt

You should start out with the velocity and position as zero and integrate until the velocity becomes equal to or greater than 1050 MPH.  

There are a number of factors that determine the acceleration of the vehicle, but for this simulation, we will use a simplified version of Newton's Second Law of motion, F=ma (or a=F/m):


684_Write a Program for Simulating Jet-Powered Car Acceleration.png

The constant DRAG_FACTOR is an empirical value that accounts for the effects of friction and air drag on the acceleration of the vehicle. For this program, you should use a value of 3.2 for DRAG_FACTOR.  

An execution of your program should look like this:  


Program to calculate the time and distance covered by a jet-powered land-speed record car given its weight and total thrust  

Enter vehicle weight in pounds?14200

Enter vehicle thrust in pounds?47600

Acceleration = 33.7306 ft/sec^2  

Time and distance to accelerate to 1050.00 MPH

Acceleration time = 45.656 seconds

Acceleration distance = 35156 feet

Acceleration distance = 6.66 miles  


Clearly, the value of the time step that you use in the simulation will be important. If the time step (dt) is to large, then the results will not be accurate. However, if the time step is too small, then the program run time will be excessive. For this assignment, you must determine the value of delta time that is as large as possible but at the same time, results in a final velocity that is accurate to 6 significant figures -  i.e., further decreases in  the time step no longer change the  final value past 1050.00 MPH. Turn in your program configured with this value of dt.  

2) Once your program is working correctly, use it to find the value of installed thrust that the  vehicle must have in order to accelerate to the target speed within a maximum distance of 5 miles - i.e., Acceleration distance is just less than 5.00.  

Remember the class policy on late submissions - no late submissions are allowed unless prior arrangement is made with the instructor. 

For this assignment, turn in the C source code file for your program by attaching it to the assignment submission page. Write the value of installed thrust that you found for part 2 in the submission window of the assignment page. Failure to include that value in your submission will result in a 2-point deduction.

Posted Date: 2/20/2013 1:20:28 AM | Location : United States

Related Discussions:- Write a program for simulating jet-powered car acceleration, Assignment Help, Ask Question on Write a program for simulating jet-powered car acceleration, Get Answer, Expert's Help, Write a program for simulating jet-powered car acceleration Discussions

Write discussion on Write a program for simulating jet-powered car acceleration
Your posts are moderated
Related Questions
Develop Pidgin for Windows Project Description: I want to build Pidgin (open source instant messenger) for Windows with D-Bus support enabled. I've effectively built both

#question.develop an algorithm using pseudocode for computing cos(x) and sin(x). use a sentinel controlled while loop. use the series definition of e^+-jx

Explain the Bit Wise Operations? C language in particular was created to make it easier to write operating systems. The objective was to have a language that provided excellent

T o k e n :  Tokens  are  small  entities  in  a  program.    Example: identifiers,  keywords,  constants, operators, strings, etc.  These tokens are used almost in same wa

write a c program to solve exanple of lamis therom

what is the purpose of pointer ? what is the syntax? how it works?

Described the order that objects in an array is destructed?

Write three functions in C or C++: one that declares a large array statically, one that declares the same large array on the stack, and one that creates the same large array from t

Explain a class to model a banking system. The function members should allow initializing the data members, a query to facilitate for account and a facility to deposit and with

What is Namespace and Explicit container Namespace - Namespaces are used to group entities such as objects, classes and functions under a name. Explicit container.