Simulation: Difference between revisions

From SpaceElevatorWiki.com
Jump to navigationJump to search
Line 53: Line 53:


== Finite Element Analysis ==
== Finite Element Analysis ==
Matlab-type: http://en.wikipedia.org/wiki/GNU_Octave
Does many things including FEA.
(''Can someone please analyze and comment on this FEniCS project?'')
(''Can someone please analyze and comment on this FEniCS project?'')
http://www.fenics.org/wiki/FEniCS_Project
http://www.fenics.org/wiki/FEniCS_Project


Complete list [http://en.wikipedia.org/wiki/List_of_finite_element_software_packages]
Complete list [http://en.wikipedia.org/wiki/List_of_finite_element_software_packages]
== K3D ==  
== K3D ==  
This is a powerful, but simpler 3-D program we are also considering using:
This is a powerful, but simpler 3-D program we are also considering using:

Revision as of 05:27, 9 July 2008

Simulation and Engineering Software

Scenarios

Imagine you built a simulator so that when you added weight to the climber, the ribbon dimensions got bigger. If a spreadsheet created calculations that boiled down to simple algebraic formulas, those could be put into a video game. If someone improves the spreadsheet, they can swap in different algebraic constants.

Collaboration

OpenOffice has the ability to merge documents, and to do change-tracking, and there other solutions, because underlying the OpenOffice document is a bunch of textual XML which can easily be merged and diffed. As more people start working on documents at the same time, we can find what works best.

In general it should not be a problem: People can read an (old version) of a binary document all they want, and if they want to edit it, they should make sure they have the latest copy, make changes, and then upload them right away. The idea that our spreadsheets will be so busy that there will be merge conflicts is very optimistic!

We could try various things like GoogleDocs for spreadsheet collaboration, but we throw away like 90% of our features! I think that is a bad idea.

Spreadsheets

A Spreadsheet is a monster tool, but the various pieces need to be linked or otherwise integrated. Just think how many places a spreadsheet cost calculator must go to come up with a "final" number! Spreadsheets get very cool when you start to combine the data from various pieces together. Every separate spreadsheet is a locked up silo of information, unless it is linking to other ones. We have 16 spreadsheets in our archives, and that number already is too big. If you were to build a finite element analysis engine inside a spreadsheet, I would suggest that be a separate one! It is possible to have our models and simulations be huge and easy to approach. You just organize the data into Sheets, Create headings, make important boxes be highlighted, etc.

Ribbon dimensions, performance trade-offs, overall interactions matrix.

Collada

We will use the Collada format which is open, XML, has 3-D and physics capabilities. Collada introduction: http://keithcu.com/cgi-bin/hg.cgi?raw-file/6bcb243bfc7d/docs/COLLADA.odp

Blender

People complain that it is hard to get into, but many who have used it for months come to love it. It is extremely powerful, has a huge community, and it has some physics simulation capabilities built in and supports Collada. Dig in, everyone.

Monster feature list: http://www.blender.org/features-gallery/features/

Gallery of pretty pictures: http://www.blender.org/features-gallery/gallery/art-gallery/

Online Manual TOC: http://wiki.blender.org/index.php/Manual

Complete Tutorial: [1]

UI Intro: [2]

Various tutorials: [3]

Wikibook: [4]

Help organize / simplify this list and put your comments by these documents

Physics Models

Dynamics, basic principles relationships, materials properties.

Blender comes with a physics engine, and a simulation UI, etc. so we should start by doing all the physics work inside the existing engine inside Blender and leaving the below for the walk phase.

We believe that http://www.ode.org could be a good simulation engine for realtime, or batch-processed calculations. With Ode.Net, we can program it in C#. We can connect it to a C# wrapper around Ogre, and have a high quality game engine to display the simulations run by Ode. However, some have also put (or attempted to put) ODE into Blender, and that is another way.

Intro to a physics game engine: http://keithcu.com/cgi-bin/hg.cgi?raw-file/073cec0e2635/docs/dynamics.pdf

Discussion of Ogre, Ode, Blender, etc: http://www.ogre3d.org/phpBB2/viewtopic.php?p=276861&sid=ce193664e1d3d7c4af509e6f4e2718c6

More discussions: Codebase_Analysis#Physics_Engines

Finite Element Analysis

Matlab-type: http://en.wikipedia.org/wiki/GNU_Octave

Does many things including FEA.

(Can someone please analyze and comment on this FEniCS project?) http://www.fenics.org/wiki/FEniCS_Project

Complete list [5]

K3D

This is a powerful, but simpler 3-D program we are also considering using: http://www.k-3d.org/wiki/Main_Page

This is what people will use if they are going to spend 5 minutes looking around, but they will use Blender if they are going to spend 5 hours.

Other Software

NASA's free code: http://opensource.arc.nasa.gov/