Schwarzschild Embedding Module

Class for Utility functions for Schwarzschild Embedding surface to implement gravitational lensing:

class einsteinpy.hypersurface.schwarzschildembedding.SchwarzschildEmbedding(M)[source]

Bases: object

Class for Utility functions for Schwarzschild Embedding surface to implement gravitational lensing

input_units

list of input units of M

Type:

list

units_list

customized units to handle values of M and render plots within grid range

Type:

list

r_init
Type:

m

Constructor Initialize mass and embedding initial radial coordinate in appropiate units in order to render the plots of the surface in finite grid. The initial r is taken to be just greater than schwarzschild radius but it is important to note that the embedding breaks at r < 9m/4.

Parameters:

M (kg) – Mass of the body

gradient(r)[source]

Calculate gradient of Z coordinate w.r.t r to update the value of r and thereby get value of spherical radial coordinate R.

Parameters:

r (float) – schwarzschild coordinate at which gradient is supposed to be obtained

Returns:

gradient of Z w.r.t r at the point r (passed as argument)

Return type:

float

radial_coord(r)[source]

Returns spherical radial coordinate (of the embedding) from given schwarzschild coordinate.

Parameters:

r (float) –

Returns:

spherical radial coordinate of the 3d embedding

Return type:

float

get_values(alpha)[source]

Obtain the Z coordinate values and corrosponding R values for range of r as 9m/4 < r < 9m.

Parameters:

alpha (float) – scaling factor to obtain the step size for incrementing r

Returns:

(list, list) : values of R (x_axis) and Z (y_axis)

Return type:

tuple

get_values_surface(alpha)[source]

Obtain the same values as of the get_values function but reshapes them to obtain values for all points on the solid of revolution about Z axis (as the embedding is symmetric in angular coordinates).

Parameters:

alpha (float) – scaling factor to obtain the step size for incrementing r

Returns:

(~numpy.array of X, ~numpy.array of Y, ~numpy.array of Z) values in cartesian coordinates obtained after applying solid of revolution

Return type:

tuple