class TIRealRadical(RealEntry): (source)
Constructor: TIRealRadical(init, for_flash, name, version, ...)
Parser for real radicals
A TIRealRadical
is an exact sum of two square roots with rational scalars.
Specifically, a TIRealRadical
can represent numbers of the form (± a√b ± c√d) / e.
All values are non-negative, with signs tracked separately. Additionally, b > d ≥ 0 and e > 0.
Each value is given three nibbles of storage in BCD format. Sign information for each radical is stored in an additional nibble.
A TIRealRadical
can be used to form TIComplexRadical
complex numbers.
Method | __format__ |
Formats this entry for string representations |
Method | calc |
The data section of the entry which is loaded on-calc |
Method | decimal |
No summary |
Method | denominator |
The denominator of the real radical |
Method | left |
The left radicand of the real radical |
Method | left |
The left scalar of the real radical |
Method | load |
Loads a decimal into this real number |
Method | load |
Loads this entry from a string representation |
Method | right |
The right radicand of the real radical |
Method | right |
The right scalar of the real radical |
Method | sign |
The sign type of the real radical |
Class Variable | flash |
Whether this entry only supports flash chips |
Class Variable | imag |
The subtype ID this type receives if used as an imaginary part |
Class Variable | is |
Whether this numeric type is exact |
Class Variable | min |
The minimum length of this entry's data |
Class Variable | versions |
The possible versions of this entry |
Property | sign |
No summary |
Property | signed |
The left scalar of the real radical, with sign attached |
Property | signed |
The right scalar of the real radical, with sign attached |
Class Variable | _type |
Undocumented |
Inherited from RealEntry
:
Method | __float__ |
Undocumented |
Method | __init__ |
Creates an empty entry with specified meta and data values |
Method | __int__ |
Undocumented |
Method | __neg__ |
Undocumented |
Method | clear |
Clears this entry's data |
Method | coerce |
Coerces this entry to a subclass if possible using the entry's type ID |
Method | float |
No summary |
Method | get |
Determines the minimum OS that supports this entry's data |
Method | graph |
Whether the entry is used during graphing |
Method | json |
Encoder for JSON implementations with potentially low precision |
Method | load |
Loads a float into this real number, upcasting as necessary |
Method | sign |
The sign bit for the number |
Method | subtype |
The subtype ID of the number |
Method | supported |
Determines whether a given model can support this entry |
Class Variable | extensions |
The file extension used for this entry per-model |
Class Variable | min |
The smallest allowed floating point exponent |
Property | subtype |
The subtype of this real number |
Constant | _T |
Undocumented |
Inherited from TIEntry
(via RealEntry
):
Class |
|
Raw bytes container for TIEntry |
Class Method | get |
Converts bytes -> TIEntry |
Class Method | get |
Gets the subclass corresponding to a type ID if one is registered |
Class Method | open |
Creates a new entry from a file given a filename |
Class Method | register |
Registers a subtype with this class for coercion |
Class Method | set |
Converts TIEntry -> bytes |
Static Method | next |
Helper function to determine the length of the next entry in a bytestream |
Method | __bool__ |
No summary |
Method | __bytes__ |
No summary |
Method | __copy__ |
No summary |
Method | __eq__ |
Determines if two entries are the same type and have the same bytes |
Method | __iter__ |
No summary |
Method | __len__ |
No summary |
Method | __str__ |
No summary |
Method | archive |
Archives this entry (if supported) |
Method | archived |
Whether the entry is archived |
Method | bytes |
The bytes contained in this entry, without any var file header or metadata. |
Method | data |
The entry's user data |
Method | dict |
No summary |
Method | export |
Exports this entry to a TIVar with a specified name, header, and target model |
Method | get |
Determines the version byte corresponding to given data for this entry type |
Method | load |
Loads a byte string or bytestream into this entry |
Method | load |
Loads the data of this entry from a bytestream |
Method | load |
Loads this entry from a JSON dictionary representation |
Method | load |
Loads this entry from a file given a file pointer and offset |
Method | meta |
The length of the meta section of the entry |
Method | name |
The name of the entry |
Method | save |
Saves this entry as a var file in the current directory given a filename and optional header and targeted model |
Method | string |
No summary |
Method | type |
The type ID of the entry |
Method | unarchive |
Unarchives this entry (if supported) |
Method | version |
The version number of the entry |
Class Variable | base |
Undocumented |
Class Variable | flash |
Undocumented |
Class Variable | leading |
Bytes that always begin this entry's data |
Class Variable | leading |
Byte that always begins the name of this entry |
Instance Variable | raw |
Undocumented |
Property | calc |
The length of the data section of the entry |
Property | flash |
The flash bytes of this entry if they exist |
Property | is |
Whether this entry's data is empty |
Property | meta |
The meta section of this entry |
Method | __init |
Undocumented |
Class Variable | _type |
Undocumented |
Inherited from Dock
(via RealEntry
, TIEntry
):
Method | load |
Loads data into an instance by delegating to Loader methods based on the input's type |
Class Variable | loaders |
Undocumented |
tivars.types.real.RealEntry.calc_data
The data section of the entry which is loaded on-calc
tivars.types.real.RealEntry.decimal
Returns | |
Decimal | A decimal object corresponding to this real number |
tivars.types.real.RealEntry.load_decimal
Loads a decimal into this real number
Parameters | |
decimal:Decimal | The decimal to load |
tivars.var.TIEntry.load_string
Loads this entry from a string representation
Parameters | |
string:str | The string to load |
The sign type of the real radical
If the sign type is odd (first bit is set), the left scalar is negative. If the sign type is greater than one (second bit is set), the right scalar is negative.
The minimum length of this entry's data
If an entry's data is fixed in size, this value is necessarily the length of the data