Upload
assignmentpedia
View
107
Download
0
Embed Size (px)
DESCRIPTION
Citation preview
DISTRIBUTED RADAR TRACKING SIMULATION USING MATLAB
Our online Tutors are available 24*7 to provide Help with Distributed Radar Tracking Simulation
Homework/Assignment or a long term Graduate/Undergraduate Distributed Radar Tracking
Simulation Project. Our Tutors being experienced and proficient in Distributed Radar Tracking
Simulation ensure to provide high quality Distributed Radar Tracking Simulation Homework
Help. Upload your Distributed Radar Tracking Simulation Assignment at ‘Submit Your
Assignment’ button or email it to
You can use our ‘Live Chat’
option to schedule an Online Tutoring session with our Distributed Radar Tracking Simulation
Tutors.
PARALLEL COMPUTING TOOLBOX
This example uses the Parallel Computing Toolbox™ to perform a Monte Carlo simulation of a
radar station that tracks the path of an aircraft.
Load
the
Example
Settings
and
the
Data
The example uses the default profile when identifying the cluster
to use. The
profiles
documentation
explains how to create new profiles and how to change the default profile.
Customizing the Settings for the Examples in the Parallel Computing Toolbox
for instructions on
how to change the example difficulty level or the number of tasks created.
[difficulty, myCluster, numTasks] = pctdemo_helper_getDefaults();
We define the number of simulations and the length of each simulation in
pctdemo_setup_radar.
The example difficulty level controls the number of simulations we perform. The
function
pctdemo_setup_radar
also shows examples of the different paths that the aircraft can
take, as well as the error in the estimated aircraft location. You can
view the code for
pctdemo_setup_radar
for full details.
[fig, numSims, finishTime] = pctdemo_setup_radar(difficulty);
startClock = clock;
Divide the Work into Smaller Tasks
The computationally intensive part of this example consists of a Monte Carlo simulation and we
use the functionpctdemo_helper_split_scalar to divide the numSims simulations among
the numTasks tasks.
[taskSims, numTasks] = pctdemo_helper_split_scalar(numSims, numTasks);
fprintf(['This example will submit a job with %d task(s) ' ... 'to the cluster.\n'], numTasks);
This example will submit a job with 4 task(s) to the cluster.
Create and Submit the Job
Let us create the simulation job and the tasks in the job. We let
task i perform taskSims(i) simulations. Notice that the task function is the same function that you
used in the sequential example. You can view the code for pctdemo_task_radar for full details.
job = createJob(myCluster);
for i = 1:numTasks createTask(job, @pctdemo_task_radar, 1, {taskSims(i), finishTime}); end
We can now submit the job and wait for it to finish.
submit(job);
wait(job);
Retrieve the Results
Let us obtain the job results, verify that all the tasks finished successfully, and then delete the
job. fetchOutputs will throw an error if the tasks did not complete successfully, in which case we
need to delete the job before throwing the error.
try jobResults = fetchOutputs(job); catch err delete(job); rethrow(err); end
Let us format the results. Notice how we concatenate all the arrays in jobResults along the
columns, thus obtaining a matrix of the size (finishTime + 1)-by-numSims.
residual = cat(2, jobResults{:});
We have now finished all the verifications, so we can delete the job.
delete(job);
Measure the Elapsed Time
The time used for the distributed computations should be compared against the time it takes to
perform the same set of calculations in theSequential Radar Tracking Simulation example. The
elapsed time varies with the underlying hardware and network infrastructure.
elapsedTime = etime(clock, startClock);
fprintf('Elapsed time is %2.1f seconds\n', elapsedTime);
Elapsed time is 31.1 seconds
Plot the Results
We use the simulation results to calculate the standard deviation of the range estimation error
as a function of time. You can view the code for pctdemo_plot_radar for full details.
pctdemo_plot_radar(fig, residual);
visit us at www.assignmentpedia.com or email us at [email protected] or call us at +1 520 8371215