亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? invmainn.m

?? 3D電阻率反演Matlab程序 RESINVM3D is a MATLAB package for inverting 3D Dc Resistivity and Electrical Resi
?? M
字號:
function [xc,d,MTX,para] = InvMainN(MTX,para,x0)
% [xc,d,MTX] = InvMainN(MTX,para,x0)
% 
%% Approximate Unconstrained Gauss-Newton with Armijo rule line search 
%
% Input: MTX = Structure of global (see generateMTX)
%        para = parameter structure
%        x0 = initial iterate
%
% Output: xc = solution
%         d = predicted data  
%
% Copyright (c) 2007 by the Society of Exploration Geophysicists.
% For more information, go to http://software.seg.org/2007/0001 .
% You must read and accept usage terms at:
% http://software.seg.org/disclaimer.txt before use.
% 
% Revision history:
% Original SEG version by Eldad Haber and Adam Pidlisecky, 
% Last update August 2006

%%%Screen output during inversion contains the following information:
%%iteration number; current objective function value; data misfit;
%%datanorm; modelnorm; relative gradient norm(current gradient/original gradient). 

%------ Initialize -----------------------------------------

disp('Initializing');

% Extract active cells from the ref model
mref = shiftdim(MTX.mref(find(MTX.ACTIVE)));



%  Scale the data
scl = mean(mean(abs(MTX.dobs)));
fprintf('Data scaling constant = %e\n\n',scl);

MTX.dobs = MTX.dobs/scl;
MTX.RHS = MTX.RHS/scl;
para.e = para.e/scl;
% Calculate the data weighting matrix
WdW = data_weight(MTX,para);
MTX.WdW = WdW;

% Extract data 
dobs = mkvc(MTX.dobs);


if exist('x0'),
    xc = x0(:);   
else,
    disp('Starting model = Ref model');
    xc = mref(:);     
end;

% allocate some numbers
misfit = []; gc = 1; normg0 = 1;

%set up the display 
disp('==================== START OPTIMIZATION ========================');
disp(' ');



