Okay, så blev jeg det klogere.
Jo kan godt se at den udregner P for mig.
Men jeg tror måske du misforstår hvor det er jeg vil hen.
Nu kommer der nok meget læse stof....
Hvis jeg nu får en situation hvor jeg kun får oplyst P og I, så kan jeg jo ikke bruge denne metode. Hvis vi også siger at R=P/I^2 ikke var en kendt formel og at jeg skulle finde R udfra P og I, så ville jeg skulle starte med at finde U = P/U og bagefter finde R = U/I
Hele pointen i det jeg prøver at lave, er jo at jeg vil være næsten sikke på, at uanset hvilke oplysninger jeg får, så vil jeg kunne udregne alle data. (Ellers skulle komme med en fejlbesked)
I det jeg startede med at lave havde jeg:
4 spændinger (Un, Uf, Ur og Ux) der skulle ydre mere komme (Uxc, UN og UNf og dU)
3 impedanser (X, R og Z), igen manglede jeg (Xc).
3 strømme (I, Iw og Iwl) her manglede jeg (Im, Im0, Iw, Iw0, Iwl og Iwl0, Iny, Iwny og Iwlny) derud over havde jeg
3 effekter (P, Q og S) her manglede jeg bl.a. (P0, Pny, Q0, Qny, S0, Sny)
Jeg havde (cos(fi), fi, Sin(fi))
Der ud over manglede jeg (f, F, H, Ef, Efny og EF0)
Grunden til at jeg manglede alle de benævnelser var, at de ikke bare kunne regnes udfra 4-5 oplysninger. Mit problem var så at jeg fik scriptet til at køre i ring. Det vil sige hvis jeg skulle finde I, så gik den mine formler igennem fandt en mulighed hvor I var ukendt. Og så kan den af gode grunde ikke.
Her er et eksempel på hvad jeg gerne ville:
Jeg får oplyst Z, S, cos(fi) og Un, Im0.
Jeg vil gerne vide hvad min Im er.
Formlem for Im:
Im/Imo = Ef/Ef0 => Im = (Im0*Ef)/Ef0
Jeg har ikke Ef, så når jeg trykker på knappen beregn, skulle den gerne finde Ef først.
Vektor[Ef] = vektor[Uf]+Vektor[Ur]+Vektor[Ux]
Igen jeg har ikke Uf, Ur og Ux
Alt efter hvordan scriptet er opbygget, vil jeg nu få ca følgende udskrevet på siden:
Først vil jeg regne Uf ud:
Uf = Un/kvrod(3)
Så vil jeg finde R
R = Z*cos(fi)
Så vil jeg finde vinkel fi
Fi = cos^-1(fi)
Så vil jeg finde sinfi
sin(fi) = sin(fi)
Så vil jeg finde X
X = Z*sin(fi)
Først skal jeg regne I ud:
S = Un/(1*kvrod(3))
Så vil jeg finde Ur
Ur = R*I
Så vil jeg finde Ux
Ux = X*I
Så vil jeg finde Ef
vektor[Ef] = (Uf v 0)+(Ur v -fi)+(Ux v (90-fi))
Så vil jeg finde Ef0
Ef0 = Uf
Så vil jeg finde Im
Im = (Im0*Ef)/Efo
Det var der det gik galt for mig. Jeg kan sagtens lave Så jeg finder hver enkel, men det kræver bare at jeg hele tiden skal vælge hvad jeg nu vil, og så trykke beregn. Det hele kommer også an på hvad jeg får af oplysninger, det kunne ligeså godt ha været P, X istedet for S og Z. Eller S og I istedet for impedanser.
Planen med at include filerne i hinanden, var at hvis scriptet kom til et sted hvor det manglede fx I, så ville den tage I.php lede efter en mulighed, hvis der ikke var nogen ville den gå videre til næste formel, når den så fandt en formel den skulle bruge, ville den gemme tallet, udskrive formlen den brugte til at finde tallet, og til sidst komme med det ønskede resultat.
Okay, så blev jeg det klogere.
Jo kan godt se at den udregner P for mig.
Men jeg tror måske du misforstår hvor det er jeg vil hen.
Hvis jeg nu kun får en situation hvor jeg får oplyst P og I, så kan jeg jo ikke bruge denne metode. Hvis vi nu siger at R=P/I^2 ikke var en kendt formel. Og jeg skulle finde R udfra P og I.
Så ville jeg skulle starte med at finde U = P/U og bagefter finde R = U/I
Hele pointen i det jeg prøver at lave, er jo at jeg vil være næsten sikke på, at uanset hvilke oplysninger jeg får, så vil jeg kunne udregne alle data. (Eller komme med en fejlbesked)
I det jeg startede med at lave havde jeg:
4 spændinger (Un, Uf, Ur og Ux) der skulle ydre mere komme (Uxc, UN og UNf og dU)
3 impedanser (X, R og Z), igen manglede jeg (Xc).
3 strømme (I, Iw og Iwl) her manglede jeg (Im, Im0, Iw, Iw0, Iwl og Iwl0, Iny, Iwny og Iwlny) derud over havde jeg
3 effekter (P, Q og S) her manglede jeg bl.a. (P0, Pny, Q0, Qny, S0, Sny)
Jeg havde (cos(fi), fi, Sin(fi))
Der ud over manglede jeg (f, F, H, Ef, Efny og EF0)
Grunden til at jeg manglede alle de benævnelser var, at de ikke bare kunne regnes udfra 4-5 oplysninger. Mit problem var så at jeg fik scriptet til at køre i ring. Det vil sige hvis jeg skulle finde I, så gik den mine formler igennem fandt en mulighed hvor I var ukendt. Og så kan den af gode grunde ikke.
Her er et eksempel på hvad jeg gerne ville:
Jeg får oplyst Z, S, cos(fi) og Un, Im0.
Jeg vil gerne vide hvad min Im er.
Formlem for Im:
Im/Imo = Ef/Ef0 => Im = (Im0*Ef)/Ef0
Jeg har ikke Ef, så når jeg trykker på knappen beregn, skulle den gerne finde Ef først.
Vektor[Ef] = vektor[Uf]+Vektor[Ur]+Vektor[Ux]
Igen jeg har ikke Uf, Ur og Ux
Alt efter hvordan scriptet er opbygget, vil jeg nu få ca følgende udskrevet på siden:
Først vil jeg regne Uf ud:
Uf = Un/kvrod(3)
Så vil jeg finde R
R = Z*cos(fi)
Så vil jeg finde vinkel fi
Fi = cos^-1(fi)
Så vil jeg finde sinfi
sin(fi) = sin(fi)
Så vil jeg finde X
X = Z*sin(fi)
Først skal jeg regne I ud:
S = Un/(1*kvrod(3))
Så vil jeg finde Ur
Ur = R*I
Så vil jeg finde Ux
Ux = X*I
Så vil jeg finde Ef
vektor[Ef] = (Uf v 0)+(Ur v -fi)+(Ux v (90-fi))
Så vil jeg finde Ef0
Ef0 = Uf
Så vil jeg finde Im
Im = (Im0*Ef)/Efo
Det var der det gik galt for mig. Jeg kan sagtens lave Så jeg finder hver enkel, men det kræver bare at jeg hele tiden skal vælge hvad jeg nu vil, og så trykke beregn. Det hele kommer også an på hvad jeg får af oplysninger, det kunne ligeså godt ha været P, X istedet for S og Z. Eller S og I istedet for impedanser.
Planen med at include filerne i hinanden var at hvis jeg kom til et sted hvor jeg manglede fx Ur, så ville den tage Ur.php lede efter en mulighed, hvis der ikke var nogen ville den gå videre til næste formel, men jeg kan godt se at det ikke på nogen måde ville lykkes sådan som jeg gjorder.
Men hvis den havde fundet en metode, så ville den udregne, bagefter udskrive formlen og så ville den så regne videre og til sidst udskrive den endelig formel.
Men jeg kan godt se at det ikke på nogen måde ville lykkes sådan som jeg gjorde det. Den ville jo bare køre i loop og hvis den ikke fandt en metode, og derfor ikke komme med en fejlbesked.
Jeg kan sagtens lave det uden alt det automatik, men så skal man sidde og trykke sig igennem en masse muligheder manuelt baglæns i forløbet og det er pænt træls. Og koste mig rigtigt mange If-sætninger.