text-based alphabetical index Skip to content
StaffDirectory Search
Home
AboutNAS
NASProfile
InformationPwrGrid
WorkingWithUs
GridpointsMagazine
MediaResources
EducationalResource
ResearchNTechnology
CurrentResearch
PapersNReports
Software
SampleDatasets
UserServices
NewUserOrientation
HelpDesk
Policies and Procedures
SystemsDocs
TrainingNEvents
ContactUs
Feedback
Sitemap
Help

Tuning in to FM

When Laziness Is A Virtue

Vitamin B-12 molecule: ball and stick view
Vitamin B-12 molecule, traditional "ball-and-stick" view.

In analyzing simulation results, scientists are often interested in values derived from the fundamental state variables. For example, they might be interested in velocity or vorticity values derived from the density and momentum fields output by a simulator. The approach used by older analysis tools -- to compute and then save the derived value over the whole field -- can be very wasteful. In many cases, the derived values are only needed on a surface or along the path of a streamline.

A more effective approach is to compute the derived values only as needed, avoiding unused computations and saving on memory requirements. This approach is known as "demand-driven" or "lazy" evaluation. Field Model includes classes that provide lazy derived field capability. The virtual function interface of FM enables scientists to use lazy fields interchangeably with other types of fields, transparent to the routines accessing the data.

The lazy evaluation aspects of FM are also key to working in concert with out-of-core paging techniques. The memory requirements of “eager” derived fields -- the opposite of lazy -- would defeat the memory-saving advantages of paging. With large time-series data sets in particular, it is essential that the data model have a consistent, effective strategy for memory management. FM features classes that provide out-of-core paging capabilities, integrated seamlessly within the data model.

navigation

Curator: Jill Dunbar
Last Update: April 8, 2002
NASA Official: Walt Brooks
Go to page 3 Go to page 2 go to page 1 go to page 3