GithubHelp home page GithubHelp logo

Input/Output Functions about suave HOT 6 CLOSED

aerialhedgehog avatar aerialhedgehog commented on June 18, 2024
Input/Output Functions

from suave.

Comments (6)

aerialhedgehog avatar aerialhedgehog commented on June 18, 2024

(moving a conversation here from the dev list)

from suave.

aerialhedgehog avatar aerialhedgehog commented on June 18, 2024

Tarik:

Hey guys,

I'm pretty sure you are familiar with, but please find attached an example of output file of FLOPS software.

This is an ALL IN type data file, that helps a lot the user to understand what is going on during the evaluations. This also allows a very easy way for high level documentation of the studies.

I particularly prefer small output files separated by main topics, such as Geometric, Transonic Aerodynamic, Subsonic Aerodynamic, Engine, Weights, Mission Performance, Field Performance, etc etc etc..

These output files would be of crucial importance to validation/verification cases.
For example, an Aerodynamic output similar to the blue text below would help us to validate the Parasite Drag estimation.

I intend to work on something like this in the next weeks.

comments?

from suave.

aerialhedgehog avatar aerialhedgehog commented on June 18, 2024

Tarik and Team:

I think an output file is an excellent thing to have.

I also think that it would be very interesting to write a semantically structured file like JSON, XML or YAML, which can be both machine and human understood. This way the output can be easily parsed as used as input for other tools β€” given that they are standard formats. The same originating structure can also be used programmatically if no file operation is required.

JSON itself can be hard to read since it’s not tabular. But with the right CSS or other formatting files we can then display the same data in different environments, and even inside browsers.

This would conform to the model view controller type pattern.

This is something like the approach taken by PASS. We have also done something similar with success at GA.

I should also say that there is a tension between keeping things in Python or JSON β€” given that the former language is already expressive and terse. However, if we actually want an output file then this may make the case for a semantic format.

Jia Xu, Ph.D.

from suave.

aerialhedgehog avatar aerialhedgehog commented on June 18, 2024

great, let's start prototyping some input and output formats.

if we go with a standard serialization format we'll be able to leverage the packages out there, especially the python one that works nicely with dictionaries, as well as walk away with native cross-language compatibility. if we're clever there will be almost no work required past composing a data structure for output, like we do in the_aircraft_function. the trick will be massaging it into a format that is in the same style as the namelists like tarik has presented in his earlier attachment.

between json and yaml, i think yaml will be more consistent with suave style, it requires less markup, by requiring tabs. wikipedia has a nice description of the format. the python package that i'm aware of it pyYAML, tho there may be others.
http://en.wikipedia.org/wiki/YAML

for file output, multiple output files would be fine i think. we will need a folder structure to manage the data we're going to start writing and reading from disk. we're hitting this issue in the avl_wrap branch as well.

tarik would you mind composing a text file with a list of data that we need to output? for example take your example and remove all the data (perhaps leave a note on the data type if it's an array). showing hierarchy with tabs would be nice.

suave can certainly have multiple data writers, tho the more we have the more maintenance required.

  • trent

from suave.

jiaxu825 avatar jiaxu825 commented on June 18, 2024

Also to consider are for tabular data are the provisions inside Pandas. Since it has all sorts of output formats. to_latex for example. There is also pandas.DataFrame.to_json. And while there may not be a YAML tool. It should be a straight conversion using other tools.

from suave.

planes avatar planes commented on June 18, 2024

Has been addressed

from suave.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.