35
SHELBY JONES HANNA ASEFAW Modeling Marine Magnetic Anomalies 1

Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

S H E L B Y J O N E S H A N N A A S E F A W

Modeling Marine Magnetic Anomalies

1

Page 2: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Outline

①  Magnetic Acquisition

②  Goal of our Project

③  Derivation ④  Our MATLAB Process

⑤  Real Applications

¡  Pacific Antarctic Ridge ¡  Mid-Atlantic Ridge

⑥  Limitations

2

Page 3: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Magnetic Acquisition

�  MORB (Mid-Ocean Ridge Basalts) contain magnetic grains

�  As basalt cools, the

magnetizations within the magnetic grains align themselves with the magnetic field ¡  Latitudinal dependence

Magnetic Acquisition 3

Page 4: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Magnetic Acquisition

Magnetic Acquisition 4

Page 5: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Goal of Our Project

Goal 5

Modeled Magnetic Profile

Observed Seafloor Magnetic Profile

Page 6: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Goal of Our Project

Goal 6

�  C = constant �  µ0 = magnetic permeability �  k = wavenumbers

¡  k = (-nx/2 : nx/2 - 1) / L ¡  L = spreading rate * total time

�  z = depth = 3000m �  θ = skewness �  p(k) = Fourier of

geomagnetic timescale

Page 7: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Goal of Our Project

Goal 6

�  C = constant �  µ0 = magnetic permeability �  k = wavenumbers

¡  k = (-nx/2 : nx/2 - 1) / L ¡  L = spreading rate * total time

�  z = depth = 3000m �  θ = skewness �  p(k) = Fourier of

geomagnetic timescale

Page 8: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

�  Ideal towed magnetometer measures:

�  Most magnetometers measure scalar field

�  On Earth, Be ≅ 50,000nT while ΔB ≅ 300nT

Step 1: Calculate the Scalar of the Anomaly |A|

Derivation 7

Page 9: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Step 2: Account for Seafloor Spreading

�  Define scalar potential (U) and magnetization (M)

�  Define:

Derivation 8

Page 10: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Step 2: Account for Seafloor Spreading

�  Potential satisfies Laplace’s equation above source

layer and Poisson’s equation within source layer

Derivation 9

Page 11: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

�  2nd terms can be eliminated because source does not vary in the y-direction thus derivative = 0

Step 2: Account for Seafloor Spreading

Derivation 10

Page 12: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Step 2: Account for Seafloor Spreading

�  Boundary Conditions:

�  Basic Double Fourier Transform:

�  Applied to this problem:

¡  In the x direction:

¡  In the z direction (use identity):

Derivation 11

Page 13: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Step 2: Account for Seafloor Spreading

�  Fourier Transform Result

�  Solve for U(k)

�  Inverse Fourier using Cauchy Residue Theorem

Derivation 12

Page 14: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

�  To solve integral, calculate the poles of the integrand

¡  Factor:

¡  Solve over closed loops:

Step 2: Account for Seafloor Spreading

Derivation 13

Page 15: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Step 2: Account for Seafloor Spreading

�  Combine integrands and drop ksubscripts:

�  To simplify: assume the spreading ridge is located at Earth’s magnetic pole, the dipolar field lines will be parallel to the z-axis, thus no x-component

Derivation 14

Page 16: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Step 3: Calculate the magnetic anomaly

�  Recall:

�  Substitute with evaluated U:

�  Recall:

�  Since only the z-component of Earth’s magnetic field is non-zero due to our assumptions, the anomaly simplifies to:

*

Derivation 15

Page 17: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Step 3: Calculate the magnetic anomaly

�  Take into account upward continuation

*

Derivation 16

Page 18: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix
Page 19: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix
Page 20: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix
Page 21: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix
Page 22: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Main function

% % specify data files % pacificAntarcticRise = 'pacificAntarctic.xydm'; midAtlanticRidge = 'midAtlanticRidge.xydm’

