Beispiel #1
0
if __name__ == '__main__':
    initial_length = 22000
    glacier = Glacier(max_bed_height=3900, length=initial_length, slope=0.1)
    elas = [2900, 3100, 2800, 2700, 3000, 2800, 3400, 3300, 3200, 3500]
    time = np.arange(0, 501, step=1)
    lengths = []
    ela_index = 0
    time_delta = 1

    e_folding = 1 / math.e
    e_year = None
    e_length = None

    for year in time:
        lengths.append(glacier.length_over_time(time_delta, elas[ela_index]))
        glacier.length = lengths[-1]

        if 1 < year < 99 and (year % 10 == 9):
            ela_index += 1
        elif e_folding and (1 - (lengths[-1] / initial_length)) > e_folding:
            e_year = year
            e_length = lengths[-1]
            e_folding = None

    plt.figure(figsize=(12, 8))
    plt.plot(time, lengths)
    plt.scatter(e_year,
                e_length,
                marker='+',
                s=300,