Commit Graph

129 Commits

Author SHA1 Message Date
b794aba68d Update Input-File.md to describe the Factory Function method of alloc… (#1763)
* Update Input-File.md to describe the Factory Function method of allocating objects from the input file.

* Fix issues caught during review. #1763
2024-08-28 10:39:54 -05:00
d2ec14dc02 Wiki button (#1755)
* Added a wiki button

* Removed commented code

* Updated SCP image

---------

Co-authored-by: Pherring04 <plherrin@JSLRL0523040929.ndc.nasa.gov>
2024-08-27 15:03:33 -05:00
b87598c80c Updated to use default-jdk package instead of openjdk-11-jdk for ubuntu. (#1757)
* Updated to use default-jdk package instead of openjdk-11-jdk for ubuntu.

* Added a note for using a specific JDK version for ubuntu.

* Fixed typo
2024-08-20 10:36:16 -05:00
446f1fa757 1747 create a document page for simulation control panel (#1750)
* Created a basic outline for the documentation

* Filled in outline more

* Created the reference images

* Documentation update

* Finish rough draft of Sim Control Panel documentation

* Updated the Throttle documentation

* Documentation updates

* Standardized punctuation

* Update

* Updated Docs

* update control panel

* Unseasoned Simulation Connection

* Shenanigans

* Fixed the shenanigans

* Changed to passive voice, updated graphic

* Update SimControlPanel.md for consistency and clean-up
2024-08-06 10:19:02 -05:00
f666708374 Repurposed -OO for all sim run outputs including S_sie.resource being saved in the specified directory. (#1714)
* Repurposed -OO so all sim run outputs including S_sie.resource are saved to the specified folder. The files are placed in the sub-dir either RUN_xxx or DP_Product of the specified folder.

* Updated for repurposed -OO.

* Added quoting code markdown for such as in order to show <name> as is.

* Added quoting code for missing items.

* Updated to raise an error when the --read-only-sim flag is used without the -O or -OO. Also made updates to the related document accordingly.

* Fixed the error message to be more clear.
2024-07-16 10:31:52 -05:00
c2c068a04a Made updates for macOS especially for Apple Silicon. (#1721) 2024-06-05 11:58:03 -05:00
e044d1f13a Fixed links 2024-05-29 10:41:04 -05:00
982a434957 Update Simulation-Definition-File.md
Added an actual link instead of a placeholder
2024-05-29 10:29:58 -05:00
27e4264c2a Removed double quotes for port number and added some inline code syntax highlighting with back-ticks. (#1717)
* Removed double quotes for port number and added some inline code syntax highlighting with back-ticks.

* Added one more inline code syntax highlighting.
2024-05-23 10:13:50 -05:00
6937d003b3 fixed outdated trick_message function calls in documentation (#1691) 2024-04-18 13:48:20 -05:00
289da24d24 Update Environment Variables to cover TRICK_SWIG_EXCLUDE (#1628)
* Update Environment-Variables.md

* Added clarification to the exclude variables and their purposes.
2023-12-19 15:22:43 -06:00
93b1810a29 Bump swig dependency to 3-4 (#1550) 2023-08-14 10:06:58 -05:00
bbe9768a30 Added separate_thread_set_enabled(bool) function to MessageSimObject class (#1523)
* Added separate_thread_set_enabled(bool) function to MessageSimObject class for user to use the feature of letting trick to write the messages out on a separate thread in a more intuitive way (hopefully ;-).

* Updated Status-Message-System.md for the newly added separate_thread_set_enabled(bool on_off) function in MessageSimObject class of default_trick_sys.sm

* Fixed the bullets

* Put missing update in due to merge.
2023-06-29 13:31:03 -05:00
d3cc021cca Move VariableServerSession logs into subdirectory; make separate toggle for session logs 2023-06-26 12:23:58 -05:00
99ee88a686 Add more Variable Server unit and integration tests, clean up and clarify naming 2023-06-26 12:23:58 -05:00
506bac5de7 Move ICG parsing standard specification to separate flag (#1517) 2023-06-05 14:40:32 -05:00
9c356131bc Add option to specify a C++ standard to ICG for parsing (#1499) 2023-06-01 13:43:23 -05:00
6c685d8400 Revise Documentation, Correct a single constant (#1326) (#1489)
* Fix formatting, grammar, and syntax

Additionally, a sentence that referenced something that isn't used anywhere was removed.

* Promote headers, Format stuff

Many headers were far too deep. In some cases, the highest header was h4. To correct this, the offending headers were promoted once or twice as appropriate. Minor formatting changes were made, too.

* Fixed an incorrect conversion constant.

* Update library dependency explanation

The old explanation was confusing and seemingly self contradicting in places. This new explanation aims to fix that.

Co-authored-by: Matthew Elmer <m.elmer@mailbox.org>
2023-04-21 17:32:31 -05:00
d76de7e1ee Allow for read only S_sie.resource (#1420) 2023-04-17 17:23:48 -05:00
ffed03521c Update Install-Guide.md 2023-04-13 14:26:25 -05:00
0a1a092afa Fix typos and clarify content in TrickOps markdown file (#1475)
Co-authored-by: Dan Jordan <daniel.d.jordan@nasa.gov>
2023-03-22 14:33:14 -05:00
19016b4817 job_class_order no longer accidentally disables some system job classes (#1465) 2023-03-07 08:43:39 -06:00
9099792947 Integrate MonteCarloGenerate capability from EG CML and associated TrickOps enhancements (#1415)
* Provide MonteCarloGenerate capability

Intermediate commit, this squash represents all of Isaac Reaves' work
during his Fall 2022 Pathways internship tour

[skip ci]

* TrickOps: Add phase, [min-max] range, and overhaul YAML verification

* Add new "phase:" mechanism to TrickOps Runs and Builds to support
  project-specific constraints on build and run ordering
  - phase defaults to zero if not specified and must be between -1000
    and 1000 if given.
  - jobs can now optionally be requested by their phase or phase range
  - See trickops/README.md for details
* Add [min-max] notation capability to run: entries and compare: entries
  - [min-max] ranges provide definition of a set of runs using a common
    numbering scheme in the YAML file, greatly reducing YAML file size
    for monte-carlo and other zero-padded run numbering use cases
  - See trickops/README.md for details
* YAML parsing changes
  - Overhaul the logic which verifies YAML files for the expected
    TrickOps format. This is now done in TrickWorkflowYamlVerifier and
    provides much more robust error checking than previous approach
  - .yaml_requirements.yml now provides the required types, ranges, and
    default values as applicable to expected entries in YAML files
  - valgrind: is now an sub-option to run: entries, not its own section
    Users should now list their runs normallly and define their flags in
    in that run's valgrind: subsection
  - parallel_safety is now a per-sim parameter and not global. Users
    should move their global config to the sim layer
  - self.config_errors is now a list of errors. Users should now
    check for empty list when using instead of True/False
* Robustify the get_koviz_report_jobs unit test to work whether koviz
  exists on PATH or not
* Adjust trickops.py to use the new phase and range features
   - Make it more configurable on the command-line via argparse
   - Move SIM_mc_generation tests into test_sims.yml

[skip ci]

* Code review and cleanup from PR #1389

Documentation:

* Adjust documentation to fit suggested symlinked approach. Also
  cleaned up duplicate images and old documentation.
* Moved the verification section out of markdown and into a PDF since it
  heavily leverages formatting not available in markdown.
* Clarify a couple points on the Darwin Trick install guide
* Update wiki to clarify that data recording strings is not supported

MCG Code:

* Replace MonteCarloVariableRandomNormal::is_near_equal with new
  Trick::dbl_is_near from trick team

MCG Testing:

* Reduce the set of SIM_mc_generation comparisons. After discussion
  the trick team, we are choosing to remove all comparisons to
  verif_data/ which contain random-generated numbers since
  these tests cannot pass across all supported trick platforms.
* Fix the wrong rule on exlcuding -Werror for Darwin builds
  of SIM_mc_generation
* Remove data recording of strings in SIM_mc_generation

Trickops:

* Replace build_command with build_args per discussion w/ Trick team
  Since we only support arguments to trick-CP, replace the build_command
  yaml entry with build_args
* Disable var server connection by default in SingleRun if TrickWorkflow.quiet
  is True
* Guard against multiple Job starts
* Remove SimulationJob inheritance layer since old monte-carlo wasn't
  and never will be supported by TrickOps
* Ignore IOError raise from variable_server that looks like "The remote
  endpoint has closed the connection". This appears to occur when
  SingleRun jobs attempt to connect to the var server for a sim that
  terminates very early

[skip ci]

* Adjust phasing of old/new MCG initialize functions

* Clarify failure message in generate_dispersions if new/old MC are both
  used.
* Adjust the phasing order of MCG intialize method to be before
  legacy MC initialized. Without this, monte-carlo dry run completes with
  success before the check in generate_dispersions() can run
* Add -Wno-stringop-truncation to S_override.mk for SIM_mc_generation
  since gcc 8+ warns about SWIG generated content in top.cpp

* Introduce MonteCarloGenerationHelper python class

This new class provides an easy-to-use interface for MCG sim-module
users:

1. Run generation
2. Getting an sbatch array job suitable for SLURM
3. Getting a list of SingleRun() instances for generated runs, to be
   executed locally if desired

---------

Co-authored-by: Dan Jordan <daniel.d.jordan@nasa.gov>
2023-03-06 09:25:50 -06:00
5f6a5de070 Expand SIM_test_varserver (#1459)
* Add tests for alternate ways to open VS port

* Don't connect to varserv when quiet=true in trickops

* Add print to try to help debug hanging trickops test

* Handle multicast connect failures gracefully

* Multicast is disabled by default on mac

* Forgot an important return value

* Take away retries

* Fix issue with restart test

* Revert trickops debugging changes

* Remove debugging accidentally left in [no ci]

* whoops

* Allow retries

* Update trickops.py

* sim test adjustments

* Add docs [no ci]

* wording [no ci]

* Cleanup

* Remove large messages, test that one in unit tests
2023-02-24 14:44:55 -06:00
a8c9572186 Correct check for unsupported types in data recording (#1458) 2023-02-16 16:27:47 -06:00
8821bac18a Handle empty PYTHON_MODULE in header comment (#1432) 2023-01-23 08:50:13 -06:00
5ff52a01c5 Add option to terminate sim on python event error (#1434) 2023-01-20 15:46:10 -06:00
75b05a865f Correct function names in Variable-Server.md 2022-12-06 13:37:32 -06:00
3870dc73b6 Improve tutorial documentation (#1408) 2022-12-02 14:55:40 -06:00
1b394e9386 Add test sim for interaction between data recording and checkpointing (#1398)
* Add test sim and documentation for interaction between data recording and checkpointing
* Dump failing logs from first phase jobs
2022-11-21 11:57:19 -06:00
d9e7ac250d Refactored sim tests to run through TrickOps (#1390) 2022-11-17 15:43:29 -06:00
2a03ff5cf4 Replace sprintf with snprintf in all of Trick source. #1384 (#1392)
* Replace sprintf with snprintf in all of Trick source. #1384

* Don't add -Werror for MacOS because of deprecated sprintf warnings which we cant get rid of because SWIG. #1384

* Fixed an unbalanced parenthesis in S_overrides.mk. #1384
2022-11-15 15:00:05 -06:00
265513684a Update Install-Guide.md 2022-11-15 09:54:17 -06:00
9d305fec09 Add a way to disable sim objects (#1364)
* Add set_sim_object_jobs_onoff, get_sim_object_on_off, and change set_sim_object_onoff to preserve the on/off status of jobs
2022-11-15 09:16:08 -06:00
716d35a63e fix link in SSL to Webserver APIs 2022-11-10 12:10:14 -06:00
e65a0b0783 Add python 2 instructions to install guide 2022-11-04 09:20:09 -05:00
cbe2b7fe32 Update Checkpoints.md 2022-10-26 13:53:53 -05:00
1da5092ac8 Update Documentation-Home.md 2022-10-07 17:10:16 -05:00
bb34c37de7 Fix broken link in docs 2022-10-07 17:03:47 -05:00
ff04d211ee Fix broken link in docs 2022-10-07 17:03:04 -05:00
2519c914a5 Pair checkpointing fix (#1356)
* Fix pair checkpointing bug, add tests
* Documentation update
2022-10-07 17:00:09 -05:00
3d2e8e52ca Set checkpointing fix (#1357)
* Fix set checkpointing, add tests
* Documentation update
2022-10-07 14:24:21 -05:00
f19ba7df78 Test and Document STL Checkpointing (#1355)
* Updates SIM_stl to include checkpoint writing and checkpoint restore, as well as adding more data structures to test
* Thoroughly tests supported STL types with MM_stl_checkpoint and MM_stl_restore
* Adds an option to enable or disable STL restore in accessible interfaces and changes default to true
* Updates documentation on STL checkpointing to clearly state limitations and known bugs
2022-10-07 08:37:09 -05:00
1769bb7061 Update Install-Guide.md 2022-09-26 15:15:03 -05:00
99bdf509b3 Update Install-Guide.md 2022-09-26 15:11:21 -05:00
4ac9777ab8 Move Troubleshooting link 2022-09-26 15:10:12 -05:00
550991669d Add uninstall old trick to troubleshooting in install guide 2022-09-26 15:09:32 -05:00
d8df914ebf Add Environment section to Troubleshooting in Install Guide 2022-09-26 14:58:57 -05:00
5906efe0f9 Document that Trick does not in fact yet support C++ STL types #1339 2022-09-02 16:33:53 -05:00
bcaaeedd89 Fix syntax on job_class_order docs 2022-08-26 11:51:25 -05:00