Giter Site home page Giter Site logo

danielmartensson / ccontrol Goto Github PK

View Code? Open in Web Editor NEW
206.0 10.0 56.0 102.21 MB

Using advanced control and computer vision techniques in an easy way for embedded

License: MIT License

MATLAB 0.03% C 99.87% Assembly 0.05% Forth 0.03% C++ 0.03%
control-systems c optimal-control systemidentification machinelearning embedded-systems lapack math-kernel-library mkl lda

ccontrol's People

Contributors

danielmartensson avatar ooaj avatar pyxisgit avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ccontrol's Issues

[FR] Project Examples for PlatformIO Registry

Hi,

Currently, the library page in the PlatformIO Registry doesn't contain any quick start projects for developers. Such examples serve both to highlight widespread use cases and to help newcomers to get up and running much more quickly.

Please consider adding a few comprehensive project examples to the PlatformIO Registry.

Useful links:

eig.c function, indexing error?

Hi,

I've been playing with C and MATLAB together, and trying to implement your C code in MATLAB I've come across this indexing error in MATLAB.

Index exceeds the number of array elements (16).

It occurs https://github.com/DanielMartensson/CControl/blob/master/src/CControl/Sources/LinearAlgebra/eig.c#L197 for this line.

When I debug the C code (for a 4x4 matrix), at some point in this https://github.com/DanielMartensson/CControl/blob/master/src/CControl/Sources/LinearAlgebra/eig.c#L194 loop we get i=3, k=2, nn=3. Therefore the line
p += z * *(A + row*i + k+2);
simplifies to
p += z * *(A + 16);
However, since matrix A is a 4 by 4 matrix, this should output randomish? numbers. What is the expected output of this line? I printed the p values, but I couldn't make sense of them so I can't replicate it in MATLAB.

std function causes redefinition error while linking

I am trying to use this library for my home project, on an ESP32 development board, within PlatformIO environment. The core of my program is written in C++, but I would like to use this library since it's pretty lighweight and is able to do what I need it to do.

But I have ran into a problem with linking: the "std" symbol is already existing in C++, as a namespace, so the compiler sees the declaration of your std function as a redefinition of that.

Are you aware of this and if so, is there a workaround, or am I doing something wrong?

Inverse of a matrix fails

Hi,

The status of a square matrix, even though the determinant is 0, equals to 1. For example, consider

float A[2 * 2] = {1, 1, 1, 1};
int status = inv(A, 2);
printf("status is: %d\n", status);
print(A, 2, 2);

In this case, status is 1 while it should be 0. The resultant matrix is all Infs as in MATLAB.

Missing License File

Hi,

This repo seems to be missing a license file. Would you consider to add one?

Best Regards

Cat function

Hello,

Would you be interested in MATLAB's cat function? I think you already have it implemented in EmbeddedLapack with horzcat and vertcat, but maybe something like void cat(int dim, double A[], double B[], double C[], int rowA, int colA, int rowB, int colB, int rowC, int colC) would be of interest to you akin to MATLAB?

I already have the implementation (using only memcpy).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.