freeform: A Tool for Teaching the Mathematics of Curves and Surfaces

Size: px
Start display at page:

Download "freeform: A Tool for Teaching the Mathematics of Curves and Surfaces"

Transcription

1 257 freeform: A Tool for Teachig the Mathematics of Curves ad Surfaces James R. Miller Uiversity of Kasas, jrmiller@ku.edu ABSTRACT We describe the structure ad use of a iteractive modelig ad visualizatio tool used to help studets uderstad various importat cocepts i curve ad surface desig. This paper describes those aspects of the tool related to NURBS curves, but Bezier ad Hermite curves are also supported as are Bezier ad B-Splie surfaces. The focus of this paper is almost exclusively o those features of the tool used to visualize the mathematics of NURBS curves ad surfaces, especially focusig o a itegrated visualizatio of how weights ad kots affect the bledig fuctios ad, through them, the curve. It is curretly packaged as a stadaloe C++ program usig OpeGL, ruig o Macitosh ad liux operatig systems. A port to Widows is uderway, but as a part of a larger effort to redesig ad better package a Java-JOGL-Swig versio, access to which will be placed i the public domai usig Java Web Start. Keywords: CAD educatio, visualizig B-Splie fuctios, curve & surface desig. DOI: /cadaps INTRODUCTION Over the past several years, we have developed a iteractive tool called freeform that is used to demostrate the mathematics of curve ad surface desig primarily for studets i our graduate Geometric Modelig course. All of the studets i the course have programmig expertise as well as basic kowledge of the mathematics of 3D graphics (poits ad vectors i affie ad projective spaces, affie trasformatios, etc.). Most are also familiar with OpeGL, ad may, if ot most, have used oe or more ope source or commercial CAD desig tools supportig the creatio ad maipulatio of freeform curves ad surfaces. The itet of this course is to give them more i-depth uderstadig of the uderlyig mathematics ad algorithms that they have bee employig at a user level. They demostrate their kowledge with a combiatio of writte homework ad programmig projects. The course is taught as a graduate level computer sciece course, but it is also actively advertised to graduate studets i other departmets. It frequetly draws some from mechaical egieerig as well as occasioally from mathematics ad aeroautical egieerig. The egieerig studets appreciate the chace to uderstad the uderlyig mathematics ad algorithms of desig packages they typically use as it removes the veil of black magic ad helps them better uderstad what they ca ad caot do. At the same time, it helps them to become better users of CAD packages [8]. The computer sciece studets (ad, to a certai extet, the mathematics studets) are exposed to a realistic vehicle for explorig umerical programmig issues, mathematical fuctio spaces, ad other

2 258 such issues that they all too frequetly oly study i the abstract. May are simply motivated by a desire to better uderstad the techology. The class is usually sufficietly small so that all the studets get to kow each other, ad they are able to share their respective expertise. The freeform program supports parametric curves ad surfaces defied as bleded sums of cotrol poits: curves: C u F ( u) P (1) i 0 tesor product surfaces: S u w i i m, F ( u) F ( w) P (2) i j ij i 0 j 0 It also supports sketchig ordered collectios of poit-vector pairs to geerate piecewise Hermite curves. We try to emphasize the importace of uderstadig how bledig fuctios determie geeral properties of curves ad surfaces, while the cotrol poits determie the shape of a particular istace. This ituitio is sometimes easier to covey with some classes of curves ad surfaces (e.g., Bezier) tha it is with others (e.g., NURBS). For example, the fact that desig hadles such as kots ad weights affect the bledig fuctios themselves ca be a stumblig block. To help with the developmet of this uderstadig, freeform icludes a itegrated ad iteractive visualizatio of how adjustig kots ad weights affect the shape of the bledig fuctios as well as that of the curve. I side-by-side widows, users watch the shape of the fuctios ad the shape of the curve chage i respose to iteractive kot ad weight adjustmets. As will be illustrated below, other features of freeform preset visualizatios of the relatioship betwee spas ad cotrol poits as determied by the kot vector. As the scope ad features of this tool have evolved, we have bee usig it i a more fudametal way i the course. While doig so, we have observed much greater egagemet o the part of studets, better performace o homework ad exams, much stroger ability to hadle more complex ad detailed questios, ad, perhaps most iterestigly, much better questios raised i class. 2 OTHER VISUALIZATION-BASED SPLINE EDUCATIONAL TOOLS While we kow of o educatioal tool with the breadth of coverage of ours, others do exist which preset visualizatios of various sorts specific to B-Splies. Oes with which we are familiar are described below. Lerios describes a program called scurvy that was writte to illustrate the depedece of B-Splie curves o cotrol poit positios ad kot vector sequeces [5]. No attempt to visualize the basis fuctios is metioed, or does scurvy as described support ratioal B-Splies. There are also some visualizatio aids described that allow the user to see what portio of a B-Splie curve will be affected if a particular cotrol poit is moved. Chag developed a tool usig Mathematica that allows a sigle o-ratioal B-Splie curve to be maipulated [1]. A butto is used to toggle betwee showig the bledig fuctios ad showig the curve. Sliders ca be used to adjust the kot values. Demidov offers web pages with Java applets that demostrate qualitatively how kot placemet affects B-Splie basis fuctio shapes [2]. No quatitative kot values are show, ad it is difficult to experimet with kots of multiplicity greater tha 1. It is also difficult to relate bledig fuctios to cotrol poits or positios o curves to poits o the bledig fuctios or eve spas i parameter space. Ulike the previous two examples, Fisher describes a tool that focuses o cotrol poit weights i NURBS curves [4]. They preset weighted cotrol poits as poits i projective space ad illustrate how the curve is geerated by projectig the projective space curve poits back to the affie plae. There is little or o metio of kots, visualizatio of basis fuctios, or ability to alter kot spacig for their curves. By ad large, all these tools allow oly a sigle plaar curve ad permit visualizatios of limited aspects of the curves ad/or basis fuctios. Our goal was to develop a comprehesive set of

