Browse Source

ids kernel: handle 0.-value traces

master
mmetz 2 weeks ago
parent
commit
80b2957cbd
  1. 22
      src/idskernel.f

22
src/idskernel.f

@ -60,10 +60,6 @@ c
allwei=1.d0+osmsetwei+gnssetwei+sarsetwei
c
hvce=.true.
c
c allocate jter (smoothing)
c
jter=0
c
do isf=1,nsf
do i=1,nf
@ -168,14 +164,11 @@ c
dsmvar(j,ism)=dsmvar(j,ism)+cdabs(dsmobs(i,j,ism))**2
enddo
dsmvar(j,ism)=(1.d0-SDWEI)*dsmvar(j,ism)+SDWEI*smvar(j,ism)
if(dsmvar(j,ism).eq.0.d0)then
write(*,'(a,a,a,i4,a)')' weight for ',smcode(ism),
& ', component ',j,' is NAN. Check the waveforms!'
write(30,'(a,a,a,i4,a)')' weight for ',smcode(ism),
& ', component ',j,' is NAN. Check the waveforms!'
stop
if(dsmvar(j,ism).gt.0.d0)then
smwei(j,ism)=smwei0(j,ism)/dsmvar(j,ism)
else
smwei(j,ism)=0.d0
endif
smwei(j,ism)=smwei0(j,ism)/dsmvar(j,ism)
enddo
enddo
c
@ -195,7 +188,11 @@ c
do ism=1,nsm
if(nfpsv(ism).eq.0)then
do j=1,3
osmwei(j,ism)=smwei0(j,ism)*smvar(j,ism)/dsmvar(j,ism)
if(dsmvar(j,ism).gt.0.d0)then
osmwei(j,ism)=smwei0(j,ism)*smvar(j,ism)/dsmvar(j,ism)
else
osmwei(j,ism)=0.d0
endif
enddo
else
do j=1,3
@ -530,6 +527,7 @@ c
sigma=sigma+(sfslp(isf)-delta)**2
enddo
roughness=dsqrt(sigma)/slpm
jter=0
else
c
c eatimate slip roughness and start smoothing

Loading…
Cancel
Save