Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

Size: px
Start display at page:

Download "Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches"

Transcription

1 Approximatig Catmull-Clark Subdivisio Surfaces with Bicubic Patches CHARLES LOOP Microsoft Research ad SCOTT SCHAEFER Texas A&M Uiversity We preset a simple ad computatioally efficiet algorithm for approximatig Catmull-Clark subdivisio surfaces usig a miimal set of bicubic patches. For each quadrilateral face of the cotrol mesh, we costruct a geometry patch ad a pair of taget patches. The geometry patches approximate the shape ad silhouette of the Catmull-Clark surface ad are smooth everywhere except alog patch edges cotaiig a extraordiary vertex where the patches are C. To make the patch surface appear smooth, we provide a pair of taget patches that approximate the taget fields of the Catmull-Clark surface. These taget patches are used to costruct a cotiuous ormal field (through their cross-product for shadig ad displacemet mappig. Usig this bifurcated represetatio, we are able to defie a accurate proxy for Catmull-Clark surfaces that is efficiet to evaluate o ext-geeratio GPU architectures that expose a programmable tessellatio uit. Categories ad Subject Descriptors: I.3.5 [Computer Graphics]: Computatioal Geometry ad Object Modelig Curve, surface, solid, ad object represetatios Geeral Terms: Performace Additioal Key Words ad Phrases: Catmull-Clark subdivisio, GPU tessellatio, subdivisio surfaces ACM Referece Format: Loop, C. ad Schaefer, S. 28. Approximatig Catmull-Clark subdivisio surfaces with bicubic patches. ACM Tras. Graph. 27,, Article 8 (March 28, pages. DOI =.5/ INTRODUCTION Catmull-Clark subdivisio surfaces [Catmull ad Clark 978] have become a stadard modelig primitive i computer geerated motio pictures ad 3D games. To create a subdivisio surface, a artist costructs a coarse polygo mesh that approximates the shape of the desired surface. A subdivisio algorithm recursively refies this base mesh to produce a sequece of fier meshes that coverge to a smooth limit surface. I practice, developers perform up to 5 off-lie subdivisio steps to geerate a dese mesh suitable for rederig a smooth surface. This off-lie refiemet process leads to a umber of difficulties whe dealig with Catmull-Clark surfaces i real-time applicatios like games. The large, dese model produced by subdivisio cosumes limited removable disk space ad GPU memory, ad requires sigificat bus badwidth to be trasferred to ad from memory. For large umbers of models the amout of resources required ca degrade system performace. However, the most serious issue ecoutered by this off-lie refiemet strategy is the expese of aimatio; every vertex of the dese model may eed to be modified idepedetly. To miimize the computatioal overhead eeded by these shapes, developers ofte use a courser mesh, which leads to visible facetig artifacts. All these factors could be mitigated if subdivisio was deferred util after base mesh vertex aimatio i the GPU. I fact, support for higher order tessellatio directly i hardware is becomig a reality as exemplified by both the Microsoft Xbox 36 ad the ATI Radeo HD 29 series graphics cards [Lee 26; ATI/AMD 27]. The tessellator uit i these GPUs provide hardware support for adaptive tessellatio of parametric surfaces. Based o user-provided tessellatio factors, the tessellator adaptively creates a samplig patter of the uderlyig parametric domai ad automatically geerates a set of triagles coectig these samples. The programmer the provides a special shader program that the tessellator calls with the parametric coordiates (u,v for each sample i the parametric patch; the shader the emits a vertex that correspods to the patch evaluated at those coordiates. This approach allows the GPU to triagulate arbitrary parametric surfaces because the evaluatio details are provided by the programmer i the form of a shader. Furthermore, the GPU is able to exploit parallelism because multiple arithmetic uits ca be ruig the same evaluatio shader i lockstep. We expect tessellatio hardware to become stadard i the ear future [Blythe 26; Boyd 27]. 8 Authors address: C. Loop, cloop@microsoft.com Permissio to make digital or hard copies of part or all of this work for persoal or classroom use is grated without fee provided that copies are ot made or distributed for profit or direct commercial advatage ad that copies show this otice o the first page or iitial scree of a display alog with the full citatio. Copyrights for compoets of this work owed by others tha ACM must be hoored. Abstractig with credit is permitted. To copy otherwise, to republish, to post o servers, to redistribute to lists, or to use ay compoet of this work i other works requires prior specific permissio ad/or a fee. Permissios may be requested from Publicatios Dept., ACM, Ic., 2 Pe Plaza, Suite 7, New York, NY 2-7 USA, fax + ( , or permissios@acm.org. c 28 ACM 73-3/28/3-ART8 $5. DOI.5/ ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

2 8:2 C. Loop ad S. Schaefer Fig.. Blue patches (left cotai more tha oe extraordiary vertex ad caot be evaluated usig Stam s method. The subdivided shape (right cotais patches with oe or less extraordiary vertex but icreases the umber of patches by a factor of. 2 2 b 3 b 3 b23 b 33 b 2 b 2 b 22 b b b b 2 b 3 b b b 2 b 3 (a 2 (b (c Fig. 2. Cotrol poit labelig for a bicubic Bézier patch. Fig. 3. Masks for determiig Bézier cotrol poits from a uiform bicubic B-splie surface.. Catmull-Clark Surfaces o Tessellatio Hardware Catmull-Clark subdivisio surfaces are i fact piecewise parametric ad therefore ameable to hardware tessellatio. Each quadrilateral face i a Catmull-Clark cotrol mesh correspods to a sigle bicubic patch except for quadrilaterals that cotai a extraordiary vertex. These extraordiary patches, patches cotaiig oe or more extraordiary vertices, are actually composed of a ifiite collectio of bicubic patches. Usig this polyomial structure, Stam [998] developed a algorithm for directly evaluatig the parametric form of Catmull-Clark surfaces. While programmable tessellatio hardware will be capable of ruig Stam s algorithm, there are a umber of issues that idicate performace will be poor. Stam s method requires brachig, which reduces SIMD efficiecy. Stam also factors his computatio ito a sequece of matrix multiplicatios. Coutig the umber of multiplies eeded i this evaluatio shows that, eve i the regular case ( =, Stam s evaluatio will be over a order of magitude more expesive tha ormal bicubic evaluatio. Fially, Stam s method requires that extraordiary patches cotai oly oe extraordiary vertex. If there are patches that cotai more tha oe extraordiary vertex, oe level of subdivisio must be performed resultig i times as may patches to evaluate (see Figure. If this subdivisio step is performed off-lie, the eve more disk space, memory, computatioal resources for aimatio ad badwidth to trasfer the data to the GPU are required. Furthermore, this subdivided mesh becomes the coarsest level of resolutio, reducig the effectiveess of level of detail maagemet. Therefore, alteratives to exact evaluatio are eeded to improve performace o a GPU tessellator pipelie. Fig...2 Previous Work Geeralized masks for iterior, edge ad corer poits. Some of the early work i this area used Gregory patches [Chiyokura ad Kimura 983] to create surfaces that iterpolate etworks of curves ad allow the user to specify cross-boudary derivatives. While these patches could be used to approximate Catmull-Clark surfaces, the patches are ratioal polyomials whose deomiators vaish at patch corers complicatig evaluatio. Furthermore, these patches cotai few degrees of freedom that ca be used to approximate Catmull-Clark surfaces. Peters [2] describes a algorithm that coverts Catmull-Clark surfaces ito a NURBS approximatio of the subdivisio surface. This method creates oe bicubic patch for each face of a quad mesh. The surfaces produced are C 2 everywhere except ear extraordiary vertices where they are C. However, this method requires that the ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

3 Approximatig Catmull-Clark Subdivisio Surfaces with Bicubic Patches 8:3 Fig. 5. Cotrol vectors for taget patches u ad v. β the surfaces suffer from various shadig artifacts ad the lack of smoothess ca typically be see i the silhouette of the object. 2 (a α 2 α -2 β -2 (b α α - α β β - Fig. 6. (a Taget mask for uiform bicubic B-splies surfaces (b Mask for Catmull-Clark limit taget. base quad mesh be subdivided at least oce (twice if there are extraordiary vertices of eve valece to create sufficiet separatio of extraordiary vertices resultig i 6 times as may patches as the base subdivisio surface. Recetly, several researchers have cosidered techiques for performig subdivisio directly o the GPU. Bolz ad Schröder [22], Shiue et al. [25] ad Buell [25] have used the GPU to dyamically tessellate Catmull-Clark surfaces. Bolz ad Schröder [22] ad Shiue et al. [25] require that extraordiary vertices (a vertex ot touched by exactly four quadrilaterals be sufficietly separated, which ecessitates at least oe level of subdivisio i software before GPU acceleratio. Buell [25] does ot require separatio of extraordiary vertices but is a multipass scheme requirig sigificat CPU itervetio. Also, all of these techiques ca oly produce samplig patters compatible with biary subdivisio, which may itroduce visible poppig artifacts whe patch resolutio chages or require bledig vertices betwee differet resolutios. Noe of these methods ca produce samplig patters compatible with future tessellatio hardware [Blythe 26; Lee 26; ATI/AMD 27; Boyd 27]. Fially, Curved PN Triagles (sometimes kow as N- Patches [Vlachos et al. 2] bear the most similarity to our work. This method takes as iput a set of triagles with ormals specified at the vertices ad attempts to build a iterpolatig, smooth surface cosistig of cubic Bézier triagles. Ufortuately, the patches are ot smooth across their edges. To combat this effect, the authors create a separate ormal field that gives the surface the appearace of beig smooth. The advatage of this method is that the computatios are local ad a patch ca be costructed usig oly the iformatio preset i a sigle triagle. The disadvatage is that Cotributios. We propose a algorithm for visually approximatig Catmull-Clark subdivisio surfaces, possibly with boudaries, usig a collectio of bicubic patches (oe for each face of a quad-mesh. We coted approximatig the surface with patches that are i oe-to-oe correspodece with the faces of the coarsest base mesh is best. Further subdividig mesh faces may improve the quality of the approximatio but dimiishes tessellator utilizatio, requires icreased badwidth to the GPU ad limits the miimal level of tessellatio leadig to over samplig. Our patches are also smooth everywhere except alog edges leadig to a extraordiary vertex where they are oly C ; therefore shadig discotiuities may result. We overcome this difficulty by creatig idepedet taget patches that cospire to produce a cotiuous ormal field ad, hece, the appearace of a smooth surface. Whe each vertex of the patch has valece, our geometry ad taget patches are idetical to the Catmull-Clark subdivisio surface. 2. GEOMETRY PATCHES For each face i a quad-mesh, we costruct a bicubic patch to approximate the Catmull-Clark surface over the correspodig regio. We represet these bicubic patches i Bézier form with the labelig scheme illustrated i Figure 2. Our geometry patch costructio is a geeralizatio of B-splie kot isertio, used to covert from the B-splie to Bézier basis. If all four vertices of a quad-mesh face have valece, the the costructio reproduces the stadard uiform B-splie patch i Bézier form. There are three types of masks eeded to costruct the cotrol poits of a Bézier patch from a uiform B-splie cotrol mesh as show i Figure 3. These masks ecode a set of coefficiets that are applied by summig the products of these coefficiets ad the correspodig poits. For masks that geerate poits (such as the masks i this figure there is a implied ormalizatio that these masks sum to. However, masks that geerate vectors must sum to ad, thus, do ot have a implied ormalizatio. Referrig to Figure 3, mask (a is used (i four orietatios to create the four iterior poits b, b 2, b 2, ad b 22, correspodig to each quad face; mask (b is used to create the edge poits b, b 2, b, b 2, b 3, b 32, b 3, ad b 23 correspodig to the edges of the quad-mesh; fially, mask (c is used to create the corer poits b, b 3, b 3, ad b 33, correspodig to the vertices of the quad-mesh. Note that each edge poit lies at the midpoit of two iterior poits, belogig to adjacet faces; ad each corer poit lies at the cetroid of the iterior poits that surroud that vertex. Our geeral quad-mesh patch costructio is ispired by these geometric relatioships. ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

4 8: C. Loop ad S. Schaefer Fig. 7. The characteristic map of a Catmull-Clark surface for various valeces. Fig. 8. v v v 2 v 3 u u u 2 v v v 2 v 3 Cotrol vectors ivolved i smooth edge coditios. I the ordiary case (all vertices of the patch have valece, the corer poits b, b 3, b 3, ad b 33 iterpolate the limit positio of the Catmull-Clark surface. Therefore, i the extraordiary case, we also choose these cotrol poits to iterpolate the limit positio of the Catmull-Clark surface. Halstead et al. [993] showed that the left eigevector correspodig to the domiat eigevalue of the Catmull-Clark subdivisio matrix correspods to the mask that geerates the limit positio of a extraordiary vertex. Figure (c illustrates this limit positio mask. If the cetroid of the surroudig iterior Bézier poits creates the corer poit with the mask show i Figure (c, the we ca ifer the mask for the iterior poits (show i Figure (a. Note that the value i the geeralized iterior poit mask correspods to the valece of the vertex whose weight is. Furthermore, this valece may differ for each iterior poit b, b 2, b 2, ad b 22. Fially, the edge poits are foud as midpoits of the adjacet iterior poits leadig to the mask show i Figure (b. Notice that, if =, the masks i Figure reproduce the kot isertio masks i the uiform case show i Figure TANGENT PATCHES I geeral, replacig the Catmull-Clark surface with the geometry patches from the previous sectio results i a surface that is smooth everywhere except alog edges cotaiig extraordiary vertices. For some applicatios, this lack of smoothess may be acceptable. However, for smooth shadig, we eed a surface that has a cotiuous ormal field over the etire surface. The ormal field of a bicubic surface is biquitic, which produces a large umber of cotrol vectors i Bézier form to exactly represet the biquitic polyomial (36 cotrol vectors. Furthermore, the cotrol vectors do ot deped liearly o the uderlyig cotrol mesh complicatig aimatio. Therefore, our approach uses a pair of taget patches deoted by u, v whose cross-product approximates the ormal field of the Catmull-Clark surface. These taget patches have fewer cotrol vectors (they are degree 3 2 ad deped liearly o the cotrol mesh. Cosider the taget patch u. This patch will be bidegree 2 3, sice differetiatig the bidegree 3 3 geometry patch with respect to u will lower the degree by oe i the u-directio. Similarly, the v patch will be bidegree 3 2. Sice the u ad v patches represet vector fields, their coefficiets are cotrol vectors, as illustrated i Figure 5. The costructio of taget patches is symmetric; that is, the costructios are idetical up to a iterchage of priciple directios, with appropriate chage of sigs. Therefore, we limit our discussio to the v patch. For Bézier patches, the v patch ca be foud usig differeces of the cotrol poits. If b i, j are the coefficiets of the geometry patch ad v k,l are the coefficiets of the taget patch, the v i, j = 3 ( b i, j+ b i, j, i =,...,3 j =,...,2. ( These cotrol vectors represet a Bézier patch that exactly ecodes the taget field i the v-directio of the correspodig geometry patch. However, sice the geometry patches do ot meet with C cotiuity everywhere, the taget patches u ad v will ot create a cotiuous ormal field. I particular, the taget field must create a uique ormal at the corers of the patch (shared by multiple patches ad alog the edges of the patch (shared by two patches. Therefore, we must modify the cotrol poits alog the edges of v such that we create a cotiuous ormal field over the etire surface. 3. Taget Patch Corers To modify our taget patch v, we begi with the corer vertices v, v 2, v 3, ad v 32, which should produce a uique taget plae amog all patches sharig this corer. Ufortuately, our geometry patches are ot smooth for a arbitrary valece vertex so our costructio from Equatio ( does ot produce a uique taget plae. Give that the geometry patches are meat to approximate the Catmull-Clark surface, we use the limit taget mask of the Catmull-Clark surface to create a uique taget plae at the corers of the patch. Halstead et al. [993] showed that the taget limit masks for Catmull-Clark surfaces correspod to the left eigevectors of the subdivisio matrix associated with the subdomiat eigevalue pair. Usig these eigevectors, we arrive at a taget mask α L i β L i = = cos ( 2πi (, +cos( π 2 cos( π cos ( 2πi+π. where α L ad β L are the coefficiets for the left eigevector ad use the labelig show i Figure 6(b. Ufortuately, this relatioship betwee the left eigevectors of the subdivisio matrix ad the taget mask oly geerates a mask that determies the directio of the taget vector ad ot its legth (eigevectors are idepedet of scale. Therefore, we must fid a appropriate scale for this vector to esure a well behaved taget field. Our approach coceptually uses the characteristic map of the subdivisio scheme as a local parameterizatio of the surface [Reif 995]. Similar to the taget mask, the coordiates of the characteristic map are give by the pair of right eigevectors correspodig to the subdomiat eigevalues. If we allow α R,β R to be poits ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

5 Approximatig Catmull-Clark Subdivisio Surfaces with Bicubic Patches 8:5 Fig. 9. a The patch structure we associate with a Catmull-Clark subdivisio surface. The grey patches cotai oly valece vertices, gree have oe extraordiary vertex ad blue have more tha oe extraordiary vertex. b Our approximatio to the Catmull-Clark subdivisio surface usig geometry patches ad c our fial approximatio usig geometry ad taget patches compared with d the actual Catmull-Clark limit surface. Fig.. A example mesh (top ad a zoomed i regio of a complex patch structure (bottom. From left to right: Catmull-Clark patch structure, Geometry patch approximatio, Geometry/Taget patch approximatio ad Catmull-Clark limit mesh. Fig.. A complex mesh with boudary. From left to right: Catmull-Clark patch structure, Geometry patch approximatio, Geometry/Taget patch approximatio ad Catmull-Clark limit surface. ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

6 8:6 C. Loop ad S. Schaefer u-directio shared by both patches ad ˆv i, j are the cotrol vectors of the taget i the v-directio for the bottom patch alog the shared edge. These cotrol vectors defie two cubic fuctios v(t, ˆv(t ad oe quadratic fuctio u(t. These three vector fields will be liearly depedet if (( tc tc u(t = (v(t + ˆv(t t [, ], 2 Fig. 2. Our Geometry/Taget patch model (left with displacemet mappig (right. i the plae, the the oe-rig cotrol poits of the characteristic map are αi R = ( cos ( ( 2πi, si 2πi β R i = +cos( π 2 +cos( π ( cos ( 2πi+π (, si 2πi+π. The characteristic map is also idepedet of scale, which we are free to choose. We pick a scale for the map such that α R = (,. Figure 7 shows examples of the characteristic map for Catmull-Clark surfaces for various valeces. If we apply the limit taget mask to the cotrol poits of the characteristic map, the result will be a vector with ouit legth. We the fid a scalar σ such that σ α L i i= Solvig for σ yields α R i σ = + + β L i β R i = (,. +(cos( π 2 cos ( π + ( cos ( π 2. Multiplyig the previous taget mask by σ produces the fial taget mask. ( α i = + cos( π cos ( 2πi +(cos( π 2, ( β i = cos ( (2 2πi+π. This taget mask is used to costruct the vectors v, v 2, v 3, ad v 32 resultig i a uique taget plae at each of the patch corers. Also, ote that all these vectors must be cosistetly aliged. I particular, the taget vector directios must be reversed (multiplied by for v 2 ad v 32. The costructio of taget field vectors u, u 2, u 3, ad u 23 is idetical. Fially, otice that if =, this taget mask exactly reproduces the taget mask for bicubic B-splies i Figure 6(a icludig scale. 3.2 Taget Patch Edges Give the taget patch from Equatio ( with corer vertices specified by Equatio (2, the taget patches create a uique taget plae everywhere except alog the edges of a patch. Therefore, we must modify the cotrol vectors alog the edges of the patch as well. Cosider the patch edge i Figure 8 shared by two patches. v i, j are the cotrol vectors for the top patch alog the shared patch boudary i the v-directio, u i, j are the cotrol vectors for the taget i the where c i = cos( 2π i ad, are the valece of the left ad right edpoits. Solvig for the Bézier coefficiets results i four coditios: c u = 2 (v + ˆv, (3 3 u c u = (v 2 + ˆv, ( 3 u 2 2 c u = (v ˆv 2, (5 c u 2 = (v ˆv 3. (6 Coditios (3 ad (6 are satisfied by costructio usig Equatio (2. Coditio ( will be satisfied if ˆv = 3 (2 c u c u + x, ˆv = 3 (2 c u c u x for ay choice of x. We choose x = 3 (b b sice, by costructio, we get the same vector x (up to sig whe processig either patch sharig a edge. Furthermore, this costructio reproduces the regular case ( =. The cotrol vector v 2 ca be foud i a similar fashio. To summarize, we set v = 3 (2 c u c u + 3 (b b, v 2 = 3 (c u 2 2 c u + 3 (b 2 b 2. The costructio for ˆv, ad ˆv 2 follows i a similar maer.. RESULTS Over the ordiary patches i the mesh (o extraordiary vertices, our costructio for the geometry ad taget patches exactly reproduces the surface ad taget field of the Catmull-Clark surface. Therefore, the oly regios that our surfaces differ from the actual Catmull-Clark surface are those patches cotaiig oe or more extraordiary vertices. Furthermore, our method iterpolates the limit positio ad ormal of the Catmull-Clark surface at each vertex of the mesh. Figures 9,, ad, show examples of subdivisio surfaces cotaiig patches with oe or more extraordiary vertices. The approximatio usig oly Geometry patches matches the Catmull- Clark surface very well, but is oticeably ot smooth alog some of the edges. Addig the taget field to the model creates a smooth ormal field ad results i a surface that is early idetical visually to the origial Catmull-Clark surface. Because the taget patches create a cotiuous ormal field over the surface, we ca use these shapes for displacemet mappig as well. Figure 2 shows a example of displacemet mappig applied to our geometry/taget patch approximatio from Figure 9. Figure 3 illustrates a example of a mesh with a boudary cotaiig both ordiary ad extraordiary vertices (our boudary costructio ca be foud i Appedix A. The Catmull-Clark surface uses the boudary rules of Bierma et al. [2] to produce a smooth subdivisio surface. Despite the fact that our geometry patch approximatio is oly C, the lack of smoothess is rarely if ever visible i the silhouette ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

7 Approximatig Catmull-Clark Subdivisio Surfaces with Bicubic Patches 8:7 Fig. 3. A example of a mesh with a boudary. From left to right: Catmull-Clark patch structure, Geometry patch approximatio, Geometry/Taget patch approximatio ad Catmull-Clark limit surface usig Bierma et al. s boudary rules. Fig.. A model with a valece 2 vertex at the tip composed etirely of patches with more tha oe extraordiary vertex (left. Our Geometry/Taget patch approximatio (ceter actually appears to have a smoother profile at the valece 2 vertex tha the Catmull-Clark surface (right. Fig. 5. Compariso of our method with PN-Triagles ad PCCM. The figures show the differece betwee the ormal of the Catmull-Clark surface as well as the geometric error. There is ot sufficiet separatio of extraordiary vertices for PCCM i this example. of the model (we have ot bee able to discer the C regios of the models alog the silhouette i ay of our examples. Figure depicts a extreme case that typically is ot foud i practice. This model cosists of a very high valece vertex (2 at the top vertex ad patches that all cotai more tha oe extraordiary vertex. Iterestigly, our geometry patch approximatio produces a surface that looks smoother tha the Catmull-Clark surface at the valece 2 vertex despite the lack of cotiuity (Catmull-Clark surfaces are kow to have ubouded curvature at high valece vertices. Figures 5 8 show a compariso of our techique with PN- Triagles [Vlachos et al. 2] ad Patchig Catmull-Clark Meshes (PCCM [Peters 2]. I these pictures, color deotes the error betwee the give surface ad the actual Catmull-Clark surface, where blue is o error ad red represets high error. We measure the geometric error as the differece betwee the give surface ad the actual Catmull-Clark surface as a percetage of the legth of the boudig box diagoal. The ormal error represets the agle betwee the ormals of the two surfaces. I all cases, the correspodece betwee the two shapes is give by parametric correspodece. For surfaces composed of triagles, PN-Triagles [Vlachos et al. 2] ca create the illusio of a smooth surface i a similar maer to our Approximate Catmull-Clark Patches for Catmull-Clark surface. We modify PN-Triagles for Catmull-Clark surfaces by ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

8 8:8 C. Loop ad S. Schaefer Fig. 6. Compariso of our method with PN-Triagles ad PCCM with the surface from Figure 5 subdivided twice. PCCM creates a flat spot with udulatios i the surface away from the extraordiary vertex i order to make the surface smooth. ACC Patches produces a surface early idistiguishable from the true subdivisio surface. Fig. 7. Compariso of our method with PN-Triagles ad PCCM o a two-hole torus cotaiig oly odd valece extraordiary vertices. There is ot sufficiet separatio of extraordiary vertices for PCCM i this example. triagulatig the surface ad forcig the PN-triagles to iterpolate the limit positio ad ormal of the Catmull-Clark surfaces at the vertices. PCCM [Peters 2] is also similar to our method except that PCCM creates a actual C surface usig a fiite collectio of bicubic patches as opposed to our C surface. However, the extraordiary vertices must be sufficietly separated for PCCM, which requires two-rig separatio for odd valece vertices ad four-rig separatio for eve valece vertices. Figures 5 8 illustrate that, as expected, PN-Triagles does ot produce good approximatios of the Catmull-Clark surface. This is especially true for the ormal field approximatio sice PN- Triagles oly have a quadratic ormal field whereas ordiary bicubic patches have a degree 5 5 ormal field. Hece, eve i ordiary regios of the surface, PN-Triagles do ot provide good approximatios to the uderlyig subdivisio surface. May of our examples (Figures 9,,, 3, 5, ad 7 do ot have sufficiet separatio of extraordiary vertices for PCCM ad require oe or more levels of subdivisio before we ca apply this techique. I Figures 5 ad 7 this lack of separatio is deoted by N/A. Figures 6 ad 8 show the same surfaces subdivided to provide sufficiet separatio of extraordiary vertices. Surprisigly, ACC patches provide a better approximatio to the Catmull-Clark surface both i terms of geometric error as well as ormal field error. The reaso behid this pheomeo is that PCCM patches are quite costraied by the eed to create a C surface usig oly bicubic patches ad ca create flat spots or udulatios (at eve valece vertices ot preset i the Catmull-Clark surface. I cotrast, ACC patches decouple the geometry ad ormal field approximatio ad, therefore, have more degrees of freedom leadig to lower error approximatios. 5. IMPLEMENTATION The GPU processig stages eeded to support hardware tessellatio are illustrated i Figure 9. We should emphasize that o GPU s curretly exist that implemet all of these stages i hardware ad, hece, this sectio reflects our view of the proposed pipelie ecessary for hardware tessellatio. Processig begis at the left with the base cotrol mesh as iput ad proceeds to the right, edig with triagle rasterizatio. The fuctio of these stages are as follows: Vertex Processig. I additio to vertex trasform, vertices are also aimated i this stage. Patch Assembly. Patch cotrol ets are formed by averagig over local collectios of cotrol mesh vertices. ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

9 Approximatig Catmull-Clark Subdivisio Surfaces with Bicubic Patches 8:9 Fig. 8. Compariso of our method with PN-Triagles ad PCCM o a two-hole torus cotaiig oly odd valece extraordiary vertices after oe level of subdivisio. Our ACC-Patches provide superior approximatio both i terms of the ormals of the surface as well as its geometry. vertex processig vertices patch patches triagles tessellatio idices assembly pixel processig Fig. 9. Proposed future GPU pipelie. Tessellatio. Patches are evaluated at hardware geerate domai poits. Pixel Processig. Covetioal pixel/fragmet shadig. Both the Xbox 36 ad the Radeo HD 29 have vertex ad pixel uits, as well as tessellatio hardware [Lee 26; ATI/AMD 27]. Curretly, the patch assembly stage o these devices must be implemeted as vertex program. I future hardware, we expect patch assembly to be a dedicated hardware stage [Boyd 27]. The algorithm for patch costructio preseted i this paper is iteded to ru as a patch assembly program. Without this specialized hardware stage, our algorithm could be implemeted istead as vertex program. I either case, a cotrol mesh would cosist of a pair buffers; oe that cotais cotrol mesh vertices, ad a secod cotaiig a eighborhood of idices correspodig to the quad faces of the cotrol mesh. The vertices i the first buffer are trasformed ad aimated. Each etry of the secod buffer cotais the idices of the uio of all mesh vertices belogig to faces icidet o a quad, together with the valece of each of the four vertices of the quad. These local idex eighborhoods are computed as a preprocess by visitig each base mash face. I order to optimize SIMD efficiecy ad avoid uderutilizig GPU buffers, the amout of data that ca be packed ito a idex eighborhood structure must be limited. Therefore, this approach caot accommodate arbitrarily high valece vertices. The structure for storig these perquad idex eighborhoods should oly be large eough to hadle commo cases; larger structures will waste resources i all but extreme situatios. Whe each idex eighborhood structure is processed, the shader gathers the eeded vertices ad averages these to form patch vertices that are writte to a output buffer for iput to the tessellator stage. Eve though the patches iput to the tessellator uit cotai cotrol poits (6 for geometry ad 2 for each taget, we do ot eed to trasfer this amout of data sice may of these cotrol poits are redudat. I reality, all we eed is the quad of the correspodig patch with its edge-adjacet quads (2 poits as well as the limit positios at the corers of the patch ( poits ad the tagets (8 vectors. Alog with the valece at each patch corer we oly eed 25 poits to evaluate the patch o the GPU. 6. FUTURE WORK While Catmull-Clark surfaces are typically created from quadmeshes, the subdivisio rules are geeral eough to hadle meshes with arbitrary sided polygos. Arbitrary polygos are theoretically possible i our framework, but are ot practical for adaptive tessellatio o curret graphics hardware, which support oly triagular ad quadrilateral domais. However, it is possible to icorporate triagle patches ito the tessellatio process. For simplicity, we oly operate o meshes cosistig etirely of quads. We ca, of course, produce a all-quad mesh by performig oe step of subdivisio. However, the disadvatage of this approach is the icrease i the umber of patches similar to Figure. I the future we would like to exted our method to triagular patches, ad more geerally triagle-quad surfaces [Stam ad Loop 23] usig Bézier triagles. Fially, Catmull-Clark surfaces are smooth everywhere while, i practice, may surfaces cotai sharp edges or corers. We ca hadle these creases by markig edges i the mesh ad treatig them as boudary edges. However, DeRose et al. [998] itroduced rules to create semi-sharp creases i Catmull-Clark surfaces. We believe that we may be able to icorporate semi-sharp creases ito our method by modifyig the patch coefficiets as well. APPENDIX A. MESHES WITH BOUNDARIES Orgially, Catmull-Clark surfaces were assumed to be closed surfaces; however, ot all meshes are closed. Nasri [987] exteded Catmull-Clark subdivisio to surfaces with boudaries. Alog the boudary, Nasri chose the subdivisio rules to reproduce cubic B-splies. To geeralize our geometry patches to boudaries, we ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

10 8: C. Loop ad S. Schaefer 2 (a (b (c Fig. 2. Rules for Bézier cotrol poits alog the boudary to create a cubic B-splie. Bolded edges idicate boudaries. From left to right: mask for a edge cotrol poit, corer cotrol poit ad a corer cotrol poit cotaied by oly oe quad. Fig. 2. Rules for creatig the iterior Bézier cotrol poit adjacet to a boudary vertex cotaied by more tha oe quad (a ad oly oe quad (b. follow Nasri [987] ad require that the boudary curves form cubic B-splies. A. Geometry Patches For a boudary edge, the two edge poits are foud alog the edge at ratios : 2 ad 2 : from the edpoits. For a boudary vertex icidet o two or more faces, we fid the corer poit as the midpoit of the two adjacet edge poits. For a boudary vertex cotaied by oly oe face, we set the corer poit to the boudary vertex. These rules are summarized i Figure 2 with the implied ormalizatio that the masks sum to. Besides modifyig the Bézier cotrol poits alog the boudary, we also modify the iterior cotrol poit adjacet to a boudary vertex. For boudary vertices cotaied by more tha oe quad, we use the mask i Figure 2(a where k is equal to the umber of quads cotaiig the boudary vertex. Whe a boudary vertex is cotaied by oly oe quad, the iterior cotrol poit is give by Figure 2(b. Similar to Sectio 2, edge poits o iterior edges are placed at the midpoit of the adjacet iterior poits. I the iterest of simplicity, we igore topologically aomalous cofiguratios, such as bow-ties ad pi-wheels; though i priciple, such cofiguratio do ot cause problems. We make a distictio from the valece used i Sectios 2 ad 3 ad the umber of quads k cotaiig a boudary vertex because we treat the boudary as beig half of a closed mesh. Therefore, = 2k. I fact, if we apply this idetity to Figure 2, we obtai the iterior poit mask for closed meshes show i Figure. A.2 Taget Patches Our taget patch costructio is idetical to Sectio 3 except that we modify the way the limit tagets are computed at boudary vertices. For boudary vertices cotaied by more tha oe quad, we use the taget masks derived for Catmull-Clark surfaces by Bierma et al. [2] to compute the taget vectors. These taget vectors provide directio, but lack legth iformatio ad we use the same ormalizatio process from Sectio 3 to choose a appropriate legth. The result is two taget masks that create two vectors r ad r that spa the taget plae at that vertex. Referrig to Figure 22, Fig. 22. quads. the mask for r is Labelig for vertices aroud a boudary vertex cotaied by k α = 2 α k = 2 α i,k = γ = β i =, ad for r γ = s 3k+c α = α k = (+2c +c (3k+c c α i,k = s i 3k+c β i = s i +s i+ 3k+c where c = cos ( ( π k, s = si π k ad si = si ( πi k. The taget vector alog the j th edge is the give by cos ( π j k r + si ( π j k r. The rest of the taget patch costructio is the same except that we use the substitutio = 2k i Sectio 3.2 for the edges of the taget patches. For boudary vertices cotaied by oly oe quad (k =, we agai chage the taget masks for r ad for r γ = α = α i = β i = γ = α = α i = β i =. The rest of the taget patch costructio is idetical i Sectio 3.2 except that we substitute = for the vertex cotaied by oly oe quad. ACKNOWLEDGMENTS We would like to thak Peter-Pike Sloa, David Blythe, ad Hery Morto for may helpful discussios ad isights, as well as Bay Raitt for the models of the moster frog ad big guy. ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

11 Approximatig Catmull-Clark Subdivisio Surfaces with Bicubic Patches 8: REFERENCES ATI/AMD. 27. ATI Radeo HD 29 Series gpu specificatios. BIERMANN, H., LEVIN, A., AND ZORIN, D. 2. Piecewise smooth subdivisio surfaces with ormal cotrol. I Proceedigs of SIGGRAPH Computer Graphics BLYTHE, D. 26. The direct3d system. ACM Tras. Graph. 25, 3, BOLZ, J. AND SCHRÖDER, P. 22. Rapid evaluatio of catmull-clark subdivisio surfaces. I Proceedig of the Iteratioal Coferece o 3D Web Techology. 7. BOYD, C. 27. The furture of directx. dowload/e/5/5/e55982-cdaa-e25-9cc-c29693ceb/thegame DeveloperCoferece. CATMULL, E. AND CLARK, J Recursively geerated B-splie surfaces o arbitrary topological meshes. Comput. Aid. Des., 6, CHIYOKURA, H. AND KIMURA, F Desig of solids with free-form surfaces. Comput. Graph. 7, 3, DEROSE, T., KASS, M., AND TRUONG, T Sudivisio surfaces i character aimatio. I Proceedigs of SIGGRAPH Computer Graphics BUNNELL, M. 25. Adaptive Tessellatio of Subdivisio Surfaces with Displacemet Mappig: CPU Gems 2. Addiso-Wesley, Chapter 7, HALSTEAD, M., KASS, M., AND DEROSE, T Efficiet, fair iterpolatio usig catmull-clark surfaces. Comput. Graph. 27, Aual Coferece Series, 35. LEE, M. 26. Next-geeratio graphics programmig o xbox bb53-baf56aa2373/next Geeratio Graphics Programmig o Xbox 36.ppt. NASRI, A. H Polyhedral subdivisio methods for free-form surfaces. ACM Tras. Graph. 6,, PETERS, J. 2. Patchig catmull-clark meshes. I Proceedigs of SIGGRAPH Computer Graphics REIF, U A uified approach to subdivisio algorithms ear extraordiary vertices. Comput. Aid. Geomet. Des. 2, SHIUE, L.-J., JONES, I., AND PETERS, J. 25. A realtime gpu subdivisio kerel. ACM Tras. Graph. 2, 3, 5. STAM, J Exact evaluatio of Catmull-Clark subdivisio surfaces at arbitrary parameter values. Comput. Graph. 32, Aual Coferece Series, 395. STAM, J. AND LOOP, C. 23. Quad/triagle subdivisio. Comput. Graph. Forum 22,, 7. VLACHOS, A., PETERS, J., BOYD, C., AND MITCHELL, J. L. 2. Curved p triagles. I Proceedigs of the Symposium o Iteractive 3D Graphics Received Jue 27; accepted November 27 ACM Trasactios o Graphics, Vol. 27, No., Article 8, Publicatio date: March 28.

Reading. Subdivision curves and surfaces. Subdivision curves. Chaikin s algorithm. Recommended:

Reading. Subdivision curves and surfaces. Subdivision curves. Chaikin s algorithm. Recommended: Readig Recommeded: Stollitz, DeRose, ad Salesi. Wavelets for Computer Graphics: Theory ad Applicatios, 996, sectio 6.-6.3, 0., A.5. Subdivisio curves ad surfaces Note: there is a error i Stollitz, et al.,

More information

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches CHARLES LOOP Microsoft Research and SCOTT SCHAEFER Texas A&M University We present a simple and computationally efficient algorithm

More information

Smooth Spline Surfaces over Irregular Meshes

Smooth Spline Surfaces over Irregular Meshes Smooth Splie Surfaces over Irregular Meshes Charles Loop Apple Computer, Ic. Abstract A algorithm for creatig smooth splie surfaces over irregular meshes is preseted. The algorithm is a geeralizatio of

More information

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches Charles Loop Microsoft Research Scott Schaefer Texas A&M University April 24, 2007 Technical Report MSR-TR-2007-44 Microsoft Research

More information

Cubic Polynomial Curves with a Shape Parameter

Cubic Polynomial Curves with a Shape Parameter roceedigs of the th WSEAS Iteratioal Coferece o Robotics Cotrol ad Maufacturig Techology Hagzhou Chia April -8 00 (pp5-70) Cubic olyomial Curves with a Shape arameter MO GUOLIANG ZHAO YANAN Iformatio ad

More information

Improved triangular subdivision schemes 1

Improved triangular subdivision schemes 1 Improved triagular subdivisio schemes Hartmut Prautzsch 2 Georg Umlauf 3 Faultät für Iformati, Uiversität Karlsruhe, D-762 Karlsruhe, Germay E-mail: 2 prau@ira.ua.de 3 umlauf@ira.ua.de Abstract I this

More information

Bezier curves. Figure 2 shows cubic Bezier curves for various control points. In a Bezier curve, only

Bezier curves. Figure 2 shows cubic Bezier curves for various control points. In a Bezier curve, only Edited: Yeh-Liag Hsu (998--; recommeded: Yeh-Liag Hsu (--9; last updated: Yeh-Liag Hsu (9--7. Note: This is the course material for ME55 Geometric modelig ad computer graphics, Yua Ze Uiversity. art of

More information

IMP: Superposer Integrated Morphometrics Package Superposition Tool

IMP: Superposer Integrated Morphometrics Package Superposition Tool IMP: Superposer Itegrated Morphometrics Package Superpositio Tool Programmig by: David Lieber ( 03) Caisius College 200 Mai St. Buffalo, NY 4208 Cocept by: H. David Sheets, Dept. of Physics, Caisius College

More information

Creating Exact Bezier Representations of CST Shapes. David D. Marshall. California Polytechnic State University, San Luis Obispo, CA , USA

Creating Exact Bezier Representations of CST Shapes. David D. Marshall. California Polytechnic State University, San Luis Obispo, CA , USA Creatig Exact Bezier Represetatios of CST Shapes David D. Marshall Califoria Polytechic State Uiversity, Sa Luis Obispo, CA 93407-035, USA The paper presets a method of expressig CST shapes pioeered by

More information

Chapter 3 Classification of FFT Processor Algorithms

Chapter 3 Classification of FFT Processor Algorithms Chapter Classificatio of FFT Processor Algorithms The computatioal complexity of the Discrete Fourier trasform (DFT) is very high. It requires () 2 complex multiplicatios ad () complex additios [5]. As

More information

Convex hull ( 凸殻 ) property

Convex hull ( 凸殻 ) property Covex hull ( 凸殻 ) property The covex hull of a set of poits S i dimesios is the itersectio of all covex sets cotaiig S. For N poits P,..., P N, the covex hull C is the give by the expressio The covex hull

More information

Parametric curves. Reading. Parametric polynomial curves. Mathematical curve representation. Brian Curless CSE 457 Spring 2015

Parametric curves. Reading. Parametric polynomial curves. Mathematical curve representation. Brian Curless CSE 457 Spring 2015 Readig Required: Agel 0.-0.3, 0.5., 0.6-0.7, 0.9 Parametric curves Bria Curless CSE 457 Sprig 05 Optioal Bartels, Beatty, ad Barsy. A Itroductio to Splies for use i Computer Graphics ad Geometric Modelig,

More information

Bicubic Polar Subdivision

Bicubic Polar Subdivision Bicubic Polar Subdivisio K. Karčiauskas Vilius Uiversity ad J. Peters Uiversity of Florida We describe ad aalyze a subdivisio scheme that geeralizes bicubic splie subdivisio to cotrol ets with polar structure.

More information

Pattern Recognition Systems Lab 1 Least Mean Squares

Pattern Recognition Systems Lab 1 Least Mean Squares Patter Recogitio Systems Lab 1 Least Mea Squares 1. Objectives This laboratory work itroduces the OpeCV-based framework used throughout the course. I this assigmet a lie is fitted to a set of poits usig

More information

Lecture 24: Bezier Curves and Surfaces. thou shalt be near unto me Genesis 45:10

Lecture 24: Bezier Curves and Surfaces. thou shalt be near unto me Genesis 45:10 Lecture 24: Bezier Curves ad Surfaces thou shalt be ear uto me Geesis 45:0. Iterpolatio ad Approximatio Freeform curves ad surfaces are smooth shapes ofte describig ma-made objects. The hood of a car,

More information

A Note on Least-norm Solution of Global WireWarping

A Note on Least-norm Solution of Global WireWarping A Note o Least-orm Solutio of Global WireWarpig Charlie C. L. Wag Departmet of Mechaical ad Automatio Egieerig The Chiese Uiversity of Hog Kog Shati, N.T., Hog Kog E-mail: cwag@mae.cuhk.edu.hk Abstract

More information

3D Model Retrieval Method Based on Sample Prediction

3D Model Retrieval Method Based on Sample Prediction 20 Iteratioal Coferece o Computer Commuicatio ad Maagemet Proc.of CSIT vol.5 (20) (20) IACSIT Press, Sigapore 3D Model Retrieval Method Based o Sample Predictio Qigche Zhag, Ya Tag* School of Computer

More information

Normals. In OpenGL the normal vector is part of the state Set by glnormal*()

Normals. In OpenGL the normal vector is part of the state Set by glnormal*() Ray Tracig 1 Normals OpeG the ormal vector is part of the state Set by glnormal*() -glnormal3f(x, y, z); -glnormal3fv(p); Usually we wat to set the ormal to have uit legth so cosie calculatios are correct

More information

. Written in factored form it is easy to see that the roots are 2, 2, i,

. Written in factored form it is easy to see that the roots are 2, 2, i, CMPS A Itroductio to Programmig Programmig Assigmet 4 I this assigmet you will write a java program that determies the real roots of a polyomial that lie withi a specified rage. Recall that the roots (or

More information

A New Morphological 3D Shape Decomposition: Grayscale Interframe Interpolation Method

A New Morphological 3D Shape Decomposition: Grayscale Interframe Interpolation Method A ew Morphological 3D Shape Decompositio: Grayscale Iterframe Iterpolatio Method D.. Vizireau Politehica Uiversity Bucharest, Romaia ae@comm.pub.ro R. M. Udrea Politehica Uiversity Bucharest, Romaia mihea@comm.pub.ro

More information

Reading. Parametric curves. Mathematical curve representation. Curves before computers. Required: Angel , , , 11.9.

Reading. Parametric curves. Mathematical curve representation. Curves before computers. Required: Angel , , , 11.9. Readig Required: Agel.-.3,.5.,.6-.7,.9. Optioal Parametric curves Bartels, Beatty, ad Barsky. A Itroductio to Splies for use i Computer Graphics ad Geometric Modelig, 987. Fari. Curves ad Surfaces for

More information

condition w i B i S maximum u i

condition w i B i S maximum u i ecture 10 Dyamic Programmig 10.1 Kapsack Problem November 1, 2004 ecturer: Kamal Jai Notes: Tobias Holgers We are give a set of items U = {a 1, a 2,..., a }. Each item has a weight w i Z + ad a utility

More information

G 2 Tensor Product Splines over Extraordinary Vertices

G 2 Tensor Product Splines over Extraordinary Vertices Eurographics Symposium o Geometry rocessig 28 ierre Alliez ad Szymo Rusikiewicz Guest Editors Volume 27 28, Number 5 G 2 Tesor roduct Splies over Extraordiary Vertices Charles Loop 1 ad Scott Schaefer

More information

Fast Fourier Transform (FFT) Algorithms

Fast Fourier Transform (FFT) Algorithms Fast Fourier Trasform FFT Algorithms Relatio to the z-trasform elsewhere, ozero, z x z X x [ ] 2 ~ elsewhere,, ~ e j x X x x π j e z z X X π 2 ~ The DFS X represets evely spaced samples of the z- trasform

More information

Dynamic Programming and Curve Fitting Based Road Boundary Detection

Dynamic Programming and Curve Fitting Based Road Boundary Detection Dyamic Programmig ad Curve Fittig Based Road Boudary Detectio SHYAM PRASAD ADHIKARI, HYONGSUK KIM, Divisio of Electroics ad Iformatio Egieerig Chobuk Natioal Uiversity 664-4 Ga Deokji-Dog Jeoju-City Jeobuk

More information

Computer Graphics Hardware An Overview

Computer Graphics Hardware An Overview Computer Graphics Hardware A Overview Graphics System Moitor Iput devices CPU/Memory GPU Raster Graphics System Raster: A array of picture elemets Based o raster-sca TV techology The scree (ad a picture)

More information

GEORG UMLAUF. Abstract. Tools for the analysis of generalized triangular box spline subdivision schemes are

GEORG UMLAUF. Abstract. Tools for the analysis of generalized triangular box spline subdivision schemes are ANALYZING THE CHARACTERISTIC MAP OF TRIANGULAR SUBDIVISION SCHEMES GEORG UMLAUF Abstract. Tools for the aalysis of geeralized triagular box splie subdivisio schemes are developed. For the rst time the

More information

Elementary Educational Computer

Elementary Educational Computer Chapter 5 Elemetary Educatioal Computer. Geeral structure of the Elemetary Educatioal Computer (EEC) The EEC coforms to the 5 uits structure defied by vo Neuma's model (.) All uits are preseted i a simplified

More information

1.2 Binomial Coefficients and Subsets

1.2 Binomial Coefficients and Subsets 1.2. BINOMIAL COEFFICIENTS AND SUBSETS 13 1.2 Biomial Coefficiets ad Subsets 1.2-1 The loop below is part of a program to determie the umber of triagles formed by poits i the plae. for i =1 to for j =

More information

SUBDIVISION surfaces are becoming more and more popular

SUBDIVISION surfaces are becoming more and more popular IEEE-TVCG RGB Subdivisio Erico Puppo, Member, IEEE, ad Daiele Paozzo Abstract We itroduce the RGB Subdivisio: a adaptive subdivisio scheme for triagle meshes, which is based o the iterative applicatio

More information

Alpha Individual Solutions MAΘ National Convention 2013

Alpha Individual Solutions MAΘ National Convention 2013 Alpha Idividual Solutios MAΘ Natioal Covetio 0 Aswers:. D. A. C 4. D 5. C 6. B 7. A 8. C 9. D 0. B. B. A. D 4. C 5. A 6. C 7. B 8. A 9. A 0. C. E. B. D 4. C 5. A 6. D 7. B 8. C 9. D 0. B TB. 570 TB. 5

More information

Math Section 2.2 Polynomial Functions

Math Section 2.2 Polynomial Functions Math 1330 - Sectio. Polyomial Fuctios Our objectives i workig with polyomial fuctios will be, first, to gather iformatio about the graph of the fuctio ad, secod, to use that iformatio to geerate a reasoably

More information

EVALUATION OF TRIGONOMETRIC FUNCTIONS

EVALUATION OF TRIGONOMETRIC FUNCTIONS EVALUATION OF TRIGONOMETRIC FUNCTIONS Whe first exposed to trigoometric fuctios i high school studets are expected to memorize the values of the trigoometric fuctios of sie cosie taget for the special

More information

Computational Geometry

Computational Geometry Computatioal Geometry Chapter 4 Liear programmig Duality Smallest eclosig disk O the Ageda Liear Programmig Slides courtesy of Craig Gotsma 4. 4. Liear Programmig - Example Defie: (amout amout cosumed

More information

Loop Subdivision Surface Based Progressive Interpolation

Loop Subdivision Surface Based Progressive Interpolation Cheg FH (F), Fa FT, Lai SH et al Loop subdivisio surface based progressive iterpolatio JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY 24(1): 39 46 Ja 2009 Loop Subdivisio Surface Based Progressive Iterpolatio

More information

Accuracy Improvement in Camera Calibration

Accuracy Improvement in Camera Calibration Accuracy Improvemet i Camera Calibratio FaJie L Qi Zag ad Reihard Klette CITR, Computer Sciece Departmet The Uiversity of Aucklad Tamaki Campus, Aucklad, New Zealad fli006, qza001@ec.aucklad.ac.z r.klette@aucklad.ac.z

More information

Lecture 1: Introduction and Strassen s Algorithm

Lecture 1: Introduction and Strassen s Algorithm 5-750: Graduate Algorithms Jauary 7, 08 Lecture : Itroductio ad Strasse s Algorithm Lecturer: Gary Miller Scribe: Robert Parker Itroductio Machie models I this class, we will primarily use the Radom Access

More information

Consider the following population data for the state of California. Year Population

Consider the following population data for the state of California. Year Population Assigmets for Bradie Fall 2016 for Chapter 5 Assigmet sheet for Sectios 5.1, 5.3, 5.5, 5.6, 5.7, 5.8 Read Pages 341-349 Exercises for Sectio 5.1 Lagrage Iterpolatio #1, #4, #7, #13, #14 For #1 use MATLAB

More information

9.1. Sequences and Series. Sequences. What you should learn. Why you should learn it. Definition of Sequence

9.1. Sequences and Series. Sequences. What you should learn. Why you should learn it. Definition of Sequence _9.qxd // : AM Page Chapter 9 Sequeces, Series, ad Probability 9. Sequeces ad Series What you should lear Use sequece otatio to write the terms of sequeces. Use factorial otatio. Use summatio otatio to

More information

Recursive Procedures. How can you model the relationship between consecutive terms of a sequence?

Recursive Procedures. How can you model the relationship between consecutive terms of a sequence? 6. Recursive Procedures I Sectio 6.1, you used fuctio otatio to write a explicit formula to determie the value of ay term i a Sometimes it is easier to calculate oe term i a sequece usig the previous terms.

More information

The Magma Database file formats

The Magma Database file formats The Magma Database file formats Adrew Gaylard, Bret Pikey, ad Mart-Mari Breedt Johaesburg, South Africa 15th May 2006 1 Summary Magma is a ope-source object database created by Chris Muller, of Kasas City,

More information

Counting Regions in the Plane and More 1

Counting Regions in the Plane and More 1 Coutig Regios i the Plae ad More 1 by Zvezdelia Stakova Berkeley Math Circle Itermediate I Group September 016 1. Overarchig Problem Problem 1 Regios i a Circle. The vertices of a polygos are arraged o

More information

HARTMUT PRAUTZSCH and GEORG UMLAUF. Fakultat fur Informatik, Universitat Karlsruhe. [prau/umlauf

HARTMUT PRAUTZSCH and GEORG UMLAUF. Fakultat fur Informatik, Universitat Karlsruhe.   [prau/umlauf A G AND A G SUBDIVISION SCHEME FOR TRIANGULAR NETS HARTMUT PRAUTZSCH ad GEORG UMLAUF Fakultat fur Iformatik, Uiversitat Karlsruhe D-768 Karlsruhe, Germay E-mail: [prau/umlauf ]@ira.uka.de I this article

More information

G 1 Interpolation of arbitrary meshes with Bézier patches

G 1 Interpolation of arbitrary meshes with Bézier patches Master s Degree i Applied Mathematics Supervised by Stefaie Hahma March 5th - July 5th 007 G Iterpolatio of arbitrary meshes with Bézier patches Jea Kutzma Lab. B.P. 53 3804 Greoble Cedex 9 Cotets Ackowledgmets

More information

Morgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5

Morgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5 Morga Kaufma Publishers 26 February, 28 COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Chapter 5 Set-Associative Cache Architecture Performace Summary Whe CPU performace icreases:

More information

EE123 Digital Signal Processing

EE123 Digital Signal Processing Last Time EE Digital Sigal Processig Lecture 7 Block Covolutio, Overlap ad Add, FFT Discrete Fourier Trasform Properties of the Liear covolutio through circular Today Liear covolutio with Overlap ad add

More information

Tuned Ternary Quad Subdivision

Tuned Ternary Quad Subdivision Tued Terary Quad Subdivisio Tiayu Ni ad Ahmad H. Nasri 2 Dept. CISE, Uiversity of Florida 2 Dept. of Computer Sciece America Uiversity of Beirut Abstract. A well-documeted problem of Catmull ad Clark subdivisio

More information

CS200: Hash Tables. Prichard Ch CS200 - Hash Tables 1

CS200: Hash Tables. Prichard Ch CS200 - Hash Tables 1 CS200: Hash Tables Prichard Ch. 13.2 CS200 - Hash Tables 1 Table Implemetatios: average cases Search Add Remove Sorted array-based Usorted array-based Balaced Search Trees O(log ) O() O() O() O(1) O()

More information

Evaluation scheme for Tracking in AMI

Evaluation scheme for Tracking in AMI A M I C o m m u i c a t i o A U G M E N T E D M U L T I - P A R T Y I N T E R A C T I O N http://www.amiproject.org/ Evaluatio scheme for Trackig i AMI S. Schreiber a D. Gatica-Perez b AMI WP4 Trackig:

More information

Ch 9.3 Geometric Sequences and Series Lessons

Ch 9.3 Geometric Sequences and Series Lessons Ch 9.3 Geometric Sequeces ad Series Lessos SKILLS OBJECTIVES Recogize a geometric sequece. Fid the geeral, th term of a geometric sequece. Evaluate a fiite geometric series. Evaluate a ifiite geometric

More information

Lecture Notes 6 Introduction to algorithm analysis CSS 501 Data Structures and Object-Oriented Programming

Lecture Notes 6 Introduction to algorithm analysis CSS 501 Data Structures and Object-Oriented Programming Lecture Notes 6 Itroductio to algorithm aalysis CSS 501 Data Structures ad Object-Orieted Programmig Readig for this lecture: Carrao, Chapter 10 To be covered i this lecture: Itroductio to algorithm aalysis

More information

An Efficient Algorithm for Graph Bisection of Triangularizations

An Efficient Algorithm for Graph Bisection of Triangularizations A Efficiet Algorithm for Graph Bisectio of Triagularizatios Gerold Jäger Departmet of Computer Sciece Washigto Uiversity Campus Box 1045 Oe Brookigs Drive St. Louis, Missouri 63130-4899, USA jaegerg@cse.wustl.edu

More information

Mathematics and Art Activity - Basic Plane Tessellation with GeoGebra

Mathematics and Art Activity - Basic Plane Tessellation with GeoGebra 1 Mathematics ad Art Activity - Basic Plae Tessellatio with GeoGebra Worksheet: Explorig Regular Edge-Edge Tessellatios of the Cartesia Plae ad the Mathematics behid it. Goal: To eable Maths educators

More information

Polymorph: Morphing Among Multiple Images

Polymorph: Morphing Among Multiple Images Feature Article Polymorph: Morphig Amog Multiple Images Image metamorphosis has prove to be a powerful visual effects tool. May breathtakig examples ow appear i film ad televisio, depictig the fluid trasformatio

More information

A SOFTWARE MODEL FOR THE MULTILAYER PERCEPTRON

A SOFTWARE MODEL FOR THE MULTILAYER PERCEPTRON A SOFTWARE MODEL FOR THE MULTILAYER PERCEPTRON Roberto Lopez ad Eugeio Oñate Iteratioal Ceter for Numerical Methods i Egieerig (CIMNE) Edificio C1, Gra Capitá s/, 08034 Barceloa, Spai ABSTRACT I this work

More information

Performance Plus Software Parameter Definitions

Performance Plus Software Parameter Definitions Performace Plus+ Software Parameter Defiitios/ Performace Plus Software Parameter Defiitios Chapma Techical Note-TG-5 paramete.doc ev-0-03 Performace Plus+ Software Parameter Defiitios/2 Backgroud ad Defiitios

More information

On (K t e)-saturated Graphs

On (K t e)-saturated Graphs Noame mauscript No. (will be iserted by the editor O (K t e-saturated Graphs Jessica Fuller Roald J. Gould the date of receipt ad acceptace should be iserted later Abstract Give a graph H, we say a graph

More information

How do we evaluate algorithms?

How do we evaluate algorithms? F2 Readig referece: chapter 2 + slides Algorithm complexity Big O ad big Ω To calculate ruig time Aalysis of recursive Algorithms Next time: Litterature: slides mostly The first Algorithm desig methods:

More information

Arithmetic Sequences

Arithmetic Sequences . Arithmetic Sequeces COMMON CORE Learig Stadards HSF-IF.A. HSF-BF.A.1a HSF-BF.A. HSF-LE.A. Essetial Questio How ca you use a arithmetic sequece to describe a patter? A arithmetic sequece is a ordered

More information

CMSC Computer Architecture Lecture 12: Virtual Memory. Prof. Yanjing Li University of Chicago

CMSC Computer Architecture Lecture 12: Virtual Memory. Prof. Yanjing Li University of Chicago CMSC 22200 Computer Architecture Lecture 12: Virtual Memory Prof. Yajig Li Uiversity of Chicago A System with Physical Memory Oly Examples: most Cray machies early PCs Memory early all embedded systems

More information

Computers and Scientific Thinking

Computers and Scientific Thinking Computers ad Scietific Thikig David Reed, Creighto Uiversity Chapter 15 JavaScript Strigs 1 Strigs as Objects so far, your iteractive Web pages have maipulated strigs i simple ways use text box to iput

More information

Counting the Number of Minimum Roman Dominating Functions of a Graph

Counting the Number of Minimum Roman Dominating Functions of a Graph Coutig the Number of Miimum Roma Domiatig Fuctios of a Graph SHI ZHENG ad KOH KHEE MENG, Natioal Uiversity of Sigapore We provide two algorithms coutig the umber of miimum Roma domiatig fuctios of a graph

More information

The isoperimetric problem on the hypercube

The isoperimetric problem on the hypercube The isoperimetric problem o the hypercube Prepared by: Steve Butler November 2, 2005 1 The isoperimetric problem We will cosider the -dimesioal hypercube Q Recall that the hypercube Q is a graph whose

More information

n n B. How many subsets of C are there of cardinality n. We are selecting elements for such a

n n B. How many subsets of C are there of cardinality n. We are selecting elements for such a 4. [10] Usig a combiatorial argumet, prove that for 1: = 0 = Let A ad B be disjoit sets of cardiality each ad C = A B. How may subsets of C are there of cardiality. We are selectig elemets for such a subset

More information

Assignment 5; Due Friday, February 10

Assignment 5; Due Friday, February 10 Assigmet 5; Due Friday, February 10 17.9b The set X is just two circles joied at a poit, ad the set X is a grid i the plae, without the iteriors of the small squares. The picture below shows that the iteriors

More information

COMP 558 lecture 6 Sept. 27, 2010

COMP 558 lecture 6 Sept. 27, 2010 Radiometry We have discussed how light travels i straight lies through space. We would like to be able to talk about how bright differet light rays are. Imagie a thi cylidrical tube ad cosider the amout

More information

Octahedral Graph Scaling

Octahedral Graph Scaling Octahedral Graph Scalig Peter Russell Jauary 1, 2015 Abstract There is presetly o strog iterpretatio for the otio of -vertex graph scalig. This paper presets a ew defiitio for the term i the cotext of

More information

Orientation. Orientation 10/28/15

Orientation. Orientation 10/28/15 Orietatio Orietatio We will defie orietatio to mea a object s istataeous rotatioal cofiguratio Thik of it as the rotatioal equivalet of positio 1 Represetig Positios Cartesia coordiates (x,y,z) are a easy

More information

Lecture 18. Optimization in n dimensions

Lecture 18. Optimization in n dimensions Lecture 8 Optimizatio i dimesios Itroductio We ow cosider the problem of miimizig a sigle scalar fuctio of variables, f x, where x=[ x, x,, x ]T. The D case ca be visualized as fidig the lowest poit of

More information

Analysis Metrics. Intro to Algorithm Analysis. Slides. 12. Alg Analysis. 12. Alg Analysis

Analysis Metrics. Intro to Algorithm Analysis. Slides. 12. Alg Analysis. 12. Alg Analysis Itro to Algorithm Aalysis Aalysis Metrics Slides. Table of Cotets. Aalysis Metrics 3. Exact Aalysis Rules 4. Simple Summatio 5. Summatio Formulas 6. Order of Magitude 7. Big-O otatio 8. Big-O Theorems

More information

Improving Template Based Spike Detection

Improving Template Based Spike Detection Improvig Template Based Spike Detectio Kirk Smith, Member - IEEE Portlad State Uiversity petra@ee.pdx.edu Abstract Template matchig algorithms like SSE, Covolutio ad Maximum Likelihood are well kow for

More information

Bayesian approach to reliability modelling for a probability of failure on demand parameter

Bayesian approach to reliability modelling for a probability of failure on demand parameter Bayesia approach to reliability modellig for a probability of failure o demad parameter BÖRCSÖK J., SCHAEFER S. Departmet of Computer Architecture ad System Programmig Uiversity Kassel, Wilhelmshöher Allee

More information

An Efficient Algorithm for Graph Bisection of Triangularizations

An Efficient Algorithm for Graph Bisection of Triangularizations Applied Mathematical Scieces, Vol. 1, 2007, o. 25, 1203-1215 A Efficiet Algorithm for Graph Bisectio of Triagularizatios Gerold Jäger Departmet of Computer Sciece Washigto Uiversity Campus Box 1045, Oe

More information

APPLICATION NOTE PACE1750AE BUILT-IN FUNCTIONS

APPLICATION NOTE PACE1750AE BUILT-IN FUNCTIONS APPLICATION NOTE PACE175AE BUILT-IN UNCTIONS About This Note This applicatio brief is iteded to explai ad demostrate the use of the special fuctios that are built ito the PACE175AE processor. These powerful

More information

CSC 220: Computer Organization Unit 11 Basic Computer Organization and Design

CSC 220: Computer Organization Unit 11 Basic Computer Organization and Design College of Computer ad Iformatio Scieces Departmet of Computer Sciece CSC 220: Computer Orgaizatio Uit 11 Basic Computer Orgaizatio ad Desig 1 For the rest of the semester, we ll focus o computer architecture:

More information

CS Polygon Scan Conversion. Slide 1

CS Polygon Scan Conversion. Slide 1 CS 112 - Polygo Sca Coversio Slide 1 Polygo Classificatio Covex All iterior agles are less tha 180 degrees Cocave Iterior agles ca be greater tha 180 degrees Degeerate polygos If all vertices are colliear

More information

Ones Assignment Method for Solving Traveling Salesman Problem

Ones Assignment Method for Solving Traveling Salesman Problem Joural of mathematics ad computer sciece 0 (0), 58-65 Oes Assigmet Method for Solvig Travelig Salesma Problem Hadi Basirzadeh Departmet of Mathematics, Shahid Chamra Uiversity, Ahvaz, Ira Article history:

More information

The Closest Line to a Data Set in the Plane. David Gurney Southeastern Louisiana University Hammond, Louisiana

The Closest Line to a Data Set in the Plane. David Gurney Southeastern Louisiana University Hammond, Louisiana The Closest Lie to a Data Set i the Plae David Gurey Southeaster Louisiaa Uiversity Hammod, Louisiaa ABSTRACT This paper looks at three differet measures of distace betwee a lie ad a data set i the plae:

More information

EE260: Digital Design, Spring /16/18. n Example: m 0 (=x 1 x 2 ) is adjacent to m 1 (=x 1 x 2 ) and m 2 (=x 1 x 2 ) but NOT m 3 (=x 1 x 2 )

EE260: Digital Design, Spring /16/18. n Example: m 0 (=x 1 x 2 ) is adjacent to m 1 (=x 1 x 2 ) and m 2 (=x 1 x 2 ) but NOT m 3 (=x 1 x 2 ) EE26: Digital Desig, Sprig 28 3/6/8 EE 26: Itroductio to Digital Desig Combiatioal Datapath Yao Zheg Departmet of Electrical Egieerig Uiversity of Hawaiʻi at Māoa Combiatioal Logic Blocks Multiplexer Ecoders/Decoders

More information

Optimal Mapped Mesh on the Circle

Optimal Mapped Mesh on the Circle Koferece ANSYS 009 Optimal Mapped Mesh o the Circle doc. Ig. Jaroslav Štigler, Ph.D. Bro Uiversity of Techology, aculty of Mechaical gieerig, ergy Istitut, Abstract: This paper brigs out some ideas ad

More information

Fundamentals of Media Processing. Shin'ichi Satoh Kazuya Kodama Hiroshi Mo Duy-Dinh Le

Fundamentals of Media Processing. Shin'ichi Satoh Kazuya Kodama Hiroshi Mo Duy-Dinh Le Fudametals of Media Processig Shi'ichi Satoh Kazuya Kodama Hiroshi Mo Duy-Dih Le Today's topics Noparametric Methods Parze Widow k-nearest Neighbor Estimatio Clusterig Techiques k-meas Agglomerative Hierarchical

More information

The Platonic solids The five regular polyhedra

The Platonic solids The five regular polyhedra The Platoic solids The five regular polyhedra Ole Witt-Hase jauary 7 www.olewitthase.dk Cotets. Polygos.... Topologically cosideratios.... Euler s polyhedro theorem.... Regular ets o a sphere.... The dihedral

More information

Texture Mapping. Jian Huang. This set of slides references the ones used at Ohio State for instruction.

Texture Mapping. Jian Huang. This set of slides references the ones used at Ohio State for instruction. Texture Mappig Jia Huag This set of slides refereces the oes used at Ohio State for istructio. Ca you do this What Dreams May Come Texture Mappig Of course, oe ca model the exact micro-geometry + material

More information

Parabolic Path to a Best Best-Fit Line:

Parabolic Path to a Best Best-Fit Line: Studet Activity : Fidig the Least Squares Regressio Lie By Explorig the Relatioship betwee Slope ad Residuals Objective: How does oe determie a best best-fit lie for a set of data? Eyeballig it may be

More information

Chapter 11. Friends, Overloaded Operators, and Arrays in Classes. Copyright 2014 Pearson Addison-Wesley. All rights reserved.

Chapter 11. Friends, Overloaded Operators, and Arrays in Classes. Copyright 2014 Pearson Addison-Wesley. All rights reserved. Chapter 11 Frieds, Overloaded Operators, ad Arrays i Classes Copyright 2014 Pearso Addiso-Wesley. All rights reserved. Overview 11.1 Fried Fuctios 11.2 Overloadig Operators 11.3 Arrays ad Classes 11.4

More information

Improvement of the Orthogonal Code Convolution Capabilities Using FPGA Implementation

Improvement of the Orthogonal Code Convolution Capabilities Using FPGA Implementation Improvemet of the Orthogoal Code Covolutio Capabilities Usig FPGA Implemetatio Naima Kaabouch, Member, IEEE, Apara Dhirde, Member, IEEE, Saleh Faruque, Member, IEEE Departmet of Electrical Egieerig, Uiversity

More information

Handwriting Stroke Extraction Using a New XYTC Transform

Handwriting Stroke Extraction Using a New XYTC Transform Hadwritig Stroke Etractio Usig a New XYTC Trasform Gilles F. Houle 1, Kateria Bliova 1 ad M. Shridhar 1 Computer Scieces Corporatio Uiversity Michiga-Dearbor Abstract: The fudametal represetatio of hadwritig

More information

Math 10C Long Range Plans

Math 10C Long Range Plans Math 10C Log Rage Plas Uits: Evaluatio: Homework, projects ad assigmets 10% Uit Tests. 70% Fial Examiatio.. 20% Ay Uit Test may be rewritte for a higher mark. If the retest mark is higher, that mark will

More information

Lecture 5. Counting Sort / Radix Sort

Lecture 5. Counting Sort / Radix Sort Lecture 5. Coutig Sort / Radix Sort T. H. Corme, C. E. Leiserso ad R. L. Rivest Itroductio to Algorithms, 3rd Editio, MIT Press, 2009 Sugkyukwa Uiversity Hyuseug Choo choo@skku.edu Copyright 2000-2018

More information

EVALUATION OF ALGORITHMS FOR SURFACE INTERPOLATION OVER TRIANGULAR PATCH. Jenn-Taur Lee

EVALUATION OF ALGORITHMS FOR SURFACE INTERPOLATION OVER TRIANGULAR PATCH. Jenn-Taur Lee EVALUATION OF ALGORITHMS FOR SURFACE INTERPOLATION OVER TRIANGULAR PATCH Je-Taur Lee Departmet of Civil ad Evirometal Egieerig Uiversity of Wiscosi-Madiso Madiso, WI 53706 ABSTRACT Surface iterpolatio

More information

. Perform a geometric (ray-optics) construction (i.e., draw in the rays on the diagram) to show where the final image is formed.

. Perform a geometric (ray-optics) construction (i.e., draw in the rays on the diagram) to show where the final image is formed. MASSACHUSETTS INSTITUTE of TECHNOLOGY Departmet of Electrical Egieerig ad Computer Sciece 6.161 Moder Optics Project Laboratory 6.637 Optical Sigals, Devices & Systems Problem Set No. 1 Geometric optics

More information

6.854J / J Advanced Algorithms Fall 2008

6.854J / J Advanced Algorithms Fall 2008 MIT OpeCourseWare http://ocw.mit.edu 6.854J / 18.415J Advaced Algorithms Fall 2008 For iformatio about citig these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. 18.415/6.854 Advaced Algorithms

More information

游戏设计与开发. Outline. Game Programming Topics. Building A Game

游戏设计与开发. Outline. Game Programming Topics. Building A Game 1896 1935 1987 2006 Outlie 游戏设计与开发 Real Time Requiremet A Coceptual Rederig Pipelie The Graphics Processig Uit (GPU) Example 技术篇 : 实时图形硬件 Game Programmig Topics Focus: Buildig game ad virtual world High-level

More information

Force Network Analysis using Complementary Energy

Force Network Analysis using Complementary Energy orce Network Aalysis usig Complemetary Eergy Adrew BORGART Assistat Professor Delft Uiversity of Techology Delft, The Netherlads A.Borgart@tudelft.l Yaick LIEM Studet Delft Uiversity of Techology Delft,

More information

Polynomial Functions and Models. Learning Objectives. Polynomials. P (x) = a n x n + a n 1 x n a 1 x + a 0, a n 0

Polynomial Functions and Models. Learning Objectives. Polynomials. P (x) = a n x n + a n 1 x n a 1 x + a 0, a n 0 Polyomial Fuctios ad Models 1 Learig Objectives 1. Idetify polyomial fuctios ad their degree 2. Graph polyomial fuctios usig trasformatios 3. Idetify the real zeros of a polyomial fuctio ad their multiplicity

More information

Xiaozhou (Steve) Li, Atri Rudra, Ram Swaminathan. HP Laboratories HPL Keyword(s): graph coloring; hardness of approximation

Xiaozhou (Steve) Li, Atri Rudra, Ram Swaminathan. HP Laboratories HPL Keyword(s): graph coloring; hardness of approximation Flexible Colorig Xiaozhou (Steve) Li, Atri Rudra, Ram Swamiatha HP Laboratories HPL-2010-177 Keyword(s): graph colorig; hardess of approximatio Abstract: Motivated b y reliability cosideratios i data deduplicatio

More information

Appendix D. Controller Implementation

Appendix D. Controller Implementation COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Iterface 5 th Editio Appedix D Cotroller Implemetatio Cotroller Implemetatios Combiatioal logic (sigle-cycle); Fiite state machie (multi-cycle, pipelied);

More information

Python Programming: An Introduction to Computer Science

Python Programming: An Introduction to Computer Science Pytho Programmig: A Itroductio to Computer Sciece Chapter 6 Defiig Fuctios Pytho Programmig, 2/e 1 Objectives To uderstad why programmers divide programs up ito sets of cooperatig fuctios. To be able to

More information

New HSL Distance Based Colour Clustering Algorithm

New HSL Distance Based Colour Clustering Algorithm The 4th Midwest Artificial Itelligece ad Cogitive Scieces Coferece (MAICS 03 pp 85-9 New Albay Idiaa USA April 3-4 03 New HSL Distace Based Colour Clusterig Algorithm Vasile Patrascu Departemet of Iformatics

More information

Appendix A. Use of Operators in ARPS

Appendix A. Use of Operators in ARPS A Appedix A. Use of Operators i ARPS The methodology for solvig the equatios of hydrodyamics i either differetial or itegral form usig grid-poit techiques (fiite differece, fiite volume, fiite elemet)

More information