diff --git a/.idea/workspace.xml b/.idea/workspace.xml index d135dd9cb5c3f30e45ade41a17f983f8b90b25bf..f54d405b94bf16855fa3c4d8c364ae884e24e560 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -9,7 +9,18 @@ </configurations> </component> <component name="ChangeListManager"> - <list default="true" id="43aff179-c306-46b9-b69f-eca5306fbf96" name="Default Changelist" comment="" /> + <list default="true" id="43aff179-c306-46b9-b69f-eca5306fbf96" name="Default Changelist" comment=""> + <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/Box.o" beforeDir="false" /> + <change beforePath="$PROJECT_DIR$/Star.o" beforeDir="false" /> + <change beforePath="$PROJECT_DIR$/Vector.o" beforeDir="false" /> + <change beforePath="$PROJECT_DIR$/galaxy.o" beforeDir="false" /> + <change beforePath="$PROJECT_DIR$/galaxy_simulation.c" beforeDir="false" afterPath="$PROJECT_DIR$/galaxy_simulation.c" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/galaxy_simulation.o" beforeDir="false" /> + <change beforePath="$PROJECT_DIR$/makefile" beforeDir="false" afterPath="$PROJECT_DIR$/makefile" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/quad_tree.c" beforeDir="false" afterPath="$PROJECT_DIR$/quad_tree.c" afterDir="false" /> + <change beforePath="$PROJECT_DIR$/quad_tree.h" beforeDir="false" afterPath="$PROJECT_DIR$/quad_tree.h" afterDir="false" /> + </list> <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> <option name="SHOW_DIALOG" value="false" /> <option name="HIGHLIGHT_CONFLICTS" value="true" /> @@ -18,29 +29,11 @@ </component> <component name="FileEditorManager"> <leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> - <file pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/Vector.c"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="-542"> - <caret line="39" column="18" selection-start-line="39" selection-start-column="18" selection-end-line="39" selection-end-column="18" /> - </state> - </provider> - </entry> - </file> - <file pinned="false" current-in-tab="false"> - <entry file="file://$PROJECT_DIR$/Vector.h"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="153"> - <caret line="9" column="53" selection-start-line="9" selection-start-column="53" selection-end-line="9" selection-end-column="53" /> - </state> - </provider> - </entry> - </file> <file pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/Box.c"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="1632"> - <caret line="111" selection-start-line="111" selection-end-line="111" /> + <state relative-caret-position="272"> + <caret line="55" column="40" lean-forward="true" selection-start-line="55" selection-start-column="40" selection-end-line="55" selection-end-column="40" /> </state> </provider> </entry> @@ -75,8 +68,8 @@ <file pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/galaxy.c"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="223"> - <caret line="120" column="8" selection-start-line="120" selection-start-column="8" selection-end-line="120" selection-end-column="8" /> + <state> + <caret selection-end-line="4" selection-end-column="17" /> </state> </provider> </entry> @@ -93,17 +86,35 @@ <file pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/galaxy_simulation.c"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="425"> - <caret line="25" column="18" selection-start-line="25" selection-start-column="18" selection-end-line="25" selection-end-column="18" /> + <state relative-caret-position="68"> + <caret line="4" column="21" selection-start-line="4" selection-start-column="21" selection-end-line="4" selection-end-column="21" /> + </state> + </provider> + </entry> + </file> + <file pinned="false" current-in-tab="false"> + <entry file="file://$PROJECT_DIR$/quad_tree.c"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="153"> + <caret line="9" column="49" selection-start-line="9" selection-start-column="49" selection-end-line="9" selection-end-column="49" /> </state> </provider> </entry> </file> <file pinned="false" current-in-tab="true"> + <entry file="file://$PROJECT_DIR$/quad_tree.h"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="238"> + <caret line="14" column="35" selection-start-line="14" selection-start-column="35" selection-end-line="14" selection-end-column="35" /> + </state> + </provider> + </entry> + </file> + <file pinned="false" current-in-tab="false"> <entry file="file://$PROJECT_DIR$/makefile"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="306"> - <caret line="18" lean-forward="true" selection-start-line="18" selection-end-line="18" /> + <state relative-caret-position="51"> + <caret line="3" column="71" selection-start-line="3" selection-start-column="71" selection-end-line="3" selection-end-column="71" /> </state> </provider> </entry> @@ -122,12 +133,14 @@ <option value="$PROJECT_DIR$/Vector.c" /> <option value="$PROJECT_DIR$/Star.c" /> <option value="$PROJECT_DIR$/Star.h" /> - <option value="$PROJECT_DIR$/galaxy_simulation.c" /> - <option value="$PROJECT_DIR$/makefile" /> <option value="$PROJECT_DIR$/Box.h" /> - <option value="$PROJECT_DIR$/Box.c" /> <option value="$PROJECT_DIR$/galaxy.h" /> <option value="$PROJECT_DIR$/galaxy.c" /> + <option value="$PROJECT_DIR$/galaxy_simulation.c" /> + <option value="$PROJECT_DIR$/Box.c" /> + <option value="$PROJECT_DIR$/makefile" /> + <option value="$PROJECT_DIR$/quad_tree.c" /> + <option value="$PROJECT_DIR$/quad_tree.h" /> </list> </option> </component> @@ -185,12 +198,12 @@ <option name="presentableId" value="Default" /> <updated>1559227081243</updated> <workItem from="1559227084365" duration="53793000" /> - <workItem from="1560336527698" duration="28820000" /> + <workItem from="1560336527698" duration="32701000" /> </task> <servers /> </component> <component name="TimeTrackingManager"> - <option name="totallyTimeSpent" value="82613000" /> + <option name="totallyTimeSpent" value="86494000" /> </component> <component name="ToolWindowManager"> <frame x="-7" y="-7" width="1550" height="838" extended-state="6" /> @@ -254,13 +267,6 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/galaxy_simulation.c"> - <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="425"> - <caret line="25" column="18" selection-start-line="25" selection-start-column="18" selection-end-line="25" selection-end-column="18" /> - </state> - </provider> - </entry> <entry file="file://$PROJECT_DIR$/Star.c"> <provider selected="true" editor-type-id="text-editor"> <state relative-caret-position="833"> @@ -284,15 +290,22 @@ </entry> <entry file="file://$PROJECT_DIR$/Box.c"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="1632"> - <caret line="111" selection-start-line="111" selection-end-line="111" /> + <state relative-caret-position="272"> + <caret line="55" column="40" lean-forward="true" selection-start-line="55" selection-start-column="40" selection-end-line="55" selection-end-column="40" /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/makefile"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="51"> + <caret line="3" column="71" selection-start-line="3" selection-start-column="71" selection-end-line="3" selection-end-column="71" /> </state> </provider> </entry> <entry file="file://$PROJECT_DIR$/galaxy.c"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="223"> - <caret line="120" column="8" selection-start-line="120" selection-start-column="8" selection-end-line="120" selection-end-column="8" /> + <state> + <caret selection-end-line="4" selection-end-column="17" /> </state> </provider> </entry> @@ -303,10 +316,24 @@ </state> </provider> </entry> - <entry file="file://$PROJECT_DIR$/makefile"> + <entry file="file://$PROJECT_DIR$/galaxy_simulation.c"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="68"> + <caret line="4" column="21" selection-start-line="4" selection-start-column="21" selection-end-line="4" selection-end-column="21" /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/quad_tree.c"> + <provider selected="true" editor-type-id="text-editor"> + <state relative-caret-position="153"> + <caret line="9" column="49" selection-start-line="9" selection-start-column="49" selection-end-line="9" selection-end-column="49" /> + </state> + </provider> + </entry> + <entry file="file://$PROJECT_DIR$/quad_tree.h"> <provider selected="true" editor-type-id="text-editor"> - <state relative-caret-position="306"> - <caret line="18" lean-forward="true" selection-start-line="18" selection-end-line="18" /> + <state relative-caret-position="238"> + <caret line="14" column="35" selection-start-line="14" selection-start-column="35" selection-end-line="14" selection-end-column="35" /> </state> </provider> </entry> diff --git a/Box.o b/Box.o deleted file mode 100644 index be8e1ab4b244b8062cf5dfbcc70400524f9e3fbb..0000000000000000000000000000000000000000 Binary files a/Box.o and /dev/null differ diff --git a/Star.o b/Star.o deleted file mode 100644 index 31a31dd95f878f0d7ad4feda1d3dc2f5adeacf65..0000000000000000000000000000000000000000 Binary files a/Star.o and /dev/null differ diff --git a/Vector.o b/Vector.o deleted file mode 100644 index 1d169814ec132196c3f1ebd784a80ce7658c9ace..0000000000000000000000000000000000000000 Binary files a/Vector.o and /dev/null differ diff --git a/galaxy.o b/galaxy.o deleted file mode 100644 index 47541c9c5db45a005c1ab63853045e648c1c956c..0000000000000000000000000000000000000000 Binary files a/galaxy.o and /dev/null differ diff --git a/galaxy_simulation.c b/galaxy_simulation.c index 9ea6fde7b51fbc6202b4c4fa5e3ab6ac0dce994f..4f93d33e43154a0a016a6bc9f430dde349309773 100644 --- a/galaxy_simulation.c +++ b/galaxy_simulation.c @@ -2,7 +2,7 @@ #include <stdlib.h> #include <stdbool.h> #include <math.h> -#include "galaxy.h" +#include "quad_tree.h" int main(int argc, char *argv[]) { if (argc == 2) { diff --git a/galaxy_simulation.o b/galaxy_simulation.o deleted file mode 100644 index e91aab0eeaa6bed8fe3271f75c8bb51a648b6499..0000000000000000000000000000000000000000 Binary files a/galaxy_simulation.o and /dev/null differ diff --git a/makefile b/makefile index 5e79790e992f67f7dec9b91138b348a9f7e7bf96..4096d34919662fc6dda6c1e2f559ffa7a8ba6172 100644 --- a/makefile +++ b/makefile @@ -1,7 +1,7 @@ -galaxy_simulation: vector.o Box.o Star.o galaxy.o galaxy_simulation.o - gcc -o galaxy_simulation Vector.o Box.o Star.o galaxy.o galaxy_simulation.o -lm +galaxy_simulation: vector.o Box.o Star.o galaxy.o quad_tree.o galaxy_simulation.o + gcc -o galaxy_simulation Vector.o Box.o Star.o galaxy.o quad_tree.o galaxy_simulation.o -lm galaxy_simulation.o: galaxy_simulation.c gcc -o galaxy_simulation.o -c galaxy_simulation.c @@ -14,5 +14,7 @@ Star.o: Star.c gcc -o Star.o -c Star.c galaxy.o: galaxy.c gcc -o galaxy.o -c galaxy.c +quad_tree.o: quad_tree.c + gcc -o quad_tree.o -c quad_tree.c clean: rm -f noise *.o *.gch diff --git a/quad_tree.c b/quad_tree.c index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..4934535e80cf9055021792d56071c7934e0526bc 100644 --- a/quad_tree.c +++ b/quad_tree.c @@ -0,0 +1,13 @@ +#include <stdio.h> +#include <stdlib.h> +#include <stdbool.h> +#include <math.h> +#include <time.h> +#include "quad_tree.h" + +quad_tree *create_quad_tree_from_galaxy(const galaxy *const g){ + + quad_tree* galaxy = malloc(sizeof(quad_tree)); + + +} \ No newline at end of file diff --git a/quad_tree.h b/quad_tree.h index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..e127e3841ffe25b8aba661d7f0fd633bd4595441 100644 --- a/quad_tree.h +++ b/quad_tree.h @@ -0,0 +1,27 @@ +#include "galaxy.h" +typedef struct quad_tree { + node *root; +} quad_tree; + +typedef struct node { + struct node *children[4]; + box b; + star *s; + star *super_s; + bool is_empty; +} node; + + +void insert_star(node *n, star *s); + +//Création du quad_tree: +quad_tree *create_quad_tree_from_galaxy(const galaxy *const g); + +//Libération de la mémoire du quad_tree +void free_quad_tree(quad_tree *t); + +//Mise à jour de l’accélération d’une étoile: +void update_acceleration_from_node(const node *const n, star *s,double theta); + +//Mise à jour de l’accélération de toutes les étoiles: +void update_accelerations_of_all_stars(const node *const n,galaxy *g, double theta); \ No newline at end of file