diff --git a/@BearImp/calcCap.m b/@BearImp/calcCap.m index 672d6ee1a3ae13176701993b051769fd0222a58a..144e93fc2779503034c65cf5684e47603ffbb120 100644 --- a/@BearImp/calcCap.m +++ b/@BearImp/calcCap.m @@ -90,6 +90,8 @@ for posBall_conductive=1:L.numberOfConductiveBalls if any(B.noContactInd,'all') % Wenn Kraftfreie Wälzkörper vorhanden switch method.unloadedRE case 'neglect' + case 'stateOfTheArt' + stateOfTheArt(find(contactInd==0)) case 'Leander_Parallel' leander_parallel(B.noContactInd) case 'Leander_Radial' @@ -113,6 +115,8 @@ for posBall_conductive=1:L.numberOfConductiveBalls case 'neglect' case 'k-factor' C.C_Hertz(:,contactInd,posBall_conductive) = C.k_C .* obj.epsilon_0 .* C.epsilon_primeOil(:,contactInd) .* temp_A(:,contactInd) ./ H.h_minth(:,contactInd); + case 'stateOfTheArt' + stateOfTheArt(find(contactInd==1)) case 'Leander_Parallel' leander_parallel(B.contactInd) case 'Leander_Radial' @@ -169,6 +173,19 @@ function calcZg C.g_2a = acos(L.B_a/(2*tempR_la)); end +function stateOfTheArt(indices) + y_max_i = @(x) G.R_y(1).*(1-x.^2./2./G.R_x(1).^2); + y_max_a = @(x) G.R_y(2).*(1-x.^2./2./G.R_x(2).^2); + for ii = indices + h_i = @(x,y) B.s(ii) + x.^2./2./G.R_x(1) + y.^2./2./G.R_y(1); + h_a = @(x,y) B.s(ii) + x.^2./2./G.R_x(2) + y.^2./2./G.R_y(2); + C.C_out(1,ii) = 4 * obj.epsilon_0 * S.epsilon_Oel * integral2(@(x,y) 1./h_i(x,y),temp_a(1,ii),G.R_x(1),temp_b(1,ii),y_max_i); + C.C_out(2,ii) = 4 * obj.epsilon_0 * S.epsilon_Oel * integral2(@(x,y) 1./h_a(x,y),temp_a(2,ii),G.R_x(2),temp_b(2,ii),y_max_a); + end +end + + + function leander_parallel(indices) C.R_hi = @(v) G.R_bi.*sqrt(1-(tempR_RE/G.R_bi.*cos(v)).^2); C.R_ha = @(v) G.R_ba.*sqrt(1-(tempR_RE/G.R_ba.*cos(v)).^2); diff --git a/possibleMethods.m b/possibleMethods.m index e34c17c0d200706d4beed3d41273e967f937cfe6..0e9c5caf6e76d8d68cae5b3df6ab0438cc41a793 100644 --- a/possibleMethods.m +++ b/possibleMethods.m @@ -23,8 +23,8 @@ classdef possibleMethods s = {'Hamrock/Dowson','Moes'}; end function s = C - s.unloadedRE = { 'neglect','Leander_Parallel','Leander_Radial','LeanderSteffen','TobiasSteffen_Kugelfläche','TobiasSteffen_Laufbahnfläche','semianalytisch3D'}; - s.outsideArea = {'k-factor','neglect','Leander_Parallel','Leander_Radial','LeanderSteffen','TobiasSteffen_Kugelfläche','TobiasSteffen_Laufbahnfläche','semianalytisch3D'}; + s.unloadedRE = { 'neglect','stateOfTheArt','Leander_Parallel','Leander_Radial','LeanderSteffen','TobiasSteffen_Kugelfläche','TobiasSteffen_Laufbahnfläche','semianalytisch3D'}; + s.outsideArea = {'k-factor','neglect','stateOfTheArt','Leander_Parallel','Leander_Radial','LeanderSteffen','TobiasSteffen_Kugelfläche','TobiasSteffen_Laufbahnfläche','semianalytisch3D'}; end function s = Default