Open Collections

UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Adjoint data assimilation in an open ocean barotropic quasi-geostrophic model Bailey, David A. 1993

Your browser doesn't seem to have a PDF viewer, please download the PDF to view this item.

Item Metadata


831-ubc_1993_fall_bailey_david.pdf [ 2.29MB ]
JSON: 831-1.0053277.json
JSON-LD: 831-1.0053277-ld.json
RDF/XML (Pretty): 831-1.0053277-rdf.xml
RDF/JSON: 831-1.0053277-rdf.json
Turtle: 831-1.0053277-turtle.txt
N-Triples: 831-1.0053277-rdf-ntriples.txt
Original Record: 831-1.0053277-source.json
Full Text

Full Text

ADJOINT DATA ASSIMILATION IN AN OPEN OCEAN BAROTROPICQUASI-GEOSTROPHIC MODELByDavid Anthony BaileyB.Math., University of Waterloo, 1991A THESIS SUBMITTED IN PARTIAL FULFILLMENT OFTHE REQUIREMENTS FOR THE DEGREE OFMASTER OF SCIENCEinTHE FACULTY OF GRADUATE STUDIESDEPARTMENT OF OCEANOGRAPHYINSTITUTE OF APPLIED MATHEMATICSWe accept this thesis as conformingto the required standardTHE UNIVERSITY OF BRITISH COLUMBIAOctober 1993© David Anthony Bailey, 1993In presenting this thesis in partial fulfilment of the requirements for an advanceddegree at the University of British Columbia, I agree that the Library shall make itfreely available for reference and study. I further agree that permission for extensivecopying of this thesis for scholarly purposes may be granted by the head of mydepartment or by his or her representatives. It is understood that copying orpublication of this thesis for financial gain shall not be allowed without my writtenpermission.(SignatureDepartment of Oceistx■ (3rap  The University of British ColumbiaVancouver, CanadaDate ^oct- 9) 19ctaDE-6 (2/88)AbstractA barotropic quasi-geostrophic ocean model with open boundaries was used to modela system of mid-ocean eddies. A simplified adjoint assimilation scheme was tested tosee if sparse velocity data could be assimilated into the model at regular intervals. Inbetween the times for data assimilation, the model was integrated forward in time withan Orlanski radiating boundary condition.This assimilation scheme was tested with several model runs, illustrating the changesarising from using different eddy sizes, different density of available data, and differentnumerical model parameters. This scheme was also compared with a bicubic interpolationscheme. During data assimilation, the resulting velocity field was generally more accuratethan that obtained by interpolation alone. However, the Orlanski radiating boundarycondition was not very effective in suppressing the growth of errors after data assimilation.iiTable of ContentsAbstract^ iiTable of Contents^ iiiList of Tables ivList of Figures^ vAcknowledgements^ vii1 Introduction^ 12 Method^ 42.1 Problem Definition  ^42.2 Model  ^72.2.1 Analytical Model  ^72.2.2 Numerical Model ^  102.3 Adjoint Model ^  133 Results^ 173.1 Description of Parameters ^  173.2 Test Cases and Results  214 Conclusions^ 48Bibliography^ 50iiiList of Tables2.1 Analytical model parameters ^ 92.2 Numerical model notation 103.1 Reference ocean parameters ^ 183.2 Assimilation model variables 18ivList of Figures2.1 Nested domains  ^52.2 Illustration of the computational boundary  ^123.1 Two different grid samples ^  193.2 Initial reference ocean - distance scale 200 km  ^223.3 Initial reference ocean - distance scale 400 km ^  233.4 Nondimensional total kinetic energy (TKE) for the period of the experi-ments with a distance scale of 200 km. ^  243.5 Nondimensional total kinetic energy (TKE) for the period of the experi-ments with a distance scale of 400 km ^  243.6 Test 1 - Day 387 ^  253.7 Test 1 - Day 513  263.8 Test 1 - RMS Errors ^  273.9 Test 2 - Day 387  293.10 Test 2 - Day 513 ^  303.11 Test 2 - RMS Errors  313.12 Test 2 - RMS interpolated velocity error^  313.13 Test 3 - Day 387 ^  323.14 Test 3 - Day 513  333.15 Test 3 - RMS Errors ^  343.16 Test 3 - RMS interpolated velocity error^  343.17 Test 4 - Day 387 ^  353.18 Test 4 - Day 513 ^  363.19 Test 4 - RMS Errors  373.20 Test 4 - RMS interpolated velocity error ^373.21 Test 5 - Day 387 ^  383.22 Test 5 - Day 513  393.23 Test 5 - RMS Errors ^  403.24 Test 5 - RMS interpolated velocity error^  403.25 Test 6 - Day 387 ^  413.26 Test 6 - Day 508  423.27 Test 6 - RMS Errors ^  433.28 Test 6 - RMS interpolated velocity error^  433.29 Test 7 - Day 387 ^  453.30 Test 7 - Day 508  463.31 Test 7 - RMS Errors ^  47viAcknowledgementsI would like to thank Dr. W. W. Hsieh for his guidance and support over the periodof my study, and during the writing of this thesis. Thank-you to Dr. B. T. R. Wettonand Dr. S. E. Allen for encouraging remarks and comments leading to the final draft ofthis thesis. Thank-you also to Dr. J. Zou and Mr. W. Lee for their assistance in thebackground research.I would also like to mention various graduate students and staff in the Departmentsof Mathematics and Oceanography for fielding a number of my questions. Special thanksto Mr. J. M. Stockie for his support and the informative late night discussions.Financial support from the Natural Sciences and Engineering Research Council ofCanada in the form of a postgraduate scholarship is gratefully acknowledged.viiChapter 1IntroductionOne problem with a numerical model is to determine suitable boundary conditions toobtain a well-posed problem. Normally one only has enough computer resources to modela part of the world ocean, hence there has to be an artificial condition at the edge of thedomain. A closed boundary in a numerical model occurs where the edge of the domainintersects a piece of land or a wall. The conditions for a solid wall (or "no-slip") boundaryhave been well established in numerical ocean models for some time. (See [1, 3, 18, 19]for examples.) The question of an open boundary, where the domain ends in the openocean say, is very difficult because of the need for information to propagate freely out ofthe domain without affecting the interior solution. Also there is no way to determine thedisturbances propagating from outside the numerical domain into the solution region.The classical idea for an open boundary was to specify an analytical or exact solutionat inflow points and extrapolate the solution from the interior at the outflow points(see Charney et al. [4].) It was discussed by Miller and Bennett [9] that this schemedoes not give a well-posed problem, except for very special cases. There is an intensevorticity build-up at the boundary, but with a sufficient amount of friction or viscositythe scheme can be used fairly accurately. The Harvard open ocean model of Robinson andHaidvogel [14] used this type of boundary condition and included a filtering mechanismto deal with the build-up of energy.Another class of open boundary conditions are the "radiation" schemes consideredby Orlanski [11], Engquist and Majda [5], Raymond and Kuo [13], and others. These1Chapter 1. Introduction^ 2type of conditions consider a local wave equation near the boundary with an apparentphase velocity, controlling the way in which disturbances exit the domain. The authorsgenerally differ in the way they consider this apparent phase velocity and the order ofthe derivatives in the equations.Another side of physical oceanography is the collection of observed data from satelliteimagery, current meters, drifters, and so on. The vastness of the ocean almost alwaysensures a sparse data set. Often these data are also incomplete due to cloud coverage andweather conditions. Mathematical techniques such as bicubic interpolation and objectiveanalysis can be used to "interpolate" the data thus giving a more complete picture.Mathematical optimization and control theory can also be used in the form of "adjointdata assimilation." Data assimilation has been used in meteorology for a number ofyears for operational forecasting. Thacker [15, 16, 17] considers the idea of adjoint dataassimilation in physical oceanography.Data assimilation is a wide term for an area including the use of observed data inmathematical models. It could include injection of data into the model, Kalman filteringand variational or adjoint data assimilation. Interpolation of data would involve curve-fitting the data-points with no real use of the physics of the ocean. The interpolationbetween data-points can be very good, but is only as accurate as the observations. Datainjection is the technique in which a mathematical model is run and model values areactually replaced by observed data values. This causes discontinuities in the solution andgenerates much noise. The most sophisticated data assimilation techniques are Kalmanfiltering (see [2] Chapter 3) and adjoint data assimilation. In adjoint assimilation, acost function is defined to give the error or misfit between the observed data and thecorresponding model values. Certain parameter values must then be determined so thatthe cost function is minimized. This way the model solution is smoothed and "nudged"closer to the observed data.Chapter 1. Introduction^ 3Adjoint data assimilation can be used in a number of ways. It is used by meteorologistsin a forecasting sense. Observed wind data are used to correct the model at certain timesto a given atmospheric state, then the model is allowed to run again. Data assimilationis also used in what is called an "inverse" model, to determine certain parameters whichgave rise to a particular state. An example would be to determine the friction or windparameters which cause a mid-ocean eddy stream. Another way to use adjoint dataassimilation is in the completion of sparse observed data as described earlier.Zou and Hsieh [20] considered the idea of using adjoint data assimilation to determinethe boundary values at one open boundary of a two-dimensional domain. They consideredsatellite sea-surface elevations (streamfunction) with a simple model. This combined witha nested domain concept used by Robinson and Haidvogel [14] led to the idea of usingadjoint data assimilation to determine the boundary values of a completely open two-dimensional domain to complete a set of drifter or current meter velocity data. Thiswas the idea of this thesis, to use a simple ocean model and adjoint data assimilationto complete a set of sparse data. Note that a two-dimensional rectangular domain withopen boundaries (no inflow condition) on all four sides by itself is a not a well-posedproblem, but with data assimilation the problem should be better posed.Chapter 2 describes the methodology of the thesis: the problem definition, analyticaland numerical model, and the adjoint technique. Chapter 3 considers seven cases whichtest the effect of the parameters in the model and compare the data assimilation schemeto a standard bicubic interpolation routine. Chapter 4 is the summary of the results andconclusions.Chapter 2Method2.1 Problem DefinitionThe background research of the thesis involved two main steps: first, to modify a simpli-fied adjoint method as implemented by Zou and Hsieh [20] to use an open ocean modelwith a nested domain concept used by Robinson and Haidvogel [14]; and secondly, tochange the algorithm to assimilate velocity data from the interior of the innermost regionof the reference ocean instead of streamfunction data.Robinson and Haidvogel [14] performed an experiment using nested domains (seeFigure 2.1.) In that experiment they used a simple ocean model with a 1000 by 1000kilometer, rectangular domain (called the reference ocean) which was sampled to obtaina time series of streamfunction and vorticity values. The streamfunction (&) and thevorticity (C) were defined as:_u_(2.1)— ay ,v axav au=^— (2.2)where u is the velocity with u, v the velocity components in the cartesian x (eastward)and y (northward) directions respectively. The sampled data from an inner 500 by500 kilometer region centred in the reference ocean were used as initial and boundaryconditions for a model domain of the same size as the inner region of the reference ocean.In the adjoint data assimilation work by Thacker [15, 16, 17], he defined a costfunction J, which was a measure of the error between some observed quantities d, and4Chapter 2. Method^ 5Figure 2.1: Nested domainstheir numerical model counterparts m.J (m — d)TA(m — d),^ (2.3)where A was the inverse of an error covariance matrix of the observations, and thesuperscript T referred to the transpose of a vector quantity in this case. If the observeddata values were assumed to be independent and their errors uncorrelated, then A wassimply the identity matrix I. The problem was then to minimize the cost function withrespect to certain control variables and subject to the constraining physical equations.Zou and Hsieh [20] considered a two-dimensional, rectangular domain with threeclosed boundaries and one open boundary. A time series of streamfunction (sea surfaceelevation) was saved from a reference model run. This time series was sampled to obtaininterior streamfunction information for the model run. An adjoint method was thensolved for the streamfunction on the southern boundary and a correction to the interiorvorticity. Note that full adjoint assimilation would have involved a number of forwardtime integrations of the numerical model, and backward integrations of an adjoint modelChapter 2. Method^ 6(see [15, 17].) This was computationally expensive, so Zou and Hsieh only did theassimilation in space at selected time steps to save computational work.Zou and Hsieh [20] defined the following cost function:J(03, 60 = (0 — ib)T (0 — 0), (2.4)which was an implicit function of the control variables O s , the streamfunction valuesalong the southern (open) boundary of the domain and an interior vorticity correction5 discussed later. The ';i) were reference model streamfunction values and & were theassimilation model counterparts of the reference streamfunction. The problem was tominimize the cost function J with respect to the control variables, and subject to abarotropic quasi-geostrophic model (next section) as the constraint.The combination of the nested domain idea with the adjoint scheme above becamethe basis of the problem to follow. Velocity was the assimilated quantity instead ofstreamfunction. The velocity data could come from drifter or other current measurementsin the real world, but were generated by the reference ocean for these experiments. Sothe cost function in this work was defined as:JON , 60 = (u — fi)T (u — fi), (2.5)minimized over the control variables Ob, the streamfunction along the whole boundary,and the interior vorticity correction as used by Zou and Hsieh and also subject to abarotropic quasi-geostrophic model. The model counterpart u, of the observed velocityii, was obtained from the derivatives of the streamfunction (see equations (2.1).)Chapter 2. Method^ 72.2 Model2.2.1 Analytical ModelThe mathematical model chosen for the experiments was a flat-bottomed "barotropicquasi-geostrophic" (QG) model. Quasi-geostrophy refers to an almost geostrophic sit-uation in which the velocity basically follows the pressure contours (i.e. the pressuregradient balances the Coriolis force, see [6]) on a tangent or beta-plane approximationto the Earth's surface. A barotropic model describes a two-dimensional, vertically inte-grated ocean. In this work, the vorticity-streamfunction formulation was used as opposedto the velocity-pressure formulation in the primitive equation model.The linear and nonlinear, inviscid (no friction) barotropic equations have sinusoidalplane wave (Rossby wave) solutions. A superposition of two Rossby waves is not howevera solution to the nonlinear equations. (See [7] section 38.) When this superposition of twoRossby waves was used to force the reference domain with the full nonlinear equations(including linear bottom friction), it developed a nonlinear eddy field which was said to bean example of the "real" ocean. This was the idea used by Robinson and Haidvogel [14]in which they chose wavelength and period values from a wave-fit of data from the Mid-Ocean Dynamics Experiment (MODE) in the Atlantic Ocean. (The wave-fit calculationswere done by McWilliams and Flierl [8].)One form of the barotropic vorticity equation with horizontal and lateral viscosityand no wind-stress (see [1, 3, 18]) was given as:a(^aat + J(0, 0 13 ax+ — = —KbV 20 + KhV40,^(2.6)owhere,2^a2^a2V = - + aX 2 ay2a4^a2 a2^a4V4 = - + 2— — -I-ax4^ax2 ay2 ay4 ,(2.7)(2.8)Chapter 2. Method^ 8Kb was the bottom friction coefficient, K h was the horizontal viscosity coefficient, and Jwas the Jacobian given by the formula:ao a( azk a(,7(0, C) = ax -a-y- - ay ax (2.9)On a beta-plane (tangent plane) at mid-latitudes, the Coriolis parameter f is assumedto be a linear function of the north-south cartesian co-ordinate y, (see [6] Chapter 12):f = fo + fiy,^ (2.10)where f = 25/ sin 0, is the Coriolis parameter with 11 Pze, 7.3 x 10 -5 s' , the Earth's angularvelocity, and 0 the latitude. At mid-latitudes (0 0 = 45°), the beta-plane parameter isgiven as, p = (211/R e ) cos 00 '',-' 2.0 x10 -11m's-1 and the zeroth order Coriolis parameteris fo = 212 sin 00 r.--, 1.0 x 10 -4s".The dimensions of the rectangular domain were defined to be 0 < x, y < L. (L was1000 km for the reference model, and 500 km for the assimilation model.) The model wasnon-dimensionalized by a choice of scaling: x = 'Xd, y = 'yd, t = 4/34- 1 , 0 = li)(Vod), andC = ((Void) where d was a length scale (typical eddy size) and Vo was a velocity scale.So using the scaled variables and omitting the carets the non-dimensional barotropicquasi-geostrophic equations for the reference and model domain were given by:a(^ao79t- + R3(0,0 + -a; = -Ebv 20 + Ehv40,^(2.11)02,0 _ c ,^(2.12)where equation (2.12) follows directly from the definition of vorticity and streamfunction(see equations (2.1) and (2.2).) The equation parameters are summarized in Table 2.1.The Rossby wave boundary conditions for the reference ocean were given as:2,b = Ai COS(kiX + liy — Wit + 01) + A2 COS(k2X + 12Y — W2t + 02),^(2.13)Chapter 2. Method^ 9VoR = Oda1'6 = fldKheh = #(13Rossby numberEkman bottom frictionLaplace frictionTable 2.1: Analytical model parameterswhere,Ai =^Ki = VIC? -I- q,Kiwere the wavelengths and wave vector magnitudes,T^27r= wi(2.14)(2.15)were the periods, A i the two wave amplitudes, ki and /i the east-west and north-southwave numbers, wi the frequencies, and cb i the phase shifts.The model ocean required four open boundaries, i.e. four boundaries at which dis-turbances from the interior propagated freely out of the domain without affecting theinterior of the domain. This relied on using some type of extrapolation from the inte-rior of the domain to the boundary. One formula for this, described by Orlanski as theSommerfeld radiation condition [11] was given by the equation:-at + = ° (2.16)where was a dependent model quantity from the interior of the domain (such as zi) or() and co was the apparent phase velocity at the boundary. The phase velocity was aquantity which had to be estimated by a local distance and time scale near the boundary,described in the next section.Yi+1,j ^—2 n-1^—4 n-12At 20x^ebV^EhV 0i,jn+1Ci>i  = R,1*(0 7.a •i,3 (2.17)Chapter 2. Method^ 102.2.2 Numerical ModelThe type of numerical method typically used in physical oceanography is a centred fi-nite difference scheme. This type of numerical model has been used successfully byArakawa [1], Bryan [3], Veronis [19] and others. The finite difference approximations toequations 2.11 and 2.12 were:(2.18)where 3* is the numerical Jacobian formulation due to Arakawa [1]. V 2 and V4 arenumerical approximations to the standard Laplacian derivatives where:V 2 n+1^+ It-2-11,i 4. 7/ ,z1-41 +^40,7v.(Ax)2in the case when Ax = Ay, and V 4 has a similar, but more complicated form. (Thenumerical model notations are summarized in Table 2.2.)(2.19)IJNAxAyAti,j,nti ((iAx,jAy,nAt)P.:111)(iAx,j0y,nAt)number of grid points in the x directionnumber of grid points in the y directionnumber of time stepsgrid spacing in the x directiongrid spacing in the y directiontime stepindices for space and timethe finite difference approximation to the vorticitythe finite difference approximation to the streamfunctionTable 2.2: Numerical model notationThe boundary conditions for the streamfunction in the finite difference referencemodel were just a straight discretization of the analytical conditions:"Ki,3^A l cos(ki (iAx) ii(jAY)— wi((n +1)At) cbi)(07bi-1 -- 6-1on-2)(07b1-1^— 2071:1D At '_otoxAx(2.23)Chapter 2. Method^ 11+ A2 cos(k2(iLx) i2(jAY) w2((n + 1).6d) + 02).^(2.20)for i, j on the boundary. To calculate the vorticity, an extra computational boundarywas introduced where the streamfunction was extrapolated from the interior,^1 7c = 206^yob-1.^ (2.21)where the subscript c indicated the computational boundary, b indicated the physicalboundary, and b —1 one grid point in from the boundary (see Figure 2.2.) The vorticityat inflow points was given by the discretization of the analytical solution,^— '4(14. + cos(ki(iLx)^Ay) — wi((n + 1)At) 01)— A2 (14 + cos(k 2 (i6a) /2(jAy) — w2 ((n 1)At) + 02), (2.22)for i, j at inflow boundary points, and at the outflow points was calculated from thestandard finite difference discretization of the Poisson equation (2.18).The boundary conditions for the model runs were the discretization of the Sommerfeldcondition (2.16). The phase velocity near the boundary was estimated to be — andwas limited to the region 0 < Co < t withthis resulted in,(2.24)as the values of the phase velocity. So the value of a variable on the boundary was givenby:14:4-1 11 (t)C 01 on-1 +  2 (E)C  on[1 + (DC _I b^+ (t)Col (2.25)Chapter 2. Method^ 12Figure 2.2: Illustration of the computational boundary. The subscripts c, b, and b — 1refer to the computational boundary, physical boundary, and one grid point to the interiorfrom the physical boundary respectively.Chapter 2. Method^ 13where 0 would be streamfunction or vorticity.The general solution method was to obtain the vorticity at step one (C i, ) from theinitial data (z/4 ^093 ) and a forward Euler time step i.e.,^ = RHS of (2.17),^ (2.26)Atthen solve for the streamfunction at step one (01-i ) using equation (2.18) which was solvedwith a standard numerical Poisson equation package, then continue at the next step withequation (2.17).The accuracy of the finite difference scheme was 0((Ax) 2 (At) 2 ) because of theuse of the centred differences in space and centred difference or "leap-frog" in time (witha lag for the diffusion terms.) The reference model was stable for a sufficiently smalltime step and appropriate choice of e l, and eh . In the test cases of the following chapter,Eb = 8.0 x 10' and Eh = 2.0 x 10'. These values were considered fairly small, butreduced the build-up of noise in the reference model vorticity.2.3 Adjoint ModelThe first step of the adjoint method was to define a cost function:=^\-• Er( n-1-1^^ n-1-1 )2 +^\ 21—2^p,q^P,9^kuP,9^uP,4 )P q(2.27)where p and q ranged over the points at which data were available and the model velocitieswere given by the centred finite difference approximations to equations (2.1) as follows:opri,i-q +1^opn:1-q^n+^opn+-1-11,^opnil-11n+1^4UP,4^2Ay, vp , q2Ax• (2.28)Thacker [15] introduced a penalty or smoothing term in cases where there was a lack ofdata. This type of term was necessary for all but the first of the test cases of the nextChapter 2. Method^ 14chapter, to ensure stability of the numerical model. The cost function with the additionof a penalty term took the following form:a 1-2 J-2J =_ + _2 E E^C:3-.1-+11^4(7V )2^(2.29)1=3 j=3where = cen1 j1 is the corrected vorticity, and a was the smoothing parameter.The arbitrary constant a could only be determined by "trial and error", but was foundto lie between zero (no smoothing) and one (almost complete smoothing.) Given thepenalized cost function (2.29), the optimal boundary control (OBC) problem was definedto be:min J(Vkl l , (5C1).214,4Cwith k, 1 on the boundary, i, j in the interior and subject to the constraints,2 9 /,/. /71-1 =T'10(2.30)on the boundary,^(2.31)where CP came from the potential vorticity equation (2.17). The 1085 control variablesfor this problem were the boundary streamfunction values /kb and a vorticity correction45C at all the interior points of the numerical grid. This vorticity correction was usedby Zou and Hsieh [20] to deal with the vorticity at assimilation steps without actuallyassimilating vorticity data, nor carrying the vorticity prognostic equation (2.17) in theLagrangian L in (2.32).To solve the problem, the method of Lagrange multipliers was used. The LagrangianL, which includes the constraints, was defined as:1-2 J-2L j+EE 1411 1 (V214.7f1 (27.ti S(nt1)/^(2.32)i=3 j=3where itZt i were the Lagrange multipliers. The Lagrange multipliers were solved for bycomputing the gradients of L with respect to the streamfunction at the interior pointsaJ k, 1 at data points,0^otherwise,1-1=72 n+1^8071:1-1V PO = (2.34 )Chapter 2. Method^ 15and setting the gradients to zero as follows:aL ^+ _77214_71_1= 0,0017,1-1^azkiZt iwhich could be re-written as:(2.33)where,OJ oozy. —(uk,/-1 —2Ay(vk-i,/ — j4--1,1) 2Ax+ (uk,i+i —2Ay(vk+1,1 - 1)k+1,1) •2Ax (2.35)The gradients with respect to the control variables, 0 6, and SC, of L were as follows:aL _ dJ aori — dob+1 aJ^„n-1-1Pb-1 aq+1 AxAy,(2.36)where ^- had a similar form to equation (2.35), and.h rlaL _ dJn+10W:7 1 ) d(6Ci,J )= aF(C:3±1) _ zj-1where,(2.37)F( 71.2:1-1)zd —^j++12^(in++21,i^-(7-27.1"1-2149(/-n-1-1 .^)`n+1,j-1^'32-1,j-I-1 -1- x-1,j-1) Ci7+11,3 ) + 20 Ci7 E1 '^— 8 ( 3++^31 1 +-11 + C++11, 3 (2.38)(from Thacker [15] page 37), for all i, j in the interior of the numerical grid.Notice that the gradients of L with respect to the control variables (equations (2.36)and (2.37)) could be written explicitly in terms of the Lagrange multipliers. This madeChapter 2. Method^ 16the solution method easier. Given the gradients and the Lagrange function, the prob-lem was solved using the NAG (Numerical Algorithms Group) Fortran library routineE04DGF. The NAG routine minimizes an unconstrained nonlinear function using a pre-conditioned, limited memory quasi-Newton conjugate gradient method. (See [10] forfurther details.)So the solution method is as follows:1. Set up model parameters.2. Obtain vorticity at step 1 (0 •) from initial vorticity and streamfunction (C 9, andozpi ,a ), and using forward Euler step (equation (2.26).)3. Obtain OLi from equation (2.18).4. Advance vorticity according to potential vorticity equation (2.17) until next assim-ilation step.5. If data are available for assimilation - solve OBC problem for obn+1 , (bn+1 andinterior vorticity correction WI'6. If there is no data available - specify 7,br i , and Cbi+ 1 according to a radiationboundary condition (2.25).7. Solve Poisson equation (2.31) with (5(1:1 -1 = 0 in the case with no data.8. Continue at step 4, but use a forward Euler step if assimilation was just done. Theidea was to ignore the solution from the step before the assimilation.Chapter 3Results3.1 Description of ParametersThe main parameters which influenced the pattern of the reference ocean were the periods(T1 , T2 ) and wavelengths (A 1 , A2 ) of the Rossby waves. The distance scale (d) was chosento be the distance across a typical eddy, controlled by the choice of the wavelengths andperiods of the two Rossby waves. This distance scale, given a fixed typical mid-oceanvelocity scale (V0 ) of 10 cm/s was an indication of the Rossby number (R). Note thatthe choice of distance scale gave a non-dimensional basin length and width greater thanone.The variables in the assimilation model included smoothing (a) and frequency ofassimilation in time (n a ) and space (i a , ja ). The smoothing parameter was an arbitraryconstant found by a number of experiments not included in the next section. There wasno systematic method for obtaining a other than "trial and error". Figure 3.1 shows twotypes of data sampling strategies in space. Tables 3.1 and 3.2 summarize the parametersin dimensional units used in the experiments of the next section.The time step and grid spacing in the model were fixed. The inner model gridcontained 33 by 33 grid points and the larger reference domain was 65 by 65 grid points.These values corresponded to a grid spacing of about 15 kilometers in both directionsfor both grids. The time step was one day (dimensional units) which gave good stabilityin the reference model, but the assimilation model required smoothing (i.e. non-zero17Chapter 3. Results^ 18Expt. d (km) Ti. (days) T2 (days) A i (km) A2 (km) R1. 200 161 129 171 291 0.1252. 200 161 129 171 291 0.1253. 200 161 129 171 291 0.1254. 400 80.5 59.5 342 582 0.031255. 400 80.5 59.5 342 582 0.031256. 200 161 129 171 291 0.1257. 200 161 129 171 291 0.125Table 3.1: Reference ocean parametersExpt. a na (days) is ja1. 0.0 5 1 12. 0.01 5 2 23. 0.002 5 3 34. 0.04 5 2 25. 0.04 5 3 36. 0.1 10 2 27. 0.05 5* 2 2Table 3.2: Assimilation model variables. (* - assimilation done every five steps, but dataonly available every ten steps. Linear interpolation used to obtain data for odd steps.)Chapter 3. Results^ 19Figure 3.1: Two different grid samples, at every (a) second, (i. = ja = 2) and (b) third,(i. = ja = 3) node in both directions. (The dots indicate grid points where data aresampled.)Chapter 3. Results^ 20a in (2.29)) to keep the scheme stable. The difficulty with reducing the time step inthe assimilation model was that it increased the number of time steps between dataassimilations. If the assimilation was to be done at a realistic frequency in time, anythingless than a time step of one day and assimilation on every fifth day would not have beenviable.The reference ocean parameters (see Table 3.1) changed the overall picture of thedomain, making the eddies larger or smaller, and more or less nonlinear. The assimilationmodel variables (see Table 3.2) affect the accuracy of the simulation. The followingsection gives seven test cases which show how the parameters and variables influence thesolution.The error between the reference and the model oceans were measured in a root meansquare sense (RMS) as seen in the following formulas:.,1f f(Om — lkr ) 2 dA I 2(3.1)RMS( ) = [ f j(07.) 2 dAif f((m — 6.) 2dAl 2 (3.2)RMS(C) = [ f f(0 2dAf f {(um — ur ) 2 + (vm — vr)2}dAl^(3.3)2RMS (u) — {f f {(ur ) 2 + (vr ) 2 1c/Awhere the RMS streamfunction error was considered over the whole domain (includingthe boundary) and the RMS vorticity and velocity errors were only considered on theinterior. The vorticity and velocity on the boundaries were ignored since they wereartificial and only used to advance the model for the nonassimilation steps.Chapter 3. Results^ 213.2 Test Cases and ResultsGiven an initial pattern and boundary conditions, the reference ocean was left to "spin-up" for 258 days which was representative of twice the period of the oscillations in theRossby waves. (The initial and boundary streamfunction contours for the two distancescales of the experiments are given by Figures 3.2(a) and 3.3(a).) The streamfunctionfields at day 258 (Figures 3.2(b) and 3.3(b)) were then used as initial and boundaryconditions for the reference ocean to be compared to the assimilation experiment. Theexperiments lasted for another 258 days.The RMS velocity error from the assimilation results were compared to the RMSerror of a velocity field interpolated by a standard bicubic interpolation routine fromthe Numerical Recipes package (see [12] pages 118-120.) In most cases, the NumericalRecipes routine gave an overall RMS error less than that of the assimilation model. Atassimilation steps, in the cases with data at every second node, the assimilation RMSerror drops below the the interpolated RMS error. The RMS error in the numericalmodel, between assimilation steps grew more rapidly than the RMS error from linearinterpolation in time. A comparison to an interpolated streamfunction was not done intest case one since it had been assumed that data were available at every interior gridpoint, thus there was no need to interpolate.Any RMS error values which were greater than unity had been set to unity. In thecase of streamfunction, an error of greater than unity usually indicated that the generalpattern of the contours was similar to the reference ocean, but the actual values wereshifted up or down by a constant value. Since it was the velocity (a derivative of thestreamfunction) which was assimilated, it was expected that the streamfunction couldonly be solved for up to an arbitrary constant.In four of the test cases, the RMS streamfunction error followed some type of a largeChapter 3. Results^ 22Figure 3.2: Reference ocean streamfunction for distance scale of 200 km at (a) day zeroand (b) day 258.Chapter 3. Results^ 23Figure 3.3: Reference ocean streamfunction for distance scale of 400 km at (a) day zeroand (b) day 258.Chapter 3. Results^ 24oscillation. Perhaps this was caused by the fact that streamfunction was only solved upto an arbitrary constant as mentioned earlier. There seemed to be a small oscillationin the overall energy of the reference oceans (see Figures 3.4 and 3.5), but not reallycorresponding to the oscillations seen in the RMS streamfunction errors.,020.00.0250.0 350.0 450.0 550.0DaysFigure 3.4: Nondimensional total kinetic energy (TKE) for the period of the experimentswith a distance scale of 200 km. 350.0 450.0 550.0DaysFigure 3.5: Nondimensional total kinetic energy (TKE) for the period of the experimentswith a distance scale of 400 km.The first test case was designed to demonstrate how the model reacts to the assimi-lation scheme. The theory was that if data were sampled at every point in the interior,the optimal-control problem could be solved with no need for smoothing. Figures 3.6Chapter 3. Results^ 25and 3.7 demonstrate the direct comparison of streamfunction and vorticity contours attwo different time steps. Figure 3.8 shows the RMS errors of the velocity, vorticity, en-ergy, and streamfunction. The error rises during the nonassimilation steps, then dropsrapidly at the assimilation steps as expected for vorticity, velocity, and energy. The RMSstreamfunction (Figure 3.8(d)) error shows the strange oscillatory behaviour mentionedearlier.Figure 3.6: Test 1 - Day 387: A comparison of the (a) reference streamfunction, (b) modelstreamfunction, (c) reference vorticity, and (d) model vorticity at a time step when thereis no assimilation. (The last assimilation was done at day 383.)Chapter 3. Results^ 26Figure 3.7: Test 1 - Day 513: a comparison of the (a) reference streamfunction, (b) modelstreamfunction, (c) reference vorticity, and (d) model vorticity at a time step when thereis assimilation.U' 0.40cc0.802 0.600.00250.0 350.0 450.0 550.0(a)0.201.0011,1'i^I 1,111;1'1^I1.000.800.600.400.200 . 00 ^250.0 350.0 450.0 550.0DaysC" 0.40cr0.200.00250.0 350.0 450.0 550.0Days0.80L2 0.60w1.00Chapter 3. Results^ 271.000.800.600.400.200.00250.0 350.0 450.0 550.0(b)(c )^(d)Figure 3.8: Test 1 - RMS Errors: (a) interior velocity, (b) interior vorticity, (c) energy,and (d) streamfunction (including boundary).Chapter 3. Results^ 28The second test case considers a spatial sampling of every second node in both direc-tions, thus giving data at 256 points out of the 961 interior numerical grid points. Therewas some noise evident in the vorticity contours (see Figures 3.9(d) and 3.10(d).) Thestreamfunction contours (see Figures 3.9(b) and 3.10(b)) had a pattern very close to thereference contours and actual values were nearly identical. There was a bit of noise nearthe boundaries in the streamfunction contours. The smoothing parameter allowed thescheme to converge as well as reducing some of the noise in the vorticity. The error inthe vorticity for the assimilation model was generally below forty percent, and hoveredaround five percent in the velocity. There was a strange oscillation in the RMS vorticityand streamfunction error, but both were fairly well behaved.When the data were only available at every third node in both directions (giving 121sampled points), it was much more difficult for the model to converge. A smoothingparameter could be found so that the RMS errors did not diverge in the experimenttime. There was much more noise in the vorticity contours than in the cases of everysecond node. The RMS velocity error never went above thirty percent, but it seemedto be increasing and never dropped below the interpolated velocity error. (CompareFigures 3.15(a) and 3.16.) Even the RMS energy error seemed to be increasing. Thestreamfunction contours were fairly smooth, but the actual values differed significantlyfrom the reference streamfunction contours. The model vorticity still resembled thereference vorticity despite the increase in noise. (See Figures 3.13(d) and 3.14(d).)In test four, where the eddies are of a larger scale than in the first three test cases, theRMS error in the vorticity dropped rapidly to about twenty percent as the influence of theassimilation scheme became dominant. Even the streamfunction RMS error seemed tobe declining as the experiment progressed. This trend did not seem to correspond to theTKE of the reference ocean (see Figure 3.5.) The velocity error varies uniformly aroundten percent and dropped below the interpolated error at assimilation steps (compareChapter 3. Results^ 29Figure 3.9: Test 2 - Day 387: A comparison of the (a) reference streamfunction, (b) modelstreamfunction, (c) reference vorticity, and (d) model vorticity at a time step when thereis no assimilation. (The last assimilation was done at day 383.)Chapter 3. Results^ 30Figure 3.10: Test 2 - Day 513: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is assimilation.1 .000.800.600.400.200.00250.0 350.0 450.0 550.01 .000.802 0.60Cl) 0.400.200.00250.0 350.0 450.0 550.01 . 350.0 450.0 550.0••••11111111111•••1111111111111111111•••1.000.802 0.60C 0.400.200.00250.0 350.0 450.0 550.0Days(c)Chapter 3. Results^ 31(a)^( b )1 . 000.800.600.400.200 . 00 ^m.1111111[1.111[11.10250.0 350.0 450.0 550.0Days(d)Figure 3.11: Test 2 - RMS Errors: (a) interior velocity, (b) interior vorticity, (c) energy,and (d) streamfunction (including boundary).DaysFigure 3.12: Test 2 - RMS interpolated velocity error.Chapter 3. Results^ 32Figure 3.13: Test 3 - Day 387: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is no assimilation. (The last assimilation was done at day 383.)Chapter 3. Results^ 33Figure 3.14: Test 3 - Day 513: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is assimilation.Chapter 3.LResults1.000.80-2Lw0.60(.) 0.400.200.00 1111111111111tt 1111111111111134III I III I 1 I I I I I I I Ili I I 1111111 11.000.800.600.400.200.00If250.0 350.0 450.0 550.0(a)1.000.80L2 0.60LwC 0.40mm0.20( c )250.0 350.0 450.0 550.0(b)1.000.800.600.400.200.00^FIIIIIIIIIIIIIIIIIIImilillo250.0 350.0 450.0 550.0Days(d)0.00250.0 350.0 450.0 550.0DaysFigure 3.15: Test 3 - RMS Errors: (a) interior velocity, (b) interior vorticity, (c) energy,and (d) streamfunction (including boundary). (Errors greater than unity truncated atunity.)^hilliiiihmilliiIIIIIIIIIII250.0 350.0 450.0 550.0DaysFigure 3.16: Test 3 - RMS interpolated velocity error.Chapter 3. Results^ 35Figures 3.19(a) and 3.20), but with much more variance than in previous cases. Thepatterns between the reference ocean and assimilation model contours were very closeas well as the actual values. Also there seemed less noise in the vorticity, just a smallamount near the boundaries. (See Figures 3.17 and 3.18.)Figure 3.17: Test 4 - Day 387: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is no assimilation. (The last assimilation was done at day 383.)As in test case three, having data at every third node was difficult even with the largereddy sizes of test case five. The RMS errors were very large in the streamfunction andvorticity, but there was at least more consistency in the trends. The RMS velocity errorChapter 3. Results^ 36Figure 3.18: Test 4 - Day 513: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is assimilation.1 .000.800.60Cl' 0.400.200.00250.0 350.0 450.0 550.0(a)1. 000.80L2 0.60C 0.400.200.00250.0 350.0 450.0 550.0Days( c )1 .000.800.600.400.200.00250.0 350.0 450.0 550.0(b)(d)550.0350.0 450.0Days1. 350.0 450.0 550.0Chapter 3. Results^ 37Figure 3.19: Test 4 - RMS Errors: (a) interior velocity, (b) interior vorticity, (c) energy,and (d) streamfunction (including boundary).DaysFigure 3.20: Test 4 - RMS interpolated velocity error.Chapter 3. Results^ 38seems to level off at around twenty percent, but never dropping below the interpolatedvelocity error. (See Figures 3.23 and 3.24.) The streamfunction contours seemed tocompare very well with very little noise, and even the vorticity contours were close.There was a large amount of noise near the boundaries in the vorticity. (See Figures 3.21and 3.22.)Figure 3.21: Test 5 - Day 387: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is no assimilation. (The last assimilation was done at day 383.)The sixth test case demonstrated a change in the frequency of assimilation to onceevery ten days. The vorticity error seemed to vary around forty percent and the velocityChapter 3. Results^ 39Figure 3.22: Test 5 - Day 513: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is assimilation.1 .000.80L0.60LwT 0.40cc0.200.00250.0 350.0 450.0 550.0(a)1.000.800.600.400.200.00250.0 350.0 450.0 550.0(b)0.200.00250.0 350.0 450.0 550.01 .000.80L2 0.60LwCl' 0.40mm1.000.800.600.400.200.00250.0 350.0 450.0 550.01 . 350.0 450.0 550.0DaysChapter 3. Results^ 40Days^ Days( c ) (d )Figure 3.23: Test 5 - RMS Errors: (a) interior velocity, (b) interior vorticity, (c) energy,and (d) streamfunction (including boundary). (Errors greater than unity truncated atunity.)Figure 3.24: Test 5 - RMS interpolated velocity error.Chapter 3. Results^ 41around ten percent over the period of the experiment. The assimilated velocity errordropped below the interpolated velocity error on the assimilation steps. The streamfunc-tion error had the recurring oscillation. (See Figures 3.27 and 3.28.) The streamfunctioncontours had a smooth, similar pattern in the comparisons Figure 3.25(b) and 3.26(b),and the actual values were quite good at day 387, but seemed to be shifted by a constantat day 508. There was, once again a build-up of noise in the vorticity contours on bothdays.Figure 3.25: Test 6 - Day 387: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is no assimilation. (The last assimilation was done at day 383.)Chapter 3. Results^ 42Figure 3.26: Test 6 - Day 508: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is assimilation.0.00250.0 350.0 450.0 550.00.00250.0 350.0 450.0 550.01.000.800.600.400.201 .000.802 0.60m 0.400.201.000.80L2 0.60LCl)w 0.400.200.00250 0 350.0 450.0 550.0Days Days1 . 350.0 450.0 550.0Chapter 3. Results^ 43(a)^(b )(c )^Id )Figure 3.27: Test 6 - RMS Errors: (a) interior velocity, (b) interior vorticity, (c) energy,and (d) streamfunction (including boundary).DaysFigure 3.28: Test 6 - RMS interpolated velocity error.Chapter 3. Results^ 44The final test case used assimilation every five days, but the data were only availableevery ten days. Linear interpolation was used to obtain the data values for every secondassimilation step. Overall the behaviour seemed to be much like that of test case two.(Compare Figures 3.31 and 3.11.) The RMS streamfunction and vorticity errors seemedto be a touch higher in test case seven. The interpolated velocity error is the same asin experiment six, and the assimilation model velocity error compares well. As in testcase two, the contour plots compared well and there was noise evident in the vorticitycontours. (See Figures 3.29 and 3.30.)Chapter 3. Results^ 45Figure 3.29: Test 7 - Day 387: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is no assimilation. (The last assimilation was done at day 383.)Chapter 3. Results^ 46Figure 3.30: Test 7 - Day 508: A comparison of the (a) reference streamfunction, (b)model streamfunction, (c) reference vorticity, and (d) model vorticity at a time step whenthere is assimilation.1.000.80L2 0.60Lw 0.400.201.000.802 0.60C" 0.400.00250.0 350.0 450.0 550.0(a)1111111A11141111111111/110.200.00mittimmigitititlittittitt250.0 350.0 450.0 550.0Days(c)1.000.800.600.400.200.00250.0 350.0 450.0 550.0(b)1.00 -0.80 -0 . 00 ^350.0 450.0 550.0Days(d)0.600.400.20250.0Chapter 3. Results^ 47Figure 3.31: Test 7 - RMS Errors: (a) interior velocity, (b) interior vorticity, (c) energy,and (d) streamfunction (including boundary).Chapter 4ConclusionsThe simplified adjoint scheme performed very well in the case where there were dataavailable at every interior point on the numerical grid as expected. In the case of havingdata at every second node, the adjoint scheme showed good results when compared to astandard bicubic interpolation scheme. (See test cases two, four, five, and seven.) Therewas a need for a smoothing parameter or penalty term added to the cost function toallow the scheme to converge and perform well. There was still noise evident, but couldpossibly be improved with the choice of the smoothing parameter or perhaps a bettersmoothing mechanism. An ideal smoothing could not be found to remove the noise andallow the model to converge in test case three with data at every third node, but seemedto be possible in test case five with the larger eddies. An interesting test (test case seven)was the use of linear interpolation in time to increase the frequency of assimilation intime, without requiring observations at each assimilation step. The results comparedvery well with a similar experiment with data at every assimilation step. (Compare testcases two and seven.) A problem in all cases was the choice of a smoothing parameter.Overall the bicubic interpolation scheme gave a better RMS velocity error, but theobserved data were arranged in an ideal pattern for interpolation as well as there being nonoise in the data. The interpolation scheme required velocity values at four surroundingpoints on a grid for each interpolation point as well as the first derivatives (or a finitedifference approximation.) Since the data were arranged in a regular grid, the method forobtaining the four closest data values and their derivatives was easy to implement. Given48Chapter 4. Conclusions^ 49a more irregular arrangement of data, the interpolation would be more complicated. Also,the interpolation scheme fits a surface to the data values, giving no error at the pointswhere there are data. If there were any observational errors in the data, they would carrydirectly through in the interpolation.In most cases the assimilation model RMS error values seem to vary uniformly arounda fixed value, except in test case four where the RMS vorticity error dropped significantly.It seemed that the Orlanski radiation condition at the boundaries was not able to preventRMS error growth between assimilation steps.This problem was intended to be a preliminary investigation of a simple adjointmethod. An interesting test would be to compare the assimilation model and the in-terpolation scheme with an irregularly arranged set of observed data and include somerandom noise.Bibliography[1] Arakawa, A., 1966. Computational design for long term numerical integration of theequations of fluid motion: Two dimensional incompressible flow. Part 1. J. Comput.Phys., 1, 119-143.[2] Bennett, A. F., 1992. Inverse methods in physical oceanography. Cambridge Univer-sity Press. 346 pages.[3] Bryan, K., 1963. A numerical investigation of a nonlinear model of a wind-drivenocean. J. Atmos. Sci., 20, 594-606.[4] Charney, J. G., R. FjOrtoft, and J. von Neumann, 1950. Numerical integration ofthe barotropic vorticity equation. Tellus, 2, 237-254.[5] Engquist, B. and A. Majda, 1977. Absorbing boundary conditions for the numericalsimulation of waves. Math. Comp., 31, 629-651.[6] Gill, A. E., 1982. Atmosphere - Ocean Dynamics. Academic Press, Inc., New York.662 pages.[7] LeBlond, P. H. and L. A. Mysak, 1978. Waves in the Ocean. Elsevier Science Pub-lishers B. V., Amsterdam, The Netherlands. 602 pages.[8] McWilliams, J. C. and G. R. Flierl, 1976. Optimal, quasi-geostrophic wave analysesof MODE array data. Deep -Sea Res., 23, 285-300.[9] Miller, R. N. and A. F. Bennett, 1988. Numerical simulation of flows with locallycharacteristic boundaries. Tellus, 40A, 303-323.[10] The Numerical Algorithms Group Limited, 1991. The NAG Fortran Library Manual,Mark 15.[11] Orlanski, I., 1976. A simple boundary condition for unbounded hyperbolic flows. J.Comput. Phys., 21, 251-269.[12] Press, W. H., S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery, 1992. NumericalRecipes in Fortran: The Art of Scientific Computing, Second Edition, CambridgeUniversity Press. 963 pages.[13] Raymond, W. H. and H. L. Kuo, 1984. A radiation boundary condition for multi-dimensional flows. Quart. J. R. Met. Soc., 110, 535-551.50Bibliography^ 51[14] Robinson, A. R. and D. B. Haidvogel, 1980. Dynamical forecast experiments with abarotropic open ocean model. J. Phys. Oceanogr., 10, 1909-1928.[15] Thacker, W. C., 1987. Three lectures on fitting numerical models to observations.External report GKSS 87/E/65., GKSS-Forschungszentrum Geesthacht GmbH,Geesthacht, Federal Republic of Germany, 64 pages.[16] Thacker, W. C. and R. B. Long, 1988. Fitting dynamics to data. J. Geophys. Res.,93, 1227-1240.[17] Tziperman, E. and W. C. Thacker, 1989. An optimal-control / adjoint-equationsapproach to studying the oceanic general circulation. J. Phys. Oceanogr., 19, 1471-1485.[18] Veronis, G., 1966. Wind-driven ocean circulation - Part 1. Linear theory and per-turbation analysis. Deep-Sea Res., 13, 17-29.[19] Veronis, G., 1966. Wind-driven ocean circulation - Part 2. Numerical solutions ofthe non-linear problem. Deep-Sea Res., 13, 31-55.[20] Zou, J. and W. W. Hsieh, 1993. Open boundary control in a limited-area oceanmodel through data assimilation. (in progress)


Citation Scheme:


Citations by CSL (citeproc-js)

Usage Statistics



Customize your widget with the following options, then copy and paste the code below into the HTML of your page to embed this item in your website.
                            <div id="ubcOpenCollectionsWidgetDisplay">
                            <script id="ubcOpenCollectionsWidget"
                            async >
IIIF logo Our image viewer uses the IIIF 2.0 standard. To load this item in other compatible viewers, use this url:


Related Items