|
|
|
|
Bring die doch erst mal alle ganz normal auf einen Bruchstrich und dann guckst du, was man evtl. ausklammern/vereinfachen kann.
Beim Ersten springt einem z.B. (a-1) ins Auge.
|
|
|
|
|
|
|
Ich habe zwar auch kein Plan mehr von Mathe, aber der Spruch "man dividiert indem man mit dem Kehrbruch multipliziert" hilft dir vielleicht
Und dann sollte es nur noch ausrechnen sein. Mir hat es immer geholfen, wenn ich alles auf einen Bruchtstrich schreiben konnte.
|
|
|
|
|
|
|
bei 1) würde ich mal 4x ausklammern
bei 2) fällt mir nichts Hilfreiches ein, was es wesentlich hübscher machen würde. Man kann den ersten Bruch zwar auseinanderziehen, aber toller wird das alles nicht.
bei 3) würde ich einfach mal das : zu einem * umformen
/e: Wo kommen die ganzen Zwischenposts her oO
/e2: Ah, du sollst nur stupide rechnen, nicht hübscher machen. Naja, dann musste bei 2) wohl einfach durch.
|
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von [smith] am 28.07.2013 19:43]
|
|
|
|
|
|
| Zitat von wuSel
Tach, hat hier jemand Erfahrung mit toten USB-Sticks?
Habe einen Stick eines Bekannten hier (mit Firmendaten, Belehrung bekam er schon). Habe bisher nur versucht, ob der Stick überhaupt noch irgendwie erkannt wird, aber meine Bash sagt nach lsusb nicht, dass sie etwas finden würde.
Im Prinzip ist der Stick schon abgeschrieben mitsamt Daten, aber ich hab jetzt Bock mich damit zu beschäftigen bis zu dem Punkt ihn eventuell zu öffnen und gucken, ob man die Chips auslöten und in einen gleichwertigen Stick einlöten kann. Ja ich weiss, die Chancen sind klein - aber was hab ich zu verlieren?
Hat das schonmal jemand gemacht?
| |
Was spräche dagegen? Hast du denn überhaupt das richtige Lötequipment für das Tauschen von Flashbausteinen? Ich meine eine Unterhitze und Heißluft? Kannst du BGAs löten? Hast du Erfahrung mit solchen Dingen? Wenn nicht, wird dir ziemlich sicher schnell der Speicher kaputtgehen.
|
|
|
|
|
|
|
So, ich hab genug von Mint12 hier auf meinem System, ich werde jetzt mal was anderes installieren.
Entweder Mageia oder Arch. Fuer ersteres spricht, dass es erfrischend aussieht auf den Screenshots, fuer zweiteres dass ich es eigentlich schon lange mal ausprobieren wollte.
|
|
|
|
|
|
|
| Zitat von PutzFrau
So, ich hab genug von Mint12 hier auf meinem System, ich werde jetzt mal was anderes installieren.
Entweder Mageia oder Arch. Fuer ersteres spricht, dass es erfrischend aussieht auf den Screenshots, fuer zweiteres dass ich es eigentlich schon lange mal ausprobieren wollte.
| |
Die Desktopumgebung deiner Wahl kannst du dir ja leicht installieren.
|
|
|
|
|
|
|
Desktopumgebungen werden überbewertet
|
|
|
|
|
|
|
Jaja, ich mach ja schon Arch.
|
|
|
|
|
|
|
Ich brauche mal kurz ein wenig Bestätigung...
Es ist in anderen IT-Firmen genauso Scheiße in der Urlaubszeit mit völlig unterbesetztem Team, und vor geplanten Releaseterminen?
Oder hat hier jemand einen Traumjob, bei dem es nicht so ist?
Irgendwie schiebe ich gerade doch ziemlich Frust und sage mir immer nur: "woanders ist es auch nicht besser". Vielleicht liegt es auch einfach nur daran, dass ich seit einem Jahr keinen Urlaub mehr hatte (außer ein paar Brückentage).
|
|
|
|
|
|
|
| Zitat von PutzFrau
Jaja, ich mach ja schon Arch.
| |
Braves Hündchen.
|
|
|
|
|
|
|
| Zitat von [smith]
Ich brauche mal kurz ein wenig Bestätigung...
Es ist in anderen IT-Firmen genauso Scheiße in der Urlaubszeit mit völlig unterbesetztem Team, und vor geplanten Releaseterminen?
Oder hat hier jemand einen Traumjob, bei dem es nicht so ist?
Irgendwie schiebe ich gerade doch ziemlich Frust und sage mir immer nur: "woanders ist es auch nicht besser". Vielleicht liegt es auch einfach nur daran, dass ich seit einem Jahr keinen Urlaub mehr hatte (außer ein paar Brückentage).
| |
Weiss nich, bin gerade drei Wochen im Urlaub.
¤: Aber ja, kenn ich. Obwohl das irgendwie nicht mehr vorgekommen ist seit ich bei einer Riesenfirma arbeite. Hier mahlt die Mühle halt doch langsamer.
|
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von SwissBushIndian am 28.07.2013 22:39]
|
|
|
|
|
|
| Zitat von Gecko
| Zitat von wuSel
Tach, hat hier jemand Erfahrung mit toten USB-Sticks?
Habe einen Stick eines Bekannten hier (mit Firmendaten, Belehrung bekam er schon). Habe bisher nur versucht, ob der Stick überhaupt noch irgendwie erkannt wird, aber meine Bash sagt nach lsusb nicht, dass sie etwas finden würde.
Im Prinzip ist der Stick schon abgeschrieben mitsamt Daten, aber ich hab jetzt Bock mich damit zu beschäftigen bis zu dem Punkt ihn eventuell zu öffnen und gucken, ob man die Chips auslöten und in einen gleichwertigen Stick einlöten kann. Ja ich weiss, die Chancen sind klein - aber was hab ich zu verlieren?
Hat das schonmal jemand gemacht?
| |
Was spräche dagegen? Hast du denn überhaupt das richtige Lötequipment für das Tauschen von Flashbausteinen? Ich meine eine Unterhitze und Heißluft? Kannst du BGAs löten? Hast du Erfahrung mit solchen Dingen? Wenn nicht, wird dir ziemlich sicher schnell der Speicher kaputtgehen.
| |
Equipment könnte man leihen, Erfahrung leider wenig. Muss ich mich mal mit beschäftigen. :/
|
|
|
|
|
|
|
In vielen USB-Sticks sind allerdings TSOP-Chips (0.5mm pitch) drin, die sich problemlos mit Heißluft löten lassen, sofern sie nicht geklebt wurden.
Pinout ist ONFI oder JEDEC standardisiert.
Ggf. sind die Daten sektorbasiert verwürfelt (wear leveling), wenn der Stick viel benutzt wurde. Wo die Wear leveling Daten liegen, dürfte Controllerabhängig sein.
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von csde_rats am 29.07.2013 0:34]
|
|
|
|
|
|
Ich öffne das Ding bei Gelegenheit erstmal und google noch ein wenig. Sollte ich irgendetwas vorzeigbahres schaffen, melde ich mich nochmal hier. Wenn nicht... schweig ich lieber.
|
|
|
|
|
|
|
Warum ist eigentlich python3 das Standard python in den Arch repos? Das ist doch widerlich!
Wenigstens gibt es scheinbar boost python fuer py3 und py2 im Repo. \o/
|
|
|
|
|
|
|
| Zitat von PutzFrau
Warum ist eigentlich python3 das Standard python in den Arch repos? Das ist doch widerlich!
Wenigstens gibt es scheinbar boost python fuer py3 und py2 im Repo. \o/
| |
Das ist wohl eine der am meisten kritisierten Dinge des rolling release schemas. python3 ist halt Standard, i.e., das neuste stable python, ergo ist es nach der Arch Philosophie auch Standard unter Arch. Das bricht leider viele #!/usr/bin/env python scripts, weshalb ich empfehle, nur Dinge ausm AUR oder den standard Repositories zu installieren. Wenn du selbst Pakete erstellen solltest, einfach ein rekursives sed -i über die Sources laufen lassen.
/e: ich war allerdings schon in Situationen, in denen ich die python2 bin kurz auf /usr/bin/python symlinken musste, weil irgendwas partout nicht funktionieren wollte.
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Oli am 29.07.2013 9:57]
|
|
|
|
|
|
Selbst erstelle ich (momentan und voraussichtlich in Zukunft auch) keine Pakete. Ich habe eh vieles lokal als User installiert und habe dann einfach einen link zu python2 in einem lokalen bin Ordner. Nur muss ich halt die ganzen Python Module ueber pip statt pacman installieren.
edit: Die Installation war uebrigens wider Erwarten eine Odyssee:
Waehrend der Installation hatte ich eine Internetverbindung, auch wenn das network device seltsamerweise enp5s0 statt eth0 hiess. Nach dem Booten hatte ich keine Verbindung und weder enp5s0 noch eth0 waren gelistet. Ohne ifconfig hatte ich keine Ahnung wie das zu fixen ist, aber eben auch keinen anderen Computer hier.
Ich hatte drei Linux Live CDs hier, aber alle waren zu verkratzt. Also hab ich mir von der Arch install CD ein command line Brennprogramm rausgesucht und dann noch die Mageia3 iso gebrannt, die ich zuvor runtergeladen hatte. Allerdings war das keine live CD und ich musste erst Mageia installieren um mir online eine Loesung zu suchen und dann nochmal Arch installieren.
Jetzt werde ich wenigstens nie vergessen, dass ifconfig in net-tools ist.
|
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von PutzFrau am 29.07.2013 10:14]
|
|
|
|
|
|
| Zitat von PutzFrau
Selbst erstelle ich (momentan und voraussichtlich in Zukunft auch) keine Pakete. Ich habe eh vieles lokal als User installiert und habe dann einfach einen link zu python2 in einem lokalen bin Ordner. Nur muss ich halt die ganzen Python Module ueber pip statt pacman installieren.
| |
Kannst du natürlich weiterhin so tun, aber ich bin dazu übergegangen, und empfehle es auch sehr, alles per Paketmanager zu verwalten. Das hat mehrere Vorteile:
1. Du hast nicht unterschiedliche Paketmanager (pip und pacman und ggf. noch cpan etc.)
2. pacman ist unglaublich toll
3. updates sind leichter und sicherer (dependencies)
es gibt fast _alles_ im AUR und es ist sehr leicht (5-10 Minuten) ein PKGBUILD zu schreiben. Das kannst du im AUR hochladen und der nächste user freut sich. Das AUR ist einer der größten Vorteile von Arch ggü. anderen Distributionen, wo man im besten Falle irgendwelche custom ppa Quellen nutzen muss. Da pacman AUR nicht kann, schau dir mal aura an, das ist ein pacman wrapper für AUR pakete.
Das sind natürlich nur Empfehlungen, du kannst es machen, wie du willst. Arch ist ziemlich nah am "default linux". Aber ich habe die Erfahrung gemacht, dass man (außer config files in /etc) am besten nicht selbst Hand ans System legt, sondern lieber die Sicherheit des Paketmanagers nutzt.
/e: ich glaube pip kann nichtmal uninstall. ebenso cpan
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Oli am 29.07.2013 10:14]
|
|
|
|
|
|
Mal in einer freien Stunde damit beschaeftigen.
Alles was ich ohne Systempaketmanager mache, passiert eh immer nur lokal fuer einen User.
edit: Eh genug gemotzt, emacs24 in den repos. \o/
edit2: btw (nicht auf arch bezogen): Ich bin schon ein paar mal ueber dein blog gestolpert, wenn ich nach Loesungen gegoogelt hab.
|
[Dieser Beitrag wurde 3 mal editiert; zum letzten Mal von PutzFrau am 29.07.2013 10:21]
|
|
|
|
|
|
|
|
|
|
Habe nochmal eine Frage zu c/c++ und double precision.
Ich habe eine Funktion getRate(), die relativ aufwändig ist. Um mir den Aufruf in jeder Iteration zu sparen, habe ich eine laufende double Variable _rate, die ich jedes mal, wenn sich die Rückgabe von getRate() ändert, update. Allerdings geraten _rate und getRate() auseinander, vermutlich wegen Rundungsfehlern von double. Die erste Differenz, die auftaucht, ist genau 4.54747e-13, und das kriege ich nicht weg. _rate wird nur durch -= und += geupdatet, während in getRate() eine Multiplikation (mit einem int) statt findet. Ich nehme an, der Fehler kommt von letzterer Operation.
Kann ich da irgendwas tun?
|
Code: |
double Simulation::getTotalRate()
{
double buffer = 0;
for(Event e : _events)
{
buffer += e.getRate() * e.getNumberOfTransitions();
}
return buffer;
} |
|
/e: Es wäre kein Problem, _rate dann und wann zu synchronisieren, aber um seine Validität zu überprüfen, muss ich getRate() ja schon aufrufen. Ich weiß also nicht so recht, wann ich synchronisieren muss.
/e2: iWork rechnet auch falsch, mit dem selben Fehler wie ich. click
|
[Dieser Beitrag wurde 3 mal editiert; zum letzten Mal von Oli am 29.07.2013 10:39]
|
|
|
|
|
|
Klingt nach einem Problem mit Ausloeschung. In welchem Groessenbereich bewegen sich denn die Fliesskommazahlen? Hast dus schon mit hoeherer precision versucht, also long double zum Beispiel?
|
|
|
|
|
|
|
| Zitat von AcidF!re
Klingt nach einem Problem mit Ausloeschung. In welchem Groessenbereich bewegen sich denn die Fliesskommazahlen? Hast dus schon mit hoeherer precision versucht, also long double zum Beispiel?
| |
Ich brauche die Präzision eigentlich gar nicht. Es würde mir völlig ausreichen, wenn die doubles bis auf die 5. Nachkommastelle passen. Nur dieser Zähler und das getRate müssen halt echt stimmen. Leider addiert sich der Fehler auf und wird wirklich groß irgendwann....
Beispiel Programm:
|
Code: |
#include <memory>
#include <iostream>
#include <vector>
using namespace std;
double fRand(double fMin, double fMax)
{
double f = (double)rand() / RAND_MAX;
return fMin + f * (fMax - fMin);
}
class test
{
public:
test(double rate, int items) {
_rate = rate;
_n_items = items;
};
double getTotalRate() {
return _rate * _n_items;
}
private:
int _n_items;
double _rate;
};
double calcNumbers(vector<test> a)
{
double buffer = 0;
for(auto t : a)
buffer += t.getTotalRate();
return buffer;
}
int main()
{
vector<test> vec;
double running_val = 0;
for(int i = 0; i < 1000; ++i)
{
double r = fRand(0, 100);
int n = rand() % 100;
test t(r, n);
vec.push_back(t);
for(int j = 0; j < n; ++j)
running_val += r;
}
cout << running_val - calcNumbers(vec) << endl;
} |
|
g++ -o test test.cpp -std=c++11
./test
|
|
|
|
|
|
|
Vlt. könnt ihr hier mir ja helfen
Ich versuche einen Vertex-Shader in GLSL(WebGL) zu bauen, um eine Ebene mit einer Gerstner-Welle zu deformieren.
siehe hier (Eq. 9)
|
Code: |
vec3 getGerstnerPos(float wL, float amp, vec2 dir)
{
vec3 gPos = vec3(.1,.1,.1);
float w = 2.*3.1415926/wL;
float scalProd = position.x * dir.x + position.y * dir.y;
float q = .9;
gPos.x = position.x + q*amp*dir.x*cos(w*scalProd+time*animSpeed*w);
gPos.y = position.y + q*amp*dir.y*cos(w*scalProd+time*animSpeed*w);
gPos.z = amp*sin(scalProd*w + time * animSpeed * w);
return gPos;
}
|
|
Problem ist, ich bekomme nur ne Sinus-Welle -.-
Hat jmd. vlt. einen Hinweis?
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von illbill am 29.07.2013 11:12]
|
|
|
|
|
|
| Zitat von illbill
Vlt. könnt ihr hier mir ja helfen
Ich versuche einen Vertex-Shader in GLSL(WebGL) zu bauen, um eine Ebene mit einer Gerstner-Welle zu deformieren. | |
Du bist der programmierende Bruder von WoS oder? :X
|
|
|
|
|
|
|
| Zitat von Oli
Habe nochmal eine Frage zu c/c++ und double precision.
Ich habe eine Funktion getRate(), die relativ aufwändig ist. Um mir den Aufruf in jeder Iteration zu sparen, habe ich eine laufende double Variable _rate, die ich jedes mal, wenn sich die Rückgabe von getRate() ändert, update. Allerdings geraten _rate und getRate() auseinander, vermutlich wegen Rundungsfehlern von double. Die erste Differenz, die auftaucht, ist genau 4.54747e-13, und das kriege ich nicht weg. _rate wird nur durch -= und += geupdatet, während in getRate() eine Multiplikation (mit einem int) statt findet. Ich nehme an, der Fehler kommt von letzterer Operation.
Kann ich da irgendwas tun?
|
Code: |
double Simulation::getTotalRate()
{
double buffer = 0;
for(Event e : _events)
{
buffer += e.getRate() * e.getNumberOfTransitions();
}
return buffer;
} |
|
/e: Es wäre kein Problem, _rate dann und wann zu synchronisieren, aber um seine Validität zu überprüfen, muss ich getRate() ja schon aufrufen. Ich weiß also nicht so recht, wann ich synchronisieren muss.
/e2: iWork rechnet auch falsch, mit dem selben Fehler wie ich. click
| |
Als Denkanstoss: könntest den Fließpunktfehler bestimmen. http://en.wikipedia.org/wiki/Kahan_summation_algorithm
|
|
|
|
|
|
|
Danke. Ich glaube aber, ich multipliziere meine Raten einfach mit 10^x (x = 5 oder so) und wandle sie in long um. So habe ich garantiert keine Fehler mehr.
/e: Dabei gehen natürlich solche verloren, die < 10^-5 sind, was aber für meine Zwecke egal ist.
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Oli am 29.07.2013 11:32]
|
|
|
|
|
|
Eigenen Datentyp basteln mit Long für den Wert und die Kommaposition merken.
¤: Fu.
|
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von SwissBushIndian am 29.07.2013 11:33]
|
|
|
|
|
|
| Zitat von wuSel
| Zitat von illbill
Vlt. könnt ihr hier mir ja helfen
Ich versuche einen Vertex-Shader in GLSL(WebGL) zu bauen, um eine Ebene mit einer Gerstner-Welle zu deformieren. | |
Du bist der programmierende Bruder von WoS oder? :X
| |
Wie darf ich das verstehen? Und .. nein.
|
|
|
|
|
|
|
Das hieß soviel wie: Ich finde deinen Satz syntaktisch hübsch. Die Semantik erschließt sich mir aber nicht.
|
|
|
|
|
|
Thema: pOT-lnformatik, Mathematik, Physik XIII ( Completely Automated Public User Test To tell PIMP ) |