Model satellites with two-body, SGP4, or SDP4 orbit propagators. Visualize 2D and 3D satellite orbits including field of view, ground tracks, and sky plots for navigation. Generate satellite constellations from TLE files or ephemeris data.
Satellite List Toolkit
Analyze, design, and visualize link budgets for satellite communications. Evaluate link budget tradeoffs by customizing parameters including free space path loss, power amplifier gains, and link distances. Customize the analysis with additional user-specified input parameters.
Use ITU-R P.618 propagation loss models to design Earth-space links for satellite communications systems. Use ETSI-specified Rician and land mobile satellite (LMS) channels for link-level simulation of geostationary (GEO) satellites.
As part of our continuing mission to reduce cybersecurity risk across U.S. critical infrastructure partners and state, local, tribal, and territorial governments, CISA has compiled a list of free cybersecurity tools and services to help organizations further advance their security capabilities. This living repository includes cybersecurity services provided by CISA, widely used open source tools, and free tools and services offered by private and public sector organizations across the cybersecurity community. CISA will implement a process for organizations to submit additional free tools and services for inclusion on this list in the future.
The list is not comprehensive and is subject to change pending future additions. CISA applies neutral principles and criteria to add items and maintains sole and unreviewable discretion over the determination of items included. CISA does not attest to the suitability or effectiveness of these services and tools for any particular use case. CISA does not endorse any commercial product or service. Any reference to specific commercial products, processes, or services by service mark, trademark, manufacturer, or otherwise, does not constitute or imply their endorsement, recommendation, or favoring by CISA.
After making progress on the measures above, organizations can use the free services and tools listed below to mature their cybersecurity risk management. These resources are categorized according to the four goals outlined in CISA Insights: Implement Cybersecurity Measures Now to Protect Against Critical Threats:
Packing tape in case you need to ship something back to Ground Control. Would you like to know more? We're here to help if you have any questions about Ground Control's products or services, or just want to learn more about IoT, critical communications, and satellite and cellular connectivity.Call or email us, or complete the form and one of our team will get back to you. Contact Us Contact Us
Below are supplies that may be needed to conduct a satellite, temporary, or off-site vaccination clinic. The list may not be comprehensive. Your state or local public health immunization program may also have a checklist.
Frozen vaccines may only be administered at satellite, temporary, and off-site clinics if they can be safely shipped to and monitored at the site. They should never be transported from one location to another.
SPICE system kernels and routines refer to ephemeris objects, reference frames, and instruments by integer codes, usually referred as the ID. The reference frame ID-name mappings routines constitute a subsystem separate from the body ID-name mapping routines. Please refer to the Frames Required Reading document (frames.req) for specific information. Likewise, the surface ID-name mappings routines constitute a subsystem separate from the body ID-name mapping routines. Please refer to the DSK Required Reading document (dsk.req) for specific information. An ephemeris object is any object that may have ephemeris or trajectory data such as a planet, natural satellite, tracking station, spacecraft, barycenter (the center of mass of a group of bodies), asteroid, or comet. Each body in the solar system is associated with an integer code for use with SPICE. The names and codes for many of these objects are listed below. Spacecraft ID codes are negative. These ID codes are usually derived from NASA control authority assignments. Instruments mounted on spacecraft also have ID codes. These are determined by multiplying the spacecraft ID by 1000 and subtracting the ordinal number of the instrument from the resulting product. Thus we can algorithmically recover the spacecraft code from an instrument code, and each instrument may have a unique code as long as there are 999 or fewer on a spacecraft. Caution: the NASA spacecraft ID control authority at GSFC is forced into reusing some IDs. This can affect the SPICE system for planetary or other spacecraft for which ID-name mappings are registered. (Here "registered" means a spacecraft for which use of the SPICE system is an actuality, or was contemplated.) Three cases exist. 1. This document and ID-to-name mapping software include both past and currentID-name mappings for cases where both the old and the new ID assignmentsare for spacecraft registered within SPICE. The last mentioned ID-to-namemapping in this document is the one that will be used in SPICE software toeffect ID-to-name translations within SPICE-based code.2. This document and ID-to-name mapping software contain only a mapping forthe current use of a given ID if prior uses involved spacecraft neverregistered with SPICE (e.g. many non-planetary missions).3. This document and ID-to-name mapping software contain only a mapping for aprior use of a given ID if that prior use was for a spacecraft registeredwithin SPICE and current use of the ID is for a spacecraft not registeredwithin SPICE. For spacecraft the ID-to-name mapping may be a one-to-many mapping, allowing two or more names for a spacecraft to exist for a single numeric ID. The last mentioned ID-to-name mapping in this document is the one that will be used in SPICE software to effect ID-to-name translations within SPICE-based code. As the reader will see, ID codes now show the wear that results from an expanding system. As the SPICE system has expanded so has the number of objects that require identifying codes. Many of these objects do not fit neatly into the schemes originally envisioned as needing ID codes. As a result, the current system is a bit eclectic. Top
If necessary, a user may elect to load additional name-ID pairs for access by SPICE software. These pairs may be new definitions, or they may override the default mapping assignment. Create new name-ID pairs With a text kernel such as \begintext Define an additional set of body, ID code mappings. \begindata NAIF_BODY_CODE += ( 22, 23, 24, 25 ) NAIF_BODY_NAME += ( 'LARRY', 'MOE', 'CURLEY', 'SHEMP' ) Load the kernel as usual with a FURNSH call. The names defined in NAIF_BODY_NAME map to the corresponding index of NAIF_BODY_CODE, i.e. LARRY->22, MOE->23, etc, and the IDs in NAIF_BODY_CODE map to the corresponding index of NAIF_BODY_NAME. If an external ID kernel is used, be aware of several rules: 1. All ID codes MUST be listed in the kernel variable NAIF_BODY_CODE, and allnames MUST be listed in the kernel variable NAIF_BODY_NAME.2. The SPICE system can access 14983 external name-ID pairs defined via a textkernel. SPICE signals an error when the number of assignments exceeds14983.3. Names must be no longer than 36 characters. SPICE truncates charactersbeyond 36th without signaling an error.4. You may assign an ID code to multiple names. A BODC2N call returns the lastname assigned; a last in, first out situation. Since NAIF_BODY_CODE and NAIF_BODY_NAME are kernel variables, use of the "+=" notation in the previous example means the values are appended to the mapping set present in memory. For example, the block: \begindata NAIF_BODY_CODE += ( 170100, 170101 ) NAIF_BODY_NAME += ( 'Enterprise', 'Enterprise-A' ) appends the two pairings to the existent set of mappings. CAUTION: Use of the assignment operator, ''='', instead of the append operator, ''+='', destroys any previous name-ID definitions for a kernel variable. Top
As of release N53, the SPICE Toolkit provides the user the functionality to override or mask any name/ID mapping. Use a BODDEF call or define NAIF_BODY_NAME, NAIF_BODY_CODE assignments from a text kernel to perform a masking operations. Simplistically, the mask functionality provides the user the option of mapping multiple names to the same code. Name/ID assignments function within a precedence hierarchy, so a lower precedence operation cannot affect previous assignments created by an operation of higher precedence. Kernel pool definitions have the highest precedence, BODDEF definitions next, and finally the default definitions. The order of assignments is significant. Highest precedence (1) Kernel pool final assignment (2) Kernel pool initial assignment (3) A ``boddef'' call final assignment (4) A ``boddef'' call initial assignment (5) The default mappings final assignment (6) The default mappings initial assignment Lowest precedence Example 1: Assign the name 'x' (lower case) to ID 1000 with BODDEF: CALL BODDEF( 'x', 1000 ) A call to BODC2N with 1000 as the input ID: CALL BODC2N( 1000, NAME, FOUND ) returns the name 'x'. The BODN2C calls: CALL BODN2C( 'x', CODE, FOUND ) CALL BODN2C( 'X', CODE, FOUND ) both return the ID as 1000. Note the case insensitivity of the name input. Now a demo of simple masking functionality. Assign a new name to ID 1000: CALL BODDEF( 'Y', 1000 ) so the BODN2C call CALL BODN2C( 'Y', CODE, FOUND ) returns an ID of 1000. In a similar manner, the BODC2N call: CALL BODC2N( 1000, NAME, FOUND ) returns the name 'Y'. Still, the code assigned to 'x' persists within SPICE as the call: CALL BODN2C( 'x', CODE, FOUND ) also returns ID 1000. If we reassign 'Y' to a different ID: CALL BODDEF( 'Y', 1001 ) then make a BODC2N call with 1000 as the input ID: CALL BODC2N( 1000, NAME, FOUND ) the routine returns the name 'x'. We assigned an ID to 'x', masked it with another name, then demasked it by reassigning the masking name, 'Y'. If a BODDEF assigns an existing name to an existing code, that assignment takes precedence. Example 2: CALL BODN2C( 'THEBE', CODE, FOUND ) returns a code value 514. Likewise CALL BODC2N( 514, NAME, FOUND ) returns a name of 'THEBE'. Yet the name '1979J2' also maps to code 514, but with lower precedence. The BODDEF call: CALL BODDEF( '1979J2', 514 ) places the '1979J2' 514 mapping at the top of the precedence list, so: CALL BODC2N( 514, NAME, FOUND ) returns the name '1979J2'. Note, 'THEBE' still resolves to 514. In those cases where a kernel pool assignment overrides a BODDEF, the BODDEF mapping 'reappears' when an UNLOAD, KCLEAR or CLPOOL call clears the kernel pool mappings. Example 3: Execute a BODDEF call: CALL BODDEF( 'vehicle2', -1010 ) A BODC2N call: CALL BODC2N( -1010, NAME, FOUND ) returns the name 'vehicle2' as expected. If you then load the name/ID kernel body.ker: \begindata NAIF_BODY_NAME = ( 'vehicle1' ) NAIF_BODY_CODE = ( -1010 ) \begintext with FURNSH: CALL FURNSH( 'body.ker' ) the BODC2N call: CALL BODC2N( -1010, NAME, FOUND ) returns 'vehicle1' since the kernel assignment take precedence over the BODDEF assignment. The name/ID map state: -1010 -> vehicle1 vehicle1 -> -1010 vehicle2 -> -1010 Now, unload the body kernel: CALL UNLOAD( 'body.ker' ) The BODDEF assignment resumes highest precedence. CALL BODC2N( -1010, NAME, FOUND ) The call returns 'vehicle2' for the name. CAUTION: Please understand a CLPOOL or KCLEAR call deletes all mapping assignments defined through the kernel pool. No similar clear functionality exists to clear BODDEF. BODDEF assignments persist unless explicitly overridden. Top 2ff7e9595c
Comentarios