Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


The MathWorks, Inc.

The MathWorks, Inc. Patent applications
Patent application numberTitlePublished
20120131545GENERATION OF CODE FROM A GRAPHICAL MODEL - A method and system are provided for generating code from a graphical model in a graphical modeling environment. The graphical model includes at least one signal having a data size, a data dimensionality, or both that can vary from a first time instance to a second time instance as the model executes. The size and dimensionality of the signal can vary without the use of a graphically rendered connection to convey the size and dimension information to a block associated with the signal.05-24-2012
20120124552TRACEABILITY IN A MODELING ENVIRONMENT - Exemplary embodiments employ a mapping among entities that are related to each other. The entities may include a graphical model, generated code, a generated report, a requirements document and/or an intermediate representation. The mapping may facilitate graphical identifications between parts of one entity that maps to part of another entity. The graphical identification may occur based on a selection of a part in one of the entities.05-17-2012
20120101971STAGE EVALUATON OF A STATE MACHINE - The present invention provides a method and system for stage evaluation of a state machine model. Two types of transitions are used: first-stage transitions and second-stage transitions for a two-stage evaluation. In one embodiment, top-down processing and bottom-up processing may be combined using a two-stage evaluation. First-stage transitions are used with top-down processing while second-stage transitions are used with bottom-up processing. Certain conditions are used to determine if a switch from one type of stage processing to another type of stage processing is needed.04-26-2012
20120096439TRACEABILITY IN A MODELING ENVIRONMENT - Exemplary embodiments employ a mapping among entities that are related to each other. The entities may include a graphical model, generated code, a generated report, a requirements document and/or an intermediate representation. The mapping may facilitate graphical identifications between parts of one entity that maps to part of another entity. The graphical identification may occur based on a selection of a part in one of the entities.04-19-2012
20120096430TRACEABILITY IN A MODELING ENVIRONMENT - Exemplary embodiments employ a mapping among entities that are related to each other. The entities may include a graphical model, generated code, a generated report, a requirements document and/or an intermediate representation. The mapping may facilitate graphical identifications between parts of one entity that maps to part of another entity. The graphical identification may occur based on a selection of a part in one of the entities.04-19-2012
20120084695IDENTIFICATION OF SEMANTICALLY RELEVANT CONCEPTS IN A GRAPHICAL MODEL - In an embodiment, a plurality of graphical elements of a graphical model may be displayed on a display device. An indication of a graphical operation involving a first graphical element of the plurality of graphical elements may be received. The graphical operation when performed may establish a relationship between the first graphical element and one or more other graphical elements of the plurality of graphical elements that are compatible with the graphical operation. Two or more graphical elements of the plurality of graphical elements that are compatible with the graphical operation and one or more characteristics associated with the first graphical element may be identified. A visual indication may be provided on the display device. The visual indication may indicate that the identified plurality of graphical elements is compatible with the graphical operation.04-05-2012
20120084070BI-DIRECTIONAL PROJECTION - In an embodiment, one or more computer-readable media holding executable instructions is provided. The instructions may be executed on a processing device to project a specification to a platform environment that includes a system model. The media may hold one or more instructions for accessing an algorithm model, the algorithm model being associated with the specification. The media may further hold one or more instructions for projecting the specification to the system model via a forward projection. The media may hold one or more instructions for receiving a reverse projection that includes specification changes, the specification changes identifying suggested changes to the specification. The media may further hold one or more instructions for modifying the algorithm model based on the specification changes, and the media may hold one or more instructions for storing the modified algorithm model.04-05-2012
20120084069GENERATING AND DELAYING FUNCTION CALLS IN A DISCRETE EVENT MODELING ENVIRONMENT - A mechanism to dynamically vary the amount of delay for an event-generated function call is discussed. The event causing the generation of the function call may be a signal-based event, function call event or some other type of event. A function call generating delay component is inserted into a DES model and dynamically adjusts the amount of delay to apply prior to generating and transmitting the function call to an intended target component. The function call generating component reads a value from an input port in determining the amount of delay. The identified value at the input port may be a signal value or an attribute associated with an event entity received at the port.04-05-2012
20120072399NON-INTRUSIVE DATA LOGGING - Mediums, methods, and systems are provided for efficiently logging data. A model may include one or more logging points which process data, the data being stored in a log associated with the logging point. The logging point may request that a logging object store the data point. The logging object may include a reference to a vector for storing the data point. When two or more logging objects are associated with the same logged data points, the two or more logging objects may share the same vector. If an object logs a point which is not present in a shared vector, the object may update the object's reference so that the object references a different existing vector, or the object may create a new vector. The vectors may be compressed and/or made circular to achieve improved efficiency.03-22-2012
20120042300PARTITIONING FOR MODEL-BASED DESIGN - A method includes characterizing portions of a model as being either critical to a real-time execution of the model or non-critical to a real-time execution of the model, and generating code that is capable of real-time execution based on the critical portions of the model while maintaining the full functionality of the non-real-time critical sections, e.g., graphics, logging, other offline calculations, via a communication link and parallel host processing.02-16-2012
20120041746SYSTEM AND METHOD FOR DIGITAL EFFECTS ANALYSIS - An analysis tool analyzes a model to determine the digital effect of the model in a modeling or programming environment. With the analysis tool, a user can determine minimum hardware functionality needed to execute the software generated from the model. The hardware functionality may include the word size of the microprocessor that executes the software appropriately. The hardware functionality may also include the execution speed of the microprocessor executing the software. The hardware functionality may further include the functionality of other hardware elements, such as the word length of an Analog to Digital converter. The analysis tool enables a user to produce a system at a low cost while achieving necessary performance criteria.02-16-2012
20120036519CALLING OF LATE BOUND FUNCTIONS FROM AN EXTERNAL PROGRAM ENVIRONMENT - The present invention is directed toward automatically integrating a late bound program language into an external environment. The external environment may be an early bound environment, a late bound environment or some combination thereof. Associated with the late bound program environment is a modular execution engine and an interface mechanism, wherein the interface mechanism is capable of expressing late bound semantics in a format compatible with the external environment.02-09-2012
20120036235USE OF DYNAMIC PROFILES FOR CREATING AND USING A DISTRIBUTED COMPUTING ENVIRONMENT - A system is configured to create a profile that allows a job to be performed within a distributed computing environment comprising one or more computing devices; provide an interface that allows the profile to be specified; obtain a scheduler component via the interface, where the scheduler component identifies a scheduler to be used to perform the job and an application that at least one of the computing devices, that is specified by the scheduler, is to use when performing the job; obtain, via the interface, a project component that identifies data on which the job is to be based; and create the profile based on the scheduler component and the project component.02-09-2012
20120035748INTERACTIVE SYSTEM FOR CONTROLLING MULTIPLE INPUT MULTIPLE OUTPUT CONTROL (MIMO) STRUCTURES - Exemplary embodiments allow users to interactively formulate and solve multivariable feedback control problems. For example, users can solve problems where a plurality of control elements are distributed over one or more feedback loops and need to be jointly tuned to optimize overall performance and robustness of a control system. Embodiments allow users to specify design requirements and objectives in formats familiar to the user. Embodiments can operate on tunable parameters to solve the control problem in a manner that satisfies the design requirements and/or objectives provided by the user.02-09-2012
20120016654BI-DIRECTIONAL PROJECTION - In an embodiment, one or more computer-readable media holding executable instructions is provided. The instructions may be executed on a processing device to project a specification to a platform environment that includes a system model. The media may hold one or more instructions for accessing an algorithm model, the algorithm model being associated with the specification. The media may further hold one or more instructions for projecting the specification to the system model via a forward projection. The media may hold one or more instructions for receiving a reverse projection that includes specification changes, the specification changes identifying suggested changes to the specification. The media may further hold one or more instructions for modifying the algorithm model based on the specification changes, and the media may hold one or more instructions for storing the modified algorithm model.01-19-2012
20120011347PARALLEL PROGRAMMING INTERFACE TO DYNAMICALY ALLOCATE PROGRAM PORTIONS - A computing device-implemented method includes receiving a program created by a technical computing environment, analyzing the program, generating multiple program portions based on the analysis of the program, dynamically allocating the multiple program portions to multiple software units of execution for parallel programming, receiving multiple results associated with the multiple program portions from the multiple software units of execution, and providing the multiple results or a single result to the program.01-12-2012
20120005650HARDWARE SPECIFIC CODE GENERATION - A computer-implemented method for generating code based on a graphical model may include: translating the graphical model into a graphical model code, the graphical model code including a first graphical model code function; performing a lookup of the first graphical model code function in a hardware specific library, the hardware specific library comprising a plurality of relationships between graphical model code functions and hardware specific functions, where the first graphical model code function is one of the graphical model code functions; obtaining a matched hardware specific function based on the lookup, wherein the matched hardware specific function is one of the hardware specific functions from the hardware specific library; and modifying the graphical model code based on the matched hardware specific function.01-05-2012
20120005611GRAPHICAL USER INTERFACE FOR VIEWING OR EDITING AN EXECUTABLE BLOCK DIAGRAM MODEL - In one embodiment, a method for displaying elements of an attribute in an executable block diagram model is provided. The method may include displaying an executable block diagram model in a first window and receiving a first input from an input device, wherein the first input associates with a first parameter of a block diagram modeling component in the executable block diagram model, the first parameter is represented in the executable block diagram model by a first graphical affordances. The method may include triggering the display of a value of a first parameter in a first user interface widget in the first window.01-05-2012
20110296436MESSAGE-BASED MODEL VERIFICATION - A system and method may generate executable block diagrams in which at least some of the blocks run in accordance with message-based execution semantics. A message may include an input data payload that does not change over time, and the message may persist for only a determined time interval during execution of block diagram. A message-based execution engine may control execution of message-based blocks in which a source block may generate a message at a particular point in time, the message may be sent to one or more destination blocks triggering execution of those blocks, and the message may be destroyed on or after a determined time interval. Other execution domains, such as a time-based or state-based execution domain, may be provided, and the system may implement a hybrid execution model. A verification engine may provide one or more tools for evaluating and verifying operation of message-based blocks. The verification engine may support one or more verification blocks that may be added to the block diagram and associated with the diagram's message-based blocks. The verification blocks may capture and present messages exchanged among the is message-based blocks. The verification blocks may also specify an expected interaction of messages, and determine whether the actual messages are equivalent to the expected interaction. If not, the verification block may perform one or more predefined actions, such as suspending further execution of the block diagram.12-01-2011
20110296435MESSAGE-BASED MODELING - A system and method may generate executable block diagrams in which at least some of the blocks run in accordance with message-based execution semantics. A message may include an input data payload that does not change over time, and the message may persist for only a determined time interval during execution of block diagram. A message-based execution engine may control execution of message-based blocks in which a source block may generate a message at a particular point in time, the message may be sent to one or more destination blocks triggering execution of those blocks, and the message may be destroyed on or after a determined time interval. Other execution domains, such as a time-based or state-based execution domain, may be provided, and the system may implement a hybrid execution model. A verification engine may provide one or more tools for evaluating and verifying operation of message-based blocks. The verification engine may support one or more verification blocks that may be added to the block diagram and associated with the diagram's message-based blocks. The verification blocks may capture and present messages exchanged among the message-based blocks. The verification blocks may also specify an expected interaction of messages, and determine whether the actual messages are equivalent to the expected interaction. If not, the verification block may perform one or more predefined actions, such as suspending further execution of the block diagram.12-01-2011
20110295578PARTITIONING BLOCK DIAGRAMS INTO EXECUTABLE CONTEXTUAL MODELS - A system and method generates contextual information for a source model. An identification of one or more first model elements of interest within the source model may be received. One or more constraints on inputs of selected model elements also may be received. A scope of analysis regarding outputs of the first model elements may be specified. The contextual information may be derived automatically for the one or more first model elements. The contextual information may include one or more model elements, signals, or states that are contained with the scope of analysis while execution of the source model is limited by the one or more constraints. The derived contextual information may be provided to an output device.12-01-2011
20110252411IDENTIFICATION AND TRANSLATION OF PROGRAM CODE EXECUTABLE BY A GRAPHICAL PROCESSING UNIT (GPU) - A device receives program code, and receives size/type information associated with inputs to the program code. The device determines, prior to execution of the program code and based on the input size/type information, a portion of the program code that is executable by a graphical processing unit (GPU), and determines, prior to execution of the program code and based on the input size/type information, a portion of the program code that is executable by a central processing unit (CPU). The device compiles the GPU-executable portion of the program code to create a compiled GPU-executable portion of the program code, and compiles the CPU-executable portion of the program code to create a compiled CPU-executable portion of the program code. The device provides, to the GPU for execution, the compiled GPU-executable portion of the program code, and provides, to the CPU for execution, the compiled CPU-executable portion of the program code.10-13-2011
20110239202APPLICATION OF OPTIMIZATION TECHNIQUES TO INTERMEDIATE REPRESENTATIONS FOR CODE GENERATION - The present invention provides a method and system for optimization of an intermediate representation in a graphical modeling environment. A first intermediate representation is provided. At least one optimization technique is applied to the first intermediate representation. A second intermediate representation is generated responsive to the application of the at least one optimization technique to the first intermediate representation.09-29-2011
20110219350STAGE EVALUATION OF A STATE MACHINE - The present invention provides a method and system for stage evaluation of a state machine model. Two types of transitions are used: first-stage transitions and second-stage transitions for a two-stage evaluation. In one embodiment, top-down processing and bottom-up processing may be combined using a two-stage evaluation. First-stage transitions are used with top-down processing while second-stage transitions are used with bottom-up processing. Certain conditions are used to determine if a switch from one type of stage processing to another type of stage processing is needed.09-08-2011
20110191093SYSTEM AND METHOD OF GENERATING EQUATION-LEVEL DIAGNOSTIC ERROR MESSAGES FOR USE IN CIRCUIT SIMULATION - A mechanism for providing equation-level diagnostic error messages for system models undergoing circuit simulations is discussed. The components in a model of a system being simulated are converted into multiple numerical equations where each equation corresponds to a component in the system being simulated or a topology equation for the system model. Each numerical equation is numerically analyzed in order to identify illegal configurations in the system. Upon detection of an error, an error message listing the components associated with the illegal configuration is generated for the user.08-04-2011
20110167425INSTRUMENT-BASED DISTRIBUTED COMPUTING SYSTEMS - An instrument-based distributed computing system is disclosed that accelerates the measurement, analysis, verification and validation of data in a distributed computing environment. A large computing work can be performed in a distributed fashion using the instrument-based distributed system. The instrument-based distributed system may include a client that creates a job. The job may include one or more tasks. The client may distribute a portion of the job to one or more remote workers on a network. The client may reside in an instrument. One or more workers may also reside in instruments. The workers execute the received portion of the job and may return execution results to the client. As such, the present invention allows the use of instrument-based distributed system on a network to conduct the job and facilitate decreasing the time for executing the job.07-07-2011
20110145784AUTOMATIC GENERATION OF CODE FOR COMPONENT INTERFACES IN MODELS - Methods, systems and computer program products are disclosed for automatically generating hardware description language code from a model. The hardware description language code may be generated from a graphical program/model, such as a block diagram model. The hardware description language code may also be generated from a text-based program/model, such as a model created using MATLABĀ® tools. In particular, the present invention provides for the automatic code generation of an interface between components in the model. The present invention may provide options for selecting at least one of multiple types or styles of the component interfaces in the model. The selection of the interface types or styles may be controlled by the user or inferred by other parameters, such as implementation parameters.06-16-2011
20110137830FRAMEWORK FOR FINDING ONE OR MORE SOLUTIONS TO A PROBLEM - In an embodiment, information for use in identifying a plurality of sub-solvers may be acquired. The plurality of sub-solvers may be used in a first attempt to find at least one solution to a problem that may be defined in the acquired information. At least two of the sub-solvers in the plurality of sub-solvers may be of different sub-solver types. The sub-solvers may be identified based on the acquired information. One or more starting points for the identified sub-solvers may be identified and transferred to the identified sub-solvers. One or more outputs, that indicate one or more results associated with the first attempt to find at least one solution to the problem, may be acquired from the identified sub-solvers. One or more sub-solvers may be identified, based on the acquired one or more outputs, for use in a second attempt to find at least one solution to the problem.06-09-2011
20110137634CANONICALIZED VERSIONS OF REUSE CANDIDATES IN GRAPHICAL STATE DIAGRAMS - Exemplary embodiments provide techniques for replacing a portion of a state diagram with a generalized, canonical version of the portion. The canonicalized version mimics the structure or semantics (or both) of the portion of the state diagram, although the canonicalized version need not be a perfect match for the structure or semantics of the portion. Exemplary embodiments further provide techniques for identifying a portion of a state diagram for reuse, and generating a canonicalized version of the portion.06-09-2011
20110137632METHOD AND APPARATUS FOR INTEGRATED MODELING, SIMULATION AND ANALYSIS OF CHEMICAL AND BIOCHEMICAL REACTIONS - An integrated system for modeling, simulating and analyzing chemical and biochemical reactions includes a modeling environment for constructing a model of a chemical or biochemical reaction. The system also includes a simulation engine accepting as input said constructed model of the chemical or biochemical reaction and generating as output an expected result. An analysis environment communicates with the simulation engine and displays the expected result.06-09-2011
20110126181Methods and System for Executing a Program in Multiple Execution Environments - A method and medium are disclosed for executing a technical computing program in parallel in multiple execution environments. A program is invoked for execution in a first execution environment and from the invocation the program is executed in the first execution environment and one or more additional execution environments to provide for parallel execution of the program. New constructs in a technical computing programming language are disclosed for parallel programming of a technical computing program for execution in multiple execution environments. It is also further disclosed a system and method for changing the mode of operation of an execution environment from a sequential mode to a parallel mode of operation and vice-versa.05-26-2011
20110126180Methods and System for Executing a Program in Multiple Execution Environments - A method and a medium are disclosed for executing a technical computing program in parallel in multiple execution environments. A program is invoked for execution in a first execution environment and from the invocation the program is executed in the first execution environment and one or more additional execution environments to provide for parallel execution of the program. New constructs in a technical computing programming language are disclosed for parallel programming of a technical computing program for execution in multiple execution environments. It is also further disclosed a system and method for changing the mode of operation of an execution environment from a sequential mode to a parallel mode of operation and vice-versa.05-26-2011
20110093835NON-GRAPHICAL MODEL DEPENDENCIES IN GRAPHICAL MODELING ENVIRONMENTS - Graphical programming or modeling environments, such as a block diagram environment, are disclosed in which dependencies that influence how a model executes are defined without altering the visual representation of the model. In the graphical modeling or programming environment, users create a model that describes how the system is to execute. The users can then augment the model with non-graphical dependencies that provide general execution goals or specific dependencies between blocks. The user can augment the graphical model with dependency constraints specifying how the model should execute. The constraints are coupled to the model and can be optionally displayed on the model in a debugging/analysis mode to provide further insight into how the model executes.04-21-2011
20110078652GRAPHICAL PARTITIONING FOR PARALLEL EXECUTION OF EXECUTABLE BLOCK DIAGRAM MODELS - Exemplary embodiments allow executable graphical models, such as block diagram models, to be graphically partitioned for execution on concurrent computing resources. Embodiments allow model components to be grouped into subtasks that are affiliated with tasks associated with concurrent computing resources. Tasks and sub graphs can be mapped to concurrent computing resources according to characteristics, such as sample time, solver type, etc. Embodiments further allow mappings to be visually indicated to a user via various display techniques including color, text, icons, shading, grouping of identifiers, etc. Concurrently executing portions of a model allows model results to be obtained faster than can be obtained when models are executed on a single computing resource, such as a single processor.03-31-2011
20110067017NON-BLOCKING SEMANTICS FOR MODELING SYSTEMS - In an implementation, a computing device-implemented method includes identifying a non-blocking block in a graphical block diagram that includes the non-blocking block and other blocks, the other blocks including one or more non-blocking blocks, one or more blocking blocks, or a combination of one or more non-blocking blocks and one or more blocking blocks, determining whether one or more of the other blocks are dependent on an output from the non-blocking block, and partitioning execution of the non-blocking block into two or more execution stages, generating an order of execution of the graphical blocks, the order including a first stage of execution of the two or more execution stages for the non-blocking block, followed by an execution of one or more of the other blocks that have been determined not be dependent on the output from the non-blocking block, followed by a second stage of execution of the two or more execution stages.03-17-2011
20110060980LINKED CODE GENERATION REPORT - A method includes generating source code corresponding to a block diagram model and generating hypertext links associating elements of the generated source code with elements of the block diagram model.03-10-2011
20110047412PARALLEL PROGRAMMING ERROR CONSTRUCTS - A system receives a program, allocates the program to a first software unit of execution (UE) and a second software UE, executes a first portion of the program with the first and second software UEs in parallel, and determines whether an error is detected during execution of the first portion of the program by the first and second software UEs. The system also sends a signal, between the first and second software UEs, to execute a second portion of the program when the error is detected in the first portion of the program, executes the second portion of the program with the first and second software UEs when the error is detected, and provides for display information associated with execution of the first portion and the second portion of the program by the first and second software UEs.02-24-2011
20110035737SAVING AND LOADING GRAPHICAL PROCESSING UNIT (GPU) ARRAYS - A device receives, via a technical computing environment, a program that includes a parallel construct and a command to be executed by graphical processing units, and analyzes the program. The device also creates, based on the parallel construct and the analysis, one or more instances of the command to be executed in parallel by the graphical processing units, and transforms, via the technical computing environment, the one or more command instances into one or more command instances that are executable by the graphical processing units. The device further allocates the one or more transformed command instances to the graphical processing units for parallel execution, and receives, from the graphical processing units, one or more results associated with parallel execution of the one or more transformed command instances by the graphical processing units.02-10-2011
20110035736GRAPHICAL PROCESSING UNIT (GPU) ARRAYS - A device initiates a technical computing environment (TCE), and receives, via the TCE, a program command that permits the TCE to access a graphical processing unit that is remote to the device, where the program command permits the TCE to seamlessly transfer data to the remote GPU. The device transforms, via the TCE, the program command into a program command that is executable by the remote GPU, and provides the transformed program command to the remote GPU for execution. The device also receives, from the remote GPU, one or more results associated with execution of the transformed program command by the remote GPU, and utilizes the one or more results via the TCE.02-10-2011
20100333092DYNAMIC DEFINITION FOR CONCURRENT COMPUTING ENVIRONMENTS - Exemplary embodiments allow a user to create configurations for use in distributed computing environments. Configurations can be arranged in hierarchies in which elements of the hierarchy can inherit characteristics from elements in other layers of the hierarchy. Embodiments also allow a user to flatten a hierarchical configuration to remove hierarchical dependencies and/or inheriting capabilities of elements in the hierarchy. Exemplary embodiments further allow users to deploy a distributed computing configuration on their desktop to evaluate performance of the configuration and then deploy the configuration in a distributed computing environment without having to change programming code run on the desktop/distributed computing environment.12-30-2010
20100333062APPLYING CODING STANDARDS IN GRAPHICAL PROGRAMMING ENVIRONMENTS - Graphical programming or modeling environments in which a coding standard can be applied to graphical programs or models are disclosed. The present invention provides mechanisms for applying the coding standard to graphical programs/models in the graphical programming/modeling environments. The mechanisms may detect violations of the coding standard in the graphical model and report such violations to the users. The mechanisms may automatically correct the graphical model to remove the violations from the graphical model. The mechanisms may also automatically avoid the violations in the simulation and/or code generation of the graphical model.12-30-2010
20100325121METHODS AND SYSTEM FOR DISTRIBUTING DATA TO TECHNICAL COMPUTING WORKERS - A method and system is disclosed for providing a distributed technical computing environment for distributing technical computing tasks from a technical computing client to technical computing workers for execution of the tasks on one or more computers systems. Tasks can be defined on a technical computing client, and the tasks organized into jobs. The technical computing client can directly distribute tasks to one or more technical computing workers. Furthermore, the technical computing client can submit tasks, or jobs comprising tasks, to an automatic task distribution mechanism that distributes the tasks automatically to one or more technical computing workers providing technical computing services. The technical computing worker performs technical computing of tasks and the results of the execution of tasks may be provided to the technical computing client. Data associated with the tasks is managed by a programmable interface associated with a data storage repository. The interface allows the various entities of the distributed technical computing environment to access data services performable by the interface or by a file system or a database and database management system associated with the data.12-23-2010
20100268979METHOD AND SYSTEM FOR SYNTAX ERROR REPAIR IN PROGRAMMING LANGUAGES - The described embodiments present techniques for recovering from syntax errors. These techniques correct potential errors while preserving the shape of the parse tree, and the specific implementation of the techniques can be automatically generated from the grammar. These techniques may operate by looking back at states associated with previously-received tokens to determine pair matching status, when a synchronizing symbol is received. The techniques can respond to the pair matching status determination by potentially adding a synthesized token or by deleting a token that has already been received. The techniques may use a structure referred to herein as a tuple to assist with the evaluation of the pair matching status. Some of the techniques utilize indentation information to evaluate the pair matching status, while other techniques ignore such information. The described embodiments also include a technique for automatically generating the tuples from a set of grammar rules associated with the parser.10-21-2010
20100250222SIMPLIFIED DATA SIGNAL SUPPORT FOR DIAGRAMMING ENVIRONMENT LANGUAGES - A computer-implemented method may include defining an input bus signal in a graphical block diagram model by associating the input bus signal with a first group of signals, at least two of the first group of signals having a different data type; defining an output bus signal in the graphical block diagram model by associating the second bus signal with a second group of signals, each of the second group of signals corresponding to one of the first group of signals; defining an input to a non-virtual operation block in the graphical block diagram model as the input bus signal; defining an output to the non-virtual operation block in the graphical block diagram as the output bus signal; and simulating an operation performed on the input bus signal by the non-virtual operation block, the operation being performed on each of the first group of signals and output to each of the second group of signals.09-30-2010
20100241409VARIANTS IN GRAPHICAL MODELING ENVIRONMENTS - This invention allows users to build, manipulate, and finally deploy various model configurations with little performance overhead, better syntactic clarity and configuration flexibility.09-23-2010
20100223631METHOD AND SYSTEM FOR ACCESSING EXTERNALLY-DEFINED OBJECTS FROM AN ARRAY-BASED MATHEMATICAL COMPUTING ENVIRONMENT - A method and apparatus, including a computer program apparatus, which facilitate invoking methods of objects defined within an object-oriented environment from an array-based technical computing environment often used in conventional mathematical tools. When a method is invoked from the computing environment, the techniques automatically compare the array input parameters with data-types accepted by methods defined within the object-oriented environment. Based on this comparison, the invention selects a method that best accepts the input arrays. The invention, therefore, allows a user to easily invoke methods from external objects, such as Java objects, directly from the technical computing environment of the mathematical tool.09-02-2010
20100223385SCALABLE ARCHITECTURE - Exemplary embodiments may employ techniques for dynamically dispatching requests to resources operating in a distributed computing environment, such as a computing cloud, according to one or more policies. Embodiments may further dynamically adjust resources in the computing environment using predictive models that use current loads as an input. Embodiments may still further maintain a state for a processing environment independent of the type or configuration of a device used to access the environment on behalf of a user.09-02-2010
20100211374SIMPLIFIED DATA SIGNAL SUPPORT FOR DIAGRAMMING ENVIRONMENT LANGUAGES - A computer-implemented method may include defining an input bus signal in a graphical block diagram model by associating the input bus signal with a first group of signals, at least two of the first group of signals having a different data type; defining an output bus signal in the graphical block diagram model by associating the second bus signal with a second group of signals, each of the second group of signals corresponding to one of the first group of signals; defining an input to a non-virtual operation block in the graphical block diagram model as the input bus signal; defining an output to the non-virtual operation block in the graphical block diagram as the output bus signal; and simulating an operation performed on the input bus signal by the non-virtual operation block, the operation being performed on each of the first group of signals and output to each of the second group of signals.08-19-2010
20100211369SIMPLIFIED DATA SIGNAL SUPPORT FOR DIAGRAMMING ENVIRONMENT LANGUAGES - A computer-implemented method may include defining an input bus signal in a graphical block diagram model by associating the input bus signal with a first group of signals, at least two of the first group of signals having a different data type; defining an output bus signal in the graphical block diagram model by associating the second bus signal with a second group of signals, each of the second group of signals corresponding to one of the first group of signals; defining an input to a non-virtual operation block in the graphical block diagram model as the input bus signal; defining an output to the non-virtual operation block in the graphical block diagram as the output bus signal; and simulating an operation performed on the input bus signal by the non-virtual operation block, the operation being performed on each of the first group of signals and output to each of the second group of signals.08-19-2010
20100198951DYNAMIC DEFINITION FOR CONCURRENT COMPUTING ENVIRONMENTS - A system generates an executable process for execution by a concurrent computing environment, generates a configuration that specifies configurable properties of the concurrent computing environment, and initiates execution of the executable process, with the concurrent computing environment, to initiate configuration of the concurrent computing environment based on the configurable properties of the configuration.08-05-2010
20100198572SYSTEM AND METHOD FOR OPTIMIZING BLOCK DIAGRAM MODELS - A method includes in a system determining a constraint for constraining operation of a portion of a block diagram model, determining if the portion of the block diagram model violates the constraint, and providing a user information based on the violating of the first constraint.08-05-2010
20100175045MULTI-THREADED SUBGRAPH EXECUTION CONTROL IN A GRAPHICAL MODELING ENVIRONMENT - Exemplary embodiments support multi-threaded subgraph execution control within a graphical modeling or graphical programming environment. In an embodiment, a subgraph may be identified as a subset of blocks within a graphical model, or graphical program, or both. A subgraph initiator may explicitly execute the subgraph while maintaining data dependencies within the subgraph. Explicit signatures may be defined for the subgraph initiator and the subgraph either graphically or textually. Execution control may be branched wherein the data dependencies within the subgraph are maintained. Execution control may be joined together wherein the data dependencies within the subgraph are maintained. Exemplary embodiments may allow subgraphs to execute on different threads within a graphical modeling or programming environment.07-08-2010
20100153910SUBGRAPH EXECUTION CONTROL IN A GRAPHICAL MODELING ENVIRONMENT - Exemplary embodiments allow subgraph execution control within a graphical modeling or graphical programming environment. In an embodiment, a subgraph may be identified as a subset of blocks within a graphical model, or graphical program, or both. A subgraph initiator may explicitly execute the subgraph while maintaining data dependencies within the subgraph. Explicit signatures may be defined for the subgraph initiator and the subgraph either graphically or textually. Execution control may be branched wherein the data dependencies within the subgraph are maintained. Execution control may be joined together wherein the data dependencies within the subgraph are maintained.06-17-2010
20090320026METHODS AND SYSTEM FOR EXECUTING A PROGRAM IN MULTIPLE EXECUTION ENVIRONMENTS - A system and methods are disclosed for executing a technical computing program in parallel in multiple execution environments. A program is invoked for execution in a first execution environment and from the invocation the program is executed in the first execution environment and one or more additional execution environments to provide for parallel execution of the program. New constructs in a technical computing programming language are disclosed for parallel programming of a technical computing program for execution in multiple execution environments. It is also further disclosed a system and method for changing the mode of operation of an execution environment from a sequential mode to a parallel mode of operation and vice-versa.12-24-2009
20090319578SYNCHRONIZATION AND DATA REVIEW SYSTEM - A method and system control data collection and display parameters in two or more data modules in a dynamic system. The method and system provide the ability to collect and display data in a dynamic system having two or more data modules communicatively coupled thereto. As the dynamic system operates, data is generated. At least one controller manages data collection and display behavior of the two or more data modules. Ultimately, the controller controls data collection and display parameters for each of the two or more data modules in a manner that enables synchronization. The controller can be imbedded within the control module system. The method and system provides the user with the ability to better control, manipulate, review, and synchronize the collection of data in a dynamic system, whether physical or virtual, real time, or a simulation.12-24-2009
20090254801MODEL NAVIGATION - In an embodiment, a modeling environment (ME) may be configured to provide a navigation widget for navigating through a model. The navigation widget may display a first hierpath where the first hierpath is associated with a path to a first portion of the model. The ME may receive input, via the navigation widget, that is associated with a second hierpath, the second hierpath being associated with a path to a second portion of the model. In response to receiving the input, the ME may display a view of the second portion of the graphical model.10-08-2009
20090248385SIMPLIFIED DATA SIGNAL SUPPORT FOR DIAGRAMMING ENVIRONMENT LANGUAGES - In a graphical modeling environment, bus signals, which group a plurality of signals together for simplifying a model, include a partial or complete physical definition. Models are simplified by passing bus signals through graphical objects representing functional entities, without degrouping the bus signal. During simulation of the model, code can be generated for the bus signal having a complete definition independent of other components of the graphical model.10-01-2009
20090240762METHODS AND SYSTEM FOR DISTRIBUTING DATA TO TECHNICAL COMPUTING WORKERS - A method and system is disclosed for providing a distributed technical computing environment for distributing technical computing tasks from a technical computing client to technical computing workers for execution of the tasks on one or more computers systems. Tasks can be defined on a technical computing client, and the tasks organized into jobs. The technical computing client can directly distribute tasks to one or more technical computing workers. Furthermore, the technical computing client can submit tasks, or jobs comprising tasks, to an automatic task distribution mechanism that distributes the tasks automatically to one or more technical computing workers providing technical computing services. The technical computing worker performs technical computing of tasks and the results of the execution of tasks may be provided to the technical computing client. Data associated with the tasks is managed by a programmable interface associated with a data storage repository. The interface allows the various entities of the distributed technical computing environment to access data services performable by the interface or by a file system or a database and database management system associated with the data.09-24-2009
20090183139ENUMERATION CLASSES - In an embodiment, a technique for acquiring a class definition of a class, the class associated with an enumeration, the enumeration enumerating a partial list of instances of the class; generating a data structure based on the class definition, the data structure associating one or more identifiers with an instance enumerated in the enumeration; and storing the data structure in a computer storage07-16-2009
20090150430System for automating the definition of application objects supporting compressing operations - A configurable class system for an application author working in an application development environment that automates the handling of undo, redo and logging operations is discussed. The configurable class system removes the burden from the application author of having to custom manage undo, redo and logging information during application writing by providing the necessary mechanisms to every application object created. The configurable class system also allows the application author to handle exceptional state changes in an application by configuring the underlying base classes provided by the configurable class system. Additionally, the embodiments of the present invention enable the application author to customize the compression of a series of identified operations by selecting the type of operations that are to be compressed and the manner in which the compression is to occur.06-11-2009
20090144747COMPUTATION OF ELEMENTWISE EXPRESSION IN PARALLEL - An exemplary embodiment provides methods, systems and mediums for executing arithmetic expressions that represent elementwise operations. An exemplary embodiment provides a computing environment in which elementwise expressions may be executed in parallel by multiple execution units. In an exemplary embodiment, multiple execution units may reside on a network.06-04-2009
20090132867MEDIA FOR USING PARALLEL PROCESSING CONSTRUCTS - One or more computer-readable media store executable instructions that, when executed by processing logic, perform parallel processing. The media store one or more instructions for receiving one or more portions of an inner context of a program created for a technical computing environment, allocating one or more portions of the inner context of the program to two or more labs for parallel execution, receiving one or more results associated with the parallel execution of the one or more portions from the two or more labs, and providing the one or more results to an outer context of the program.05-21-2009
20090132848PARALLEL PROGRAMMING ERROR CONSTRUCTS - A system receives a program, allocates the program to a first software unit of execution (UE) and a second software UE, executes a first portion of the program with the first and second software UEs in parallel, and determines whether an error is detected during execution of the first portion of the program by the first and second software UEs. The system also sends a signal, between the first and second software UEs, to execute a second portion of the program when the error is detected in the first portion of the program, executes the second portion of the program with the first and second software UEs when the error is detected, and provides for display information associated with execution of the first portion and the second portion of the program by the first and second software UEs.05-21-2009
20090119779LICENSE ACTIVATION AND MANAGEMENT - A software license management system may include an activation server that provides permission to activate a software product. The activation server may receive receiving a request to validate activation of the software and refreshing license information for the software in response to the request to validate. The server may additionally receive a request to re-designate the license information for the software product and may update license information for the software in response to the request to re-designate the software product.05-07-2009
20090119677BI-DIRECTIONAL COMMUNICATION IN A PARALLEL PROCESSING ENVIRONMENT - A system receives an instruction from a technical computing environment, and commences parallel processing on behalf of the technical computing environment based on the received instruction. The system also sends a query, related to the parallel processing, to the technical computing environment, receives an answer associated with the query from the technical computing environment, and generates a result based on the parallel processing. The system further sends the result to the technical computing environment, where the result is used by the technical computing environment to perform an operation.05-07-2009
20090089762FUNCTION CALL TRANSLATION - Methods and apparatus for using description information about a function to translate a call to the function into a call to a corresponding function in a second language. The methods include processing a definition of a function associated with a first language to create description information sufficient to enable translation of a call to the function into a call to a corresponding function in a second language without requiring processing of the definition of the function. In another aspect, the methods include providing a description file of items, each item including description information about a function associated with a first language, and using the file of description items to translate a first program file from the first language into a second language. In another aspect, the methods include providing a library file including functions defined by a first language; processing the library file to create a function library and a description file, the function library including one or more functions defined by a second language, each function in the function library being a translated version of a function in the library file; and using the description file to translate a program file from the first language into the second language, where each call in the program file to a function in the library file is translated into a call to a corresponding function in the second language.04-02-2009
20090077536PROGRAMMING ENVIRONMENT WITH SUPPORT FOR HANDLE AND NON-HANDLE USER-CREATED CLASSES - A language processing environment provides facilities for defining and using handle classes. A handle class is a class that always and only exists as a handle to stored data, yet that data is accessed in the same manner as with non-handle classes. The language processing environment provides syntax such that all values in the language are members of some class and all classes are defined using the same syntax. Methods and properties are supported on both handle and non-handle classes.03-19-2009
20090077353PROGRAMMING LANGUAGE TYPE SYSTEM WITH AUTOMATIC CONVERSIONS - A programming language type system includes, in a memory, a set of numeric type including integer types, fixed-point types and floating-point types, a set of type propagation rules to automatically determine result types of any combination of integer types, fixed-point types and floating-point types, constant annotations to explicitly specify a result type of a literal constant, context-sensitive constants whose type is determined from a context of a constant according to the set of type propagation rules, an assignment operator to explicitly specify a type of a value or computation, and operator annotations to explicitly specify a result type of a computation.03-19-2009
20090077121System and method for interoperating with foreign objects from a host computing environment - A mechanism for providing automatic interoperation between native objects created in a single language computing environment and objects created in external virtual machines and foreign class systems is discussed. Embodiments of the present invention provides a class definition syntax for objects created in the single language computing environment that provides the ability to directly subclass external classes and implement external interfaces. One embodiment of the present invention also permits a foreign object system to instantiate native objects and to create foreign subclasses of native classes. More specifically, one embodiment of the present invention provides bidirectional mapping between metadata associated with objects created with each of a plurality of different types of foreign object systems and metadata created in a form supported by the single language computing environment.03-19-2009
20090070738Integrating program construction - In one embodiment of the present invention, a method for concurrently constructing and testing a software program is provided. The method includes interacting with a program editor that allows a user to construct the program, and testing the program during construction of the program to produce a test result.03-12-2009
20090049435PARALLEL PROCESSING OF DISTRIBUTED ARRAYS - A computing device-implemented method includes initiating a single programming language, and identifying, via the single programming language, one or more data distribution schemes for executing a program. The method also includes transforming, via the single programming language, the program into a parallel program with an optimum data distribution scheme selected from the one or more identified data distribution schemes, and allocating the parallel program to two or more labs for parallel execution. The method further includes receiving one or more results associated with the parallel execution of the parallel program from the two or more labs, and providing the one or more results to the program.02-19-2009
20090044197DEVICE FOR USING PARALLEL PROCESSING CONSTRUCTS - A device, for performing parallel processing, includes a processor to receive one or more portions of an inner context of a program created for a technical computing environment, and allocate one or more portions of the inner context of the program to two or more labs for parallel execution. The processor is also configured to receive one or more results associated with the parallel execution of the one or more portions from the two or more labs, and provide the one or more results to an outer context of the program.02-12-2009
20090044196METHOD OF USING PARALLEL PROCESSING CONSTRUCTS - A computing device-implemented method includes receiving a program, analyzing and transforming the program, determining an inner context and an outer context of the program based on the analysis of the program, and allocating one or more portions of the inner context of the program to two or more labs for parallel execution. The method also includes receiving one or more results associated with the parallel execution of the one or more portions from the two or more labs, and providing the one or more results to the outer context of the program.02-12-2009
20090044180DEVICE FOR PERFORMING PARALLEL PROCESSING OF DISTRIBUTED ARRAYS - A device for performing parallel processing includes a processor to initiate a single programming language, and identify, via the single programming language, one or more data distribution schemes for executing a program. The processor also transforms, via the single programming language, the program into a parallel program with an optimum data distribution scheme selected from the one or more identified data distribution schemes, and allocates the parallel program to two or more labs for parallel execution. The processor further receives one or more results associated with the parallel execution of the parallel program from the two or more labs, and provides the one or more results to the program.02-12-2009
20090044179MEDIA FOR PERFORMING PARALLEL PROCESSING OF DISTRIBUTED ARRAYS - One or more computer-readable media store executable instructions that, when executed by processing logic, perform parallel processing. The media store one or more instructions for initiating a single programming language, and identifying, via the single programming language, one or more data distribution schemes for executing a program. The media also store one or more instructions for transforming, via the single programming language, the program into a parallel program with an optimum data distribution scheme selected from the one or more identified data distribution schemes, and allocating the parallel program to two or more labs for parallel execution. The media further store one or more instructions for receiving one or more results associated with the parallel execution of the parallel program from the two or more labs, and providing the one or more results to the program.02-12-2009
20090044171CONTINUOUS TIME MODE-DRIVEN SIMULATIONS IN A GRAPHICAL MODELING ENVIRONMENT - A system, computer-readable medium, and method includes providing a control flow graph including at least one condition. An update control flow graph is automatically generated based on the provided control flow graph, where execution of the update control flow graph includes an evaluation of the condition. The update control flow graph and a value corresponding to the evaluated condition is stored. An output control flow graph based on the provided control flow graph is automatically generated, where execution of the output control flow graph is based on the stored value corresponding to the evaluated condition. A mode transition control flow graph configured to identify mode transitions for the control flow graph at one or more time intervals is automatically generated and the update control flow graph is re-executed based on the generated mode transition control flow graph.02-12-2009
20090037158Block diagram modeling - A modeling process includes providing blocks, each of the blocks representing functional entities that operate on input signal values, output signal values from the blocks, grouping the output signal values as an ordered set in a multiplexer as a first composite signal and outputting the first composite signal.02-05-2009
20090019273Exception-based error handling in an array-based language - A computer-readable medium stores computer-executable instructions. The medium may hold: one or more instructions for executing a first code block; one or more instructions for generating an exception object based on the executing of the first code block; one or more instructions for receiving the exception object at a second code block; and one or more instructions for storing the exception object in a memory.01-15-2009
20090013307MULTI-RATE HIERARCHICAL STATE DIAGRAMS - Systems and methods are provided for a scheme and mechanism for performing static analysis of a sample time aware state diagram model to compute and propagate multiple samples rates associated with the state diagram model. A graphical intermediate representation of the state diagram model, such as a directed graph or control flow graph, is used to determine how the multiple sample rates are propagated via elements of the state diagram model. The graph provides a static representation of the control of flow, including alternative and/or conditional flow paths, of the state diagram model. The present invention determines the propagation of sample rates via analysis and traversal of the intermediate representation. By using the techniques of the present invention, a state diagram model may provide multiple sample rate outputs, such as by function calls and output signals to a graphical model, such as a model representing a dynamic system.01-08-2009
20090013301Hardware definition language generation for frame-based processing - A method generates hardware description language (HDL) code from a model having a plurality of components, including at least one component that processes frame-based input data. A selected preference is received for implementing the frame-based component. The generated HDL code includes a hardware implementation of the frame-based component that satisfies the selected preference.01-08-2009
20090013283Hierarchical references or links in modeling environments - Methods and systems for making a reference to a resource in modeling environments are disclosed. The resource to which the reference is made includes the data of the system designed and/or executed in the modeling environments. The system includes subsystems and hierarchical references are made to the data of the subsystems. In response to users' action to select one of the hierarchical references to the resource, the hierarchical references included in the selected hierarchical reference are provided to users so that the users may navigate the data of the subsystems and select one of the subsystems. If users activate the selected hierarchical reference, the data corresponding to the selected hierarchical reference is retrieved and provided to the users.01-08-2009
20090012773ANALYSIS OF CONTROL SYSTEMS - A control system representing a non-linear system may be modeled in block diagram form in a graphical environment. A linear model based on the block diagram may be generated. The linear model may then be used to design and tune the control system.01-08-2009
20090012757TOOLS FOR SYSTEM-LEVEL DESIGN ENVIRONMENTS - A remote auxiliary tool is created in a graphical model having at least one of a signal or a block. The remote auxiliary tool is non-intrusively attached to one of the signal or the block. The graphical model and the remote auxiliary tool are executed synchronously. At least one of an execution result or a remote auxiliary tool result is output to at least one of a display device, a storage device or a destination device.01-08-2009
20090012756ANALYZING LINEARIZATION OF MODELS IN MODELING ENVIRONMENTS - A device provides an interface for permitting a user to define a block diagram model that represents a system, linearizing at least a portion of the block diagram model, analyzing a linearization result of at least one block of the block diagram model to determine contribution information of the at least one block toward a linearization result of the block diagram model, and outputting information concerning a result of analyzing the linearization result.01-08-2009
20090012754Automated approach to resolving artificial algebraic loops - A method and apparatus for resolving artificial algebraic loops in model executions include providing a model of an executable process having a plurality of functions. An analysis step identifies whether the process includes at least one potential artificial algebraic loop. If at least one potential artificial algebraic loop exists in the process, an artificial algebraic loop solution manipulates the order or manner by which the functions are executed to eliminate or otherwise resolve the artificial algebraic loop.01-08-2009
20090007079CALLING AN ENTITY OF A GRAPHICAL MODEL WITH A NON-GRAPHICAL ENTITY AND CALLING A NON-GRAPHICAL ENTITY OF A GRAPHICAL MODEL WITH A GRAPHICAL ENTITY - The present invention provides a graphical model in a computing environment, where the graphical model includes at least a caller entity. A call command associated with the caller entity is executed, where the call command includes at least a partial name of the callee entity. The at least one callee entity may be identified based on the partial name of the at least one callee entity provided in the call command. The at least one callee entity may then be called.01-01-2009
20090007064Size vector sharing in code generated for variable-sized signals - A method and apparatus to generate code to represent a graphical model formed of multiple graphical modeling components and at least one variable-sized signal is presented. Each variable-sized signal is represented using a size-vector in the generated code. The generated code is optimized by representing multiple variable-sized signals with the same size-vector such that at least two variable-sized signals share a size-vector in the generated code. The size of the variable-sized signal is capable of changing during the execution of the graphical model. The method and apparatus also identifies the owners of the variable-sized signals.01-01-2009
20090007063SYSTEM AND METHOD FOR SYNCHRONIZED WORKFLOW MANAGEMENT - A system may identify a workflow associated with a graphical model and execute the workflow in a number of stages. The system may display a number of components of the graphical model and identify which of the displayed components are associated with or affected by execution of a current one of the stages of the workflow.01-01-2009
20090006621Recoverable error detection for concurrent computing programs - A system and method detects communication error among multiple nodes in a concurrent computing environment. One or more barrier synchronization points/checkpoints or regions are used to check for a communication mismatch. The barrier synchronization point(s)/checkpoint(s) can be placed anywhere in the concurrent computing program. Once a node reaches a barrier synchronization point/checkpoint, it is not allowed to communicate with another node regarding data that is needed to execute the concurrent computing program, even if the other node has not reached the barrier synchronization point/checkpoint. Regions can also, or alternatively, be used to detect a communication mismatch instead of barrier synchronization points/checkpoints. A concurrent program on each node is separated into one or more regions. Two nodes communicate with each other when their regions are compatible. If their regions are not compatible, a communication mismatch occurs.01-01-2009
20090006067STAGE EVALUATION OF A STATE MACHINE - The present invention provides a method a system for facilitating enhanced processing of state diagrams in a state diagram environment. The method may include top-down processing a current state in a state diagram environment; determining whether processing of the current state results in an exception event; and passing the exception event to a superstate that includes the current state when it is determined that the current state results in an exception event. The superstate may be made the current state and it may be determined whether the current state can handle the exception event. When it is determined that the current state cannot handle the exception event, it may be determined whether the current state has a second superstate that includes the current state. An error event may be output from the state diagram environment when it is determined that the current state does not have a second superstate.01-01-2009
20090002371GENERATION OF CODE FROM A GRAPHICAL MODEL - A method and system are provided for generating code from a graphical model in a graphical modeling environment. The graphical model includes at least one signal having a data size, a data dimensionality, or both that can vary from a first time instance to a second time instance as the model executes. The size and dimensionality of the signal can vary without the use of a graphically rendered connection to convey the size and dimension information to a block associated with the signal.01-01-2009
20080316219Processing composite data by expansion - A computer system for processing composite data is provided. The system includes means for processing a computing operation that is designed to receive a non-composite data type as at least one input. The composite data is provided to the computing operation as the at least one input. The system further includes an expansion marker that indicates each element in a first composite data needs to be processed separately and an expansion mechanism that uses the computing operation to process each element in the first composite data individually. The system also includes storage for storing a result of processing each element of the first composite data individually with the computing operation.12-25-2008
20080313600BI-DIRECTIONAL PROJECTION - In an embodiment, one or more computer-readable media holding executable instructions is provided. The instructions may be executed on a processing device to project a specification to a platform environment that includes a system model. The media may hold one or more instructions for accessing an algorithm model, the algorithm model being associated with the specification. The media may further hold one or more instructions for projecting the specification to the system model via a forward projection. The media may hold one or more instructions for receiving a reverse projection that includes specification changes, the specification changes identifying suggested changes to the specification. The media may further hold one or more instructions for modifying the algorithm model based on the specification changes, and the media may hold one or more instructions for storing the modified algorithm model.12-18-2008
20080294406CONTEXT-BASED COMPLETION FOR LIFE SCIENCE APPLICATIONS - A system is provided that can include storage logic to store a data structure that includes an identifier. The storage logic may also store an object associated with the identifier, where the identifier may include a value, unit information, or a context. The storage logic may further store a result. The system may include processing logic to process an expression to determine whether the identifier is compatible with the expression, the determining performed using the value, the unit information, or the context. The processing logic may insert the identifier into the expression when the identifier is compatible with the expression, the inserting based on a user action. The processing logic may execute the expression on behalf of a life sciences model, may generate the result based on the executing, and may provide the result to the storage logic.11-27-2008
20080243407ALIGNMENT OF MASS SPECTROMETRY DATA - Methods, systems and mediums are disclosed for aligning mass spectrometry data before the analysis of the mass spectrometry data. The mass spectrometry data may be received from a mass spectrometry machine, and re-sampled using a smooth warping function. To estimate the warping function, a synthetic signal is build using, for example, Gaussian pulses centered at a set of reference peaks. The reference peaks may be designated by users or calculated after observing a group of spectrograms. The synthetic signal is shifted and scaled so that the cross-correlation between the mass spectrometry data and the synthetic signal reaches its maximum value.10-02-2008
20080229234THIN CLIENT GRAPHICAL PRESENTATION AND MANIPULATION APPLICATION - A distributed graphical presentation and manipulation application executes as a thin client application in a network. The networked graphical presentation and manipulation application can generally be used without requiring a user to install any specific software prior to using the application. In one aspect, code may be received from a server, and a local environment may be generated based on the code, where the local environment may be configured to display a view of the graphical model. One or more model views to be requested may be predicted, and the predicted views may be stored in a memory for display in the local environment.09-18-2008
20080222620PARALLEL PROGRAMMING COMPUTING SYSTEM - A computing system receives a program created by a technical computing environment, analyzes the program, generates multiple program portions based on the analysis of the program, dynamically allocates the multiple program portions to multiple software units of execution for parallel programming, receives multiple results associated with the multiple program portions from the multiple software units of execution, and provides the multiple results or a single result to the program.09-11-2008
20080201721PARALLEL PROGRAMMING INTERFACE - A computing device-implemented method includes receiving a program created by a technical computing environment, analyzing the program, generating multiple program portions based on the analysis of the program, dynamically allocating the multiple program portions to multiple software units of execution for parallel programming, receiving multiple results associated with the multiple program portions from the multiple software units of execution, and providing the multiple results or a single result to the program.08-21-2008

Patent applications by The MathWorks, Inc.