Оценка и прогнозирование приформовываемости верха обуви к стопе

Дипломная работа - Разное

Другие дипломы по предмету Разное



?ормации

ln_bP(i) = Log(bP(i))

bTT(i) = bT(i) * bT(i)

Next

For i = 0 To bN(j) - 1 'раiитали произведения времени на лог. деформации

bTlnP(i) = bT(i) * ln_bP(i)

Next

'готовимся к раiету сумм (времен, логарифмов деформации, квадратов времен, произведений времени на лог. деформации)

SbT = 0

Sln_bP = 0

SbTT = 0

SbTlnP = 0i = 0 To bN(j) - 1 'суммируем

SbT = SbT + bT(i)

Sln_bP = Sln_bP + ln_bP(i)

SbTT = SbTT + bTT(i)

SbTlnP = SbTlnP + bTlnP(i)

Next

'раiитываем коэффициенты и находим искомые параметры

bL = (bN(j) * SbTlnP - SbT * Sln_bP) / (bN(j) * SbTT - SbT * SbT)

bH = (Sln_bP - SbT * bL) / bN(j)

Nagr_bTeta(j) = -bL

Nagr_bE(j) = Exp(bH)SubSub calculateIfFlag1_Rel(j As Integer)

Dim i As Integer

'готовим промежуточные значения для использования метода наименьших квадратов

For i = 0 To aNR(j) - 1 'раiитали логарифмы деформации

ln_aP(i) = Log(aP(i))

aTT(i) = aT(i) * aT(i)

Next

For i = 0 To aNR(j) - 1 'раiитали произведения времени на лог. деформации

aTlnP(i) = aT(i) * ln_aP(i)

Next

'готовимся к раiету сумм (времен, логарифмов деформации, 'квадратов времен, произведений времени на лог. деформации)

SaT = 0

Sln_aP = 0

SaTT = 0

SaTlnP = 0

For i = 0 To aNR(j) - 1 'суммируем

SaT = SaT + aT(i)

Sln_aP = Sln_aP + ln_aP(i)

SaTT = SaTT + aTT(i)

SaTlnP = SaTlnP + aTlnP(i)

Next

'раiитываем коэффициенты и находим искомые параметры

aL = (aNR(j) * SaTlnP - SaT * Sln_aP) / (aNR(j) * SaTT - SaT * SaT)

aH = (Sln_aP - SaT * aL) / aNR(j)

Rel_aTeta(j) = -aL

Rel_aE(j) = Exp(aH)

''готовимся к сравнению экспер. и теоретич. значений

Rel_abcN(j) = aNR(j) + bNR(j) + cNR(j) 'поiитали общее количество точекi = 0 To aNR(j) - 1 'заполнил массивы экспер.значений деформации времен от начальн. периода

Rel_abcP(j, i) = aaPeR(j, i)

'Rel_abcT(j, i) = aaT(j, i)

Next

For i = aNR(j) To aNR(j) + bNR(j) - 1 'заполнили массивы экспер.значений деформации времен от среднего периода

Rel_abcP(j, i) = bbPeR(j, i - aNR(j))

'Rel_abcT(j, i) = bbT(j, i - aNr(j))

Next

For i = aNR(j) + bNR(j) To aNR(j) + bNR(j) + cNR(j) - 1 'заполнили массивы экспер.значений деформации времен от конечного периода

Rel_abcP(j, i) = cPR(j, i - aNR(j) - bNR(j))

'Rel_abcT(j, i) = cT(j, i - aNr(j) - bNr(j))

Next

For i = 0 To Rel_abcN(j) - 1 'заполняем массив теоретич.значений

RP_(j, i) = divideExp(Rel_aE(j), Rel_aTeta(j) * Rel_abcT(j, i)) + divideExp(Rel_bE(j), Rel_bTeta(j) * Rel_abcT(j, i)) + divideExp(Rel_cE(j), Rel_cTeta(j) * Rel_abcT(j, i))

NextSubSub calculateIfFlag2_Rel(j As Integer)

Dim i As Integer

'готовим промежуточные значения для использования метода наименьших квадратов

For i = 0 To bNR(j) - 1 'раiитали логарифмы деформации

ln_bP(i) = Log(bP(i))

bTT(i) = bT(i) * bT(i)

Next

For i = 0 To bNR(j) - 1 'раiитали произведения времени на лог. деформации

bTlnP(i) = bT(i) * ln_bP(i)

Next

'готовимся к раiету сумм (времен, логарифмов деформации, 'квадратов времен, произведений времени на лог. деформации)

SbT = 0

Sln_bP = 0

SbTT = 0

SbTlnP = 0

For i = 0 To bNR(j) - 1 'суммируем

SbT = SbT + bT(i)

Sln_bP = Sln_bP + ln_bP(i)

SbTT = SbTT + bTT(i)

SbTlnP = SbTlnP + bTlnP(i)

Next

'раiитываем коэффициенты и находим искомые параметры

bL = (bNR(j) * SbTlnP - SbT * Sln_bP) / (bNR(j) * SbTT - SbT * SbT)

bH = (Sln_bP - SbT * bL) / bNR(j)

Rel_bTeta(j) = -bL

Rel_bE(j) = Exp(bH)SubSub setCmdEnabled(value As Boolean)

