Разделы презентаций


Определение Т пп (А с3 ) титанового сплава ( “β- transus ”) по данным

Содержание

Погружение в предметную область / - 1мРис. 1 Участок ДСК-кривой и кривой производной ДСК (по времени) непрерывного нагрева сплава Ti-6-4 (Тпп = 983 °С) со скоростью 50 °/минКрасивая картинка, но где Тпп ?Где-то здесь…

Слайды и текст этой презентации

Слайд 1Определение Тпп (Ас3) титанового сплава (“β-transus”) по данным ДСК/ДТА-исследования

Определение Тпп (Ас3) титанового сплава (“β-transus”) по данным ДСК/ДТА-исследования

Слайд 2Погружение в предметную область / - 1м
Рис. 1 Участок ДСК-кривой и

кривой производной ДСК (по времени) непрерывного нагрева сплава Ti-6-4 (Тпп

= 983 °С) со скоростью 50 °/мин

Красивая картинка, но где Тпп ?

Где-то здесь…

Погружение в предметную область / - 1мРис. 1 Участок ДСК-кривой и кривой производной ДСК (по времени) непрерывного нагрева

Слайд 3Погружение в предметную область / - 2 м
… оказывается, всё

связано!
Рис. 2 Зависимость величины температурной поправки от значения молибденового эквивалента
Тпп

= Тпм ± ∆Т
Погружение в предметную область / - 2 м… оказывается, всё связано!Рис. 2 Зависимость величины температурной поправки от

Слайд 4One more thing… © Steve Jobs
теория часто не выполняется на

практике


Рис. 3 Вид идеального эндотермического эффекта в DSC

One more thing… © Steve Jobsтеория часто не выполняется на практике …Рис. 3 Вид идеального эндотермического эффекта

Слайд 5… но жить приходится с практикой

… но жить приходится с практикой

Слайд 6Код, наконец-то код!
# -*- coding: utf8 -*-
 
# Импортирует NumPy и

MatPlotLib и прочие важные штуки
from __future__ import print_function
import numpy as np
import matplotlib.pyplot as plt
from matplotlib import rc
 
from Approximation import Approximation


### Включаем отображение кириллицы на графиках...
font = {'family': 'Verdana',
 

      'weight': 'normal'}
rc('font', **font)
 
Код, наконец-то код!# -*- coding: utf8 -*- # Импортирует NumPy и MatPlotLib и прочие важные штукиfrom __future__ import print_functionimport numpy as npimport matplotlib.pyplot as pltfrom matplotlib import rc from Approximation import Approximation### Включаем отображение

Слайд 7# Имя файла с данными по-умолчанию
exp_data_fname = u"C:\\Users\\kruft\\YandexDisk\\ExperimentsData\\STA\\STA_Data.csv”
 
try:
    # Пробуем спросить у

Юзера
    exp_data_fname = input(u"Введите путь до файла с данными DSC-эксперимента [%s]:

" % exp_data_fname)
except:
    pass

Входные данные – это важно!

# Имя файла с данными по-умолчаниюexp_data_fname = u

Слайд 8# Грузим данные
try:
    dsc_raw_data = np.loadtxt(exp_data_fname, skiprows=1)
except:
    # Произошло исключение (файла такого

нет?)
    print(u"Не удалось загрузить данные из %s" % exp_data_fname)
    exit(1)
try:
 

  exp_data_Mo_eq = float(str(input(u"Введите значение молибденового эквивалента сплава: ")).replace(',', '.', 1))
    print(u"\t указанное значение Mo_eq: %f" % exp_data_Mo_eq)
except:
    ### !!! TODO !!!
    exp_data_Mo_eq = 0.8
    print(u"Введено некорректное значение. Используется %f" % exp_data_Mo_eq)
    #exit(1)
# Грузим данныеtry:    dsc_raw_data = np.loadtxt(exp_data_fname, skiprows=1)except:    # Произошло исключение (файла такого нет?)    print(u

Слайд 9l_interpol_temp_range = [750, 850]
try:
    l_interpol_temp_range = input(
        u'Введите температурный интервал (через

пробел) для линейой интерполяции базовой линии, грС (%s):\n' %
     

  l_interpol_temp_range)
    # l_interpol_temp_range = (i for i in l_interpol_temp_range)
 
    print(u"Указанный интервал: %s" % l_interpol_temp_range)
except:
    print(u"Введено некорректные значения. Будет использован интервал [%s]" % l_interpol_temp_range)
 