3 259 visualizatios that allowed the user to uderstad deeply the relatioship betwee kots, basis fuctios, cotrol poits, weights, ad curve shape. Moreover, we also wated to be able to illustrate commo algorithms i a cotext sufficietly rich so that ot oly their operatio, but also their applicatio could be appreciated. This requires the ability to store ad maipulate several 3D curve ad surface istaces at oce. 3 THE DESIGN OF FREEFORM The freeform program was desiged first ad foremost as a teachig tool, ot as a productio curve ad surface desig tool. Most otably, this meas certai features are very limited or missig altogether. For example, there are relatively few ab iitio curve ad surface creatio mechaisms. There is o support for matchig curvatures at specific positios or other similar precisio desig tools. There are oly limited sketchig iput facilities. Supported curve creatio operatios iclude: Iterpolatio: o Create a degree Bezier curve exactly iterpolatig a ordered collectio of +1 poits. (A few optios are provided for selectig how parameter values are associated with the poits.) o Create a piecewise cubic Hermite curve iterpolatig a ordered set of +1 poitvector pairs. Least squares approximatio: Create a degree m Bezier curve which is the least squares approximatio to a collectio of poits, where m<. (A few optios are provided for selectig how parameter values are associated with the poits.) Shape approximatio: Use a ordered set of +1 poits as the cotrol polygo for a degree Bezier or Ratioal Bezier curve; alteratively, use the ordered set as the cotrol poits for a degree p B-Splie, or ratioal B-Splie (NURBS) curve, p. The poits ad/or poit-vector pairs ca be digitized or read from a file. Supported surface creatio operatios iclude: Geerate a regular +1 x m+1 array of poits o a plae to be used as cotrol poits for a Bezier or NURBS surface. Create a NURBS surface as, for example, a ruled surface, sum surface, or revolutio surface. There is a simple text file format that ca be read by freeform to import geometry. Geometry ca be saved by freeform i this format for later re-loadig. Its format is also sufficietly simple so as to be readily geerated by other applicatios to allow geometry from those sources to be imported ito freeform. Several features are icluded i freeform that would likely ot be visible at the user iterface i productio desig systems, or at least ot as directly as they are here. Some of these features are listed below. We will discuss these i detail i the ext sectio. spier cotrols for settig the kot values of the curret B-Splie, icludig allowig kots to assume ay multiplicity; spier cotrols for adjustig weights of the curret B-Splie; separate side-by-side displays of ormalized ad uormalized B-Splie basis fuctios that, alog with the separate display of the correspodig curve, are dyamically updated as weights ad/or kots are adjusted; several passive highlightig techiques discussed below that are desiged to help the studet visualize several importat cocepts icludig the spas affected by a give cotrol poit as well as the set of cotrol poits affectig a give spa; The rest of the paper focuses almost exclusively o NURBS curves ad associated visualizatios from the perspective of a studet tryig to master the relatioships amog the bledig fuctios, cotrol poits, weights, ad kot vectors i order to better uderstad the uderlyig NURBS represetatios ad algorithms.

4 260 4 USING FREEFORM TO VISUALIZE NURBS CURVES Our geeral approach whe teachig this material is to cover the detailed mathematics ad proofs i parallel with the more ituitive ad iteractive visualizatios preseted i this sectio. The goal is to iterpret the visual properties we discover as geometric maifestatios of correspodig mathematical properties of the bledig fuctios ad curves that we derive. Evetually we try to build the ituitio that allows studets to look at a visualizatio of some aspect of a curve s geometry ad be able to describe it i terms of what the kots ad weights (ad hece bledig fuctios) must be; ad vice versa: be able to see some mathematical result or expressio ad be able to predict what the visual maifestatio of it will be. 4.1 Prelimiaries: Creatig a Curve; Basic Cotrol Poit Kot Bledig Fuctio Associatios A top-level dialog widow allowig the studet to create istaces of curves ad specify how certai maipulatios are to be iterpreted is show i Fig. 1. Fig. 1: Basic curve cotrol widow. Whe a studet clicks the Add disjoit NURBS butto, a NURBS curve with the idicated properties is created ad displayed. Usig the properties settigs as displayed i the Curve Cotrols widow of Fig. 1., a ope, periodic, cubic B-Splie with te cotrol poits will be created, all of whose weights are 1. As illustrated i Fig. 2(a)-(c)., side-by-side widows are the preseted so the studet ca see the curve, the kot vector ad weights, ad the basis fuctios. Fig. 2: After creatio of a cubic NURBS curve, side-by-side widows preset (a) the curve, (b) the weight ad kot cotrols, ad (c) the Basis Fuctios. We shall use the followig otatio ad covetios whe discussig NURBS curves ad the various visualizatios supported by freeform: the curve is of degree p, order k=p+1; it employs +1 cotrol poits ad utilizes a kot vector, u U,, u 0. k I the basis fuctio widow, a solid white rectagle outlies the parametric domai. The alteratig light ad dark gray vertical bads emphasize the parametric spas. I Fig. 2(c) this is u p u 3 3 u u 1 u This parametric domai geerally makes sese to the studet at this poit because we have already derived the proof that the bledig fuctios N j, k, i k 1 j i are

