UNPKG

@rwk/physics-math

Version:
32 lines 1.65 kB
/** * @packageDocumentation * @module Functionals */ import { BaseValueInFrame, BaseValueRelative, TYPE } from "./math-types"; import { PCalculus } from "./pfunction"; import { IndefiniteIntegral, IPCompileResult, IPFunction, IPFunctionCalculus, Value, Variable } from "./base"; import { Units } from "./unit-defs"; import { Unit, Divide, Multiply } from "./units"; import { StyleContext } from "./latex"; /** * Scalar constants */ export declare class ScalarConstant<C extends Unit = Unit> extends PCalculus<number, C, Divide<C, Units.time>, Multiply<C, Units.time>> implements Value<number, C> { readonly value: number; constructor(value: number, unit: C); protected compileFn(): IPCompileResult<number>; toTex(varName?: Variable, ctx?: StyleContext): string; toTexWithUnits(varName?: Variable, ctx?: StyleContext): string; differentiate(): ScalarConstant<Divide<C, Units.time>> & IPFunctionCalculus<number, Divide<C, Units.time>, 1, Multiply<C, Units.time>, C>; integrate(): IndefiniteIntegral<number, Multiply<C, Units.time>, C>; get returnType(): TYPE.SCALAR; equiv<T>(f: T): null | this | T; } /** * Get an IConstant from a value or a function at T=0; * @param v A value, a PFunction, or a Value. * @param unit a Unit describing the type of constant. */ export declare function constant<T extends BaseValueRelative, U extends Unit>(v: T | IPFunction<T, U> | Value<T, U>, unit: U): Value<T, U>; export declare function constant<T extends BaseValueInFrame, U extends Unit>(v: T | IPFunction<T, U> | Value<T, U>, unit: U): Value<T, U>; //# sourceMappingURL=scalar.d.ts.map