print(u'Вы выбрали отрезок T1...T2: (%s) грС' % l_interpol_temp_range)
l_interpol_temp_range = [750, 850]try:    l_interpol_temp_range = input(        u'Введите температурный интервал (через пробел) для линейой интерполяции базовой линии, грС

Слайд 10# Определяет необходимую темп-ую поправку в зависимости от Мо_экв сплава
def DSCDataCorrection(Mo_eq):
 

  return 18  # Magic number :)
 
Функция
для определения необходимой темп-ой поправки
ЭТО
ПРОСТО
ПРИМЕР

# Определяет необходимую темп-ую поправку в зависимости от Мо_экв сплаваdef DSCDataCorrection(Mo_eq):    return 18  # Magic number :) Функциядля определения необходимой темп-ой

Слайд 11# Создаем _копию_ с температурами
t = dsc_raw_data[:, 0]
 
# Определяем параметры аппроксимирующей функции базовой

линии
fit_dsc_base_line = Approximation(t, dsc_raw_data[:, 3], 1)
 
''‘
Это тоже комментарий 
print(u"СКО - %f, коээфициенты - %s, значение

полинома в центре интервала - %f" % (fit_dsc_base_line.deviation,
                                                                                  fit_dsc_base_line.coefficients,
                                                                                  fit_dsc_base_line.function(
                                                                                      l_interpol_t2 - l_interpol_t1)
))
'''
 

Удобство – превыше всего!

# Создаем _копию_ с температурамиt = dsc_raw_data[:, 0] # Определяем параметры аппроксимирующей функции базовой линииfit_dsc_base_line = Approximation(t, dsc_raw_data[:, 3], 1) ''‘Это тоже комментарий print(u

Слайд 12
### Считаем интерполяционные значения
 
# Подход с массивом и списковым выражением
dsc_approx_data = [fit_dsc_base_line.function(t[i]) for i in xrange(0, t.size)]
 
#

Вычитаем расчетную базовую линию из экспериментальных данных. Векторизованый подход
dsc_corrected_data = dsc_raw_data[:, 3] - dsc_approx_data
 
#

Определяем численную производную ДСК (корр.) сигнала по температуре в каждой точке (векторизация)
ddsc_data = np.diff(dsc_corrected_data) / np.diff(t)
 
# Макс и мин значения производной
ddsc_max_v, ddsc_max_i = ddsc_data.max(), ddsc_data.argmax()
 
# Определяем бета-трансус
t_transus = t[ddsc_max_i] - DSCDataCorrection(exp_data_Mo_eq)
 
print(u"Тпп исследованного сплава: %i (поправка %f грС)" % (t_transus, DSCDataCorrection(exp_data_Mo_eq)))

Математика – царица всех наук. Доказано.

### Считаем интерполяционные значения # Подход с массивом и списковым выражениемdsc_approx_data = [fit_dsc_base_line.function(t[i]) for i in xrange(0, t.size)] # Вычитаем расчетную базовую линию из экспериментальных данных.

Слайд 13# Рисуем
fig, ax1 = plt.subplots()
ax1.plot(t, dsc_raw_data[:, 3], '--',
         t, dsc_approx_data, 'k:',
         t, dsc_corrected_data, 'k-')
 
ax1.set_ylabel(u'$DSC,

 мВ/мг$')

# Создаем вторую ось со своим масштабом
ax2 = ax1.twinx()
 
ax2.plot(t[1:], ddsc_data, 'r-')
ax2.set_xlabel(u'Температура, грС')
ax2.set_ylabel(u'Частная производная (корр.)

ДСК по температуре')
 
ax2.axvline(x=t_transus, color='g', ls='dashed')
ax2.annotate(
    u'$Т_{пп} сплава$',
    xy=(t_transus, ddsc_max_v),
    xytext=(t_transus + 5, ddsc_max_v * 1.02))

В цифрах не разобраться, покажите нам график!!!

# Рисуемfig, ax1 = plt.subplots()ax1.plot(t, dsc_raw_data[:, 3], '--',         t, dsc_approx_data, 'k:',         t, dsc_corrected_data, 'k-') ax1.set_ylabel(u'$DSC,  мВ/мг$')# Создаем вторую ось со своим масштабомax2 = ax1.twinx() ax2.plot(t[1:], ddsc_data, 'r-')ax2.set_xlabel(u'Температура,

Слайд 14# Украшаем
plt.title(u'ДСК-кривые сплава ВТ18У\n(скорость нагрева 50гр/мин)')
 
plt.legend([u"$Т_{пп} = T_{max ddsc} (%i)

- CONST(%i degC) = %i$" %
            (t[ddsc_data.argmax()],
 

           DSCDataCorrection(exp_data_Mo_eq),
             t_transus)],
           loc='upper left')  # положение легенды
 
 
# Показываем результат
plt.show()
# Украшаемplt.title(u'ДСК-кривые сплава ВТ18У\n(скорость нагрева 50гр/мин)') plt.legend([u

Слайд 15Просто, не правда ли ?
Спасибо, это всё! 


Вопросы, комментарии ?!?
mailto:d.v.gadeev@urfu.ru



Просто, не правда ли ?Спасибо, это всё! Вопросы, комментарии ?!?mailto:d.v.gadeev@urfu.ru

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика