Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- i = 1;
- q = 1;
- nconv = 10;
- epar = conv2((ex.*bx + ey.*by + ez.*bz)./sqrt(bx.^2+by.^2+bz.^2),ones(nconv,nconv)/nconv^2);
- phvals = {};
- while(i <= length(Cmat))
- contlen = Cmat(2,i);
- contvals = Cmat(:,(i+1):(i+contlen));
- eparvals = interp2(epar,contvals(1,:),contvals(2,:));
- bxvals = interp2(by,contvals(1,:),contvals(2,:));
- byvals = interp2(by,contvals(1,:),contvals(2,:));
- bzvals = interp2(by,contvals(1,:),contvals(2,:));
- if((prod(contvals(2,:) > 450) == 0 )&&(prod(contvals(2,:) < 450) == 0 ))
- if((min(contvals(1,:)) == 1) || (max(contvals(1,:)) == 1800))
- dxvals = contvals(1,2:end) - contvals(1:end-1);
- dzvals = contvals(2,2:end) - contvals(2:end-1);
- drvals = sqrt(dxvals.^2 + dzvals.^2);
- eivals = eparvals.*sqrt((byvals.^2+bxvals.^2+bzvals.^2)./(bxvals.^2+bzvals.^2));
- eint = (eivals(1:end-1) + eivals(2:end))/2;
- phpar = [0 cumsum(eint.*drvals)];
- else
- continue
- end
- print('hold up here')
- else
- dxvals = mod(diff([contvals(1,:) contvals(1,1)]),1800);
- dzvals = diff([contvals(2,:) contvals(2,1)]);
- dlvals = sqrt((dxvals.^2 + dzvals.^2).*(byvals.^2+bxvals.^2+bzvals.^2)./(bxvals.^2+bzvals.^2));
- if(prod((dxvals.*bxvals + dzvals.*bzvals) <= 0) == 1)
- ispar= -1;
- elseif(prod((dxvals.*bxvals + dzvals.*bzvals) >= 0) == 1)
- ispar= 1;
- else
- print('shit went wrong, yo')
- end
- eint = eparvals.*dlvals*ispar;
- phpar = cumsum(eint)-(eint+eint(1))/2;
- len = cumsum(dlvals) - (dlvals + dlvals(1))/2;
- phparmid = mean(phpar(contvals(1,:)==900));
- end
- phvals{q} = [contvals(1,:);contvals(2,:);phpar];
- q = q + 1;
- i = i + 1 + contlen;
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement