Top | ![]() |
![]() |
![]() |
![]() |
gchar ** | ags_function_collapse_parantheses () |
gchar ** | ags_function_find_literals () |
void | ags_function_literal_solve () |
gboolean | ags_function_push_equation () |
void | ags_function_pop_equation () |
gchar * | ags_function_get_expanded () |
gchar * | ags_funciton_get_normalized () |
AgsComplex * | ags_function_compute_term () |
AgsComplex ** | ags_function_symbolic_translate_value () |
gboolean | ags_function_substitute_values () |
AgsComplex * | ags_function_translate_value () |
AgsFunction * | ags_function_new () |
#define | AGS_FUNCTION() |
#define | AGS_FUNCTION_CLASS() |
#define | AGS_FUNCTION_GET_CLASS() |
#define | AGS_IS_FUNCTION() |
GType | ags_function_get_type () |
gchar * | normalized-function | Read / Write |
gpointer | pivot-table | Read / Write |
gchar * | source-function | Read / Write |
#define | AGS_SYMBOLIC_EULER |
#define | AGS_SYMBOLIC_PI |
#define | AGS_SYMBOLIC_INFINIT |
#define | AGS_SYMBOLIC_COMPLEX_UNIT |
enum | AgsFunctionFlags |
struct | AgsSolverMatrix |
struct | AgsSolverVector |
#define | AGS_TYPE_FUNCTION |
struct | AgsFunction |
struct | AgsFunctionClass |
gchar ** ags_function_collapse_parantheses (AgsFunction *function
,guint *function_count
);
Collapse parantheses by respecting many possibilities.
Since: 2.0.0
gchar ** ags_function_find_literals (AgsFunction *function
,guint *symbol_count
);
Find literal symbols i.e. variable names.
Since: 2.0.0
void
ags_function_literal_solve (AgsFunction *function
);
Solves :source-function literally, allocates the pivot table and creates the normalized function.
Since: 2.0.0
gboolean ags_function_push_equation (AgsFunction *function
,gchar *equation
);
Push an equation to the solver stack.
Since: 2.0.0
void ags_function_pop_equation (AgsFunction *function
,GError **error
);
Pops the functions of the equation stack. Call this function as you're finished with pushing equations.
Since: 2.0.0
gchar * ags_function_get_expanded (AgsFunction *function
,gchar **symbol
,guint symbol_count
);
Expands symbols
to normalized form.
Since: 2.0.0
gchar *
ags_funciton_get_normalized (AgsFunction *function
);
Get internal normalized string.
Since: 2.0.0
AgsComplex * ags_function_compute_term (gchar *term
,gchar *substitute_symbol
,AgsComplex *substitute_value
);
Compute term by substituting substitute_symbol
with substitue_value
and do basic
solving.
term |
the term as string to compute |
|
substitute_symbol |
a variable to substitute |
|
substitute_value |
the AgsComplex value representing |
Since: 2.0.0
AgsComplex ** ags_function_symbolic_translate_value (AgsFunction *function
,gchar *symbol
,AgsComplex *value
);
Symbolic translate to value
for symbol
and compute resulting
vector.
Since: 2.0.0
gboolean ags_function_substitute_values (AgsFunction *function
,gchar *symbol
,...
);
Verify :source-function to be TRUE
or FALSE
by substitution.
function |
the AgsFunction |
|
symbol |
the first symbol as string, or |
|
... |
|
Since: 2.0.0
AgsComplex * ags_function_translate_value (AgsFunction *function
,AgsComplex *value
);
Translates value
by source function.
Since: 2.0.0
AgsFunction *
ags_function_new (gchar *source_function
);
Instantiate a new AgsFunction.
Since: 2.0.0
#define AGS_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), AGS_TYPE_FUNCTION, AgsFunction))
#define AGS_FUNCTION_CLASS(class) (G_TYPE_CHECK_CLASS_CAST((class), AGS_TYPE_FUNCTION, AgsFunctionClass))
#define AGS_FUNCTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS (obj, AGS_TYPE_FUNCTION, AgsFunctionClass))
#define AGS_IS_FUNCTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), AGS_TYPE_FUNCTION))
Enum values to control the behavior or indicate internal state of AgsFunction by enable/disable as flags.
struct AgsSolverMatrix { gchar **function_history; gchar *source_function; AgsSolverVector **term_table; guint row_count; guint column_count; };
struct AgsSolverVector { gchar *term; gchar *term_exp; AgsComplex *numeric_value; gchar *symbol; AgsComplex *exp_value; };