This preview shows page 1. Sign up to view the full content.
Unformatted text preview: Chapter 14: Simulation, Graphics, and Other Applications
In order to gain insight into complex systems, scientists often build computer models to simulate their performance. Continuous Dynamic Simulation Elaborate equations representing the different aspects of the model are periodically solved to generate a sequence of snapshots of its performance Discrete Event Simulation The system is represented as a chronological sequence of events, each of which subtly impacts the overall state of the system (e.g., network Chapter 14 Simulation, Graphics, and Other Applications Page 1 Computer Graphics
Recent advances in processor power, display technology, memory capacity, and rendering algorithms have made it possible to produce dazzling images using relatively inexpensive computers. Chapter 14 Simulation, Graphics, and Other Applications Page 2 Drawing Lines and Circles
Pixel-based display technologies cause inherent problems when displaying circles or non-vertical/non-horizontal lines. Chapter 14 Simulation, Graphics, and Other Applications Page 3 Antialiasing
Complex scenes lose their integrity when using single-colored pixels. Jagged Profiles Loss Of Detail Disintegrating Textures A common way to address this problem is with antialiasing algorithms, which combine the colors affecting a particular pixel into a "blended" color that will minimize these negative effects. Chapter 14 Simulation, Graphics, and Other Applications Page 4 3D Shading The easiest way to store information about most 3D objects is as a set of polygons. Unfortunately, smooth objects aren't necessarily polyhedral, so the resulting image looks The common solution to this problem is to use a shading algorithm, which progressively blends the shading of adjacent polygons to smooth out the reflection of the virtual light across the surface. Chapter 14 Simulation, Graphics, and Other Applications Page 5 Lighting Effects In order to accurately model lighting effects, the shading algorithm must take into account the position of the graphical scene's virtual light source and the rendered objects' locations with respect to it. More sophisticated lighting models take into account radiosity, the fact that light reflects off the surface of some objects and, in turn, illuminates other objects. Chapter 14 Simulation, Graphics, and Other Applications Page 6 Ray Tracing
Rays are cast from the viewer's position through each pixel; the first object that's hit is the one that's rendered in that pixel. To calculate reflections, the ray is bounced from the hit object (if it's shiny) at the opposite angle at which it hit the object; if another object is hit, then the second object will be reflected on the surface of the first To calculate shadows, the ray is bounced from the hit object to the scene's light source, if another object is hit on the way to the light, then the original object is Chapter 14 Simulation, Graphics, and Other Applications Page 7 Texture Mapping
To give a greater sense of realism to 3D graphical objects, texture mapping provides an inexpensive means of placing 2D "wallpaper" around the objects. Bump mapping can make the results even more visually striking, by adding a displacement factor across the surface of the objects, giving the illusion of 3D texture in the Chapter 14 Simulation, Graphics, and Other Applications Page 8 Character Animation
By strategically manipulating specific vertices comprising an animated model, a graphics artist can make the model behave in a lifelike manner. Chapter 14 Simulation, Graphics, and Other Applications Page 9 Embedded Systems
Special-purpose computer systems are often designed to perform a specific list of dedicated tasks. Embedded systems: are often built into the devices they control, rather than being separate devices. frequently have real-time performance constraints. often have low performance requirements, allowing cheaper hardware to be used. use software called firmware, usually stored in ROM or flash Chapter 14 Simulation, Graphics, and Other Applications Page 10 Electronic Commerce
As networking capabilities have become ubiquitous, the ability to conduct financial business electronically has soared. Chapter 14 Simulation, Graphics, and Other Applications Page 11 Computer Security A computer virus piggybacks on another file to "infect" a system. When a user runs an infected program, the computer starts by copying the program from the disk, where it is stored and inactive, into RAM, where it can be executed. The viral code begins running first, while the infected program is still quiescent. The virus copies itself in a part of RAM separate from the program so that it can continue its work even after the user starts running other software. Its initial work done, the virus passes control back to the infected program. When the user runs a different program, the dormant virus begins running again. It inserts a copy of itself into the previously uninfected software so that the cycle of virulence Chapter 14 Simulation, Graphics, and Other Applications Page 12 Worms and Trojan Horses Worms are parasitic computer programs that replicate, but unlike viruses, do not infect other computer program files. Worms can create copies on the same computer, or can send the copies to other computers via a network. Worms often spread via A Trojan horse is a malicious program that pretends to be a benign application. A Trojan horse program purposefully does something the user does not expect. Trojan horses are not viruses since they do not replicate, but they can be just as destructive. One type of Trojan horse, known as a logic bomb, is set to execute whenever a specific event occurs
Chapter 14 Simulation, Graphics, and Other Applications Page 13 Fighting Viruses
Various techniques have been developed to combat computer viruses. Generic Antiviral Program
Flags activities--such as the alteration of critical sites in RAM or particular files on disk--that are likely to arise from a virus in action. Preventing these illicit acts will not eliminate the virus but can stop it from infecting additional programs or interfering with the computer's normal operation. Signature Scanner
Searches a user's disks looking for fragments of program code that appear in known viruses. Antiviral Snapshots
Capture mathematical "fingerprints" of crucial programs and data. Subsequent changes strongly suggest viral infection. Advanced algorithms can use the original fingerprints to recover a pristine program Chapter 14 Simulation, Graphics, from the virus-altered and Other Applications version. Page 14 ...
View Full Document
This note was uploaded on 08/26/2009 for the course CS 111 taught by Professor Klein,s during the Fall '08 term at Southern Illinois University Edwardsville.
- Fall '08
- Computer Science