cmd_Graf.Enabled = value

cmd_Grafik.Enabled = value

cmd_Prosm.Enabled = value

cmd_Sravn.Enabled = value

cmd_PfromT.Enabled = valueSubSub stageCalculate(nTest As Integer, nStage As Integer, phase As Integer, j As Integer, arr_aN() As Byte, arr_aaT() As Double, arr_aaPe() As Single)

Dim i As Integer_aN(j) = stageCount(nTest, nStage, phase) '

DataExe2.RecordSource = stageSelect(nTest, nStage, phase) 'нужно изменить параметры

DataExe2.Refresh

If Not DataExe2.Recordset.EOF Then

DataExe2.Recordset.MoveFirst

i = 0

Do While Not DataExe2.Recordset.EOF

arr_aaT(j, i) = DataExe2.Recordset![TRel_Texp]

arr_aaPe(j, i) = DataExe2.Recordset![TRel_Pexp]

DataExe2.Recordset.MoveNext

i = i + 1

Loop

End IfSub

'Функция выделения записей (N_Stest)в таблице T_Stest

Private Function StestSelect() As String

StestSelect = "Select TSel_Ntest From T_SelTest "

End Function

'Функция выделения записей (N_zap, T_Texp, T_Pexp) в таблице D_expRel для заданных номера опыта и стадии

'Public Function stageSelect(nTest As Integer, stage As Integer, phase As Integer) As String

' stageSelect = "Select TRel_Nzap, TRel_Texp, TRel_Pexp From D_expRel Where TRel_Ntest = " & nTest & " and TRel_Stage = " & stage & " and TRel_Phase = " & phase

'End Function

'Функция выделения записей (N_zap, T_Texp, T_Pexp) в таблице D_exp для заданных номера опыта и стадии

'Private Function stageSelect(nTest As Integer, nStage As Integer) As String

'stageSelect = "Select N_zap, T_Texp, T_Pexp From D_exp Where T_test = " & nTest & " and T_Stage = " & nStage

'End Function

'Функция определения количества опытов, отобранных для вывода на график

'нужна для организации вывода данных (деформация, время) в массив

Private Function StestCount() As Integer

Dim sql

sql = "Select Count(*) As StestCount From T_SelTest"

DataExecute.RecordSource = sql

DataExecute.Refresh

StestCount = DataExecute.Recordset![StestCount]

End Function

'Функция определения количества записей в заданной стадии заданного опыта

'нужна для организации вывода данных в массив

Private Function stageCount(nTest As Integer, nStage As Integer, phase As Integer) As Integer

Dim sql

sql = "Select Count(*) As StageCount From D_expRel Where TRel_Ntest = " & nTest & " and TRel_Stage = " & nStage & " and TRel_Phase = " & phase

DataExecute.RecordSource = sql

DataExecute.Refresh

stageCount = DataExecute.Recordset![stageCount]FunctionSub Cmd_add_Click()

If Not DataTest.Recordset.EOF Then

Dim sql As String

sql = "Insert Into T_SelTest (TSel_Ntest) values ( " & DataTest.Recordset![M_Ntest] & ")"

DataExecute.Database.Execute sql

End If

DataSelTest.Refresh

setCmdEnabled FalseSubSub Cmd_del_Click()

Dim sql

sql = "Delete From T_SelTest Where TSel_Ntest = " & DataSelTest.Recordset![TSel_Ntest]

DataExecute.Database.Execute sql

DataSelTest.Refresh

DataExe1.Refresh

DataExe2.Refresh

setCmdEnabled False

'cmd_Usred.Enabled = FalseSubSub cmd_Graf_Click()_GrNagrRel.Show_Grafik = False_Razryv_T1 = txt_T_1.Text_Razryv_T2 = txt_T_2.Text_T_Razryv = Nagr_Razryv_T2 - Nagr_Razryv_T1_Razryv_T1 = txt_T_3.Text_Razryv_T2 = txt_T_4.Text_T_Razryv = Rel_Razryv_T2 - Rel_Razryv_T1SubSub cmd_Grafik_Click()

'Nagr_N_nabU = 0 'Количество наборов опытов для усреднения

Fl_Grafik = True_Razryv_T1 = txt_T_1.Text_Razryv_T2 = txt_T_2.Text_T_Razryv = Nagr_Razryv_T2 - Nagr_Razryv_T1_Razryv_T1 = txt_T_3.Text_Razryv_T2 = txt_T_4.Text_T_Razryv = Rel_Razryv_T2 - Rel_Razryv_T1_GrNagrRel.ShowSubSub cmd_PfromT_Click()Vybor_Sravn = NAGRUZ_Sravn Then_tek = txt_TforP

If T_tek > 0 Then

P_tek = Pe_limit(Nop) - (divideExp(Nagr_aE(Nop), Nagr_aTeta(Nop) * T_tek) _

+ divideExp(Nagr_bE(Nop), Nagr_bTeta(Nop) * T_tek) _

+ divideExp(Nagr_cE(Nop), Nagr_cTeta(Nop) * T_tek))

txt_PfromT.Text = Format(P_tek, "##.000")

End IfIfVybor_Sravn = RELAX_Sravn Then_tek = txt_T