5 261 the oly o-zero order k bledig fuctios defied over the parametric iterval u i u u i 1, ad that these k fuctios sum to 1. Betwee the proof ad this visualizatio, studets come to uderstad the idea that every spa of a order k B-Splie curve has exactly k o-zero bledig fuctios active, ad hece the shape of each spa is determied solely by the correspodig set of k cotrol poits. Moreover, it is the clear to the studet that the parametric domai must start at kot u p because that is whe we first have k active bledig fuctios. It eds at kot u 1 because we do ot create a (+1)-th bledig fuctio (there is o (+1)-th cotrol poit for it to bled), hece we o loger have k o-zero bledig fuctios for u u 1. Fig. 3: Some passive highlightig i the side-by-side widows: (a) the curve with its break poits, (b) a segmet highlighted i brow with cotrol poits colored to match their bledig fuctios, ad (c) the active bledig fuctios colored to match the cotrol poit colors. To make this coectio more cocrete as well as to better illustrate exactly what cotrol poits affect a give spa, we employ a passive highlightig scheme operatig i uiso across the curve geometry ad bledig fuctio widows. As a prelude, we request that spa break poits be displayed. (See the check box i Fig. 2(b)) The studet the sees the image of Fig. 3(a). As the studet passively moves the cursor over a spa, that spa is highlighted i brow, ad the portio of the cotrol polygo defied by the k cotrol poits correspodig to the k o-zero bledig fuctios is highlighted usig a color scheme tied to that of the bledig fuctios (Fig. 3(b)). We ca also see i Fig. 3(b) that all other cotrol polygo legs i the curve geometry widow have bee grayed out; similarly, all portios of all bledig fuctios i the bledig fuctio widow outside of the correspodig spa have bee grayed (Fig. 3(c)) all to emphasize the coectio betwee the parameter ad coordiate spaces. Oe use of the display i the curve geometry widow is to make clear to the studet that ay chage to the highlighted cotrol poits will chage the shape of the highlighted spa; coversely, i order to adjust the shape of that highlighted sectio, it is ecessary to adjust the positio of oe or more of the highlighted cotrol poits. The closely related cocept is that all cotrol poits (other tha the first p ad the last p) have ifluece over k cosecutive spas. Additioal passive highlightig schemes are used to covey this idea as well as to visualize how much of the curve is affected by the first p ad last p cotrol poits. I Fig. 4(a)., the studet has positioed the cursor over cotrol poit P 5. All elemets of the display have bee grayed out except the idicated cotrol poit ad the k spas it affects. Meawhile, the bledig fuctios i the adjacet bledig fuctio widow have all bee grayed out except for the correspodig bledig fuctio. The fuctio ad the poit have bee assiged the same color to make the coectio obvious. Fig. 4(c)-(d) illustrates the same idea for a iitial cotrol poit whose ifluece exteds over oly 2 spas sice its bledig fuctio starts two spas before the start of the active parametric domai.

6 262 Fig. 4: Passive highlightig i the side-by-side widows to illustrate the coectio betwee cotrol poits ad affected spas: (a) a iterior cotrol poit affectig all k spas, (b) its bledig fuctio whose domai is etirely withi the curve parametric domai, (c) oe of the first p cotrol poits with the two spas it iflueces highlighted, (d) its bledig fuctio whose domai icludes two spas outside the parametric domai of the curve. 4.2 Closed Curves To this poit, studets have see oly uiform kot spacig ad the periodic bledig fuctios they geerate. It geerally oly takes a little explaatio ad a simple demostratio of movig the positios of the fial p cotrol poits o top of the positios of the first p to show them how a closed C p 1 curve ca be created. Selectig the closed radio butto show i Fig. 1 ad creatig a ew curve the illustrates how this ca be doe automatically. Fig. 5: Illustratig the effect of kot adjustmet: (a) kot u 8 is decreased i magitude, icreasig the maximum value of N 5 while decreasig the maximum value of earby bledig fuctios, (b) the curve draws closer to cotrol poit P 5 as a result, (c) usig the bledig fuctio probe to examie the ew maximum value of bledig fuctio N Nouiform Kot Spacig ad Clamped Curves As a first step towards explorig ouiform spacig, the slider of a iterior kot, u 8, is adjusted. The studets watch as various curve spas grow ad shrik i arc legth; simultaeously they ca see

7 263 how the spas i the bledig fuctio widow grow ad shrik (Fig. 5(a)-(b).). More sigificatly, the relative ifluece of various cotrol poits i the adjacet spas of the curve rise ad fall at the same time. Fig. 5(c)., for example, shows how cotrol poit P 5 has more ifluece i those spas after the kot adjustmet sice its bledig fuctio ( N 5, k ) grows while others (e.g., N 4, k ) dimiish. Studets observe the curve drawig closer to P 5 as a result. Fig. 6: Illustratig the effect of kot multiplicity: (a) u 7 u 8, (b) u 6 u 7 u 8, (c) cotrol poit P 5 is iterpolated as a result. We the drop u 8 eve more util it equals the value of u 7 (Fig. 6(a).). A zero-legth spa has bee itroduced, ad eve though the passive cotrol poit spa highlightig (e.g., Fig. 4(a).) appears to idicate that cotrol poit P 4 ow oly iflueces three spas, it is obvious to the studets that it still affects four because they have watched oe of the spas gradually shrik util its legth is zero. We also poit out to the studets that this kot vector cofiguratio has caused the curve to become taget to the P 5 P 6 cotrol polygo leg this result beig the ecessary geometric cosequece of the fact that oly N 5 ad N 6 are o-zero at the duplicated kot. We the demostrate icreasig the multiplicity to p k 1 3, this time iteractively icreasig u 6 util u 6 u 7 u 8. The studets watch as bledig fuctio N 5 spikes to a value of 1 at the repeated kot while the curve pulls ito ad iterpolates P 5. (See Fig. 6(b)-(c).) It is atural to ask ad studets typically do at this poit what happes if the kot is repeated agai (ad agai ad agai ). After tryig to exted their uderstadig to guess the aswer, we demostrate the effect by settig u 5 equal to the kot whose multiplicity was previously three to yield the displays of Fig. 7. Studets see bledig fuctio N 4 spike to 1 at u u 5, the immediately drop to 0; meawhile, N 5 starts at 1 at u u 5 ad the gradually tapers dow to 0. The resultig broke curve is the ituitive. Fig. 7: Creatig a iterior kot with multiplicity k, breakig the curve: (a) two bledig fuctios spike to 1 at the repeated kot, (b) the curve is broke ito two pieces.

8 264 Describig how to geerate B-Splies that iterpolate their iitial ad fial cotrol poits is fairly straightforward at this poit. Combiig a uderstadig of how duplicated kots allow iterpolatio of arbitrary cotrol poits with the fact that the parameter rage of the curve starts at the k-th kot ad eds at the (+1)-th kot, it is ot surprisig that k iitial ad k fial duplicate kots lead to edpoit iterpolatio, ad we itroduce the commo term clamped B-Splie to describe B- Splies with this property. We geerally start with a uclamped B-Splie ad iteractively adjust the iitial ad fial kots to have multiplicity k so that studets ca watch the curve gradually draw ear the first ad last cotrol poits, ultimately iterpolatig them. Oe slightly cofusig issue that arises at this poit relates to the specific cotrol poit that gets iterpolated whe kots are repeated the appropriate umber of times. Whe first itroducig the idea i the cotext of repeated iterior kots, we discover the rule that says: if u i is the first of p k 1 repeated kots, the cotrol poit P i 1 is iterpolated at parameter value u u i. But thigs are a little differet at the start sice we have u L u, but cotrol poit P is iterpolated. There 0 k 1 0 are various ways to explai this, but we have foud it coveiet to explai it i the cotext of aother mystery: exactly how may kots are really eeded to describe a order k B-Splie with +1 cotrol poits? Studets are frequetly assiged readigs from differet sources, ad the how may kots are required? questio ofte arises i that cotext. For example, a studet will read i Fari s book [3] that a order k B-Splie with +1 cotrol poits requires +k 1 kots. They the read i Piegl & Tiller [6] that there are +k+1 kots! Is there a typographical error? Is oe of them wrog? We demostrate that either is really wrog by showig that the actual value of the first ad last kot are irrelevat to the shape of the curve. We demostrate this fact i freeform by observig that, as we drag the first ad last kot aroud, o part of the bledig fuctios iside the parametric domai chage; similarly, the curve shape is completely uaffected as we modify those two kot values. The geometry of Fig. 8. illustrates a clamped order 5 B-Splie alog with its bledig fuctios. Fig. 8(a). shows the curve, ad Fig. 8(b). shows the correspodig bledig fuctios as determied by the kot vector whose first ad last kots have multiplicity k=5. As we iteractively decrease the first kot ad/or icrease the last kot, studets see that we modify the iitial (fial) spa of the correspodig bledig fuctios, but we do ot modify ay bledig fuctio i ay way withi the defied parametric domai of the curve. It is the o surprise whe they also observe that the shape of the curve remais ualtered as those two kots are modified. Fig. 8: The actual value of the first ad last of the +k+1 kots of a B-Splie do ot affect the shape of the B-Splie curve: (a) bledig fuctios for a order 5 clamped B-Splie, (b) the correspodig curve, (c) the bledig fuctios after decreasig the first ad icreasig the last kot. I summary, strict iterpretatio of the recursive defiitio of the basis fuctios most aturally leads to the use of +k+1 kots. O the other had, typical implemetatios of evaluatio algorithms that start by locatig the oly o-zero order 1 basis fuctio at a give parameter value ad the work up to the appropriate order k fuctio will ever actually use kot 0 or kot +k. This observatio, coupled with the fact that the curve shape is uaffected by the first ad last kot provide the justificatio for sayig oly +k 1 kots are required. Of course care must be take whe iterfacig with programmig APIs like OpeGL or geometric data base represetatios (IGES, STEP; commercial oes like ACIS; etc.) to make sure that relevat covetios are observed. Some of these expect oly +k 1 kots; others require +k+1.

