Jump to content

Arrowstar

Members
  • Posts

    2,561
  • Joined

  • Last visited

Everything posted by Arrowstar

  1. Just a heads up to everyone, the next pre-release will probably update MATLAB to R2023b (the latest version). It'll also have an updated version of the NOMAD optimizer (v4.4) in LVD, along with some other changes.
  2. I actually couldn't reproduce this error. Does it still happen for you? Propagating to certain "events", like true anomaly or whatnot, doesn't work as well in the integrator based system that LVD uses. This is why everything is time based. Set up constraints to the target you want at the end of an event and then optimize the propagation time of that event to meet those constraints. This should work out pretty well most of the time.
  3. Hey, sorry about taking forever to get back to you. Between Christmas and New Year's Day I've been pretty busy recently. You've basically got the idea on point 3 about updating the state. Once you're in between major bits of the mission and you're just coasting along, you can remove the previous segments and update the initial state to match your current state in the game via importing it (right click in the Initial State dialog box). At that point you can add maneuvers for corrections and stuff like that. I think there's an "advance to segment" option in the right click menu of the script listbox that helps make some of this easier! Does this help any?
  4. I don't have the skills for that, but if anyone would like to give it a go, they are welcome to let me know and I'll help with info as I can.
  5. Hey there, that warning just means that the mission needs to be run first. It's not really an error and it doesn't imply that anything is wrong. That said, I'd encourage you to use Launch Vehicle Designer (LVD) instead, since it's a far more fully featured and robust mission planning tool that works for both launch vehicles and spacecraft. I haven't really maintained MA in a number of years now aside from a bug fix here and there.
  6. Hi everyone, Tonight I've built KSPTOT v1.6.10 pre-release 5. There are a few new features I want to discuss in this release before I get to the change log. These are all Launch Vehicle Designer (LVD) related. First, body (meaning "spacecraft") angular rates are now available to be used as Graphical Analysis tasks and as constraints as well. Second, there are a variety of new actions you can apply to events. These are: Set Plugin Variable Value: Sets the value of a "plugin variable" to a particular constant number. Example: Value = 5 Add Value to Plugin Variable Value: Sets the value of a "plugin variable" to itself plus or minus a given constant number. Example: Value = Value + 5 Set Plugin Variable Value to Quantity: Sets the value of a plugin variable to the value of a given graphical analysis task quantity. Example: Value = Altitude [Kerbin Inertial Frame] Set Next Event: Sets the next event to be executed to a given event. I'll get to why this is relevant more in a bit. Third, there is a new Conditional Action. A conditional action is an action that lets you set the conditions by which a group of actions may or may not be executed. The action is structured in the same way that an "if-else if-else" structure written in a programming language. Let's walk through the UI. The upper section, the "IF" section, is evaluated first. If the condition on the left is true, then the actions on the right are evaluated. The middle section, if "ELSE IF" section, is evaluated next if the IF condition returned true. You can have as many ELSE IF conditions as you'd like, each with their own conditions and associated actions. If none of the previous conditions returns true, then the "ELSE" actions are executed, if any. Conditions are edited through their own UI. Most conditions will be based on Graphical Analysis task quantities, but there are also AND and OR booleans that let you chain conditions together in a very flexible way. The best part about this is that you can use this, combined with the new "Set Next Event" action, to create conditional, branching trajectories. I've done this is the example UIs that I've been showing here. Note that the "quantity comparison" conditional can compare one quantity against a fixed, constant number like I'm doing here or against the value of a different quantity at that same point in time. This is particularly useful for comparing the values of Plugin Variables, which are really now great places to store numeric data that you might want to compare against as you propagate your trajectory. Anyway, that's the main gist of things! Here's the full change log. LVD: Added new polling and search methods for patternsearch(). LVD: Warn/alert area is now a UI table. The KSPTOT main GUI has been replaced with something that is much more visually indicative of what functionality KSPTOT has to offer. KSPTOT UI now supports theming of the colors of all UIs. Access from the new main GUI: View -> Edit Themes and View -> Set Theme. New icons for KSPTOT and various KSPTOT tools and applications. There is also a new splash screen shown when loading KSPTOT. LVD: GUI areas for initial/final state is now a text area so it can scroll. LVD: Added body angular velocity Graphical Analysis tasks. LVD: Added body angular rate constraints. LVD: Added conditional action. LVD: Added Longitude termination condition LVD: Added Add value to plugin var value action and other similar actions. LVD: Added Set Next Event action. LVD: Actions are now sorted alphabetically. Fixed bug with Select Departure/Arrival Date button in Compute Departure stuff. That should be it! Let me know if you have any questions or find any bugs! Happy orbiting!
  7. Open up this MAT file in LVD. It should be the optimized trajectory you're looking for! https://drive.google.com/file/d/14co-L5ztASEKLreLAskrx9YM7Pf1bY2g/view?usp=sharing
  8. Can you share a screenshot or the LVD MAT file? I think I misunderstood at first. I was thinking you were asking how long it took to generate the MFMS data file for LVD. The actual optimization of the trajectory in LVD could take some time, yes.
  9. Hey everyone, There's another visual change coming to KSPTOT in the next version. It's bothered me for a while now that the "main GUI" was always the porkchop plotter, since that isn't really the focus of the application anymore and hasn't been in years. It stuck around in that role mostly for historical reasons. I've decided to rework the user interface that you're presented with when you start KSPTOT. Going forward, you'll see this instead. Like the other windows in KSPTOT, this one is theme-able as well. I've moved the old "Tools" menu into this "Android home page" inspired layout and given each tool its own button and icon. The old porkchop plot generator UI is still there under "Porkchop Plot Generator". I think this will A) make it far more obvious that KSPTOT offers more than just porkchop plotting, and B) also make those tools a bit easier to access. By the way, the icon for the Porkchop Plot Generator is temporary. Unfortunately Midjourney stopped offering trials as I was generating icons, so I don't have that one yet. If anyone has a Midjourney subscription and wants to help me generate an icon for it, please get in touch! Speaking of icons, spoiler alert, I did pick a new KSPTOT icon and its there in the picture. A new splash screen is coming too that I'm sort of excited to share with you in the future. Let me know if you have any questions or comments. I'm honestly not sure then. You have no error messages, no logs, and apparently have permissions for everything. I've never heard of this happening before. Any chance the downloaded files are corrupted? Can you try to download any of the other MCR packages and install them, just to see if they work? Pick a couple from this list and see what happens: https://www.mathworks.com/products/compiler/matlab-runtime.html
  10. You're probably running into the "zero SOI radius" assumption. It's a little complicated, but if you want to use MFMS results for actually running your manevuers, here's what you should do. Generate the Flyby Maneuver Sequence. Tap the "Save Results to File for LVD" button and save the file to some location. Open Launch Vehicle Designer (LVD). In LVD, File -> New Mission Plan From MFMS Output. Select the file you saved in Step (2). Optimization -> Optimize Mission. See if that gets you a delta-v maneuver that intersects Eve.
  11. Does anything in this conversation help? https://www.mathworks.com/matlabcentral/answers/229857-why-do-i-see-preparing-installation-files-installing-finished-in-the-terminal-window-wh
  12. Do you get any error messages in the terminal window? There isn't really, but the general idea with using Multi-Flyby Maneuver Sequencer is: Select your minimum and maximum launch bounds Set your waypoints, starting from your departure planets and ending with your final body you want to go to. The middle bodies will be used for gravity assists. Set your initial orbit around the first waypoint body. Push the compute button. Let me know if you have any particular questions!
  13. Hey everyone, I've got some more news regarding visual changes to KSPTOT. The other day I decided I was finally interested enough in adding a dark mode for the software, so I created what I call "visual themes". These are user definable sets of colors applied to most UI elements that make up the KSPTOT GUI windows. Going forward, KSPTOT will ship with two themes by default: the typical light theme and a dark theme. However, there's nothing stopping you from using the Theme Editor to make your own. You can access the Theme Editor from the main KSPTOT GUI (View -> Edit Themes). It looks like this. Every type of editable widget has its own tab where you can set colors. (In the future, I could also do fonts, but I'm leaving that out for now.) An example representation of a GUI with the selected theme as currently defined is shown on the bottom of the window. Here's I've got a "blue theme" defined, but there's nothing stopping you from going all unicorn vomit rainbows if you really want, haha. You can select and apply a theme by double clicking on the theme in the list box on the left or by checking the Active Theme checkbox at the top of the UI. The effects take place across every KSPTOT UI instantaneously. I think Launch Vehicle Designer looks particularly good in a dark theme, but all tools and windows have this functionality. Let me know what you think!
  14. Thanks! You bring up a great point. Here's what they would look like at 50 px x 50 px, which would be their approximate size as an icon. A) B) C) D) I should have shared these as well.
  15. Hey guys, I've been thinking about changing KSPTOT's logo for a little bit now and I wanted to ask your opinions. I've been playing with Midjourney, the AI image generator, and it's come up with some pretty cool ideas for me. Out of about 30 or so images, I've narrowed down the ones I really like to these four and I was wondering if you all had a preference. "Keep the original logo" is also a preference too! Keep in mind these have to be shown at ~50 px square and that they will have transparent backgrounds, not white or grey. A) B) C) D) What do you think?
  16. Hi everyone, Just wanted to share some news regarding the next pre-release of KSPTOT, whenever it is that I decide to build that. First, KSPTOT will be moving to MATLAB MATLAB R2023a as of the next PR. This is primarily because there's a free 5%-10% performance increase that comes with this next version just about everywhere in KSPTOT, and I'd like you all (and me!) to be able to take advantage of it. Second, Launch Vehicle Designer (LVD) will be getting a slight appearance overhaul in a few ways as of the next pre-release. There is now an option to display the color of sequential events as the text color in the listbox for easier identification of which event is which on the display. The listbox background automatically adjusts to a tone of grey that best displays those colors. The warning and alerts area now has a new look that I think will be slightly less clunky and hopefully easier to read. There's a new option to completely get rid of the rulers and grids in the display area when you render the orbit. You can now display or not the Axes box in your View Profiles. (View -> Edit View Settings) When all is said and done, here's what you end up with. Let me know what you think!
  17. So I've given this a go, and all that happens when I execute the is the spacecraft twitches a bit. It's like the orbit gets set and then is immediately reversed. I'm not sure what to do about it. Any ideas? See 0:09 of this video for an example of what I mean. Sorry for all the dinging sounds. https://vimeo.com/manage/videos/809574842/
  18. When you say relative to the current body frame, you mean an inertial frame whose center is the center of the celestial body being orbited?
  19. Great, thank you. I see that method in the API documentation. Any idea what reference frame those position and velocity Vector3d objects are relative to? And do I just get the Orbit from the Vessel's OrbitDriver object?
  20. Hello! I'm trying to figure out how to programmatically set the position and velocity of a spacecraft. Say I want to locate the vehicle at 0 deg latitude, 0 deg longitude, and at some altitude. I want my velocity vector to be due north. How can I achieve this? Here's what I have so far, but it doesn't seem to work. Any help would be appreciated! double ut = Planetarium.GetUniversalTime(); CelestialBody cb = this.vessel.orbit.referenceBody; Planetarium.CelestialFrame cbFrame = cb.BodyFrame; Vector3d pos = cb.GetWorldSurfacePosition(0, 0, 501000); this.vessel.SetPosition(pos); Vector3 CoM = vessel.localCoM; Vector3d up = (CoM - vessel.mainBody.position).normalized; Vector3d north = Vector3d.Exclude(up, (vessel.mainBody.position + vessel.mainBody.transform.up * (float)vessel.mainBody.Radius) - CoM).normalized; this.vessel.SetWorldVelocity(north * 100); this.vessel.UpdatePosVel(); Thoughts? Thank you!
×
×
  • Create New...