Gleichung lösen für vorgegebenen Wert

Wie rufe ich R-Funktionen auf, wie selektiere ich Daten, ich weiß nicht genau ....

Moderatoren: EDi, jogo

Antworten
sadikoner

Gleichung lösen für vorgegebenen Wert

Beitrag von sadikoner »

Guten Tag alle zusammen,

ich habe eine Funktion für eine Spannungsberechnung aus mehreren Funktionen in Abhängigkeit von der Höhe definiert.
Nun würde ich gerne diese Gleichung, in dem Fall Sigma_crit1(h), für eine gewisse Spannung gelöst haben. Also die Höhe bei der sich eine Spannung von 4.267 kN/cm^2 einstellt.
Hier mal ein kleines Beispiel :

Code: Alles auswählen

########### Variablen ###################
h <- 15
b <- 15 #cm
E <- (2/3)*1100 #kN/cm^2
G <- (2/3)*69   #kN/cm^2
lef <- 450
########### Querschnittswerte in Abhängigkeit von h ###############
I_z <- function(h) ((b^3)*h)/12
v <- h/b
Beiwert <- function(n,h) (1/(2*n+1))*(tanh(((2*n+1)*(pi/2)*(h/b))))
alpha_t <- function(h) (1/3)-(64/(pi^5*(h/b)))*Beiwert(0,h)
print(alpha_t)
I_t <- function(h) alpha_t(h)*h*b^3
w_y <- function(h) ((h^2)*b)/6
############ Spannungsberechnung ######################
############ genaues Verfahren  ######################
Sigma_crit1 <- function(h) pi*sqrt(E*(I_z(h)*G*I_t(h)))/(lef*(w_y(h)))
########### vereinfachtes Verfahren ##################
Sigma_crit2 <- function(h) 0.78*b^2*E/(h*lef)
########### Differenz der Verfahren  #################
Sigma_crit_diff <-function(h) Sigma_crit2(h)-Sigma_crit1(h)
########### Darstellung ################
curve(Sigma_crit1,10,100,100, col="red")
abline(h=4.267, col="pink")
curve(Sigma_crit2,h,10*h,100, add=TRUE,col="green")

curve(Sigma_crit_diff,h,10*h,100, add=FALSE,col="blue")
abline(v=26.5, col="pink")
Danke im vorraus für eure Hilfe.
Grüße
jogo
Beiträge: 2085
Registriert: Fr Okt 07, 2016 8:25 am

Re: Gleichung lösen für vorgegebenen Wert

Beitrag von jogo »

Hallo Sadikoner,

willkommen im Forum!
Du kannst z.B. uniroot() verwenden:

Code: Alles auswählen

uniroot(function(h) 4.267 - Sigma_crit1(h), c(40,80))
Gruß, Jörg
sadikoner

Re: Gleichung lösen für vorgegebenen Wert

Beitrag von sadikoner »

Vielen Dank für die schnelle Hilfe. Da wäre ich mit der Dokumentation nicht drauf gekommen.

Grüße
Antworten