spreadCSkewErMAR = spreadCSkewEr(midAtlanticRidge, polarity, time, 1318); spreadCSkewErPA = spreadCSkewEr(pacificAntarcticRise, polarity, time, 5418);

Our MATLAB Process 21

Page 23: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

spreadCSkewEr()

�  Parameters – datafile, polarity, time, ridgeAxis ¡  Datafile – file the contains the observed magnetic anomalies ¡  Polarity – matrix with geomagnetic timescale field polarities ¡  Time – matrix with geomagnetic timescale ¡  ridgeAxis – location of the ridge axis

�  Output ¡  Figure 1: Observed Magnetic Anomalies across the ridge ¡  Figure 2: Fourier transform of magnetic timescale & observed ¡  Figure 3: Overlay of observed and modeled ¡  Figure 4: Overlay of observed and modeled ¡  Returns a solution [spreadingRate, Constant, skewness, rootError)

Our MATLAB Process 22

Page 24: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

function spreadCSkewEr = spreadCSkewEr(anomalyFile, polarity, time, axisPoint) location = inputname(1); % % load the observed anomaly data % anomalyFile = importdata(anomalyFile); distance = anomalyFile(:,3); magobs = anomalyFile(:,4); % % plot distance from ridge and magnetic anomaly % figure(1) subplot(2,1,1); plot(distance, magobs); xlabel('Distance (km)') ylabel('Magnetic Anomaly (n tesla)') title(['Observed Magnetic Anomalies across the ', location]); % % plot near ridge magnetic anomalies % [totalTimescaleDatapoints,mdat]=size(time./2); vectorTime=2048; halfVectorTime=vectorTime/2; subsetTime = time((totalTimescaleDatapoints/2-halfVectorTime+1): (totalTimescaleDatapoints/2+halfVectorTime),1)'; subsetPolarity = polarity((totalTimescaleDatapoints/2-halfVectorTime+1): (totalTimescaleDatapoints/2+halfVectorTime),1)'; [sizex, sizey] = size(distance); subsetDistance = distance((axisPoint-halfVectorTime+1):(axisPoint+ halfVectorTime),1)'; subsetAnomalies = magobs((axisPoint-halfVectorTime+1):(axisPoint+ halfVectorTime),1)'; subplot(2,1,2); plot(subsetDistance, subsetAnomalies); xlabel('Distance (km)') ylabel('Magnetic Anomaly (n tesla)') title(['Observed Magnetic Anomalies across the ', location]);

Figure 1: Observed Magnetic Anomalies across the ridge

Our MATLAB Process 23

Page 25: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Figure 2: Fourier Transform magnetic timescale and observed anomalies

% % %Fourier Transform of the Observed Magnetic Anomalies across the Pacific-Antarctic Rise % % dataAnomaly = fftshift(fft(subsetAnomalies)); figure(2) subplot(2,1,1); plot(k,real(dataAnomaly)); xlabel('k'); title(['Anomalies Observed across the ', location]); axis([-60, 60,-2 * 10^5, 1*10^5 ]) % % Fourier Transform of the magnetic timescale p(k) % % fourierTimescale = fftshift(fft(subsetPolarity)); % % % Model based on the geomagnetic timescale % % constant= 3 *10^-11; spreadingRate = 40000; theta = -130; skewness = theta * pi/180 ; k2 = k./(spreadingRate*dt); modelAnomaly = abs(k2).*(fourierTimescale).* exp(abs(k2).* DEPTH * -2 * pi).* exp(sign(k2).* 1i * skewness) * constant* MAGPERM * 2 * pi; subplot (2, 1, 2); plot(k, modelAnomaly); xlabel('k'); title('Anomalies modeled from the Magnetic Timescale');

Our MATLAB Process 24

Page 26: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Figure 3: overlay of model and observed (k)

figure(3) plot(k, dataAnomaly,k, modelAnomaly); legend([location, ' observed anomaly'], 'Timescale generated anomaly'); xlabel('k');

Our MATLAB Process 25

Page 27: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Figure 4: overlay of model and observed

% % overlay of inverse fourier dataAnomaly and modelAnomaly % % model= ifft(fftshift(modelAnomaly)); figure(4) plot(subsetDistance./dt*2, subsetAnomalies, subsetTime, model) legend([location, ' observed anomaly'], 'Timescale generated anomaly');

Our MATLAB Process 26

Page 28: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

% %calculate the Root Mean Square Error % rootError = calcRMSE(subsetAnomalies, model);

Our MATLAB Process 27

Page 29: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Root Mean Square Error % % takes two matrices and calculates the RMSE % function deviation = calcRMSE (model, observed) [y, dataPointsModel] = size(model); [z, dataPointsObserved] = size (observed); sum = 0; if dataPointsModel >= dataPointsObserved totalPoints = dataPointsObserved; else totalPoints = dataPointsModel; end for i = 1:totalPoints sum = sum + (abs(model(1,i)^2 - observed(1,i))^2); end deviation = sqrt(sum/totalPoints);

How well the model suits the observed data

We tried to minimize RMSE

Our MATLAB Process 28

Page 30: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Return a solution

spreadCSkewEr = [spreadingRate, CONSTANT, theta, rootError];

spreadCSkewErMAR = spreadCSkewEr(midAtlanticRidge, polarity, time, 1318); spreadCSkewErPA = spreadCSkewEr(pacificAntarcticRise, polarity, time, 5418);

Our MATLAB Process 29

Page 31: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Calculating our c, skewness, and rmse % %calculates the ideal skewness theta, constant combinations based on the %observed Anomaly % function skewConst = skewnessConstant (fourierTimescale, observedAnom, inC, rangeC, skew, spreading, rangeSpread ) c = 0; constant = 0; theta = 0; skewness=0; currentRMSE = 0; j = 1; currentLeast = Inf; dt = 20; nx = 2048; magPerm = 4 * pi * 10 * exp(-7); nx2 = nx/2; depth = 3000.; for spreadingRate = (spreading-rangeSpreading):spreading:(spreading+rangeSpreading) L = spreadingRate * dt; k = ((-nx2): (nx2 - 1))/(spreadingRate *dt); for c = (inC-rangeC):10000:(inC+rangeC) for theta = (skew-10):skew:(skew:+10) skewness = theta* pi / 180.; modelAnom = abs(k).*(fourierTimescale').* exp(abs(k).* depth * -2 * pi).* exp(sign(k).* 1i * skewness) * constant * magPerm * 2 * pi; rmse = calcRMSE(modelAnom, observedAnom); if rmse < currentRMSE skewConst = [spreadingRate, c, theta, currentRMSE]; currentRMSE = rmse; end end end end

Our MATLAB Process 30

Page 32: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Main function

% % specify data files % pacificAntarcticRise = 'pacificAntarctic.xydm'; midAtlanticRidge = 'midAtlanticRidge.xydm’

spreadCSkewErMAR = spreadCSkewEr(midAtlanticRidge, polarity, time, 1318); spreadCSkewErPA = spreadCSkewEr(pacificAntarcticRise, polarity, time, 5418);

Our MATLAB Process 31

Page 33: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Mid-Atlantic Ridge

C = 4 *10^-11; Spreading rate = 22000 m/myr Θ (skewness) = -50 RMSE = 193

Real Application 32

Page 34: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Pacific-Antarctic Ridge

C = 1.2 * 10^-10 Spreading rate = 46,000 m/myr Θ (skewness) = 3º RMSE =259

Real Application 33

Page 35: Modeling Marine Magnetic Anomalies · Observed Seafloor Magnetic Profile . Goal of Our Project ... Datafile – file the contains the observed magnetic anomalies ! Polarity – matrix

Limitations

�  We assume: ¡  Constant spreading rate ¡  Symmetry across the ridge ¡  Stationary ridge

Limitations 34