|
|
|
|
| Zitat von Achsel-des-Bösen
E-Techniker die eher theoretische Informatik Sachen machen
| |
Das kommt ganz drauf an, auf welcher Stufe sowas passiert. Je nach dem muss das gar nicht so falsch sein. Aber prinzipiell bin ich deiner Meinung. Nur bringt es allgemein wenig zu probieren sehr spezifische Sachen wie auch IT-Sec aus dem Master in ein Grundstudium zu drängen. Da fehlen einfach am Ende viele Grundlagen.
|
|
|
|
|
|
|
Das ist wohl das größte Problem, der Vorteil an der Einführung von Bachelor und Master wird hier konsequent in den Wind geschrieben. :/
|
|
|
|
|
|
|
Ich will zeigen:
(1) B nicht monoton auf (a,b)
Ich komme weiter mit:
(2) B nicht monoton auf (a,b)
Um meine Eigenschaft auf (a,b) um Nullmengen auf [a,b] zu erweitern und durch die unbeschränkte Variation auf [a,b] keine Monotonie auf [a,b] zu folgern. (Ich glaube für diesen Schritt brauche ich das abgeschlossene Intervall, will ja die Variation falls es Monotonie gäbe mit |B(b)-B(a)| abschätzen).
Aber wie komme ich von(1) auf (2)?
Ich hab Probleme mir den Unterschied klar zu machen, ist (1) etwas größer als (2), da ich noch Nullmengen in der Intervallbildung erlaube? Dann ja irgendwie heuristisch darüber, dass B stetig ist (Brownsche Bewegung) und somit Nullmengen der Intervallbildung eh für die Eigenschaft egal sind oder so...
Das wurde jetzt auch beim Aufschreiben nicht klarer. :/
|
|
|
|
|
|
|
Es ist mir schleierhaft, wie ich dieses Studium geschafft habe. Ich sitze grad MIT MUSTERLÖSUNG an einem QM1 (EINS!!!) Zettel und es ist die Hölle!
Ich kann gut verstehen, dass sich die ganzen Studis beschweren.
|
|
|
|
|
|
|
Was ist denn das genaue Problem? Vielleicht...
|
|
|
|
|
|
|
Heyo! Ihr könnt mir sicher helfen!
Ich bin auf der Suche nach einer (idealerweise unendlich oft stetig differenzierbaren) Funktion, für die gilt:
|
Code: |
f(0) = 0, f(1) = 1
f'(0) = 0, f'(1) = 1
f''(0) = 0, f''(1) = 0
f'''(0) = 0, f''(1) = 0
...
|
|
Also eine Funktion, die fast eine Sigmoid-Funktion ist, mit der kleinen Einschränkung dass f'(1) = 1 . Ich habe leider keine tolle Eingebung.
Alles außerhalb vom Intervall [0, 1] ist egal.
Bonuspunkte gibts für coole und schnell berechenbare Funktionen.
Benutzt werden soll das für Bewegungen auf einer (dreidimensionalen) Kurve.
|
|
|
|
|
|
|
x²/2+1/2?
|
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von Wraith of Seth am 05.06.2013 18:31]
|
|
|
|
|
|
| Zitat von Wraith of Seth
x²/2+1/2?
| |
f(0) = 0?
Mein Mathestudium ist zu lang her
|
|
|
|
|
|
|
| Zitat von [smith]
| Zitat von Wraith of Seth
x²/2+1/2?
| |
f(0) = 0?
Mein Mathestudium ist zu lang her ![traurig](./img/smilies/icon12.gif)
| |
Hättest du nicht ein paar Minuten warten können?
|
|
|
|
|
|
|
| Zitat von Irdorath
Ich will zeigen:
(1) B nicht monoton auf (a,b)
Ich komme weiter mit:
(2) B nicht monoton auf (a,b)
Um meine Eigenschaft auf (a,b) um Nullmengen auf [a,b] zu erweitern und durch die unbeschränkte Variation auf [a,b] keine Monotonie auf [a,b] zu folgern. (Ich glaube für diesen Schritt brauche ich das abgeschlossene Intervall, will ja die Variation falls es Monotonie gäbe mit |B(b)-B(a)| abschätzen).
Aber wie komme ich von(1) auf (2)?
Ich hab Probleme mir den Unterschied klar zu machen, ist (1) etwas größer als (2), da ich noch Nullmengen in der Intervallbildung erlaube? Dann ja irgendwie heuristisch darüber, dass B stetig ist (Brownsche Bewegung) und somit Nullmengen der Intervallbildung eh für die Eigenschaft egal sind oder so...
Das wurde jetzt auch beim Aufschreiben nicht klarer. :/
| |
Das ist auch sehr konfus aufgeschrieben... was meinst Du zum Beispiel mit "Nullmengen auf [a,b]"?
Willst Du einfach nur zeigen? Das geht schnell:
Nach (1) gibt es eine Menge M mit Maß 1, so dass für alle Realisierungen von B aus M gilt: B ist auf jedem Intervall nichtmonoton. Somit ist dieses M für jedes Intervall eine Maß-1-Menge, deren Realisierungen auf dem Intervall nichtmonoton sind...
Das hat btw nichts mit Wahrscheinlichkeitstheorie zu tun, sondern ist bloß Prädikatenlogik. Für Mengen X,Y und ein Prädikat P gilt:
|
|
|
|
|
|
|
Ich glaube, er will dabei in (2) auch das geschlossene Intervall haben.
...It's not my fault I'm a delicate flower.
|
|
|
|
|
|
|
Wenn eine Funktion auf (a,b) nichtmonoton ist, dann wird sie auf einer größeren Menge nicht plötzlich monoton sein...
|
|
|
|
|
|
|
Äh, ja... ...vielleicht auch umgekehrt.![Breites Grinsen](img/smilies/biggrin.gif)
Yes Boo, I agree. This group could do with a swift kick in the morals.
|
|
|
|
|
|
Verteilte Systeme - Server Absturz?!
|
Moin zusammen!
Folgendes verteiltes System liegt vor:
mehrere Clients, die die aktuelle Zeit wissen wollen
mehrere Zeitserver, die die aktuelle Zeit kennen und sich beim Start beim Registry-Server registrieren
Registry-Server, der die Zeitserver kennt und an den Client weiterleitet nach Anfrage
![](http://i.imgur.com/3KkGfGk.png)
So. Das Problem ist, was mach ich, wenn ein Zeitserver abstürzt? (Registry-Server kann nicht abstürzen!). Wer stellt fest, ob der Zeitserver nicht verfügbar ist?
1. Idee: Der Client könnte dem Zeitserver 5-6 mal die gleiche Anfrage stellen und wenn er dann kann eine Antwort erhält, den Zeitserver als "tot" markieren und dies an den Registry-Server weiterleiten, der ihn dann aus der Liste schmeisst.
2. Idee: Die Zeitserver schicken immer wieder eine Art Ping an den Registry-Server "hallo, ich bin noch da". Wenn der Registry-Server nichts mehr von einem Zeitserver hört, teilt er ihm mit, dass er sich neu melden soll und schmeisst ihn bei nicht Antwort aus der Liste.
3. Idee(ähnlich wie 2): Der Registry-Server sendet einen Broadcast an alle Zeitserver. Von denen er keine Antwort erhält, schmeisst er raus.
Oder eine Kombination aus 2+3? Problem ist halt, dass Antworten verloren gehen oder verzögert werden können in der Netzwerk-Simulation.
Wer ne Idee/Tipps/Anmerkungen? Danke im Voraus.
|
[Dieser Beitrag wurde 5 mal editiert; zum letzten Mal von Gepan.3dsvs.com am 05.06.2013 21:49]
|
|
|
|
|
|
Idee 1 verursacht am wenigsten Traffic, kann aber leicht manipuliert werden seitens der Clients.
Ideen 2/3 verursachen zwar konstant Traffic für die Heartbeats, kann aber von Clients nicht manipuliert werden.
|
|
|
|
|
|
|
Was meinst du mit manipuliert? Die Clients sind friedfertige Menschen, wenn du das meinst. Also Idee1 am besten? Das Problem, was ich damit hatte: es KÖNNTE ja sein, dass alle Anfragen des Clients verloren gehen, aber der Zeitserver noch lebt. Dann würde der Client dennoch dem Registry-Server mitteilen, dass der Zeitserver unerreichbar sei. Also müsste ich zusätzlich noch einen Heartbeat seitens des Zeitservers einbauen?
Danke dir schonmal.
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Gepan.3dsvs.com am 05.06.2013 22:02]
|
|
|
|
|
|
Also erstmal ist die annahme, das der Zeitserver nicht unerreichbar sein kann ziemlich unmöglich zu realisieren, aber ich nehme an das ist die Aufgabenstellung ![Augenzwinkern](img/smilies/wink.gif)
Variante 1 ist sicher naheleigend, hat aber gleich zwei Nachteile:
- wenn längere Zeit keine Clients Anfragen haben kann ein Ausfall eines Zeitservers unter Umständen sehr lange unbemerkt bleiben
- wenn die Clients es der Registry melden, muss der Server entweder den Clients vertrauen (sonst kann man das Netzwerk mit einem manipulierten Client wunderbar down bringen) oder jedes mal nachprüfen (dann hast du Variante 3.
Variante 3 beruht auf der Annahme das du Broadcasts senden kannst - kannst du dsa garantieren? Außerem erfordert es recht viel Logik im Registryserver, daher würde ich zu Variante 2 tendieren. Die Registry ist dabei extrem Simpel und muss nur alle paar Minuten checken wann sie den letzten Ping bekommen hat und in diesem Fall den Server einfach entfernen bis er sich neu registriert. Die Hauptlogik liegt dabei im Zeitserer, aber da muss ja eh noch andere Logik rein um die Zeitanfragen zu benatowrten. Aber eigentlich sind 2 und 3 ziemlich gleich
|
|
|
|
|
|
|
Ah, alle Clients sind lieb und knuddelig.
Dann würde ich Option 1 wählen und die Registry selber nochmal nachprüfen lassen. Die Registry könnte vorsichtshalber den Zeitserver aus der Liste nehmen, bis die Registry den fraglichen Zeitserver wieder erreichen kann.
|
|
|
|
|
|
|
| Zitat von Gepan.3dsvs.com
Was meinst du mit manipuliert? Die Clients sind friedfertige Menschen, wenn du das meinst. ![peinlich/erstaunt](img/smilies/icon16.gif)
| |
Nein. Serverregel 1: Alle Daten die du bekommst und die nicht kryptographisch gesichert sind, sind potentiell manipuliert und nicht vertrauenswürdig.
|
|
|
|
|
|
|
Stichwort All Input Is EVIL.
…naja nicht alles. Wenn z.B. Daten aus einer sole access DB kommen, sind sie ja bereits geprüft. Hah, dann ist es keine Eingabe mehr!
|
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von csde_rats am 05.06.2013 22:10]
|
|
|
|
|
|
Super! Vielen lieben Dank euch zwei!
|
|
|
|
|
|
|
1) Würde ich auch deshalb auf keinen Fall machen, weil du damit die Korrektheit der Serverlandschaft von Clients abhängig machst. Auch wenn die Clients super-lieb sind ist das einfach hässlich. Du solltest immer einen klaren Schnitt zwischen Client- und Serverland ziehen können, der die Integrität der Serverseite nicht beeinflusst. Sprich, der Zustand muss zu jedem Zeitpunkt valide sein auch wenn gar keine Clients da sind. Und ob du dann lieber 2 oder 3 (also im Prinzip keep-alive push oder pull) machst ist halt Geschmackssache.
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Rufus am 05.06.2013 22:40]
|
|
|
|
|
|
| Zitat von Virtus
Wenn eine Funktion auf (a,b) nichtmonoton ist, dann wird sie auf einer größeren Menge nicht plötzlich monoton sein...
| |
Aber sie ist auf der größeren Menge nicht-monoton, ich will zeigen, dass sie es auch auf (a,b) nicht ist. Und ich denke dafür brauch ich P-f.s. an anderer Stelle, da [a,b] und (a,b) sich ja nur um eine Nullmenge unterscheiden.
Aber dein Argument könnte ich wohl einfach auf [a+eps, b-eps] anwenden, was ich dann auf (a,b) vergrößere...
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Irdorath am 06.06.2013 9:01]
|
|
|
|
|
|
|
Code: |
In[20]:= eValues = {0, 0.1, 0.3, 0.9, 1.5};
In[21]:= kValues = Table[FindRoot[Cot[x]*x + e, {x, Pi/2}], {e, eValues}];
In[30]:= kValues
Out[30]= {{x -> 1.5708}, {x -> 1.63199}, {x -> 1.7414}, {x -> 1.99465}, {x -> 2.17463}} |
|
Ich würde gerne sozusagen kValues[0.3] extrahieren, also auf den Wert 1.7414 zugreifen. Wie kriege ich das in Mathematica hin?
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Oli am 06.06.2013 11:27]
|
|
|
|
|
|
Örgs... kValues[[3]] oder so? Mathematica ist lange her. Anderer Rechner fährt gleich hoch, dann kann ich's dir genau sagen.
|
|
|
|
|
|
|
kValues[[3]][[1]][[2]]
|
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von NRG_Mash am 06.06.2013 11:37]
|
|
|
|
|
|
... ok, ich hätte als nächstes kValues[[3]][[2]] probiert.
Widerlichste Syntax aller Zeiten.
|
|
|
|
|
|
|
| Zitat von nobody
... ok, ich hätte als nächstes kValues[[3]][[2]] probiert.
Widerlichste Syntax aller Zeiten. ![Breites Grinsen](img/smilies/biggrin.gif)
| |
Zur Erklärung:
Bei Mathematica basiert alles auf expressions, die ineinander geschachtelt sind. Bei FindRoot/Solve/NSolve etc. ist das eine geschachtelte expression der Form List[List[Rule[x,1.7543]],...]
deswegen braucht man noch den [[1]] in der Mitte, da es das erste Element der inneren Liste ist
|
|
|
|
|
|
|
Ja und wenn ich statt des Indices den e Wert nutzen will?
|
|
|
|
|
|
|
| Zitat von Oli
Ja und wenn ich statt des Indices den e Wert nutzen will? ![peinlich/erstaunt](img/smilies/icon16.gif)
| |
Meine Idee:
|
Code: |
In[7]:= kValues = NSolve[x^4 - 1 == 0, x]
Out[7]= {{x -> -1.}, {x -> 0. - 1. I}, {x -> 0. + 1. I}, {x -> 1.}}
In[12]:= eValues = {0.1, 0.2, 3.1, 5.3}
Out[12]= {0.1, 0.2, 3.1, 5.3}
In[8]:= pw[x_] :=
Piecewise[
Table[{kValues[[i]][[1]][[2]], x == eValues[[i]]}, {i, 1,
Length[eValues]}]]
In[14]:= pw[0.2]
Out[14]= 0. - 1. I
|
|
beachte aber, dass pw für werte die nicht in eValues stehen Null zurückgibt
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von NRG_Mash am 06.06.2013 12:00]
|
|
|
|
|
Thema: pOT-lnformatik, Mathematik, Physik XIII ( Completely Automated Public User Test To tell PIMP ) |