|
|
csmapping.c File ReferenceImplementation of the functions operating on Tmapping. More... #include "csmapping.h" #include "defines.h" #include <math.h> Go to the source code of this file.
Detailed DescriptionImplementation of the functions operating on Tmapping.
Definition in file csmapping.c. Function Documentation
Generates a trivial mapping between two variable sets. The mapping is defined by checking which variables in one set are also present in the other. We identify variables using their name.
Definition at line 14 of file csmapping.c. References AddTerm2LinearConstraint(), CopyVariables(), GetVariable(), GetVariableID(), GetVariableName(), InitLinearConstraint(), Tmapping::lc, NEW, NO_UINT, NVariables(), Tmapping::orig, Tmapping::original, Tmapping::related, Tmapping::simple, Tmapping::sizeO, and Tmapping::sizeS. Referenced by SimplifyCuikSystem().
Here is the call graph for this function:
Here is the caller graph for this function:
Copies one mapping into another.
Definition at line 64 of file csmapping.c. References CopyLinearConstraint(), CopyVariables(), Tmapping::lc, NEW, Tmapping::orig, Tmapping::original, Tmapping::related, Tmapping::simple, Tmapping::sizeO, and Tmapping::sizeS. Referenced by CopyCuikSystem().
Here is the call graph for this function:
Here is the caller graph for this function:
Links a variable in the original problem with a variable in the simplified problem via a linear relation
Definition at line 100 of file csmapping.c. References CopyLinearConstraint(), Error(), Tmapping::lc, Tmapping::related, and TRUE. Referenced by SimplifyCuikSystem().
Here is the call graph for this function:
Here is the caller graph for this function:
Returns the linear constraint of variables in the simple set that defines a variable in the original set. The output linear constraint is defined inside this function.
Definition at line 111 of file csmapping.c. References CopyLinearConstraint(), InitLinearConstraint(), Tmapping::lc, and Tmapping::related. Referenced by RewriteEquation().
Here is the call graph for this function:
Here is the caller graph for this function:
Size of the variable set in the original system.
Definition at line 119 of file csmapping.c. References Tmapping::sizeO.
Size of the variable set in the simplified system.
Definition at line 124 of file csmapping.c. References Tmapping::sizeS.
Gets the numerical identifier in the original set of variables corresponding to a variable in the simplified set (given by its numerical identifier).
Definition at line 129 of file csmapping.c. References NO_UINT, and Tmapping::orig. Referenced by ComputeSplitDim().
Here is the caller graph for this function:
Applies the mapping to define a box corresponding to the simple system from a box corresponding to the original system. We simply get the sub-set of the original variables used in the simplified one and join them into a box. The box s is create inside this function.
Definition at line 137 of file csmapping.c. References BoxFromVariables(), CopyInterval(), GetBoxInterval(), NO_UINT, Tmapping::orig, Tmapping::simple, and Tmapping::sizeS. Referenced by ComputeSplitDim(), MaxReduction(), and SimplifyCuikSystem().
Here is the call graph for this function:
Here is the caller graph for this function:
Applies the mapping to define a box corresponding to the original system from a box corresponding to the simple system. Variables in the original, not included in the simplification are not changed. Note the difference with SimpleFromOriginal : here the output box o is just updated and not created from scratch.
Definition at line 159 of file csmapping.c. References CopyInterval(), EvaluateLinearConstraintInt(), GetBoxInterval(), GetBoxIntervals(), GetLinearConstraintError(), Intersection(), IntervalAdd(), IntervalInvert(), Tmapping::lc, Tmapping::related, and Tmapping::sizeO. Referenced by MaxReduction(), PostProcessBox(), and ReGenerateOriginalBox().
Here is the call graph for this function:
Here is the caller graph for this function:
Prints a the linear relations defining a mapping into a stream, possibly stdout. The mapping is printed in the form
where vo is an original variable and vs is a simplifed one.
Definition at line 184 of file csmapping.c. References FALSE, GetVariableNames(), Tmapping::lc, NEW, Tmapping::original, PRINT_VARIABLE_NAME, PrintLinearConstraint(), Tmapping::related, Tmapping::simple, Tmapping::sizeO, and Tmapping::sizeS. Referenced by PrintCuikSystemWithSimplification().
Here is the call graph for this function:
Here is the caller graph for this function:
Loads the mapping information into a file. Note that the variable sets are load from the file and, thus, the mappings build from a file have no access to the variable names (this is used only for pretty printing the mappings).
Definition at line 232 of file csmapping.c. References InitLinearConstraint(), Tmapping::lc, LoadLinearConstraint(), NEW, Tmapping::orig, Tmapping::original, Tmapping::related, Tmapping::simple, Tmapping::sizeO, and Tmapping::sizeS.
Here is the call graph for this function:
Saves the mapping information into a file. Note that the variable sets are not stored in the files. See LoadMapping for more about the consequences of this.
Definition at line 257 of file csmapping.c. References Tmapping::lc, Tmapping::orig, Tmapping::related, SaveLinearConstraint(), Tmapping::sizeO, and Tmapping::sizeS. Referenced by SaveCuikSystemSimplification().
Here is the call graph for this function:
Here is the caller graph for this function:
Deletes a mapping.
Definition at line 276 of file csmapping.c. References DeleteLinearConstraint(), DeleteVariables(), Tmapping::lc, Tmapping::orig, Tmapping::original, Tmapping::related, Tmapping::simple, and Tmapping::sizeO. Referenced by UnUpdateCuikSystem().
Here is the call graph for this function:
Here is the caller graph for this function:
|