Оценка и прогнозирование приформовываемости верха обуви к стопе
Дипломная работа - Разное
Другие дипломы по предмету Разное
?ормации
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