9 Weights ad Ratioal B-Splies The B-Splie cotrols show i Fig. 2(b). show spiers allowig weights of the cotrol poits to be modified. This ituitio is easy to covey: icreasig weights draws the curve projectively towards the give cotrol poit. We itroduce the stadard curve represetatio: C u N u w P i, k i 0 i i (3) N u w i,k i 0 i Particular values of the weights i cojuctio with specific kot vector ad cotrol poit placemet allow the coic curves to be exactly represeted. Fig. 9 illustrates matchig iety degree coic sectio arcs with the idicated weight assigmets. (These are actually ratioal Bezier curves, but studets uderstad by this time how to geerate a ratioal B-Splie represetatio of a ratioal Bezier curve.) Fig. 9: Matchig a hyperbola, parabola, circle, ad ellipse with ratioal curves. The mai additioal ituitio at this poit is to uderstad the basis fuctios. We itroduce two stadard equivalet mathematical represetatios for the NURBS curve. The first employs what we call uormalized bledig fuctios (the covetioal bledig fuctios multiplied by the weights): N iu, k u wi N i, k u (4) The curve represetatio remais defied i affie space ad becomes: C u N u P i 0 U i,k i (5) N u i 0 U i,k The secod represetatio employs what we call ormalized bledig fuctios ad are oly applied to cotrol poits embedded i projective space usig their weights: Pi P wi xi, wi yi, wi zi, wi N in, k u (6) wi N i, k u (7) w j N j,k u j 0 Usig Eq. (6) ad Eq. (7), the NURBS curve is defied i projective space as: C P u N in, k u Pi P (8) i 0 I freeform, we allocate oe display widow for the collectio of N N i,k U N i,k fuctios, ad oe for the set of. These widows, displayed i Fig. 10, are titled Uormalized B-Splie Basis Fuctios ad Normalized B-Splie Basis Fuctios, respectively.

10 266 Fig. 10: The geometry of Fig. 8 after icreasig the weight of P3 ad decreasig the weight of P7. From Eq. (4) it is clear that the U N i,k fuctios will ot i geeral sum to 1. I fact, idividual fuctios may exceed 1 as ca be see i Fig. 10. Modifyig weight wi affects oly fuctios remai uchaged. By cotrast, the ormalized N N i,k U N i,k ; all other fuctios allow studets to see exactly how the ifluece of other poits decrease (icrease) as wi icreases (decreases). I the example of Fig. 10., studets ca observe how cotiuous icreases to w3 cause correspodig cotiuous decreases i all bledig fuctios that are o-zero over a parametric iterval which overlaps that of N N 3,k. Therefore, the ifluece of the correspodig cotrol poits o the curve decreases, somethig that is readily observed by watchig the curve as the weight w3 icreases. 4.5 Other Features Several other features of freeform permit studets to see the operatio of importat algorithms like kot isertio, coversio of a B-Splie to a equivalet piecewise Bezier, ad others. There are also various iteractive tools for restrictig mouse-based draggig of poits to give axes, coordiate plaes, or cotrol polygo legs. A marker ca be moved through the Basis fuctio widow while the correspodig B-Splie poit is traced alog the curve. While doig so, successive spas alog with the cotrol poits determiig their shape are highlighted as i earlier examples. 5 CURRENT STATUS AND PLANS The freeform program is used to a limited extet late i our udergraduate seior-level graphics class i which the focus is less o the mathematics ad more istead o ituitio. The goal is to teach the basics of curve ad surface modelig at a user level ad possibly iterest some studets i takig the graduate Geometric Modelig class i which the program is used extesively. I that course, the goal is to uderstad the mathematics ad algorithms much more deeply. The curret implemetatio has evolved over several years ad is writte i C++ usig OpeGL ad the GLUT for basic display, ad the glui [7] for most user iterface widgets. A effort is curretly uderway to clea up the user iterface, make some thigs more cosistet ad move the higher level code to Java, Java OpeGL (JOGL), ad Swig. The goal is to the deliver the applicatio over the iteret via Java Web Start.

11 267 6 SUMMARY We have described the use of a portio of freeform, a curve ad surface modelig tool developed first ad foremost as a educatioal tool to help studets uderstad the mathematics of curves ad surfaces, especially B-Splies ad ratioal B-Splies. Reactio from studets i various classes has bee positive, ad performace o homeworks, projects, ad exams has exhibited sigificat improvemet as the tool has evolved ad bee used more extesively. REFERENCES [1] [2] [3] [4] [5] [6] [7] [8] Chag, Y.-S.: B-Splie Curve With Kots, BSplieCurve WithKots/. Demidov, E.: A Iteractive Itroductio to Splies, Fari, G.: Curves ad Surfaces for CAGD: A Practical Guide, fifth editio, Morga Kaufma Publishers, Sa Diego, CA, Fisher, J.; Lowther, J.; Shee, C.-K.: If You Kow B-Splies Well, You Also Kow NURBS!, Proceedigs SIGCSE 2004, March 3-7, 2004, Norfolk, VA, pp Lerios, A.: B-Splie Curve Visualizatio, Piegl, L.; Tiller, W.: The NURBS Book, secod editio, Spriger, New York, Rademacher, P., GLUI User Iterface Library, Saakes, D.: Hit ad Reder: Teachig CAD Visualizatio to Product Desigers, Computer-Aided Desig & Applicatios, Vol. 3, Nos. 1-4, 2006, pp

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

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

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

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

. 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

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

The number n of subintervals times the length h of subintervals gives length of interval (b-a).

