Exemple #1
0
        #   correspond to the selection criteria
        # - *alpha*, *corr_length* control the spatial smoothing term
        # - *beta*, *lambda_* control the weighted norm penalization term
        #
        # Note that if no value is given for some parameter, then the
        # inversion will use the default value defined in the configuration
        # file.
        #
        # (See doc of VelocityMap for a complete description of the input
        # arguments.)

        v = pstomo.VelocityMap(dispersion_curves=curves,
                               period=period,
                               verbose=False,
                               lonstep=lon_step,
                               latstep=lat_step,
                               minspectSNR=minspectSNR,
                               correlation_length=corr_length,
                               alpha=alpha,
                               beta=beta,
                               lambda_=lambda_)

        # creating a figure summing up the results of the inversion:
        # - 1st panel = map of velocities or velocity anomalies
        # - 2nd panel = map of interstation paths and path densities
        # - 3rd panel = resolution map
        #
        # See doc of VelocityMap.plot(), VelocityMap.plot_velocity(),
        # VelocityMap.plot_pathdensity(), VelocityMap.plot_resolution()
        # for a detailed description of the input arguments.

        title = (
            # - *beta*, *lambda_* control the weighted norm penalization term
            #
            # Note that if no value is given for some parameter, then the
            # inversion will use the default value defined in the configuration
            # file.
            #
            # (See doc of VelocityMap for a complete description of the input
            # arguments.)

            try:
                v = pstomo.VelocityMap(dispersion_curves=curves,
                                       period=period,
                                       skipstations=SKIP_STATIONS,
                                       skippairs=skippairs,
                                       verbose=False,
                                       lonstep=GRID_STEPS[passnb],
                                       latstep=GRID_STEPS[passnb],
                                       minspectSNR=MINPECTSNRS[passnb],
                                       correlation_length=CORR_LENGTHS[passnb],
                                       alpha=ALPHAS[passnb],
                                       beta=BETAS[passnb],
                                       lambda_=LAMBDAS[passnb])
            except CannotPerformTomoInversion as err:
                print("Cannot perform tomo inversion: {}".format(err))
                for fig in periodfigs:
                    plt.close(fig)
                # next period
                break

            if passnb == 0:
                # pairs whose residual is > 3 times the std dev of
                # the residuals are rejected from the next pass