itc = 0; 
% Start Gauss-Newton loop
while(norm(gc)/normg0 > para.tol & itc < para.maxit & norm(gc)>1e-20)
   % iteration count
   itc = itc+1;
   
   %%% ---- Function and gradient evaluation -------
   % Update model
   MTX = updateMTX(MTX,xc,para.ilutol);
   % Solve forward problem for the potnetial field everywhere in the volume
   if ~exist('MTX.U'); MTX.U  = Asol(MTX,MTX.RHS,para.inintol); end;

   % Calculate the (predicted) data from u
   d = Qu(MTX.OBS,MTX.U,MTX.SRCNUM);
 
   % Calculate the value of the objective function
   %%The data component
   fd = 0.5*(d-dobs)'*(WdW)*(d-dobs);
   %%the model component
    %automatically determine a beta guess
      if itc == 1 &  exist('x0') & isempty(para.BETA);
          
          para.BETA = 0.05*(fd./( (xc-mref)'*MTX.WTW*(xc-mref))); 
      elseif itc == 1  & isempty(para.BETA);
          %%Temporarily assign a value, to be corrected later
          para.BETA = 0;
      end;
   fm = 0.5*para.BETA*( (xc-mref)'*MTX.WTW*(xc-mref));

   %%Add them for the total Objective function
   fc =fd+fm;

   % Evaluate the gradient
   % model objective function gradient
      
   grad_fm = para.BETA*MTX.WTW*(xc-mref);

   % data objective function gradient (a little more complicated)
   QTd = Qtu(MTX.OBS, WdW*(d - dobs), MTX.SRCNUM );
   lm = ATsol(MTX, -QTd, para.inintol);
   %% use lm to obtain the gradient of the data component
   grad_fd = calcGvT(xc,MTX.U,MTX,lm);

   % Combine the gradients
   gold = gc;
   gc = grad_fd + grad_fm;
   
   %%%% Store some quantities for later use
   misfitold = misfit;
   misfit = sqrt((d-dobs)'*WdW*(d-dobs))/sqrt(dobs'*WdW*dobs);
   if itc == 1, normg0 = norm(gc); f0 = fc; mis0 = misfit; end;

    
   
astr = sprintf('%12s    %8s    %8s    %10s  %10s   %8s',...
               'iter', 'OBJ', 'Misfit', 'DataNorm', 'ModelNorm','RelGrad');

fprintf('%s\n',astr);
   %display parameters
   ostr = sprintf('%12s %12s %12s %12s %12s %12s',...
          [int2str(itc),'/',int2str(para.maxit)],...
          sprintf('%6.2f%c',100*fc/f0,'%'),...
          sprintf('%10.3e',misfit),...
          sprintf('%10.3e',fd),...
          sprintf('%10.3e',fm),...
          sprintf('%10.3e',norm(gc)/normg0));
  
          fprintf('%s\n',ostr);

   
   % mu_LS is mu for the line search

   if misfit < 1e-5
      disp(' misfit below tolerance');   
      return;
   end;

   % Approximate the direction
   % A conjugate gradient solver for
   % (J'*J + para.BETA*WTW) s = -gc
   MTX.mc = xc;
   s = ipcg(MTX, para.BETA, -gc, para.intol, para.ininintol, para.init); 
      
   % Test for convergence
   if max(abs(s)) < 1e-3,
      fprintf('    max_s = %e,  norm(g) = %e\n', max(abs(s)), norm(gc));
      fprintf('STEP size too small CONVERGE  ');  return; 
   end;

   % Try the step 
   mu_LS = 1; 
   iarm = 0;     
   % Line search
   while 1,
      xt = xc + mu_LS*s;
      %%%% Evaluate the new objective function
      MTX = updateMTX(MTX,xt,para.ilutol);
      MTX.U = Asol(MTX,MTX.RHS,para.inintol);
      
      d = Qu(MTX.OBS,MTX.U,MTX.SRCNUM);
   
      fd = 0.5*(d-dobs)'*WdW*(d-dobs);
      
      %automatically determine a beta guess
      if itc == 1 & para.BETA ==0;
          para.BETA = 0.5*(fd./( (xt-mref)'*MTX.WTW*(xt-mref))) 
      end;
      fm = 0.5*para.BETA*( (xt-mref)'*MTX.WTW*(xt-mref));       
      ft = fd+fm;
  
      fgoal = fc - para.alp*mu_LS*(s'*gc);

      ostr = sprintf(' %12s %12s %12s %12s %12s %12s',...
      [int2str(itc),'.',int2str(iarm+1)],...
      sprintf('%6.2f%c',100*ft/f0,'%'),...
      sprintf('%10.3e',misfit),...
      sprintf('%10.3e',fd),...
      sprintf('%10.3e',fm),...
      sprintf('%10.3e',[]));
    
      fprintf('%s\n',ostr);
 
      if ft < fgoal, 
        break,
      else
   	    iarm = iarm+1;
        mu_LS = mu_LS/2;    
      end;  
      
      if(iarm > 5)
           disp(' Line search FAIL EXIT(0)');     
           return;             
		  end
      fgoal = fc - para.alp*mu_LS*(s'*gc);
   end  % end line search
   
   % Update model
   xc = xt; 

   ss = ['iter.',int2str(itc),'.mat'];
   save(ss,'xc');
   
   misfitnew = misfit;
   misfitold = misfitnew;
   xc = xt;
end
%%Create the final model (insert the active cells into the right place)
xtemp = MTX.mref;
xtemp(find(MTX.ACTIVE)) = xc;
xc = xtemp;


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人免费看片app下载| 久久久精品免费免费| 久久久久99精品一区| 一区二区三区电影在线播| 美女国产一区二区| 色噜噜狠狠成人中文综合| 2021中文字幕一区亚洲| 亚洲国产精品久久艾草纯爱| 成人午夜在线播放| 精品久久一区二区三区| 亚洲mv大片欧洲mv大片精品| 成人av网站免费| 久久久99久久| 精品在线视频一区| 欧美一区二区视频免费观看| 亚洲女厕所小便bbb| 国产成人精品亚洲777人妖| 欧美一区二区网站| 日本欧美肥老太交大片| 欧美图片一区二区三区| 亚洲欧美成人一区二区三区| youjizz久久| 国产精品毛片久久久久久久| 国产成人在线电影| www成人在线观看| 久久99精品国产91久久来源| 欧美一区永久视频免费观看| 日本麻豆一区二区三区视频| 制服丝袜中文字幕亚洲| 五月综合激情网| 制服.丝袜.亚洲.另类.中文| 五月综合激情婷婷六月色窝| 欧美久久婷婷综合色| 婷婷激情综合网| 51午夜精品国产| 久久黄色级2电影| 久久毛片高清国产| 国内成+人亚洲+欧美+综合在线| 日韩一区二区视频| 久久精品免费看| 久久久久久一二三区| 国产福利一区在线观看| 国产偷v国产偷v亚洲高清 | 久久欧美中文字幕| 国产乱码精品1区2区3区| 国产人成一区二区三区影院| 成人三级在线视频| 国产精品久久99| 一本大道久久a久久精二百| 亚洲美女偷拍久久| 欧美人动与zoxxxx乱| 久久er99精品| 国产精品日韩成人| 欧美视频日韩视频在线观看| 日本在线不卡一区| 久久色在线视频| 91美女视频网站| 日韩av不卡一区二区| 久久久久久久网| 91蜜桃在线免费视频| 亚洲国产你懂的| 欧美电视剧免费全集观看| 成人午夜在线播放| 亚洲成av人片在www色猫咪| 日韩三级在线观看| 97久久精品人人做人人爽50路| 亚洲福利视频一区二区| 精品播放一区二区| 91视频国产资源| 久久精品国产99国产精品| 国产精品色婷婷久久58| 欧美日韩一区二区欧美激情| 国内精品久久久久影院色| 亚洲色图都市小说| 91精品国产全国免费观看| 成人动漫中文字幕| 免费高清在线视频一区·| 中文字幕在线观看不卡视频| 51午夜精品国产| 91麻豆国产福利精品| 久久99国产精品久久99果冻传媒| 中文字幕一区三区| 日韩女优av电影在线观看| 色婷婷久久99综合精品jk白丝| 精品一区二区在线播放| 亚洲一区二区三区视频在线| 国产亚洲欧美日韩日本| 4438成人网| 欧美视频中文字幕| av不卡在线观看| 国产在线精品免费av| 婷婷国产v国产偷v亚洲高清| 日韩美女啊v在线免费观看| 日韩精品一区二区三区中文精品| 在线国产电影不卡| 91在线视频免费观看| 国产精品综合av一区二区国产馆| 视频一区二区欧美| 亚洲综合另类小说| 亚洲欧洲av在线| 欧美激情自拍偷拍| 久久日韩精品一区二区五区| 91精品国产综合久久久蜜臀图片 | 男女性色大片免费观看一区二区| 亚洲欧美aⅴ...| 日韩一区中文字幕| 国产精品久久久久久久岛一牛影视| 精品日韩一区二区三区免费视频| 欧美日韩国产123区| 在线免费不卡电影| 99久久精品免费观看| caoporm超碰国产精品| 成人永久免费视频| 成人黄色在线网站| 国产iv一区二区三区| 国产v综合v亚洲欧| 国产成人精品一区二| 高清在线不卡av| 成人免费视频app| 不卡欧美aaaaa| 色域天天综合网| 欧美色精品在线视频| 欧美精品色一区二区三区| 91精品视频网| www激情久久| 欧美国产精品专区| 日韩一区有码在线| 亚洲一区av在线| 日本美女一区二区三区| 韩国精品在线观看| 成人午夜碰碰视频| 色系网站成人免费| 9191精品国产综合久久久久久| 欧美精品777| 337p粉嫩大胆噜噜噜噜噜91av| 国产日韩欧美精品一区| 国产欧美日韩中文久久| 中文字幕日韩av资源站| 亚洲综合免费观看高清完整版在线 | 丝瓜av网站精品一区二区| 日韩**一区毛片| 国产电影一区在线| 一道本成人在线| 日韩欧美一二三四区| 亚洲国产精品传媒在线观看| 亚洲精品欧美激情| 乱一区二区av| 99视频一区二区| 欧美日韩国产另类不卡| 欧美精品一区二区三| 综合激情成人伊人| 免费在线看成人av| 成人av资源在线| 制服.丝袜.亚洲.另类.中文| 国产亚洲综合在线| 亚洲一区二区三区四区五区中文| 免费久久精品视频| 91在线视频免费91| 精品国产sm最大网站免费看| 亚洲人成伊人成综合网小说| 另类小说色综合网站| 色噜噜狠狠色综合欧洲selulu| 精品久久久久久亚洲综合网| 亚洲精品第一国产综合野| 韩国午夜理伦三级不卡影院| 色婷婷亚洲综合| 国产亚洲欧美日韩在线一区| 石原莉奈在线亚洲三区| 成人h动漫精品一区二| 日韩精品一区二区三区在线观看| 亚洲精品高清视频在线观看| 粉嫩aⅴ一区二区三区四区 | 91丨porny丨国产入口| 亚洲精品一区二区三区蜜桃下载| 亚洲欧洲制服丝袜| 国产成人三级在线观看| 91精品国产欧美一区二区成人 | 欧美视频日韩视频在线观看| 亚洲国产精品二十页| 韩国精品主播一区二区在线观看| 欧美人妖巨大在线| 一区二区三区丝袜| 99久久精品国产毛片| 久久精品视频一区二区三区| 美女视频黄久久| 欧美一卡2卡三卡4卡5免费| 一区二区三区四区视频精品免费 | 一区二区中文视频| 国产成人免费xxxxxxxx| 精品国产成人在线影院| 日日夜夜免费精品| 欧美日韩免费电影| 亚洲国产sm捆绑调教视频 | 色综合天天性综合| 最新国产の精品合集bt伙计| 国产成人免费视频精品含羞草妖精| 欧美xingq一区二区| 老司机一区二区| 精品国产凹凸成av人导航| 极品美女销魂一区二区三区免费|