Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
1
Week 14Review + What I Do
Paul ChewCS 212 – Spring 2004
2
AnnouncementsPart 4
There is no type-casting in Bali4, but you can assign to a supertype
If A is a supertype of B and aa and bb are declared as types A and B, respectively then
aa = bb; // is legalbb = aa; // is not
Reminder: Download the latest SaM Simulator
Part 4 regradesGrades available by WednesdayRegrade requests must be in by Friday
CMS cleaningIf you are still in the course, but have been removed from CMS, let me know right away
SectionsThere is a Section meeting today (7:30 in 205 Upson)There is one Section meeting on Monday (12:20 in ???)
Please participate in the online Course Evaluation
There is also a paper survey to fill out today
3
Quick OverviewIntroduction
Computer architectureMachine language & assembly languageIntro to SaM
CompilersLexical analysis & parsingAbstract Syntax TreesRecursive descent parsing & code generation
Software EngineeringUse of abstractionSpecification & validationTesting & debuggingModels for software developmentTop-down vs. bottom-up designEvaluating a design
4
More OverviewImplementing recursive functions
Stack frames
Implementing arrays
Implementing objectsUse of the HeapDispatch vectors
Software Engineering ToolsUnixProgramming languagesScripting languagesRegular expressionsMakefilesVersion controlUMLProfiling
5
What I Do: Computational GeometryUsing a computer to solve geometric problems
Get to use lots of data structure ideasExample
Given n line segments in the plane, report all intersectionsUses both a PQ and a Balanced Tree
Areas I work inMotion PlanningMeshingShape Matching
computer visionprotein matching
More theoretical questions
sweepline
The Delaunay TriangulationHas the “Empty Circle Property” (each Delaunay triangle’s circumcircle is empty)
Is commonly used for meshing
initial sitesinitial sites
a Delaunay triangulationa Delaunay triangulation
an empty circle
2
7
Adaptive Software Project (ASP)Adaptivity at three levels
Application LevelChoosing among physical models
Algorithm LevelChoosing among algorithms
System LevelUsing system resources effectively
Problem domainsfracture mechanicsreactive fluid flows
8
Necessary ToolsGeometric modelers
Existing modelers are mostly inadequate
Mesh generatorsNeed quality guarantees
Visualization toolsComponents for different physical models
Different domainsfluid flow, structural mechanics, heat flow
Different scalesatomic scale, grain scale, structural scale
Components for different solution techniques (algorithms)
finite elements, boundary elements, finite differences, …
Framework for combining componentsSystem tools
Runtime environmentDynamic load balancingFault tolerance (processor failure)Compiler support
9
ASP Meshing RequirementsControl of element density
Small elements (in “interesting” regions) for accuracyLarge elements (elsewhere) for efficiency
Allow internal boundariesNeeded to represent, e.g., a crack
Ideally: guarantee of element quality
Nice, but unnecessary for a single meshBut we have many meshes as geometry changes over time
10
Initial Crude Mesh
11
During Improvement
12
Final Mesh
3
13
Protein Shape and URMSProtein function is largely based on the protein’s geometric shapeHow do we analyze protein shape?Our technique: URMS (Unit-vector Root Mean Square distance)Advantages
Insensitive to outliersEfficient to computeEqual weight for all portions
14
Protein Families & Consensus ShapeEvolution theory ⇒ a protein ancient ancestor evolved into a family of proteins
Membership in a protein family is expressed by sequence similarity, but is more strongly expressed by structure similarity
25-30% sequence resemblance (almost always) ensures shape resemblance
Goal: Create a Consensus Shape Algorithm that produces
a multiple alignment of structures, and
a single (core) structure that summarizes the structural information for a protein family
15
An Alpha Protein Family (Globins)
16
A Beta Protein Family
17
Unrelated Proteins