The number n of subintervals times the length h of subintervals gives length of interval (b-a). Simulator with MadMath Kit: Riema Sums (Teacher s pages) I your kit: 1. GeoGebra file: Ready-to-use projector sized simulator: RiemaSumMM.ggb 2. RiemaSumMM.pdf (this file) ad RiemaSumMMEd.pdf (educator's

More information

One advantage that SONAR has over any other music-sequencing product I ve worked

One advantage that SONAR has over any other music-sequencing product I ve worked *gajedra* D:/Thomso_Learig_Projects/Garrigus_163132/z_productio/z_3B2_3D_files/Garrigus_163132_ch17.3d, 14/11/08/16:26:39, 16:26, page: 647 17 CAL 101 Oe advatage that SONAR has over ay other music-sequecig

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

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

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

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

Visualization of Gauss-Bonnet Theorem

Visualization of Gauss-Bonnet Theorem Visualizatio of Gauss-Boet Theorem Yoichi Maeda maeda@keyaki.cc.u-tokai.ac.jp Departmet of Mathematics Tokai Uiversity Japa Abstract: The sum of exteral agles of a polygo is always costat, π. There are

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

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

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

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

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

1 Enterprise Modeler

1 Enterprise Modeler 1 Eterprise Modeler Itroductio I BaaERP, a Busiess Cotrol Model ad a Eterprise Structure Model for multi-site cofiguratios are itroduced. Eterprise Structure Model Busiess Cotrol Models Busiess Fuctio

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

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

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

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

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

Big-O Analysis. Asymptotics

Big-O Analysis. Asymptotics Big-O Aalysis 1 Defiitio: Suppose that f() ad g() are oegative fuctios of. The we say that f() is O(g()) provided that there are costats C > 0 ad N > 0 such that for all > N, f() Cg(). Big-O expresses

More information

Python Programming: An Introduction to Computer Science

Python Programming: An Introduction to Computer Science Pytho Programmig: A Itroductio to Computer Sciece Chapter 1 Computers ad Programs 1 Objectives To uderstad the respective roles of hardware ad software i a computig system. To lear what computer scietists

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

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

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

Computer Science Foundation Exam. August 12, Computer Science. Section 1A. No Calculators! KEY. Solutions and Grading Criteria.

Computer Science Foundation Exam. August 12, Computer Science. Section 1A. No Calculators! KEY. Solutions and Grading Criteria. Computer Sciece Foudatio Exam August, 005 Computer Sciece Sectio A No Calculators! Name: SSN: KEY Solutios ad Gradig Criteria Score: 50 I this sectio of the exam, there are four (4) problems. You must

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

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

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

Τεχνολογία Λογισμικού

Τεχνολογία Λογισμικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Τεχνολογία Λογισμικού, 7ο/9ο εξάμηνο 2018-2019 Τεχνολογία Λογισμικού Ν.Παπασπύρου, Αν.Καθ. ΣΗΜΜΥ, ickie@softlab.tua,gr

More information

BOOLEAN MATHEMATICS: GENERAL THEORY

BOOLEAN MATHEMATICS: GENERAL THEORY CHAPTER 3 BOOLEAN MATHEMATICS: GENERAL THEORY 3.1 ISOMORPHIC PROPERTIES The ame Boolea Arithmetic was chose because it was discovered that literal Boolea Algebra could have a isomorphic umerical aspect.

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

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

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

Project 2.5 Improved Euler Implementation

Project 2.5 Improved Euler Implementation Project 2.5 Improved Euler Implemetatio Figure 2.5.10 i the text lists TI-85 ad BASIC programs implemetig the improved Euler method to approximate the solutio of the iitial value problem dy dx = x+ y,

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

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

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

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

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

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

South Slave Divisional Education Council. Math 10C

South Slave Divisional Education Council. Math 10C South Slave Divisioal Educatio Coucil Math 10C Curriculum Package February 2012 12 Strad: Measuremet Geeral Outcome: Develop spatial sese ad proportioal reasoig It is expected that studets will: 1. Solve

More information

n Learn how resiliency strategies reduce risk n Discover automation strategies to reduce risk

n Learn how resiliency strategies reduce risk n Discover automation strategies to reduce risk Chapter Objectives Lear how resiliecy strategies reduce risk Discover automatio strategies to reduce risk Chapter #16: Architecture ad Desig Resiliecy ad Automatio Strategies 2 Automatio/Scriptig Resiliet

More information

Chapter 10. Defining Classes. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 10. Defining Classes. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 10 Defiig Classes Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 10.1 Structures 10.2 Classes 10.3 Abstract Data Types 10.4 Itroductio to Iheritace Copyright 2015 Pearso Educatio,

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

CIS 121 Data Structures and Algorithms with Java Fall Big-Oh Notation Tuesday, September 5 (Make-up Friday, September 8)

CIS 121 Data Structures and Algorithms with Java Fall Big-Oh Notation Tuesday, September 5 (Make-up Friday, September 8) CIS 11 Data Structures ad Algorithms with Java Fall 017 Big-Oh Notatio Tuesday, September 5 (Make-up Friday, September 8) Learig Goals Review Big-Oh ad lear big/small omega/theta otatios Practice solvig

More information

1. Introduction o Microscopic property responsible for MRI Show and discuss graphics that go from macro to H nucleus with N-S pole

1. Introduction o Microscopic property responsible for MRI Show and discuss graphics that go from macro to H nucleus with N-S pole Page 1 Very Quick Itroductio to MRI The poit of this itroductio is to give the studet a sufficietly accurate metal picture of MRI to help uderstad its impact o image registratio. The two major aspects

More information

SD vs. SD + One of the most important uses of sample statistics is to estimate the corresponding population parameters.

SD vs. SD + One of the most important uses of sample statistics is to estimate the corresponding population parameters. SD vs. SD + Oe of the most importat uses of sample statistics is to estimate the correspodig populatio parameters. The mea of a represetative sample is a good estimate of the mea of the populatio that

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

n Some thoughts on software development n The idea of a calculator n Using a grammar n Expression evaluation n Program organization n Analysis

n Some thoughts on software development n The idea of a calculator n Using a grammar n Expression evaluation n Program organization n Analysis Overview Chapter 6 Writig a Program Bjare Stroustrup Some thoughts o software developmet The idea of a calculator Usig a grammar Expressio evaluatio Program orgaizatio www.stroustrup.com/programmig 3 Buildig

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

Chapter 9. Pointers and Dynamic Arrays. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 9. Pointers and Dynamic Arrays. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 9 Poiters ad Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 9.1 Poiters 9.2 Dyamic Arrays Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Slide 9-3

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

FURTHER INTEGRATION TECHNIQUES (TRIG, LOG, EXP FUNCTIONS)

FURTHER INTEGRATION TECHNIQUES (TRIG, LOG, EXP FUNCTIONS) Mathematics Revisio Guides More Trigoometric ad Log Itegrals Page of 7 MK HOME TUITION Mathematics Revisio Guides Level: AS / A Level AQA : C Edexcel: C OCR: C OCR MEI: C FURTHER INTEGRATION TECHNIQUES

More information

Overview Chapter 12 A display model

Overview Chapter 12 A display model Overview Chapter 12 A display model Why graphics? A graphics model Examples Bjare Stroustrup www.stroustrup.com/programmig 3 Why bother with graphics ad GUI? Why bother with graphics ad GUI? It s very

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

Human-Computer Interaction IS4300

Human-Computer Interaction IS4300 Huma-Computer Iteractio IS4300 1 I5 due ext class Your missio i this exercise is to implemet a very simple Java paitig applicatio. The app must support the followig fuctios: Draw curves, specified by a

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

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

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

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

On Infinite Groups that are Isomorphic to its Proper Infinite Subgroup. Jaymar Talledo Balihon. Abstract

On Infinite Groups that are Isomorphic to its Proper Infinite Subgroup. Jaymar Talledo Balihon. Abstract O Ifiite Groups that are Isomorphic to its Proper Ifiite Subgroup Jaymar Talledo Baliho Abstract Two groups are isomorphic if there exists a isomorphism betwee them Lagrage Theorem states that the order

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

Data diverse software fault tolerance techniques

Data diverse software fault tolerance techniques Data diverse software fault tolerace techiques Complemets desig diversity by compesatig for desig diversity s s limitatios Ivolves obtaiig a related set of poits i the program data space, executig the

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

2D Isogeometric Shape Optimization considering both control point positions and weights as design variables

2D Isogeometric Shape Optimization considering both control point positions and weights as design variables 1 th World Cogress o tructural ad Multidiscipliary Optimizatio May 19-24, 213, Orlado, Florida, UA 2D Isogeometric hape Optimizatio cosiderig both cotrol poit positios ad weights as desig variables Yeo-Ul

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

ENGR Spring Exam 1

ENGR Spring Exam 1 ENGR 300 Sprig 03 Exam INSTRUCTIONS: Duratio: 60 miutes Keep your eyes o your ow work! Keep your work covered at all times!. Each studet is resposible for followig directios. Read carefully.. MATLAB ad

More information

Web OS Switch Software

Web OS Switch Software Web OS Switch Software BBI Quick Guide Nortel Networks Part Number: 213164, Revisio A, July 2000 50 Great Oaks Boulevard Sa Jose, Califoria 95119 408-360-5500 Mai 408-360-5501 Fax www.orteletworks.com

More information

EM375 STATISTICS AND MEASUREMENT UNCERTAINTY LEAST SQUARES LINEAR REGRESSION ANALYSIS

EM375 STATISTICS AND MEASUREMENT UNCERTAINTY LEAST SQUARES LINEAR REGRESSION ANALYSIS EM375 STATISTICS AND MEASUREMENT UNCERTAINTY LEAST SQUARES LINEAR REGRESSION ANALYSIS I this uit of the course we ivestigate fittig a straight lie to measured (x, y) data pairs. The equatio we wat to fit

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

9 x and g(x) = 4. x. Find (x) 3.6. I. Combining Functions. A. From Equations. Example: Let f(x) = and its domain. Example: Let f(x) = and g(x) = x x 4

9 x and g(x) = 4. x. Find (x) 3.6. I. Combining Functions. A. From Equations. Example: Let f(x) = and its domain. Example: Let f(x) = and g(x) = x x 4 1 3.6 I. Combiig Fuctios A. From Equatios Example: Let f(x) = 9 x ad g(x) = 4 f x. Fid (x) g ad its domai. 4 Example: Let f(x) = ad g(x) = x x 4. Fid (f-g)(x) B. From Graphs: Graphical Additio. Example:

More information

Big-O Analysis. Asymptotics

Big-O Analysis. Asymptotics Big-O Aalysis 1 Defiitio: Suppose that f() ad g() are oegative fuctios of. The we say that f() is O(g()) provided that there are costats C > 0 ad N > 0 such that for all > N, f() Cg(). Big-O expresses

More information

Outline. Research Definition. Motivation. Foundation of Reverse Engineering. Dynamic Analysis and Design Pattern Detection in Java Programs

Outline. Research Definition. Motivation. Foundation of Reverse Engineering. Dynamic Analysis and Design Pattern Detection in Java Programs Dyamic Aalysis ad Desig Patter Detectio i Java Programs Outlie Lei Hu Kamra Sartipi {hul4, sartipi}@mcmasterca Departmet of Computig ad Software McMaster Uiversity Caada Motivatio Research Problem Defiitio

More information

Designing a learning system

Designing a learning system CS 75 Machie Learig Lecture Desigig a learig system Milos Hauskrecht milos@cs.pitt.edu 539 Seott Square, x-5 people.cs.pitt.edu/~milos/courses/cs75/ Admiistrivia No homework assigmet this week Please try

More information

A Very Simple Approach for 3-D to 2-D Mapping

A Very Simple Approach for 3-D to 2-D Mapping A Very Simple Approach for -D to -D appig Sadipa Dey (1 Ajith Abraham ( Sugata Sayal ( Sadipa Dey (1 Ashi Software Private Limited INFINITY Tower II 10 th Floor Plot No. - 4. Block GP Salt Lake Electroics

More information

Chapter 4. Procedural Abstraction and Functions That Return a Value. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Chapter 4. Procedural Abstraction and Functions That Return a Value. Copyright 2015 Pearson Education, Ltd.. All rights reserved. Chapter 4 Procedural Abstractio ad Fuctios That Retur a Value Copyright 2015 Pearso Educatio, Ltd.. All rights reserved. Overview 4.1 Top-Dow Desig 4.2 Predefied Fuctios 4.3 Programmer-Defied Fuctios 4.4

More information

Structuring Redundancy for Fault Tolerance. CSE 598D: Fault Tolerant Software

Structuring Redundancy for Fault Tolerance. CSE 598D: Fault Tolerant Software Structurig Redudacy for Fault Tolerace CSE 598D: Fault Tolerat Software What do we wat to achieve? Versios Damage Assessmet Versio 1 Error Detectio Iputs Versio 2 Voter Outputs State Restoratio Cotiued

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

CSE 417: Algorithms and Computational Complexity

CSE 417: Algorithms and Computational Complexity Time CSE 47: Algorithms ad Computatioal Readig assigmet Read Chapter of The ALGORITHM Desig Maual Aalysis & Sortig Autum 00 Paul Beame aalysis Problem size Worst-case complexity: max # steps algorithm

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

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

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

Protected points in ordered trees

Protected points in ordered trees Applied Mathematics Letters 008 56 50 www.elsevier.com/locate/aml Protected poits i ordered trees Gi-Sag Cheo a, Louis W. Shapiro b, a Departmet of Mathematics, Sugkyukwa Uiversity, Suwo 440-746, Republic

More information

1.8 What Comes Next? What Comes Later?

1.8 What Comes Next? What Comes Later? 35 1.8 What Comes Next? What Comes Later? A Practice Uderstadig Task For each of the followig tables, CC BY Hiroaki Maeda https://flic.kr/p/6r8odk describe how to fid the ext term i the sequece, write

More information

A Taste of Maya. Character Setup

A Taste of Maya. Character Setup This tutorial goes through the steps to add aimatio cotrols to a previously modeled character. The character i the scee below is wearig clothes made with Cloth ad the sceery has bee created with Pait Effects.

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

( n+1 2 ) , position=(7+1)/2 =4,(median is observation #4) Median=10lb

( n+1 2 ) , position=(7+1)/2 =4,(median is observation #4) Median=10lb Chapter 3 Descriptive Measures Measures of Ceter (Cetral Tedecy) These measures will tell us where is the ceter of our data or where most typical value of a data set lies Mode the value that occurs most

More information

Overview. Chapter 18 Vectors and Arrays. Reminder. vector. Bjarne Stroustrup

Overview. Chapter 18 Vectors and Arrays. Reminder. vector. Bjarne Stroustrup Chapter 18 Vectors ad Arrays Bjare Stroustrup Vector revisited How are they implemeted? Poiters ad free store Destructors Iitializatio Copy ad move Arrays Array ad poiter problems Chagig size Templates

More information

Lecture 28: Data Link Layer

Lecture 28: Data Link Layer Automatic Repeat Request (ARQ) 2. Go ack N ARQ Although the Stop ad Wait ARQ is very simple, you ca easily show that it has very the low efficiecy. The low efficiecy comes from the fact that the trasmittig

More information

MOTIF XF Extension Owner s Manual

MOTIF XF Extension Owner s Manual MOTIF XF Extesio Ower s Maual Table of Cotets About MOTIF XF Extesio...2 What Extesio ca do...2 Auto settig of Audio Driver... 2 Auto settigs of Remote Device... 2 Project templates with Iput/ Output Bus

More information

Task scenarios Outline. Scenarios in Knowledge Extraction. Proposed Framework for Scenario to Design Diagram Transformation

Task scenarios Outline. Scenarios in Knowledge Extraction. Proposed Framework for Scenario to Design Diagram Transformation 6-0-0 Kowledge Trasformatio from Task Scearios to View-based Desig Diagrams Nima Dezhkam Kamra Sartipi {dezhka, sartipi}@mcmaster.ca Departmet of Computig ad Software McMaster Uiversity CANADA SEKE 08

More information

12-5A. Equivalent Fractions and Decimals. 1 Daily Common Core Review. Common Core. Lesson. Lesson Overview. Math Background

12-5A. Equivalent Fractions and Decimals. 1 Daily Common Core Review. Common Core. Lesson. Lesson Overview. Math Background Lesso -A Equivalet Fractios ad Decimals Commo Core Lesso Overview Domai Number ad Operatios Fractios Cluster Uderstad decimal otatio for fractios, ad compare decimal fractios. Stadards.NF. Use decimal

More information

Introduction to Sigma Notation

Introduction to Sigma Notation Itroductio to Siga Notatio Steph de Silva //207 What is siga otatio? is the capital Greek letter for the soud s I this case, it s just shorthad for su Siga otatio is what we use whe we have a series of

More information

Panel for Adobe Premiere Pro CC Partner Solution

Panel for Adobe Premiere Pro CC Partner Solution Pael for Adobe Premiere Pro CC Itegratio for more efficiecy The makes video editig simple, fast ad coveiet. The itegrated pael gives users immediate access to all medialoopster features iside Adobe Premiere

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