Giter VIP home page Giter VIP logo

potk's People

Contributors

ehkropf avatar rhodrin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

tek288a1 gharib85

potk's Issues

Allow domains with provided map

If a domain can provide a map to the unit disk, the potential should still be no problem to calculate. As a test, implement this with the unbounded circle domain.

Derivative of uniform flow giving incorrect results

Finite difference and the diff operation do not agree.

clear

dv=[0.0];
qv=[0.2];
beta=-3.0/4.0;

D = unitDomain(dv,qv,beta);

uf = uniformFlow(1.0,0.0,1.0);

w = potential(D,uf);

dw = diff(w);

delta = 0.000001;
dw2 = @(zeta) (w(zeta+delta)-w(zeta))/delta;

disp([dw(0.5i) dw2(0.5i)])
disp([abs(dw(0.3)) abs(dw2(0.3))])

output:

   0.8110 - 0.4498i   0.0661 + 1.0438i

    0.6077    0.1103

Add uniform flow kind

Add a uniformFlow which would just be some sort of wrapper around dipole where the image of the point at infinity is automatically used.

Need uneven source/sink combinations

Should allow for a vectors of source and sink locations with corresponding vectors of strengths. The source/sink vectors should not have to be of equal length. If net sum of strengths is not zero and the formula doesn't break there should be a warning but not an error.

Implement m-file output

Use of analytic(W) for W = potential(...) triggers the creation of an m-file which contains the construction of the given potential w.r.t. the S-K prime function.

Uniform flow/dipole error

Trying to create a uniform flow or dipole appears to return an error.

dv = [
      5./12
     -5./12
     ];
qv = [
      1./6
      1./6
     ];
beta = 0.0;  

D = unitDomain(dv, qv, beta);

uf = uniformFlow(1, 0.0);
W = potential(D, uf);

returns:

Undefined function or variable 'greensC0Dpxy'.

Error in dipole/setupPotential (line 147)
        d.greensXderivative = greensC0Dpxy(beta, 'x', D);

Error in uniformFlow/setupPotential (line 71)
        uf = setupPotential@dipole(uf, W);

Error in potential (line 63)
                pk = pk.setupPotential(W);

Need a point singularity superclass

Any point singularity, pointVortex, dipole, source, etc., should really be a subclass of a pointSingularity superclass. This is because they all share the properties location and strength from which they can share structure display and conversion code. The dipole adds an angle property, but this can be handled just fine by overloading.

Address all FIXMEs

Either fix the FIXME or create an issue for it (and remove the label from the code).

Dipole at infinity on Riemann sphere is not defined

Trying d = dipole(inf, x) (location at infinity) and then trying to use potential(planeDomain, d) gives invalid results on evaluation. This is because the use of the analytic formula algorithm does not check for infinity.

Add help text

Add useful help text in class files and functions where it's missing.

Circulation is off by a constant

Circulation computation uses the first kind integrals, which is a simplification of the expression in terms of the Green's functions. But a constant has been dropped along the way. It needs to be put back.

Implement self documentation

The command podoc(W) for W = potential(...) should open a window with the analytic description of the generated potential.

Point vortex evaluation error in plane domain

The arrayfun output in the evaluation method needs to have UniformOutput set to false, since we can output arrays. This output then needs run through cell2mat so it can be summed.

Prime function needs to take points in circles

The SK prime function should take points inside circles in the unit disk, specifically the image under the "theta-j" maps of a point in the unit domain.

Until the prime code will take such a point (and then use Hejal's identity to get the computation right), the m-file output code cannot build, from the prime function, the "G_j" functions needed to properly express circulation.

Unit tests should have value checks

Should just get some expected values from development testing and code them into the unit tests.

This will need some sort of "canary" to warn when the SKPrime code gives differing values than a "baseline". Example: just before this writing, the Green's functions were normalised where they hadn't been before. Changing normalisation values from SKPrime could result in potential function values different than expected.

Use locally installed MathJax

If MathJax is installed locally, use it.

Should the PoTk install script just grab a copy of MathJax?

Where should the configuration be stored for the MathJax location? The XSL file will need to be modified accordingly.

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.